bits-ui
Version:
The headless components for Svelte.
184 lines (183 loc) • 6.85 kB
TypeScript
import { type ReadableBoxedValues, type WritableBoxedValues } from "svelte-toolbelt";
import type { BitsKeyboardEvent, BitsMouseEvent, OnChangeFn, RefAttachment, WithRefOpts } from "../../internal/types.js";
type DialogVariant = "alert-dialog" | "dialog";
declare const dialogAttrs: import("../../internal/attrs.js").CreateBitsAttrsReturn<readonly ["content", "trigger", "overlay", "title", "description", "close", "cancel", "action"]>;
interface DialogRootStateOpts extends WritableBoxedValues<{
open: boolean;
}>, ReadableBoxedValues<{
variant: DialogVariant;
onOpenChangeComplete: OnChangeFn<boolean>;
}> {
}
export declare class DialogRootState {
static create(opts: DialogRootStateOpts): DialogRootState;
readonly opts: DialogRootStateOpts;
triggerNode: HTMLElement | null;
contentNode: HTMLElement | null;
descriptionNode: HTMLElement | null;
contentId: string | undefined;
titleId: string | undefined;
triggerId: string | undefined;
descriptionId: string | undefined;
cancelNode: HTMLElement | null;
constructor(opts: DialogRootStateOpts);
handleOpen(): void;
handleClose(): void;
getBitsAttr: typeof dialogAttrs.getAttr;
readonly sharedProps: {
readonly "data-state": "open" | "closed";
};
}
interface DialogTriggerStateOpts extends WithRefOpts, ReadableBoxedValues<{
disabled: boolean;
}> {
}
export declare class DialogTriggerState {
static create(opts: DialogTriggerStateOpts): DialogTriggerState;
readonly opts: DialogTriggerStateOpts;
readonly root: DialogRootState;
readonly attachment: RefAttachment;
constructor(opts: DialogTriggerStateOpts, root: DialogRootState);
onclick(e: BitsMouseEvent): void;
onkeydown(e: BitsKeyboardEvent): void;
readonly props: {
readonly "data-state": "open" | "closed";
readonly id: string;
readonly "aria-haspopup": "dialog";
readonly "aria-expanded": "true" | "false";
readonly "aria-controls": string | undefined;
readonly onkeydown: (e: BitsKeyboardEvent) => void;
readonly onclick: (e: BitsMouseEvent) => void;
readonly disabled: true | undefined;
};
}
interface DialogCloseStateOpts extends WithRefOpts, ReadableBoxedValues<{
variant: "action" | "cancel" | "close";
disabled: boolean;
}> {
}
export declare class DialogCloseState {
static create(opts: DialogCloseStateOpts): DialogCloseState;
readonly opts: DialogCloseStateOpts;
readonly root: DialogRootState;
readonly attachment: RefAttachment;
constructor(opts: DialogCloseStateOpts, root: DialogRootState);
onclick(e: BitsMouseEvent): void;
onkeydown(e: BitsKeyboardEvent): void;
readonly props: {
readonly "data-state": "open" | "closed";
readonly id: string;
readonly onclick: (e: BitsMouseEvent) => void;
readonly onkeydown: (e: BitsKeyboardEvent) => void;
readonly disabled: true | undefined;
readonly tabindex: 0;
};
}
interface DialogActionStateOpts extends WithRefOpts {
}
export declare class DialogActionState {
static create(opts: DialogActionStateOpts): DialogActionState;
readonly opts: DialogActionStateOpts;
readonly root: DialogRootState;
readonly attachment: RefAttachment;
constructor(opts: DialogActionStateOpts, root: DialogRootState);
readonly props: {
readonly "data-state": "open" | "closed";
readonly id: string;
};
}
interface DialogTitleStateOpts extends WithRefOpts, ReadableBoxedValues<{
level: 1 | 2 | 3 | 4 | 5 | 6;
}> {
}
export declare class DialogTitleState {
static create(opts: DialogTitleStateOpts): DialogTitleState;
readonly opts: DialogTitleStateOpts;
readonly root: DialogRootState;
readonly attachment: RefAttachment;
constructor(opts: DialogTitleStateOpts, root: DialogRootState);
readonly props: {
readonly "data-state": "open" | "closed";
readonly id: string;
readonly role: "heading";
readonly "aria-level": 1 | 2 | 3 | 4 | 6 | 5;
};
}
interface DialogDescriptionStateOpts extends WithRefOpts {
}
export declare class DialogDescriptionState {
static create(opts: DialogDescriptionStateOpts): DialogDescriptionState;
readonly opts: DialogDescriptionStateOpts;
readonly root: DialogRootState;
readonly attachment: RefAttachment;
constructor(opts: DialogDescriptionStateOpts, root: DialogRootState);
readonly props: {
readonly "data-state": "open" | "closed";
readonly id: string;
};
}
interface DialogContentStateOpts extends WithRefOpts {
}
export declare class DialogContentState {
static create(opts: DialogContentStateOpts): DialogContentState;
readonly opts: DialogContentStateOpts;
readonly root: DialogRootState;
readonly attachment: RefAttachment;
constructor(opts: DialogContentStateOpts, root: DialogRootState);
readonly snippetProps: {
open: boolean;
};
readonly props: {
readonly "data-state": "open" | "closed";
readonly id: string;
readonly role: "dialog" | "alertdialog";
readonly "aria-modal": "true";
readonly "aria-describedby": string | undefined;
readonly "aria-labelledby": string | undefined;
readonly style: {
readonly pointerEvents: "auto";
readonly outline: "none" | undefined;
};
readonly tabindex: -1 | undefined;
};
}
interface DialogOverlayStateOpts extends WithRefOpts {
}
export declare class DialogOverlayState {
static create(opts: DialogOverlayStateOpts): DialogOverlayState;
readonly opts: DialogOverlayStateOpts;
readonly root: DialogRootState;
readonly attachment: RefAttachment;
constructor(opts: DialogOverlayStateOpts, root: DialogRootState);
readonly snippetProps: {
open: boolean;
};
readonly props: {
readonly "data-state": "open" | "closed";
readonly id: string;
readonly style: {
readonly pointerEvents: "auto";
};
};
}
interface AlertDialogCancelStateOpts extends WithRefOpts, ReadableBoxedValues<{
disabled: boolean;
}> {
}
export declare class AlertDialogCancelState {
static create(opts: AlertDialogCancelStateOpts): AlertDialogCancelState;
readonly opts: AlertDialogCancelStateOpts;
readonly root: DialogRootState;
readonly attachment: RefAttachment;
constructor(opts: AlertDialogCancelStateOpts, root: DialogRootState);
onclick(e: BitsMouseEvent): void;
onkeydown(e: BitsKeyboardEvent): void;
readonly props: {
readonly "data-state": "open" | "closed";
readonly id: string;
readonly onclick: (e: BitsMouseEvent) => void;
readonly onkeydown: (e: BitsKeyboardEvent) => void;
readonly tabindex: 0;
};
}
export {};