import { SortDir } from '../meta/basetype'; import { PageData, QueryParams, QuerySort, RestQuery } from './restquery'; export declare class LocalQuery { private query; constructor(query: RestQuery); applyable(): boolean; applySort(datas: Object[]): Object[]; applyFilter(datas: Object[]): Object[]; applyQuery(datas: Object[]): PageData; static localApplyable(query: RestQuery): boolean; static localApplyQuery(datas: Object[], query: RestQuery): PageData; } export declare class LocalDataset { private list; readonly datas: Object[]; constructor(list: Object[]); sort(sort: string): this; sort(sort: QuerySort[]): this; filter(filter: QueryParams): this; slice(from: number, count: number): this; query(query: RestQuery): PageData; } export declare function calcFilter(obj: Object, pn: string, pv: any): boolean; export declare function compareObjectByProp(a: Object, b: Object, propName: string, dir: SortDir): number; export declare function filterList(datas: Object[], filter: QueryParams): Object[]; export declare function sortList(datas: Object[], sorts: QuerySort[]): Object[]; export declare function queryList(datas: Object[], query: RestQuery): PageData;