import { SvelteComponentTyped } from "svelte"; import type { SvelteHTMLElements } from "svelte/elements"; export type CarbonSelectableTileGroupContext = { selectedValues: import("svelte/store").Writable; groupName: import("svelte/store").Readable; add: (data: { selected: boolean; value: T }) => void; remove: (value: T) => void; update: (data: { value: T; selected: boolean }) => void; }; type $RestProps = SvelteHTMLElements["fieldset"]; type $Props = { /** * Specify the selected tile values. * @default [] */ selected?: T[]; /** * Set to `true` to disable the tile group * @default false */ disabled?: boolean; /** * Specify a name attribute for the checkbox inputs. * @default undefined */ name?: string | undefined; /** * Specify the legend text. * Alternatively, use the named slot "legendChildren". * @example * ```svelte * * Custom Legend * * ``` * @default "" */ legendText?: string; /** * Set to `true` to visually hide the legend * @default false */ hideLegend?: boolean; legendChildren?: (this: void) => void; children?: (this: void) => void; [key: `data-${string}`]: unknown; }; export type SelectableTileGroupProps = Omit< $RestProps, keyof $Props > & $Props; export default class SelectableTileGroup< T extends string = string, > extends SvelteComponentTyped< SelectableTileGroupProps, { deselect: CustomEvent; select: CustomEvent }, { default: Record; legendChildren: Record } > {}