tdesign-vue
Version:
201 lines (200 loc) • 8.34 kB
TypeScript
import { PropType } from '@vue/composition-api';
import { CreateElement } 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;
inputFilter: string;
iconWrap: string;
};
isFocusClass: string;
column: PrimaryTableCol;
colIndex: number;
primaryTableElement: HTMLDivElement;
popupProps: PopupProps;
attach?: AttachNode;
filterIcon?: TdPrimaryTableProps['filterIcon'];
}
declare const _default: import("vue").ComponentOptions<import("vue").default, import("@vue/composition-api").ShallowUnwrapRef<{
t: <T>(pattern: T, ...args: any[]) => any;
global: import("@vue/composition-api").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").GlobalIconType;
filterPopupVisible: import("@vue/composition-api").Ref<boolean>;
triggerElementRef: import("@vue/composition-api").Ref<HTMLDivElement>;
listFilterValue: import("@vue/composition-api").Ref<string>;
renderTNode: (name: string, options?: import("vue").VNode | import("../hooks/render-tnode").JSXRenderContext) => any;
getFilterDisplayList: (column: PrimaryTableCol) => import("../common").OptionData[];
onFilterPopupVisibleChange: (visible: boolean) => void;
}> & import("@vue/composition-api").Data, {}, {}, {
column: PropType<PrimaryTableCol<import("./type").TableRowData>>;
colIndex: NumberConstructor;
tFilterValue: PropType<FilterValue>;
innerFilterValue: PropType<FilterValue>;
tableFilterClasses: PropType<{
filterable: string;
popup: string;
icon: string;
popupContent: string;
result: string;
inner: string;
bottomButtons: string;
contentInner: string;
inputFilter: string;
iconWrap: string;
}>;
isFocusClass: StringConstructor;
primaryTableElement: {};
popupProps: PropType<import("../popup").TdPopupProps>;
attach: PropType<AttachNode>;
filterIcon: PropType<(h: CreateElement, props: {
col: PrimaryTableCol<import("./type").TableRowData>;
colIndex: number;
}) => import("vue/types/vnode").ScopedSlotReturnValue>;
}, import("@vue/composition-api").ExtractPropTypes<{
column: PropType<PrimaryTableCol<import("./type").TableRowData>>;
colIndex: NumberConstructor;
tFilterValue: PropType<FilterValue>;
innerFilterValue: PropType<FilterValue>;
tableFilterClasses: PropType<{
filterable: string;
popup: string;
icon: string;
popupContent: string;
result: string;
inner: string;
bottomButtons: string;
contentInner: string;
inputFilter: string;
iconWrap: string;
}>;
isFocusClass: StringConstructor;
primaryTableElement: {};
popupProps: PropType<import("../popup").TdPopupProps>;
attach: PropType<AttachNode>;
filterIcon: PropType<(h: CreateElement, props: {
col: PrimaryTableCol<import("./type").TableRowData>;
colIndex: number;
}) => import("vue/types/vnode").ScopedSlotReturnValue>;
}>> & Omit<import("vue").VueConstructor<import("vue").default>, never> & (new (...args: any[]) => import("@vue/composition-api").ComponentRenderProxy<{} & {
attach?: AttachNode;
popupProps?: unknown;
column?: unknown;
tableFilterClasses?: {
filterable: string;
popup: string;
icon: string;
popupContent: string;
result: string;
inner: string;
bottomButtons: string;
contentInner: string;
inputFilter: string;
iconWrap: string;
};
filterIcon?: (h: CreateElement, props: {
col: PrimaryTableCol<import("./type").TableRowData>;
colIndex: number;
}) => import("vue/types/vnode").ScopedSlotReturnValue;
colIndex?: number;
isFocusClass?: string;
tFilterValue?: unknown;
innerFilterValue?: unknown;
primaryTableElement?: unknown;
}, import("@vue/composition-api").ShallowUnwrapRef<{
t: <T>(pattern: T, ...args: any[]) => any;
global: import("@vue/composition-api").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").GlobalIconType;
filterPopupVisible: import("@vue/composition-api").Ref<boolean>;
triggerElementRef: import("@vue/composition-api").Ref<HTMLDivElement>;
listFilterValue: import("@vue/composition-api").Ref<string>;
renderTNode: (name: string, options?: import("vue").VNode | import("../hooks/render-tnode").JSXRenderContext) => any;
getFilterDisplayList: (column: PrimaryTableCol) => import("../common").OptionData[];
onFilterPopupVisibleChange: (visible: boolean) => void;
}>, import("@vue/composition-api").Data, {}, {}, {}, {}, {}, {} & {
attach?: AttachNode;
popupProps?: unknown;
column?: unknown;
tableFilterClasses?: {
filterable: string;
popup: string;
icon: string;
popupContent: string;
result: string;
inner: string;
bottomButtons: string;
contentInner: string;
inputFilter: string;
iconWrap: string;
};
filterIcon?: (h: CreateElement, props: {
col: PrimaryTableCol<import("./type").TableRowData>;
colIndex: number;
}) => import("vue/types/vnode").ScopedSlotReturnValue;
colIndex?: number;
isFocusClass?: string;
tFilterValue?: unknown;
innerFilterValue?: unknown;
primaryTableElement?: unknown;
}, {}, true>);
export default _default;