bits-ui
Version:
The headless components for Svelte.
31 lines (30 loc) • 1.17 kB
TypeScript
import { type ReadableBoxedValues, type WritableBoxedValues } from "svelte-toolbelt";
import type { BitsMouseEvent, RefAttachment, WithRefOpts } from "../../internal/types.js";
export declare const toggleAttrs: import("../../internal/attrs.js").CreateBitsAttrsReturn<readonly ["root"]>;
interface ToggleRootStateOpts extends WithRefOpts, ReadableBoxedValues<{
disabled: boolean;
}>, WritableBoxedValues<{
pressed: boolean;
}> {
}
export declare class ToggleRootState {
#private;
static create(opts: ToggleRootStateOpts): ToggleRootState;
readonly opts: ToggleRootStateOpts;
readonly attachment: RefAttachment;
constructor(opts: ToggleRootStateOpts);
onclick(_: BitsMouseEvent): void;
readonly snippetProps: {
pressed: boolean;
};
readonly props: {
readonly id: string;
readonly "data-disabled": "" | undefined;
readonly "aria-pressed": "true" | "false";
readonly "data-state": "off" | "on";
readonly disabled: true | undefined;
readonly onclick: (_: BitsMouseEvent) => void;
};
}
export declare function getToggleDataState(condition: boolean): "on" | "off";
export {};