import type { Ref } from 'vue'; import type { TableColumnCtx } from '../table-column/defaults'; import type { DefaultRow } from '../table/defaults'; import type { StoreFilter } from '.'; declare function useWatcher(): { assertRowKey: () => void; updateColumns: () => void; scheduleLayout: (needUpdateColumns?: boolean, immediate?: boolean) => void; isSelected: (row: DefaultRow) => boolean; clearSelection: () => void; cleanSelection: () => void; getSelectionRows: () => T[]; toggleRowSelection: (row: T, selected?: boolean, emitChange?: boolean, ignoreSelectable?: boolean) => void; _toggleAllSelection: () => void; toggleAllSelection: null; updateSelectionByRowKey: () => void; updateAllSelected: () => void; updateFilters: (columns: any, values: any) => {}; updateCurrentRow: (_currentRow: T) => void; updateSort: (column: any, prop: any, order: any) => void; execFilter: () => void; execSort: () => void; execQuery: (ignore?: undefined) => void; clearFilter: (columnKeys: any) => void; clearSort: () => void; toggleRowExpansion: (row: T, expanded?: boolean) => void; setExpandRowKeysAdapter: (val: string[]) => void; setCurrentRowKey: (key: string) => void; toggleRowExpansionAdapter: (row: T, expanded?: boolean) => void; isRowExpanded: (row: T) => boolean; updateExpandRows: () => void; updateCurrentRowData: () => void; loadOrToggle: (row: any) => void; updateTreeData: (ifChangeExpandRowKeys?: boolean) => void; updateKeyChildren: (key: string, data: T[]) => void; states: { _currentRowKey: Ref; currentRow: Ref; expandRowKeys: Ref; treeData: Ref; indent: Ref; lazy: Ref; lazyTreeNodeMap: Ref<{}>; lazyColumnIdentifier: Ref; childrenColumnName: Ref; checkStrictly: Ref; expandRows: Ref; defaultExpandAll: Ref; tableSize: Ref; rowKey: Ref; data: Ref; _data: Ref; isComplex: Ref; _columns: Ref[]>; originColumns: Ref[]>; columns: Ref[]>; fixedColumns: Ref[]>; rightFixedColumns: Ref[]>; leafColumns: Ref[]>; fixedLeafColumns: Ref[]>; rightFixedLeafColumns: Ref[]>; updateOrderFns: (() => void)[]; leafColumnsLength: Ref; fixedLeafColumnsLength: Ref; rightFixedLeafColumnsLength: Ref; isAllSelected: Ref; selection: Ref; reserveSelection: Ref; selectOnIndeterminate: Ref; selectable: Ref<(row: T, index: number) => boolean>; filters: Ref; filteredData: Ref; sortingColumn: Ref; sortProp: Ref; sortOrder: Ref; hoverRow: Ref; }; }; export default useWatcher;