import { Sequelize, ModelStatic } from "sequelize"; import { AbstractAdapter, AbstractModel, Attribute, FindOptions } from "../AbstractModel"; export declare function mapSequelizeToWaterline(model: ModelStatic): Record; export declare class SequelizeModel extends AbstractModel { private model; constructor(modelName: string, model: ModelStatic); _convertCriteriaToSequelize(criteria: any): any; _convertWaterlineCriteriaToSequelizeOptions(criteria: any): { where?: any; limit?: number; offset?: number; order?: any[]; }; _assignAssociations(instance: any, assocData: Record): Promise; protected _create(data: Record): Promise; protected _findOne(criteria: Partial): Promise; protected _find(criteria?: Partial, options?: FindOptions): Promise; protected _updateOne(criteria: Partial, data: Partial): Promise; protected _update(criteria: Partial, data: Partial): Promise; protected _destroyOne(criteria: Partial): Promise; protected _destroy(criteria: Partial): Promise; protected _count(criteria?: Partial): Promise; private _buildIncludes; } export declare class SequelizeAdapter extends AbstractAdapter { sequelize: Sequelize; Model: typeof SequelizeModel; constructor(sequelize: Sequelize); get models(): Record; getModel(modelName: string): any; getAttributes(modelName: string): any; /** Registration of system models */ static registerSystemModels(sequelize: Sequelize, alter?: boolean): Promise; }