import type { ButtonElement } from '../button/types.js'; import type { Snippet } from 'svelte'; import type { HTMLAnchorAttributes, HTMLAttributes, HTMLButtonAttributes, MouseEventHandler } from 'svelte/elements'; export interface ChipSetProps extends HTMLAttributes { element?: HTMLDivElement; } export interface AssistChipProps extends HTMLAttributes, Omit | 'type'>, Omit | 'type'> { variant?: 'outlined' | 'elevated'; disabled?: boolean | null; label?: string; icon?: Snippet; element?: HTMLElement; type?: 'submit' | 'reset' | 'button' | (string & {}) | null; } export type SuggestionChipProps = Omit; export interface FilterChipProps extends HTMLAttributes { selected?: boolean; removable?: boolean; disabled?: boolean; variant?: 'outlined' | 'elevated'; label?: string; icon?: Snippet; removeAriaLabel?: string; element?: HTMLDivElement; name?: string; value?: string; group?: (string | number)[] | null; defaultSelected?: boolean | null; onremove?: MouseEventHandler; issues?: { message: string; }[]; } export interface InputChipProps extends Omit, 'onclick'> { selected?: boolean; disabled?: boolean; label?: string; icon?: Snippet; removeAriaLabel?: string; element?: HTMLDivElement; actionElement?: HTMLButtonElement; name?: string; value?: string | number; onclick?: MouseEventHandler; onremove?: MouseEventHandler; issues?: { message: string; }[]; } export interface ChipSetContext { chips: { label: string; name: string | undefined; value: string | number | undefined; }[]; }