UNPKG

@layui/layui-vue

Version:

a component library for Vue 3 base on layui-vue

97 lines (96 loc) 4.41 kB
import type { TableColumn, TableEmit, RequiredTableProps } from "../typing"; import { type StyleValue } from "vue"; export declare function useTable(props: RequiredTableProps, emit: TableEmit): { hierarchicalColumns: import("vue").Ref<{ title: string; key: string; customSlot?: string | undefined; width?: string | undefined; minWidth?: string | undefined; sort?: string | undefined; titleSlot?: string | undefined; align?: import("../../../types").CommonAlign | undefined; ellipsisTooltip?: boolean | undefined; ellipsisTooltipTheme?: string | undefined; ellipsisTooltipProps?: Record<string, any> | undefined; fixed?: "left" | "right" | undefined; type?: string | undefined; children?: any[] | undefined; rowspan?: number | undefined; resize?: boolean | undefined; hide?: boolean | undefined; ignoreExport?: boolean | undefined; totalRow?: string | number | boolean | undefined; totalRowMethod?: ((column: TableColumn, dataSource: import("../../../types").Recordable[]) => void) | undefined; }[][]>; lastLevelAllColumns: import("vue").Ref<{ title: string; key: string; customSlot?: string | undefined; width?: string | undefined; minWidth?: string | undefined; sort?: string | undefined; titleSlot?: string | undefined; align?: import("../../../types").CommonAlign | undefined; ellipsisTooltip?: boolean | undefined; ellipsisTooltipTheme?: string | undefined; ellipsisTooltipProps?: Record<string, any> | undefined; fixed?: "left" | "right" | undefined; type?: string | undefined; children?: any[] | undefined; rowspan?: number | undefined; resize?: boolean | undefined; hide?: boolean | undefined; ignoreExport?: boolean | undefined; totalRow?: string | number | boolean | undefined; totalRowMethod?: ((column: TableColumn, dataSource: import("../../../types").Recordable[]) => void) | undefined; }[]>; lastLevelShowColumns: import("vue").Ref<{ title: string; key: string; customSlot?: string | undefined; width?: string | undefined; minWidth?: string | undefined; sort?: string | undefined; titleSlot?: string | undefined; align?: import("../../../types").CommonAlign | undefined; ellipsisTooltip?: boolean | undefined; ellipsisTooltipTheme?: string | undefined; ellipsisTooltipProps?: Record<string, any> | undefined; fixed?: "left" | "right" | undefined; type?: string | undefined; children?: any[] | undefined; rowspan?: number | undefined; resize?: boolean | undefined; hide?: boolean | undefined; ignoreExport?: boolean | undefined; totalRow?: string | number | boolean | undefined; totalRowMethod?: ((column: TableColumn, dataSource: import("../../../types").Recordable[]) => void) | undefined; }[]>; tableDataSource: import("../../../types").Recordable[]; columnsState: { setRowSpanValue: (column: TableColumn) => number; setColSpanValue: (column: TableColumn) => number; }; selectedState: { tableSelectedKey: import("vue").Ref<string | number>; toggleSelected: (key: string | number) => void; allMSelected: import("vue").Ref<boolean>; setMAllSelected: (value: boolean) => void; someMSelected: import("vue").Ref<boolean>; tableMSelectedKeys: (string | number)[]; toggleMSelected: (data: import("../../../types").Recordable, state: boolean) => void; getAllSelectedDataSource: () => import("../../../types").Recordable[]; }; expandState: { checkExpand: (key: string | number) => boolean; /** * props.columns 变化时,重新计算 */ toggleExpand: (key: string | number, state: boolean) => void; }; hasTotalRow: import("vue").Ref<boolean>; commonGetClasses: (column: TableColumn, ...args: any[]) => any[]; commonGetStylees: (column: TableColumn, ...age: any[]) => StyleValue; }; export type UseTableReturn = ReturnType<typeof useTable>;