import type { ColumnDef } from '../types/table';
type SortFunc = (a: any, b: any) => number;
type OrderDirection = 'asc' | 'desc';
export type TableOrderState = {
    by: string;
    direction: OrderDirection;
    handler?: SortFunc | null;
};
export type TableOrderProps = {
    initialBy: string;
    initialDirection?: OrderDirection;
};
export default function tableOrderStore(props?: TableOrderProps): {
    onHeaderClick: (column: ColumnDef) => void;
    set(this: void, value: {
        by: string;
        direction: OrderDirection;
        handler: SortFunc;
    }): void;
    update(this: void, updater: import("svelte/store").Updater<{
        by: string;
        direction: OrderDirection;
        handler: SortFunc;
    }>): void;
    subscribe(this: void, run: import("svelte/store").Subscriber<{
        by: string;
        direction: OrderDirection;
        handler: SortFunc;
    }>, invalidate?: (value?: {
        by: string;
        direction: OrderDirection;
        handler: SortFunc;
    }) => void): import("svelte/store").Unsubscriber;
};
export {};
