import { DbTablePatch, DbQuery, DbEntitySchema, DbPkFieldType, DbTablesSet } from './types'; import * as I from 'immutable'; import { SortDirection, DataQueryFilter, SortingOption } from '@epam/uui-core'; interface DbIndex { field: keyof TEntity; map: I.Map>; } interface DbTableState> { pk: I.Map; indexes: DbIndex[]; } export declare class DbTable> { readonly schema: DbEntitySchema; private state?; private q?; constructor(schema: DbEntitySchema, state?: DbTableState, q?: DbQuery); protected keyToImmutable(id: TId): any; byId(id: TId): TEntity; getId(entity: Partial): TId; private update; with(patch: DbTablePatch): this; find(filter: DataQueryFilter): DbTable; order(order: SortingOption[]): this; orderBy(field: Extract, direction?: SortDirection): this; thenBy(field: Extract, direction?: SortDirection): this; search(text: string): this; range(from: number, count: number): TEntity[]; count(): number; one(): TEntity; toArray(): TEntity[]; map(fn: (item: TEntity, index?: number) => T): T[]; private runQuery; } export {}; //# sourceMappingURL=DbTable.d.ts.map