import { MysqlBin } from '../libs/MysqlBin'; import { CoaMysql } from '../typings'; export declare class MysqlNative { readonly key: string; readonly name: string; readonly title: string; readonly pick: string[]; protected readonly system: string; protected readonly database: string; protected readonly increment: string; protected readonly scheme: any; protected readonly prefix: string; protected readonly ms: number; protected readonly caches: { index: string[]; count: string[]; [name: string]: string[]; }; protected readonly cachesFields: string[]; protected readonly columns: string[]; protected readonly jsons: string[]; protected readonly virtual: string[]; protected readonly bin: MysqlBin; constructor(option: CoaMysql.ModelOption, bin: MysqlBin); newId(): Promise; insert(data: Partial, trx?: CoaMysql.Transaction): Promise; mInsert(dataList: Array>, trx?: CoaMysql.Transaction): Promise; updateById(id: string, data: Partial, trx?: CoaMysql.Transaction): Promise; updateByIds(ids: string[], data: Partial, trx?: CoaMysql.Transaction): Promise; updateForQueryById(id: string, query: CoaMysql.Query, data: Partial, trx?: CoaMysql.Transaction): Promise; upsertById(id: string, data: Partial, trx?: CoaMysql.Transaction): Promise; deleteByIds(ids: string[], trx?: CoaMysql.Transaction): Promise; getById(id: string, pick?: string[], trx?: CoaMysql.Transaction): Promise; mGetByIds(ids: string[], pick?: string[], trx?: CoaMysql.Transaction): Promise>; truncate(trx?: CoaMysql.Transaction): Promise; table(trx?: CoaMysql.Transaction): import("knex").QueryBuilder; protected getIdBy(field: string, value: string | number, trx?: CoaMysql.Transaction): Promise; protected selectListCount(query: CoaMysql.Query, trx?: CoaMysql.Transaction): Promise; protected selectIdList(query: CoaMysql.Query, trx?: CoaMysql.Transaction): Promise; protected selectIdSortList(pager: CoaMysql.Pager, query: CoaMysql.Query, trx?: CoaMysql.Transaction): Promise<{ [x: string]: Scheme[] | { last: number; more: boolean; rows: number; }; list: Scheme[]; }>; protected selectIdViewList(pager: CoaMysql.Pager, query: CoaMysql.Query, trx?: CoaMysql.Transaction, count?: number): Promise<{ list: Scheme[]; pager: { rows: number; page: number; pageMax: number; count: number; }; }>; protected checkSortPager(pager: CoaMysql.Pager): { last: number; rows: number; more: boolean; ext: any; }; protected checkViewPager(pager: CoaMysql.Pager, count: number): { rows: number; page: number; pageMax: number; }; protected result(data: any, pick: string[]): Scheme | null; protected fill(data: any, insert?: boolean): any; }