import { PropSchema, ValidationResult } from './types'; export type ValidationMode = 'strict' | 'lenient'; export interface PropsValidatorOptions { defaultMode?: ValidationMode; } export declare class PropsValidator { private readonly defaultMode; constructor(options?: PropsValidatorOptions); validate(props: Record | undefined, schema: Record, mode?: ValidationMode): ValidationResult; private validateObject; private resolveProp; private validateType; private validateString; private validateNumber; private validateBoolean; private validateArray; private validateArrayOf; private validatePlainObject; private validateFunction; private validateShape; private validateOneOfType; private matchesType; private applyDefaults; private cloneValue; private isPlainObject; private isNil; private buildPath; private describeType; }