UNPKG

sequelize-typescript

Version:
11 lines (10 loc) 803 B
import { Association, FindOptions, IncludeOptions } from 'sequelize'; import { ModelClassGetter } from '../model/shared/model-class-getter'; export declare type ScopeIncludeOptions<TCreationAttributes extends {}, TModelAttributes extends {}> = { [K in keyof IncludeOptions]: K extends 'model' ? ModelClassGetter<TCreationAttributes, TModelAttributes> : K extends 'include' ? ScopeIncludeOptions<TCreationAttributes, TModelAttributes> : IncludeOptions[K]; }; export declare type ScopeFindOptions<TCreationAttributes extends {}, TModelAttributes extends {}> = { [K in keyof FindOptions]: K extends 'include' ? ModelClassGetter<TCreationAttributes, TModelAttributes>[] | Association[] | ScopeIncludeOptions<TCreationAttributes, TModelAttributes>[] | { all: true; } : FindOptions[K]; };