import { TNode, KeysType } from '../common';
export interface TdPickerProps {
    cancelBtn?: boolean | string;
    columns: PickerColumn | Array<PickerColumn> | ((item: Array<PickerValue>) => Array<PickerColumn>);
    confirmBtn?: boolean | string;
    header?: TNode;
    keys?: KeysType;
    option?: TNode;
    renderLabel?: (item: PickerColumnItem) => string;
    title?: string;
    value?: Array<PickerValue>;
    defaultValue?: Array<PickerValue>;
    modelValue?: Array<PickerValue>;
    onCancel?: (context: {
        e: MouseEvent;
    }) => void;
    onChange?: (value: Array<PickerValue>, context: {
        columns: Array<PickerContext>;
        e: MouseEvent;
    }) => void;
    onConfirm?: (value: Array<PickerValue>, context: {
        index: number[];
        e: MouseEvent;
        label: string[];
    }) => void;
    onPick?: (value: Array<PickerValue>, context: PickerContext) => void;
}
export declare type PickerColumn = PickerColumnItem[];
export interface PickerColumnItem {
    label: string;
    value: string;
    disabled?: boolean;
}
export declare type PickerValue = string | number;
export interface PickerContext {
    column: number;
    index: number;
}
