import { AttributesOnly } from '../../shared/typescript-utils';
import { Model } from 'sequelize';
export declare type Diff<T extends string | symbol | number, U extends string | symbol | number> = ({
    [P in T]: P;
} & {
    [P in U]: never;
} & {
    [x: string]: never;
})[T];
export declare type Omit<T, K extends keyof T> = {
    [P in Diff<keyof T, K>]: T[P];
};
export declare type RecursivePartial<T> = {
    [P in keyof T]?: RecursivePartial<T[P]>;
};
export declare type FilteredModelAttributes<T extends Model<any>> = Partial<AttributesOnly<T>> & {
    id?: number | any;
    createdAt?: Date | any;
    updatedAt?: Date | any;
    deletedAt?: Date | any;
    version?: number | any;
};
//# sourceMappingURL=sequelize.d.ts.map