type ToggleGroupValue = string[]; type ToggleGroupOrientation = "horizontal" | "vertical"; type ToggleGroupValueChangeReason = "none" | "imperative-action"; type ToggleGroupValueChangeDetails = { readonly event?: Event; readonly isCanceled: boolean; readonly isPropagationAllowed: boolean; readonly previousValue: ToggleGroupValue; readonly pressed: boolean; readonly reason: ToggleGroupValueChangeReason; readonly toggleValue: string; readonly trigger?: Element; readonly value: ToggleGroupValue; allowPropagation(): void; cancel(): void; }; type ToggleGroupOptions = { defaultValue?: ToggleGroupValue; disabled?: boolean; loopFocus?: boolean; multiple?: boolean; onValueChange?: (value: ToggleGroupValue, details: ToggleGroupValueChangeDetails) => void; orientation?: ToggleGroupOrientation; value?: ToggleGroupValue; }; type ToggleGroupSetValueOptions = { emit?: boolean; }; type ToggleGroupInstance = { readonly root: HTMLElement; destroy(): void; getValue(): ToggleGroupValue; refresh(): void; setDisabled(disabled: boolean): void; setLoopFocus(loopFocus: boolean): void; setMultiple(multiple: boolean): void; setOrientation(orientation: ToggleGroupOrientation): void; setValue(value: ToggleGroupValue, options?: ToggleGroupSetValueOptions): void; subscribe(event: "valueChange", callback: (details: ToggleGroupValueChangeDetails) => void): () => void; }; declare function createToggleGroup(root: HTMLElement, options?: ToggleGroupOptions): ToggleGroupInstance; export { type ToggleGroupInstance, type ToggleGroupOptions, type ToggleGroupOrientation, type ToggleGroupSetValueOptions, type ToggleGroupValue, type ToggleGroupValueChangeDetails, type ToggleGroupValueChangeReason, createToggleGroup };