import * as z4 from "zod/v4/core";
import type { NestedFieldErrors } from "./flatten-zod-form-errors";
import type { DeepPartial } from "./deep-partial";
import type { FlattenedPaths } from "./schema-paths";
type MetaKeys = "form" | "global";
type FlattenedErrorsWithMeta<T extends z4.$ZodType> = Partial<Record<FlattenedPaths<T> | MetaKeys, string>>;
export type ParseErrors<T extends z4.$ZodType> = {
    form?: string;
    global?: string;
    fields?: DeepPartial<NestedFieldErrors<T>>;
    flattened?: FlattenedErrorsWithMeta<T>;
};
export type ParseSuccess<T extends z4.$ZodType> = {
    success: true;
    data: z4.output<T>;
    errors?: undefined;
};
export type ParseFailure<T extends z4.$ZodType> = {
    success: false;
    data?: undefined;
    errors: ParseErrors<T>;
};
export type ParseResult<T extends z4.$ZodType> = ParseSuccess<T> | ParseFailure<T>;
export declare const parseFormData: <T extends z4.$ZodType>(form: FormData, { schema, }: {
    schema: T;
}) => ParseResult<T>;
export declare const parseData: <T extends z4.$ZodType>(data: unknown, { schema, }: {
    schema: T;
}) => ParseResult<T>;
export {};
//# sourceMappingURL=parse-zod-form-data.d.ts.map