UNPKG

bits-ui

Version:

The headless components for Svelte.

105 lines (104 loc) 3.95 kB
import { type ReadableBoxedValues, type WritableBoxedValues } from "svelte-toolbelt"; import type { HTMLButtonAttributes } from "svelte/elements"; import { Context } from "runed"; import type { BitsKeyboardEvent, BitsMouseEvent, OnChangeFn, RefAttachment, WithRefOpts } from "../../internal/types.js"; interface CheckboxGroupStateOpts extends WithRefOpts, ReadableBoxedValues<{ name: string | undefined; disabled: boolean; required: boolean; readonly: boolean; onValueChange: OnChangeFn<string[]>; }>, WritableBoxedValues<{ value: string[]; }> { } export declare const CheckboxGroupContext: Context<CheckboxGroupState>; export declare class CheckboxGroupState { static create(opts: CheckboxGroupStateOpts): CheckboxGroupState; readonly opts: CheckboxGroupStateOpts; readonly attachment: RefAttachment; labelId: string | undefined; constructor(opts: CheckboxGroupStateOpts); addValue(checkboxValue: string | undefined): void; removeValue(checkboxValue: string | undefined): void; readonly props: { readonly id: string; readonly role: "group"; readonly "aria-labelledby": string | undefined; readonly "data-disabled": "" | undefined; }; } interface CheckboxGroupLabelStateOpts extends WithRefOpts { } export declare class CheckboxGroupLabelState { static create(opts: CheckboxGroupLabelStateOpts): CheckboxGroupLabelState; readonly opts: CheckboxGroupLabelStateOpts; readonly group: CheckboxGroupState; readonly attachment: RefAttachment; constructor(opts: CheckboxGroupLabelStateOpts, group: CheckboxGroupState); readonly props: { readonly id: string; readonly "data-disabled": "" | undefined; }; } interface CheckboxRootStateOpts extends WithRefOpts, ReadableBoxedValues<{ disabled: boolean; required: boolean; readonly: boolean; name: string | undefined; value: string | undefined; type: HTMLButtonAttributes["type"]; }>, WritableBoxedValues<{ checked: boolean; indeterminate: boolean; }> { } export declare class CheckboxRootState { #private; static create(opts: CheckboxRootStateOpts, group?: CheckboxGroupState | null): CheckboxRootState; readonly opts: CheckboxRootStateOpts; readonly group: CheckboxGroupState | null; readonly trueName: string | undefined; readonly trueRequired: boolean; readonly trueDisabled: boolean; readonly trueReadonly: boolean; readonly attachment: RefAttachment; constructor(opts: CheckboxRootStateOpts, group: CheckboxGroupState | null); onkeydown(e: BitsKeyboardEvent): void; onclick(e: BitsMouseEvent): void; readonly snippetProps: { checked: boolean; indeterminate: boolean; }; readonly props: { readonly id: string; readonly role: "checkbox"; readonly type: "button" | "reset" | "submit" | null | undefined; readonly disabled: boolean; readonly "aria-checked": "true" | "false" | "mixed"; readonly "aria-required": "true" | "false"; readonly "aria-readonly": "true" | "false"; readonly "data-disabled": "" | undefined; readonly "data-readonly": "" | undefined; readonly "data-state": "checked" | "indeterminate" | "unchecked"; readonly onclick: (e: BitsMouseEvent) => void; readonly onkeydown: (e: BitsKeyboardEvent) => void; }; } export declare class CheckboxInputState { static create(): CheckboxInputState; readonly root: CheckboxRootState; readonly trueChecked: boolean; readonly shouldRender: boolean; constructor(root: CheckboxRootState); readonly props: { readonly type: "checkbox"; readonly checked: boolean; readonly disabled: boolean; readonly required: boolean; readonly name: string | undefined; readonly value: string | undefined; readonly readonly: boolean; }; } export {};