import * as z from './base'; export interface ZodArrayDef extends z.ZodTypeDef { t: z.ZodTypes.array; type: T; nonempty: boolean; } export declare class ZodArray extends z.ZodType, T['_input'][]> { toJSON: () => { t: z.ZodTypes.array; nonempty: boolean; type: object; }; get element(): T; min: (minLength: number, message?: string | { message?: string | undefined; } | undefined) => this; max: (maxLength: number, message?: string | { message?: string | undefined; } | undefined) => this; length: (len: number, message?: string | undefined) => this; nonempty: () => ZodNonEmptyArray; static create: (schema: T_1) => ZodArray; } export declare class ZodNonEmptyArray extends z.ZodType<[T['_output'], ...T['_output'][]], ZodArrayDef, [T['_input'], ...T['_input'][]]> { toJSON: () => { t: z.ZodTypes.array; type: object; }; min: (minLength: number, message?: string | { message?: string | undefined; } | undefined) => this; max: (maxLength: number, message?: string | { message?: string | undefined; } | undefined) => this; length: (len: number, message?: string | undefined) => this; }