export declare function dateWithinBounds(iso: string | null | undefined, minIso: string | null | undefined, maxIso: string | null | undefined): boolean; export type MdyDateValueIntent = { readonly type: "select"; readonly iso: string; } | { readonly type: "clear"; }; /** Returns the canonical value transition, or null when a selection is rejected by bounds. */ export declare function dateValueTransition(intent: MdyDateValueIntent, minIso?: string | null, maxIso?: string | null): string | null; export interface MdyDateDraftState { readonly committed: string | null; readonly draft: string | null; readonly open: boolean; } export type MdyDateDraftIntent = { readonly type: "open"; readonly committed: string | null; } | { readonly type: "select"; readonly iso: string; } | { readonly type: "confirm"; } | { readonly type: "cancel"; }; export interface MdyDateDraftTransition { readonly state: MdyDateDraftState; readonly commit: string | null | undefined; readonly restoreFocus: boolean; } /** Modal date draft policy. Selection stays provisional until confirm; cancel discards it. */ export declare function dateDraftTransition(state: MdyDateDraftState, intent: MdyDateDraftIntent, minIso?: string | null, maxIso?: string | null): MdyDateDraftTransition;