import { Schema as S } from 'effect'; /** Schema for the animation lifecycle state, tracking enter/leave phases. */ export declare const TransitionState: S.Literals; export type TransitionState = typeof TransitionState.Type; /** Schema for the animation component's state, tracking its unique ID, visibility intent, and lifecycle phase. */ export declare const Model: S.Struct<{ readonly id: S.String; readonly isShowing: S.Boolean; readonly transitionState: S.Literals; }>; export type Model = typeof Model.Type; /** Union of all messages the animation component can produce. */ export declare const Message: import("foldkit/message").MessageUnion<{ readonly Showed: {}; readonly Hid: {}; readonly CompletedWaitForPaint: {}; readonly EndedAnimation: {}; }>; export type Message = typeof Message.Type; export type Showed = typeof Message.Showed.Type; export type Hid = typeof Message.Hid.Type; export declare const OutMessage: import("foldkit/message").MessageUnion<{ readonly StartedLeaveAnimating: {}; readonly TransitionedOut: {}; }>; export type OutMessage = typeof OutMessage.Type; /** Configuration for creating an animation model with `init`. */ export type InitConfig = Readonly<{ id: string; isShowing?: boolean; }>; /** Creates an initial animation model from a config. Defaults to hidden. */ export declare const init: (config: InitConfig) => Model; //# sourceMappingURL=schema.d.ts.map