import { type BooleanInput } from '@angular/cdk/coercion';
import { type TuiComparator } from '@taiga-ui/addon-table/types';
import * as i0 from "@angular/core";
export declare class TuiTableSortable<T extends Partial<Record<keyof T, unknown>>> {
    private readonly table;
    private readonly th;
    private readonly sortBy;
    readonly sortable: import("@angular/core").InputSignalWithTransform<BooleanInput, any>;
    protected readonly setThSorter: import("@angular/core").EffectRef;
    protected readonly setTableSorter: import("@angular/core").EffectRef;
    readonly sorter: import("@angular/core").Signal<TuiComparator<T>>;
    get key(): keyof T;
    private get match();
    static ɵfac: i0.ɵɵFactoryDeclaration<TuiTableSortable<any>, never>;
    static ɵdir: i0.ɵɵDirectiveDeclaration<TuiTableSortable<any>, "th[tuiTh][tuiSortable]", never, { "sortable": { "alias": "tuiSortable"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
}
