import * as Duration from "effect/Duration"; export type FormMode = { readonly validation?: "onSubmit"; readonly autoSubmit?: false; readonly debounce?: never; } | { readonly validation: "onBlur"; readonly autoSubmit?: boolean; readonly debounce?: never; } | { readonly validation: "onChange"; readonly debounce?: Duration.DurationInput; readonly autoSubmit?: boolean; }; export type FormModeWithoutAutoSubmit = { readonly validation?: "onSubmit"; readonly autoSubmit?: false; readonly debounce?: never; } | { readonly validation: "onBlur"; readonly autoSubmit?: false; readonly debounce?: never; } | { readonly validation: "onChange"; readonly debounce?: Duration.DurationInput; readonly autoSubmit?: false; }; export interface ParsedMode { readonly validation: "onSubmit" | "onBlur" | "onChange"; readonly debounce: number | null; readonly autoSubmit: boolean; } export declare const parse: (mode?: FormMode) => ParsedMode; //# sourceMappingURL=Mode.d.ts.map