import { z } from 'zod';
import { PaymentCondition } from '../../data/paymentConditions.table';
import { Credito } from './credito.schema';
export declare const CondicionSchema: z.ZodEffects<z.ZodObject<{
    tipo: z.ZodNativeEnum<typeof PaymentCondition>;
    entregas: z.ZodOptional<z.ZodArray<z.ZodEffects<z.ZodObject<{
        tipo: z.ZodNativeEnum<typeof import("../../types").PaymentType>;
        tipoDescripcion: z.ZodOptional<z.ZodString>;
        monto: z.ZodEffects<z.ZodNumber, number, number>;
        moneda: z.ZodNativeEnum<typeof import("../../types").Currency>;
        cambio: z.ZodOptional<z.ZodEffects<z.ZodNumber, number, number>>;
        infoTarjeta: z.ZodOptional<z.ZodEffects<z.ZodObject<{
            tipo: z.ZodNativeEnum<typeof import("../../types").CreditCard>;
            tipoDescripcion: z.ZodOptional<z.ZodString>;
            razonSocial: z.ZodOptional<z.ZodString>;
            ruc: z.ZodOptional<z.ZodEffects<z.ZodString, string, string>>;
            medioPago: z.ZodNativeEnum<typeof import("../../types").CreditCardProcessingMethod>;
            codigoAutorizacion: z.ZodEffects<z.ZodOptional<z.ZodNumber>, number | undefined, number | undefined>;
            titular: z.ZodOptional<z.ZodString>;
            numero: z.ZodEffects<z.ZodOptional<z.ZodNumber>, number | undefined, number | undefined>;
        }, "strip", z.ZodTypeAny, {
            tipo: import("../../types").CreditCard;
            medioPago: import("../../types").CreditCardProcessingMethod;
            tipoDescripcion?: string | undefined;
            ruc?: string | undefined;
            razonSocial?: string | undefined;
            codigoAutorizacion?: number | undefined;
            titular?: string | undefined;
            numero?: number | undefined;
        }, {
            tipo: import("../../types").CreditCard;
            medioPago: import("../../types").CreditCardProcessingMethod;
            tipoDescripcion?: string | undefined;
            ruc?: string | undefined;
            razonSocial?: string | undefined;
            codigoAutorizacion?: number | undefined;
            titular?: string | undefined;
            numero?: number | undefined;
        }>, {
            tipoDescripcion: string;
            rucID: string;
            rucDV: string;
            tipo: import("../../types").CreditCard;
            medioPago: import("../../types").CreditCardProcessingMethod;
            ruc?: string | undefined;
            razonSocial?: string | undefined;
            codigoAutorizacion?: number | undefined;
            titular?: string | undefined;
            numero?: number | undefined;
        }, {
            tipo: import("../../types").CreditCard;
            medioPago: import("../../types").CreditCardProcessingMethod;
            tipoDescripcion?: string | undefined;
            ruc?: string | undefined;
            razonSocial?: string | undefined;
            codigoAutorizacion?: number | undefined;
            titular?: string | undefined;
            numero?: number | undefined;
        }>>;
        infoCheque: z.ZodOptional<z.ZodObject<{
            numeroCheque: z.ZodEffects<z.ZodNumber, string, number>;
            banco: z.ZodString;
        }, "strip", z.ZodTypeAny, {
            numeroCheque: string;
            banco: string;
        }, {
            numeroCheque: number;
            banco: string;
        }>>;
    }, "strip", z.ZodTypeAny, {
        tipo: import("../../types").PaymentType;
        monto: number;
        moneda: import("../../types").Currency;
        cambio?: number | undefined;
        tipoDescripcion?: string | undefined;
        infoTarjeta?: {
            tipoDescripcion: string;
            rucID: string;
            rucDV: string;
            tipo: import("../../types").CreditCard;
            medioPago: import("../../types").CreditCardProcessingMethod;
            ruc?: string | undefined;
            razonSocial?: string | undefined;
            codigoAutorizacion?: number | undefined;
            titular?: string | undefined;
            numero?: number | undefined;
        } | undefined;
        infoCheque?: {
            numeroCheque: string;
            banco: string;
        } | undefined;
    }, {
        tipo: import("../../types").PaymentType;
        monto: number;
        moneda: import("../../types").Currency;
        cambio?: number | undefined;
        tipoDescripcion?: string | undefined;
        infoTarjeta?: {
            tipo: import("../../types").CreditCard;
            medioPago: import("../../types").CreditCardProcessingMethod;
            tipoDescripcion?: string | undefined;
            ruc?: string | undefined;
            razonSocial?: string | undefined;
            codigoAutorizacion?: number | undefined;
            titular?: string | undefined;
            numero?: number | undefined;
        } | undefined;
        infoCheque?: {
            numeroCheque: number;
            banco: string;
        } | undefined;
    }>, {
        tipoDescripcion: string;
        monedaDescripcion: string;
        tipo: import("../../types").PaymentType;
        monto: number;
        moneda: import("../../types").Currency;
        cambio?: number | undefined;
        infoTarjeta?: {
            tipoDescripcion: string;
            rucID: string;
            rucDV: string;
            tipo: import("../../types").CreditCard;
            medioPago: import("../../types").CreditCardProcessingMethod;
            ruc?: string | undefined;
            razonSocial?: string | undefined;
            codigoAutorizacion?: number | undefined;
            titular?: string | undefined;
            numero?: number | undefined;
        } | undefined;
        infoCheque?: {
            numeroCheque: string;
            banco: string;
        } | undefined;
    }, {
        tipo: import("../../types").PaymentType;
        monto: number;
        moneda: import("../../types").Currency;
        cambio?: number | undefined;
        tipoDescripcion?: string | undefined;
        infoTarjeta?: {
            tipo: import("../../types").CreditCard;
            medioPago: import("../../types").CreditCardProcessingMethod;
            tipoDescripcion?: string | undefined;
            ruc?: string | undefined;
            razonSocial?: string | undefined;
            codigoAutorizacion?: number | undefined;
            titular?: string | undefined;
            numero?: number | undefined;
        } | undefined;
        infoCheque?: {
            numeroCheque: number;
            banco: string;
        } | undefined;
    }>, "many">>;
    credito: z.ZodOptional<z.ZodEffects<z.ZodObject<{
        tipo: z.ZodNativeEnum<typeof import("../../types").CreditType>;
        plazo: z.ZodOptional<z.ZodString>;
        cuotas: z.ZodEffects<z.ZodOptional<z.ZodNumber>, number | undefined, number | undefined>;
        infoCuotas: z.ZodArray<z.ZodEffects<z.ZodObject<{
            monto: z.ZodEffects<z.ZodNumber, number, number>;
            vencimiento: z.ZodOptional<z.ZodEffects<z.ZodDate, string, Date>>;
            moneda: z.ZodNativeEnum<typeof import("../../types").Currency>;
        }, "strip", z.ZodTypeAny, {
            monto: number;
            moneda: import("../../types").Currency;
            vencimiento?: string | undefined;
        }, {
            monto: number;
            moneda: import("../../types").Currency;
            vencimiento?: Date | undefined;
        }>, {
            monedaDescripcion: string;
            monto: number;
            moneda: import("../../types").Currency;
            vencimiento?: string | undefined;
        }, {
            monto: number;
            moneda: import("../../types").Currency;
            vencimiento?: Date | undefined;
        }>, "many">;
    }, "strip", z.ZodTypeAny, {
        tipo: import("../../types").CreditType;
        infoCuotas: {
            monedaDescripcion: string;
            monto: number;
            moneda: import("../../types").Currency;
            vencimiento?: string | undefined;
        }[];
        plazo?: string | undefined;
        cuotas?: number | undefined;
    }, {
        tipo: import("../../types").CreditType;
        infoCuotas: {
            monto: number;
            moneda: import("../../types").Currency;
            vencimiento?: Date | undefined;
        }[];
        plazo?: string | undefined;
        cuotas?: number | undefined;
    }>, {
        tipoDescripcion: string;
        tipo: import("../../types").CreditType;
        infoCuotas: {
            monedaDescripcion: string;
            monto: number;
            moneda: import("../../types").Currency;
            vencimiento?: string | undefined;
        }[];
        plazo?: string | undefined;
        cuotas?: number | undefined;
    }, {
        tipo: import("../../types").CreditType;
        infoCuotas: {
            monto: number;
            moneda: import("../../types").Currency;
            vencimiento?: Date | undefined;
        }[];
        plazo?: string | undefined;
        cuotas?: number | undefined;
    }>>;
}, "strip", z.ZodTypeAny, {
    tipo: PaymentCondition;
    entregas?: {
        tipoDescripcion: string;
        monedaDescripcion: string;
        tipo: import("../../types").PaymentType;
        monto: number;
        moneda: import("../../types").Currency;
        cambio?: number | undefined;
        infoTarjeta?: {
            tipoDescripcion: string;
            rucID: string;
            rucDV: string;
            tipo: import("../../types").CreditCard;
            medioPago: import("../../types").CreditCardProcessingMethod;
            ruc?: string | undefined;
            razonSocial?: string | undefined;
            codigoAutorizacion?: number | undefined;
            titular?: string | undefined;
            numero?: number | undefined;
        } | undefined;
        infoCheque?: {
            numeroCheque: string;
            banco: string;
        } | undefined;
    }[] | undefined;
    credito?: {
        tipoDescripcion: string;
        tipo: import("../../types").CreditType;
        infoCuotas: {
            monedaDescripcion: string;
            monto: number;
            moneda: import("../../types").Currency;
            vencimiento?: string | undefined;
        }[];
        plazo?: string | undefined;
        cuotas?: number | undefined;
    } | undefined;
}, {
    tipo: PaymentCondition;
    entregas?: {
        tipo: import("../../types").PaymentType;
        monto: number;
        moneda: import("../../types").Currency;
        cambio?: number | undefined;
        tipoDescripcion?: string | undefined;
        infoTarjeta?: {
            tipo: import("../../types").CreditCard;
            medioPago: import("../../types").CreditCardProcessingMethod;
            tipoDescripcion?: string | undefined;
            ruc?: string | undefined;
            razonSocial?: string | undefined;
            codigoAutorizacion?: number | undefined;
            titular?: string | undefined;
            numero?: number | undefined;
        } | undefined;
        infoCheque?: {
            numeroCheque: number;
            banco: string;
        } | undefined;
    }[] | undefined;
    credito?: {
        tipo: import("../../types").CreditType;
        infoCuotas: {
            monto: number;
            moneda: import("../../types").Currency;
            vencimiento?: Date | undefined;
        }[];
        plazo?: string | undefined;
        cuotas?: number | undefined;
    } | undefined;
}>, {
    credito: Credito;
    tipoDescripcion: string;
    tipo: PaymentCondition;
    entregas?: {
        tipoDescripcion: string;
        monedaDescripcion: string;
        tipo: import("../../types").PaymentType;
        monto: number;
        moneda: import("../../types").Currency;
        cambio?: number | undefined;
        infoTarjeta?: {
            tipoDescripcion: string;
            rucID: string;
            rucDV: string;
            tipo: import("../../types").CreditCard;
            medioPago: import("../../types").CreditCardProcessingMethod;
            ruc?: string | undefined;
            razonSocial?: string | undefined;
            codigoAutorizacion?: number | undefined;
            titular?: string | undefined;
            numero?: number | undefined;
        } | undefined;
        infoCheque?: {
            numeroCheque: string;
            banco: string;
        } | undefined;
    }[] | undefined;
}, {
    tipo: PaymentCondition;
    entregas?: {
        tipo: import("../../types").PaymentType;
        monto: number;
        moneda: import("../../types").Currency;
        cambio?: number | undefined;
        tipoDescripcion?: string | undefined;
        infoTarjeta?: {
            tipo: import("../../types").CreditCard;
            medioPago: import("../../types").CreditCardProcessingMethod;
            tipoDescripcion?: string | undefined;
            ruc?: string | undefined;
            razonSocial?: string | undefined;
            codigoAutorizacion?: number | undefined;
            titular?: string | undefined;
            numero?: number | undefined;
        } | undefined;
        infoCheque?: {
            numeroCheque: number;
            banco: string;
        } | undefined;
    }[] | undefined;
    credito?: {
        tipo: import("../../types").CreditType;
        infoCuotas: {
            monto: number;
            moneda: import("../../types").Currency;
            vencimiento?: Date | undefined;
        }[];
        plazo?: string | undefined;
        cuotas?: number | undefined;
    } | undefined;
}>;
export type Condicion = z.infer<typeof CondicionSchema>;
