import { ConcreteComponent } from 'vue'; import { FormButton } from '../../lib'; import { PropAnyComponent } from '../common/components'; import { MaybeNullOrUndefined } from '../../../../shared/dist/esm/index'; type FormButtonProps = InstanceType['$props']; export declare enum GridListToggleValue { Grid = "grid", List = "list" } export type LayoutTabItem = { title: string; id: I; }; export type LayoutPageTabItem = { title: string; id: I; count?: number; tag?: string; icon?: PropAnyComponent; disabled?: boolean; disabledMessage?: string; }; export type LayoutMenuItem = { icon?: ConcreteComponent; title: string; id: I; disabled?: MaybeNullOrUndefined; disabledTooltip?: MaybeNullOrUndefined; color?: 'danger' | 'info'; active?: boolean; }; export type LayoutDialogButton = { text: string; props?: Record & FormButtonProps; onClick?: (e: MouseEvent) => void; disabled?: boolean; disabledMessage?: string; submit?: boolean; /** * This should uniquely identify the button within the form. Even if you have different sets * of buttons rendered on different steps of a wizard, all of them should have unique IDs to * ensure proper form functionality. */ id?: string; }; export type LayoutHeaderButton = { label: string; props: Record & FormButtonProps; onClick?: (e: MouseEvent) => void; }; export type LayoutTableColours = 'primary' | 'outline' | 'subtle' | 'danger'; export {};