import { type Component } from 'vue'; import type { FmTableToolbarProps } from '@/components/table/FmTableToolbar'; import type { FmTableProps } from '../components/table/FmTable.vue'; import type { FmChipProps } from '../components/chip/FmChip.vue'; export interface TableFilterOptions { filterDialogComponent?: Component | null; } export interface TableFilterDialogProps { filters: Array<{ key: string; label: string; value: unknown; }>; } export interface TableFilterDialogData { filters: Array<{ key: string; label: string; value: unknown; chipProps?: FmChipProps; }>; } /** * Table filter composable provides common table utilities such as * global search and column search */ export declare function useTableFilter(options: TableFilterOptions): { readonly tableProps: FmTableProps; readonly toolbarProps: FmTableToolbarProps; };