import type { ZodSchema } from 'zod'; /** * Same as `zValidator('json', schema)`, but exposes zod error details * in the 400 response only in develop mode. */ export declare function jsonValidatorMiddleware(schema: T): import("hono").MiddlewareHandler ? import("zod").input : T extends import("zod/v4/core").$ZodType> ? import("zod/v4").input : never) ? true : false) extends true ? { json?: ([T extends ZodSchema ? import("zod").input : T extends import("zod/v4/core").$ZodType> ? import("zod/v4").input : never] extends [any] ? T extends ZodSchema ? import("zod").input : T extends import("zod/v4/core").$ZodType> ? import("zod/v4").input : never : [Exclude ? import("zod").input : T extends import("zod/v4/core").$ZodType> ? import("zod/v4").input : never, undefined>] extends [never] ? {} : [Exclude ? import("zod").input : T extends import("zod/v4/core").$ZodType> ? import("zod/v4").input : never, undefined>] extends [object] ? undefined extends (T extends ZodSchema ? import("zod").input : T extends import("zod/v4/core").$ZodType> ? import("zod/v4").input : never) ? (((Exclude ? import("zod").input : T extends import("zod/v4/core").$ZodType> ? import("zod/v4").input : never, (T extends ZodSchema ? import("zod").input : T extends import("zod/v4/core").$ZodType> ? import("zod/v4").input : never) & undefined> extends infer T_3 ? { [K in keyof T_3]: ([Exclude] extends [string] ? [string & Exclude] extends [import("hono/utils/types").UnionToIntersection>] ? false : true : false) extends true ? T_3[K] : ([unknown] extends [T_3[K]] ? false : undefined extends T_3[K] ? true : false) extends true ? T_3[K] : Target extends "form" ? T$1 | T$1[] : Target extends "query" ? string | string[] : Target extends "param" ? string : Target extends "header" ? string : Target extends "cookie" ? string : unknown; } : never) extends infer T_2 ? { [K in keyof T_2]: T_2[K]; } : never) extends infer T_1 ? { [K in keyof T_1]: T_1[K]; } : never) | ((T extends ZodSchema ? import("zod").input : T extends import("zod/v4/core").$ZodType> ? import("zod/v4").input : never) & undefined) : (((T extends ZodSchema ? import("zod").input : T extends import("zod/v4/core").$ZodType> ? import("zod/v4").input : never) extends infer T_6 ? { [K in keyof T_6]: ([Exclude] extends [string] ? [string & Exclude] extends [import("hono/utils/types").UnionToIntersection>] ? false : true : false) extends true ? T_6[K] : ([unknown] extends [T_6[K]] ? false : undefined extends T_6[K] ? true : false) extends true ? T_6[K] : Target extends "form" ? T$1 | T$1[] : Target extends "query" ? string | string[] : Target extends "param" ? string : Target extends "header" ? string : Target extends "cookie" ? string : unknown; } : never) extends infer T_5 ? { [K in keyof T_5]: T_5[K]; } : never) extends infer T_4 ? { [K in keyof T_4]: T_4[K]; } : never : {}) | undefined; } : { json: [T extends ZodSchema ? import("zod").input : T extends import("zod/v4/core").$ZodType> ? import("zod/v4").input : never] extends [any] ? T extends ZodSchema ? import("zod").input : T extends import("zod/v4/core").$ZodType> ? import("zod/v4").input : never : [Exclude ? import("zod").input : T extends import("zod/v4/core").$ZodType> ? import("zod/v4").input : never, undefined>] extends [never] ? {} : [Exclude ? import("zod").input : T extends import("zod/v4/core").$ZodType> ? import("zod/v4").input : never, undefined>] extends [object] ? undefined extends (T extends ZodSchema ? import("zod").input : T extends import("zod/v4/core").$ZodType> ? import("zod/v4").input : never) ? (((Exclude ? import("zod").input : T extends import("zod/v4/core").$ZodType> ? import("zod/v4").input : never, (T extends ZodSchema ? import("zod").input : T extends import("zod/v4/core").$ZodType> ? import("zod/v4").input : never) & undefined> extends infer T_3 ? { [K in keyof T_3]: ([Exclude] extends [string] ? [string & Exclude] extends [import("hono/utils/types").UnionToIntersection>] ? false : true : false) extends true ? T_3[K] : ([unknown] extends [T_3[K]] ? false : undefined extends T_3[K] ? true : false) extends true ? T_3[K] : Target extends "form" ? T$1 | T$1[] : Target extends "query" ? string | string[] : Target extends "param" ? string : Target extends "header" ? string : Target extends "cookie" ? string : unknown; } : never) extends infer T_2 ? { [K in keyof T_2]: T_2[K]; } : never) extends infer T_1 ? { [K in keyof T_1]: T_1[K]; } : never) | ((T extends ZodSchema ? import("zod").input : T extends import("zod/v4/core").$ZodType> ? import("zod/v4").input : never) & undefined) : (((T extends ZodSchema ? import("zod").input : T extends import("zod/v4/core").$ZodType> ? import("zod/v4").input : never) extends infer T_6 ? { [K in keyof T_6]: ([Exclude] extends [string] ? [string & Exclude] extends [import("hono/utils/types").UnionToIntersection>] ? false : true : false) extends true ? T_6[K] : ([unknown] extends [T_6[K]] ? false : undefined extends T_6[K] ? true : false) extends true ? T_6[K] : Target extends "form" ? T$1 | T$1[] : Target extends "query" ? string | string[] : Target extends "param" ? string : Target extends "header" ? string : Target extends "cookie" ? string : unknown; } : never) extends infer T_5 ? { [K in keyof T_5]: T_5[K]; } : never) extends infer T_4 ? { [K in keyof T_4]: T_4[K]; } : never : {}; }; out: { json: T extends ZodSchema ? import("zod").output : T extends import("zod/v4/core").$ZodType> ? import("zod/v4").output : never; }; }, (Response & import("hono").TypedResponse<"Bad Request", 400, "text">) | (Response & import("hono").TypedResponse<{ success: boolean; error: ({ path: (string | number)[]; message: string; code: "custom"; params?: { [x: string]: any; } | undefined; fatal?: boolean | undefined; } | { path: (string | number)[]; message: string; code: "invalid_arguments"; argumentsError: { name: string; stack?: string; cause?: import("hono/utils/types").JSONValue | undefined; issues: ({ path: (string | number)[]; message: string; code: "custom"; params?: { [x: string]: any; } | undefined; fatal?: boolean | undefined; } | /*elided*/ any | { path: (string | number)[]; message: string; code: "invalid_date"; fatal?: boolean | undefined; } | { path: (string | number)[]; message: string; received: string | number; code: "invalid_enum_value"; options: (string | number)[]; fatal?: boolean | undefined; } | { path: (string | number)[]; message: string; code: "invalid_intersection_types"; fatal?: boolean | undefined; } | { path: (string | number)[]; message: string; code: "invalid_literal"; expected: import("hono/utils/types").JSONValue; received: import("hono/utils/types").JSONValue; fatal?: boolean | undefined; } | { path: (string | number)[]; message: string; code: "invalid_return_type"; returnTypeError: /*elided*/ any; fatal?: boolean | undefined; } | { path: (string | number)[]; message: string; code: "invalid_string"; validation: import("zod").StringValidation; fatal?: boolean | undefined; } | { path: (string | number)[]; message: string; code: "invalid_type"; expected: import("zod").ZodParsedType; received: import("zod").ZodParsedType; fatal?: boolean | undefined; } | { path: (string | number)[]; message: string; code: "invalid_union_discriminator"; options: (string | number | boolean | null)[]; fatal?: boolean | undefined; } | { path: (string | number)[]; message: string; code: "invalid_union"; unionErrors: /*elided*/ any[]; fatal?: boolean | undefined; } | { path: (string | number)[]; message: string; code: "not_finite"; fatal?: boolean | undefined; } | { path: (string | number)[]; message: string; code: "not_multiple_of"; multipleOf: number; fatal?: boolean | undefined; } | { path: (string | number)[]; message: string; code: "too_big"; maximum: number; inclusive: boolean; exact?: boolean; type: "array" | "string" | "number" | "set" | "date" | "bigint"; fatal?: boolean | undefined; } | { path: (string | number)[]; message: string; code: "too_small"; minimum: number; inclusive: boolean; exact?: boolean; type: "array" | "string" | "number" | "set" | "date" | "bigint"; fatal?: boolean | undefined; } | { path: (string | number)[]; message: string; code: "unrecognized_keys"; keys: string[]; fatal?: boolean | undefined; })[]; readonly errors: ({ path: (string | number)[]; message: string; code: "custom"; params?: { [x: string]: any; } | undefined; fatal?: boolean | undefined; } | /*elided*/ any | { path: (string | number)[]; message: string; code: "invalid_date"; fatal?: boolean | undefined; } | { path: (string | number)[]; message: string; received: string | number; code: "invalid_enum_value"; options: (string | number)[]; fatal?: boolean | undefined; } | { path: (string | number)[]; message: string; code: "invalid_intersection_types"; fatal?: boolean | undefined; } | { path: (string | number)[]; message: string; code: "invalid_literal"; expected: import("hono/utils/types").JSONValue; received: import("hono/utils/types").JSONValue; fatal?: boolean | undefined; } | { path: (string | number)[]; message: string; code: "invalid_return_type"; returnTypeError: any; fatal?: boolean | undefined; } | { path: (string | number)[]; message: string; code: "invalid_string"; validation: import("zod").StringValidation; fatal?: boolean | undefined; } | { path: (string | number)[]; message: string; code: "invalid_type"; expected: import("zod").ZodParsedType; received: import("zod").ZodParsedType; fatal?: boolean | undefined; } | { path: (string | number)[]; message: string; code: "invalid_union_discriminator"; options: (string | number | boolean | null)[]; fatal?: boolean | undefined; } | { path: (string | number)[]; message: string; code: "invalid_union"; unionErrors: any[]; fatal?: boolean | undefined; } | { path: (string | number)[]; message: string; code: "not_finite"; fatal?: boolean | undefined; } | { path: (string | number)[]; message: string; code: "not_multiple_of"; multipleOf: number; fatal?: boolean | undefined; } | { path: (string | number)[]; message: string; code: "too_big"; maximum: number; inclusive: boolean; exact?: boolean; type: "array" | "string" | "number" | "set" | "date" | "bigint"; fatal?: boolean | undefined; } | { path: (string | number)[]; message: string; code: "too_small"; minimum: number; inclusive: boolean; exact?: boolean; type: "array" | "string" | "number" | "set" | "date" | "bigint"; fatal?: boolean | undefined; } | { path: (string | number)[]; message: string; code: "unrecognized_keys"; keys: string[]; fatal?: boolean | undefined; })[]; readonly message: string; readonly isEmpty: boolean; addIssue: never; addIssues: never; readonly formErrors: { formErrors: string[]; fieldErrors: { [x: string]: string[] | undefined; [x: number]: string[] | undefined; }; }; }; fatal?: boolean | undefined; } | { path: (string | number)[]; message: string; code: "invalid_date"; fatal?: boolean | undefined; } | { path: (string | number)[]; message: string; received: string | number; code: "invalid_enum_value"; options: (string | number)[]; fatal?: boolean | undefined; } | { path: (string | number)[]; message: string; code: "invalid_intersection_types"; fatal?: boolean | undefined; } | { path: (string | number)[]; message: string; code: "invalid_literal"; expected: import("hono/utils/types").JSONValue; received: import("hono/utils/types").JSONValue; fatal?: boolean | undefined; } | { path: (string | number)[]; message: string; code: "invalid_return_type"; returnTypeError: any; fatal?: boolean | undefined; } | { path: (string | number)[]; message: string; code: "invalid_string"; validation: import("zod").StringValidation; fatal?: boolean | undefined; } | { path: (string | number)[]; message: string; code: "invalid_type"; expected: import("zod").ZodParsedType; received: import("zod").ZodParsedType; fatal?: boolean | undefined; } | { path: (string | number)[]; message: string; code: "invalid_union_discriminator"; options: (string | number | boolean | null)[]; fatal?: boolean | undefined; } | { path: (string | number)[]; message: string; code: "invalid_union"; unionErrors: any[]; fatal?: boolean | undefined; } | { path: (string | number)[]; message: string; code: "not_finite"; fatal?: boolean | undefined; } | { path: (string | number)[]; message: string; code: "not_multiple_of"; multipleOf: number; fatal?: boolean | undefined; } | { path: (string | number)[]; message: string; code: "too_big"; maximum: number; inclusive: boolean; exact?: boolean; type: "array" | "string" | "number" | "set" | "date" | "bigint"; fatal?: boolean | undefined; } | { path: (string | number)[]; message: string; code: "too_small"; minimum: number; inclusive: boolean; exact?: boolean; type: "array" | "string" | "number" | "set" | "date" | "bigint"; fatal?: boolean | undefined; } | { path: (string | number)[]; message: string; code: "unrecognized_keys"; keys: string[]; fatal?: boolean | undefined; })[]; }, 400, "json">)>; //# sourceMappingURL=jsonValidatorMiddleware.d.ts.map