import { PropType } from 'vue';
import { PopupProps } from '../popup';
import { PrimaryTableCol, FilterValue, TdPrimaryTableProps } from './type';
import { AttachNode } from '../common';
import { TableConfig } from '../config-provider';
export interface TableFilterControllerProps {
    locale: TableConfig;
    tFilterValue: FilterValue;
    innerFilterValue: FilterValue;
    tableFilterClasses: {
        filterable: string;
        popup: string;
        icon: string;
        popupContent: string;
        result: string;
        inner: string;
        bottomButtons: string;
        contentInner: string;
        iconWrap: string;
    };
    isFocusClass: string;
    column: PrimaryTableCol;
    colIndex: number;
    primaryTableElement: any;
    popupProps: PopupProps;
    attach?: AttachNode;
    onVisibleChange: (val: boolean) => void;
    filterIcon?: TdPrimaryTableProps['filterIcon'];
}
declare const _default: import("vue").DefineComponent<{
    locale: PropType<TableFilterControllerProps["locale"]>;
    column: PropType<TableFilterControllerProps["column"]>;
    colIndex: NumberConstructor;
    tFilterValue: PropType<TableFilterControllerProps["tFilterValue"]>;
    innerFilterValue: PropType<TableFilterControllerProps["innerFilterValue"]>;
    tableFilterClasses: PropType<TableFilterControllerProps["tableFilterClasses"]>;
    isFocusClass: StringConstructor;
    primaryTableElement: {};
    popupProps: PropType<TableFilterControllerProps["popupProps"]>;
    attach: PropType<TableFilterControllerProps["attach"]>;
    onVisibleChange: PropType<TableFilterControllerProps["onVisibleChange"]>;
    filterIcon: PropType<TableFilterControllerProps["filterIcon"]>;
}, {
    t: <T>(pattern: T, ...args: any[]) => any;
    globalConfig: import("vue").ComputedRef<{} & (TableConfig | ({
        readonly expandIcon: any;
        readonly sortIcon: any;
        readonly filterIcon: any;
        readonly treeExpandAndFoldIcon: any;
        readonly hideSortTips: false;
        readonly size: "medium";
    } & {
        readonly empty: "暂无数据";
        readonly loadingText: "正在加载中，请稍后";
        readonly loadingMoreText: "点击加载更多";
        readonly filterInputPlaceholder: "请输入内容（无默认值）";
        readonly sortAscendingOperationText: "点击升序";
        readonly sortCancelOperationText: "点击取消排序";
        readonly sortDescendingOperationText: "点击降序";
        readonly clearFilterResultButtonText: "清空筛选";
        readonly columnConfigButtonText: "列配置";
        readonly columnConfigTitleText: "表格列配置";
        readonly columnConfigDescriptionText: "请选择需要在表格中显示的数据列";
        readonly confirmText: "确认";
        readonly cancelText: "取消";
        readonly resetText: "重置";
        readonly selectAllText: "全选";
        readonly searchResultText: "搜索“{result}”，找到 {count} 条结果";
    } & TableConfig))>;
    FilterIcon: import("tdesign-icons-vue-next").GlobalIconType;
    filterPopupVisible: import("vue").Ref<boolean>;
    triggerElementRef: import("vue").Ref<HTMLDivElement>;
    renderTNode: (name: string, options?: import("vue").VNode | import("../utils/render-tnode").JSXRenderContext) => any;
    getContent: () => JSX.Element;
    onFilterPopupVisibleChange: (visible: boolean) => void;
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("reset" | "confirm" | "inner-filter-change")[], "reset" | "confirm" | "inner-filter-change", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
    locale: PropType<TableFilterControllerProps["locale"]>;
    column: PropType<TableFilterControllerProps["column"]>;
    colIndex: NumberConstructor;
    tFilterValue: PropType<TableFilterControllerProps["tFilterValue"]>;
    innerFilterValue: PropType<TableFilterControllerProps["innerFilterValue"]>;
    tableFilterClasses: PropType<TableFilterControllerProps["tableFilterClasses"]>;
    isFocusClass: StringConstructor;
    primaryTableElement: {};
    popupProps: PropType<TableFilterControllerProps["popupProps"]>;
    attach: PropType<TableFilterControllerProps["attach"]>;
    onVisibleChange: PropType<TableFilterControllerProps["onVisibleChange"]>;
    filterIcon: PropType<TableFilterControllerProps["filterIcon"]>;
}>> & {
    onReset?: (...args: any[]) => any;
    onConfirm?: (...args: any[]) => any;
    "onInner-filter-change"?: (...args: any[]) => any;
}, {}, {}>;
export default _default;
