diff --git a/lib/interfaces/IFindCreateFindOptions.ts b/lib/interfaces/IFindCreateFindOptions.ts index caa5d43b..d55f5da7 100644 --- a/lib/interfaces/IFindCreateFindOptions.ts +++ b/lib/interfaces/IFindCreateFindOptions.ts @@ -1,6 +1,6 @@ import {IFindOptions} from "./IFindOptions"; -export interface IFindCreateFindOptions extends IFindOptions { +export interface IFindCreateFindOptions extends IFindOptions { /** * Default values to use if building a new instance diff --git a/lib/interfaces/IFindOptions.ts b/lib/interfaces/IFindOptions.ts index e26b89a2..366803cc 100644 --- a/lib/interfaces/IFindOptions.ts +++ b/lib/interfaces/IFindOptions.ts @@ -1,4 +1,4 @@ -import {WhereOptions, LoggingOptions, SearchPathOptions, col, and, or, FindOptionsAttributesArray, +import {WhereOptions, LoggingOptions, SearchPathOptions, col, FindOptionsAttributesArray, literal, fn} from 'sequelize'; import {Model} from "../models/Model"; import {IIncludeOptions} from "./IIncludeOptions"; @@ -6,12 +6,12 @@ import {IIncludeOptions} from "./IIncludeOptions"; /* tslint:disable:array-type */ /* tslint:disable:max-line-length */ -export interface IFindOptions extends LoggingOptions, SearchPathOptions { +export interface IFindOptions extends LoggingOptions, SearchPathOptions { /** * A hash of attributes to describe your search. See above for examples. */ - where?: WhereOptions | Array | col | and | or | string; + where?: WhereOptions; /** * A list of the attributes that you want to select. To rename an attribute, you can pass an array, with diff --git a/lib/interfaces/IFindOrInitializeOptions.ts b/lib/interfaces/IFindOrInitializeOptions.ts index 0a12c3ef..c78a8a0e 100644 --- a/lib/interfaces/IFindOrInitializeOptions.ts +++ b/lib/interfaces/IFindOrInitializeOptions.ts @@ -1,6 +1,6 @@ import {IFindOptions} from "./IFindOptions"; -export interface IFindOrInitializeOptions extends IFindOptions { +export interface IFindOrInitializeOptions extends IFindOptions { /** * Default values to use if building a new instance diff --git a/lib/models/BaseModel.ts b/lib/models/BaseModel.ts index 29719cde..9719f01c 100644 --- a/lib/models/BaseModel.ts +++ b/lib/models/BaseModel.ts @@ -180,7 +180,7 @@ export abstract class BaseModel { * * SEE DETAILS FOR ACTUAL FUNCTIONALITY ON DECLARATION FILE */ - reload(options?: IFindOptions): Promise { + reload(options?: IFindOptions): Promise { return parentPrototype.reload.call(this, inferAlias(options, this)); }; diff --git a/lib/models/Model.d.ts b/lib/models/Model.d.ts index 81b9e3c8..f2b03422 100644 --- a/lib/models/Model.d.ts +++ b/lib/models/Model.d.ts @@ -81,7 +81,7 @@ export declare abstract class Model extends Hooks { * @param {Object} [options] * @param {Boolean} [options.override=false] */ - static addScope(name: string, scope: IFindOptions | Function, options?: AddScopeOptions): void; + static addScope>(name: string, scope: IFindOptions | Function, options?: AddScopeOptions): void; /** * Apply a scope created in `define` to the model. First let's look at how to create scopes: @@ -194,25 +194,25 @@ export declare abstract class Model extends Hooks { * * @see {Sequelize#query} */ - static findAll>(options?: IFindOptions): Promise; + static findAll>(options?: IFindOptions): Promise; - static all>(optionz?: IFindOptions): Promise; + static all>(options?: IFindOptions): Promise; /** * Search for a single instance by its primary key. This applies LIMIT 1, so the listener will * always be called with a single instance. */ - static findById>(identifier?: number | string, options?: IFindOptions): Promise; + static findById>(identifier?: number | string, options?: IFindOptions): Promise; - static findByPrimary>(identifier?: number | string, options?: IFindOptions): Promise; + static findByPrimary>(identifier?: number | string, options?: IFindOptions): Promise; /** * Search for a single instance. This applies LIMIT 1, so the listener will always be called with a single * instance. */ - static findOne>(options?: IFindOptions): Promise; + static findOne>(options?: IFindOptions): Promise; - static find>(options?: IFindOptions): Promise; + static find>(options?: IFindOptions): Promise; /** * Run an aggregation method on the specified field @@ -267,9 +267,9 @@ export declare abstract class Model extends Hooks { * without * profiles will be counted */ - static findAndCount>(options?: IFindOptions): Promise<{rows: T[], count: number}>; + static findAndCount>(options?: IFindOptions): Promise<{rows: T[], count: number}>; - static findAndCountAll>(options?: IFindOptions): Promise<{rows: T[], count: number}>; + static findAndCountAll>(options?: IFindOptions): Promise<{rows: T[], count: number}>; /** * Find the maximum value of field diff --git a/lib/services/scopes.ts b/lib/services/scopes.ts index 4cef5e75..2f4ef9c5 100644 --- a/lib/services/scopes.ts +++ b/lib/services/scopes.ts @@ -54,7 +54,7 @@ function resolveScope(scopeName: string, model: typeof Model, options: IScopeFin } else { options = inferAlias(options, model); } - model.addScope(scopeName, options as IFindOptions, {override: true}); + model.addScope(scopeName, options as IFindOptions, {override: true}); } /**