import { IResponsiveTablePlugin, IPluginAPI } from './IResponsiveTablePlugin'; import { IResponsiveTableColumnDefinition, SortDirection } from '../Data/IResponsiveTableColumnDefinition'; export interface ISortPluginOptions { initialSortColumn?: string; initialSortDirection?: SortDirection; } export declare class SortPlugin implements IResponsiveTablePlugin { id: string; private api; private sortColumn; private sortDirection; readonly comparers: { numeric: (key: keyof TData) => (a: TData, b: TData, direction: SortDirection) => number; caseInsensitiveString: (key: keyof TData) => (a: TData, b: TData, direction: SortDirection) => 0 | 1 | -1; date: (key: keyof TData) => (a: TData, b: TData, direction: SortDirection) => number; }; constructor(options?: ISortPluginOptions); onPluginInit: (api: IPluginAPI) => void; processData: (data: TData[]) => TData[]; getHeaderProps: (columnDef: IResponsiveTableColumnDefinition) => { onClick?: undefined; className?: undefined; 'aria-sort'?: undefined; } | { onClick: (e: React.MouseEvent) => void; className: string; 'aria-sort': "none" | "ascending" | "descending"; }; }