import { Column } from './ColumnPicker.vue'; import { SortDirection, SortFieldDefinition } from './Sort.vue'; import { DefineComponent, PropType } from 'vue'; import { Filter } from './FilterResults.vue'; import { FilterFieldDefinition } from './FilterFields.vue'; export interface ToolbarView { icon: string; title?: string; disabled?: boolean; } declare const PfToolbar: DefineComponent<{ ouiaId: { type: StringConstructor; default: string | null; }; ouiaSafe: BooleanConstructor; view: { type: PropType; default: null; }; views: { type: PropType>; default: () => {}; }; columns: { type: PropType>; default: () => Column[]; }; pickedColumns: { type: PropType; default: () => string[]; }; filterFields: { type: PropType>; default: () => FilterFieldDefinition[]; }; filters: { type: PropType; default: () => Filter[]; }; sortBy: StringConstructor; sortDirection: { type: PropType; default: string; validator: (v: never) => boolean; }; sortFields: { type: PropType>; default: () => SortFieldDefinition[]; }; resultCount: NumberConstructor; attached: BooleanConstructor; }, { ouiaProps: import("vue").ComputedRef<{ 'data-ouia-component-type': string; 'data-ouia-safe': boolean | undefined; 'data-ouia-component-id': string; }>; }, { activeView: string | null; activeFilters: Filter[]; }, { showSorter(): number; showFilter(): number; showColumnPicker(): number | false; showCount(): boolean; hasFindView(): number; viewList(): Record; showResultFilter(): number; }, { setSortBy(field: string, direction: SortDirection): void; clearFilter(i: number): void; clearAllFilters(): void; addFilter(filter: Filter): void; setPickedColumns(columns: string[]): void; }, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, { 'update:view': (view: string | null) => boolean; 'update:pickedColumns': (columns: string[]) => boolean; 'update:filters': (filters: Filter[]) => boolean; 'update:sortBy': (field: string) => boolean; 'update:sortDirection': (direction: SortDirection) => boolean; 'sort-by': (field: string, direction: SortDirection) => boolean; }, string, import("vue").PublicProps, Readonly; default: null; }; views: { type: PropType>; default: () => {}; }; columns: { type: PropType>; default: () => Column[]; }; pickedColumns: { type: PropType; default: () => string[]; }; filterFields: { type: PropType>; default: () => FilterFieldDefinition[]; }; filters: { type: PropType; default: () => Filter[]; }; sortBy: StringConstructor; sortDirection: { type: PropType; default: string; validator: (v: never) => boolean; }; sortFields: { type: PropType>; default: () => SortFieldDefinition[]; }; resultCount: NumberConstructor; attached: BooleanConstructor; }>> & { "onUpdate:view"?: ((view: string | null) => any) | undefined; "onUpdate:pickedColumns"?: ((columns: string[]) => any) | undefined; "onUpdate:filters"?: ((filters: Filter[]) => any) | undefined; "onUpdate:sortBy"?: ((field: string) => any) | undefined; "onUpdate:sortDirection"?: ((direction: SortDirection) => any) | undefined; "onSort-by"?: ((field: string, direction: SortDirection) => any) | undefined; }, { ouiaId: string; ouiaSafe: boolean; view: string | null; filters: Filter[]; columns: Column[] | Record; views: string | Record; pickedColumns: string[]; filterFields: FilterFieldDefinition[] | Record; sortDirection: SortDirection; sortFields: SortFieldDefinition[] | Record; attached: boolean; }, {}>; export declare function isPfToolbar(component: unknown): component is InstanceType; export default PfToolbar;