import * as yup from 'yup';
import { TSchema } from './tsSchema';
export declare const normalizeYupError: (obj?: any) => {
    path: string | undefined;
    errors: any;
}[] | undefined;
export type TransformTypeMode = 'decode' | 'encode' | 'keep-encoded' | 'keep-decoded';
export declare const convertSchemaToYupValidationObject: (schema: TSchema, extra?: {
    transformTypeMode?: TransformTypeMode | undefined;
} | undefined) => yup.MixedSchema<any, any, any>;
export declare const getTSchemaValidator: <TSch extends TSchema, TT extends TransformTypeMode>(tSchema: TSch, extra?: {
    transformTypeMode?: TT | undefined;
} | undefined) => {
    validate: (value: any, { stripUnknown, abortEarly }?: {
        stripUnknown?: boolean | undefined;
        abortEarly?: boolean | undefined;
    }) => any;
    validateSync: (value: any, { stripUnknown, abortEarly }?: {
        stripUnknown?: boolean | undefined;
        abortEarly?: boolean | undefined;
    }) => any;
    isValid: (value: any) => boolean;
    isValidSync: (value: any) => boolean;
};
