import ModelTypes from '../modules/enums/ModelTypes'; import IQueryBuilder from '../db/IQueryBuilder'; export interface IModelProperties { [key: string]: any; data: Record; } interface IModel { } export default class Model implements IModel, IModelProperties { connection: IQueryBuilder; private static baseConfigConnection; private static insertOrUpdateFilter; static select(...args: string[]): Model; static create(item: Record): Model; static insert(items: (Record | Record[]), options?: Record): Promise; static update(items: Record): Promise; static delete(): Promise; static trashed(): IQueryBuilder; static notInTrash(): IQueryBuilder; static withTrashed(): IQueryBuilder; protected tableType: ModelTypes; protected table: string; private get _table(); private set _table(value); protected columns: Record; data: Record; protected primaryKey: string | Array; protected keyType: string | Array; protected dates: Array; protected dateFormat: string; protected timestamps: boolean; protected softDelete: boolean; protected softDeleteKey: string; protected fillable: Array; protected required: Array; protected guarded: Array; protected hidden: Array; protected incrementing: boolean; private trashStatus; constructor(); } export declare function instanceCreator(model: any): T; export {};