import type { ComputedRef, InjectionKey, Ref } from 'vue'; export interface DualListSelectorProvide { tree: ComputedRef; animations: ComputedRef; } export interface DualListSelectorPaneProvide { chosen: ComputedRef; disabled: ComputedRef; /** Id of the pane status, labelling its list */ statusId: ComputedRef; /** Id of the option focused last, the active descendant of the list */ focusedOption: Ref; } export interface DualListSelectorTreeItemData { /** Child options of the option */ children?: DualListSelectorTreeItemData[]; /** Flag indicating this option is expanded by default */ defaultExpanded?: boolean; /** Flag indicating this option has a badge with the number of its descendant leaves */ badge?: boolean; /** ID of the option */ id: string; /** Text of the option */ text: string; /** Checked state of the option, `null` for indeterminate */ checked: boolean | null; /** Additional attributes of the option checkbox */ checkAttrs?: Record; /** Additional attributes of the option badge, e.g. `{ read: true }` */ badgeAttrs?: Record; /** Flag indicating whether the option is disabled */ disabled?: boolean; } export declare const DualListSelectorKey: InjectionKey; export declare const DualListSelectorPaneKey: InjectionKey; /** Ids of the leaves of a tree */ export declare function flattenTree(tree: DualListSelectorTreeItemData[]): string[]; //# sourceMappingURL=common.d.ts.map