import { Component, VElement } from "solenya"; import { ITableQuery, SortValue, Column, TableViewProps, ITableResult, TableProps } from './tableTypes'; export declare abstract class Table extends Component implements ITableQuery, ITableResult { abstract results?: T[]; total?: number; from: number; pageSize: number; sort: string; _search: string; constructor(props?: TableProps); getQuery(): ITableQuery; /** * return a promise to an ITableResult: * { * results:T[] * total: number * } */ abstract load(query: ITableQuery): Promise | undefined>; /** Trigger the load method and write the results back, if not undefined, to this table. */ doLoad(): Promise; /** A convenience method when you want to implement load by filtering a local array. */ arrayToTableResult(array: T[], filter: (row: T) => boolean): ITableResult; search: string; readonly hasMoreResults: boolean; sortValues(): SortValue[]; private canPrev; private canNext; private prev; private next; private doSearch; doSort(key: string, direction: boolean): void; view(props?: TableViewProps): VElement; content(props: TableViewProps): VElement; private pager; columnHeader(col: Column, guideObject?: T): string | VElement; private sortMenu; private tick; searchInput(): VElement; }