UNPKG

@melt-ui/svelte

Version:
26 lines (25 loc) 1.43 kB
import type { BuilderReturn, Orientation } from '../../internal/types.js'; import type { Writable } from 'svelte/store'; import type { createToggleGroup } from './create.js'; import type { ChangeFn } from '../../internal/helpers/index.js'; export type { ToggleGroupComponentEvents } from './events.js'; export type ToggleGroupType = 'single' | 'multiple'; export type CreateToggleGroupProps<T extends ToggleGroupType = 'single'> = { defaultValue?: T extends 'single' ? string : string[]; value?: Writable<string | string[] | undefined>; onValueChange?: ChangeFn<string | string[] | undefined>; type?: T; disabled?: boolean; rovingFocus?: boolean; loop?: boolean; orientation?: Orientation; }; export type ToggleGroupItemProps = { value: string; disabled?: boolean; } | string; export type ToggleGroup<T extends ToggleGroupType = 'single'> = BuilderReturn<typeof createToggleGroup<T>>; export type ToggleGroupElements<T extends ToggleGroupType = 'single'> = BuilderReturn<typeof createToggleGroup<T>>['elements']; export type ToggleGroupOptions<T extends ToggleGroupType = 'single'> = BuilderReturn<typeof createToggleGroup<T>>['options']; export type ToggleGroupStates<T extends ToggleGroupType = 'single'> = BuilderReturn<typeof createToggleGroup<T>>['states']; export type ToggleGroupHelpers<T extends ToggleGroupType = 'single'> = BuilderReturn<typeof createToggleGroup<T>>['helpers'];