import { Option, Schema as S } from 'effect'; import type { Html, HtmlBuilder } from 'foldkit/html'; import * as Update from 'foldkit/update'; export declare const Model: S.Struct<{ readonly isEnabled: S.Boolean; readonly dialog: S.Struct<{ readonly id: S.String; readonly isOpen: S.Boolean; readonly isAnimated: S.Boolean; readonly animation: S.Struct<{ readonly id: S.String; readonly isShowing: S.Boolean; readonly transitionState: S.Literals; }>; readonly maybeFocusSelector: S.Option; }>; }>; export type Model = typeof Model.Type; export declare const Message: import("foldkit/message").MessageUnion<{ readonly ClickedToggle: {}; readonly ClickedSubmit: {}; readonly GotDialogMessage: { readonly message: import("foldkit/message").MessageUnion<{ readonly RequestedOpen: {}; readonly RequestedClose: {}; readonly CompletedShowDialog: {}; readonly CompletedCloseDialog: {}; readonly Unmounted: {}; readonly CompletedReleaseDialogResources: {}; readonly GotAnimationMessage: { readonly message: import("foldkit/message").MessageUnion<{ readonly Showed: {}; readonly Hid: {}; readonly CompletedWaitForPaint: {}; readonly EndedAnimation: {}; }>; }; }>; }; }>; export type Message = typeof Message.Type; export declare const initialModel: Model; export declare const update: (model: Model, message: Message) => Readonly<{ model: { readonly isEnabled: boolean; readonly dialog: { readonly id: string; readonly isOpen: boolean; readonly isAnimated: boolean; readonly animation: { readonly id: string; readonly isShowing: boolean; readonly transitionState: "Idle" | "EnterStart" | "EnterAnimating" | "LeaveStart" | "LeaveAnimating"; }; readonly maybeFocusSelector: Option.Option; }; }; commands?: Update.Commands<{ readonly _tag: "ClickedToggle"; } | { readonly _tag: "ClickedSubmit"; } | { readonly _tag: "GotDialogMessage"; readonly message: { readonly _tag: "RequestedOpen"; } | { readonly _tag: "RequestedClose"; } | { readonly _tag: "CompletedShowDialog"; } | { readonly _tag: "CompletedCloseDialog"; } | { readonly _tag: "Unmounted"; } | { readonly _tag: "CompletedReleaseDialogResources"; } | { readonly _tag: "GotAnimationMessage"; readonly message: { readonly _tag: "Showed"; } | { readonly _tag: "Hid"; } | { readonly _tag: "CompletedWaitForPaint"; } | { readonly _tag: "EndedAnimation"; }; }; }, never>; outMessage?: never; }>; /** Plain view, no dialog wrapper. */ export declare const view: (model: Model, h: HtmlBuilder) => Html; /** View with submit button inside a dialog's panel. */ export declare const viewWithDialog: (model: Model, h: HtmlBuilder) => Html; //# sourceMappingURL=disabledButton.d.ts.map