import { z } from 'zod';
import { Path } from '../Path';
/** ZodValidator */
export default class ZodValidator<T extends Record<string, any>> {
    readonly ctx: z.RefinementCtx;
    readonly object: T;
    constructor(ctx: z.RefinementCtx, object: T);
    private getPathString;
    private getPath;
    private completeMessage;
    validate(fieldNameOrPath: keyof T | Path<any>, errorCondition: boolean, message: string): void;
    undesiredField(fieldNameOrPath: keyof T | Path<any>, customMessage?: string): void;
    requiredField(fieldNameOrPath: keyof T | Path<any>, customMessage?: string): void;
}
