import { z } from 'zod';
export declare const PaymentStatusSchema: z.ZodEnum<["pending", "processing", "completed", "failed", "refunded"]>;
export declare const PaymentSchema: z.ZodObject<{
    id: z.ZodString;
    amount: z.ZodNumber;
    currency: z.ZodString;
    status: z.ZodEnum<["pending", "processing", "completed", "failed", "refunded"]>;
    paymentMethod: z.ZodString;
    transactionId: z.ZodOptional<z.ZodString>;
    createdAt: z.ZodUnion<[z.ZodDate, z.ZodString]>;
    updatedAt: z.ZodUnion<[z.ZodDate, z.ZodString]>;
}, "strip", z.ZodTypeAny, {
    status: "failed" | "completed" | "pending" | "processing" | "refunded";
    id: string;
    amount: number;
    currency: string;
    createdAt: string | Date;
    updatedAt: string | Date;
    paymentMethod: string;
    transactionId?: string | undefined;
}, {
    status: "failed" | "completed" | "pending" | "processing" | "refunded";
    id: string;
    amount: number;
    currency: string;
    createdAt: string | Date;
    updatedAt: string | Date;
    paymentMethod: string;
    transactionId?: string | undefined;
}>;
export type Payment = z.infer<typeof PaymentSchema>;
export declare const CreatePaymentSchema: z.ZodObject<Omit<{
    id: z.ZodString;
    amount: z.ZodNumber;
    currency: z.ZodString;
    status: z.ZodEnum<["pending", "processing", "completed", "failed", "refunded"]>;
    paymentMethod: z.ZodString;
    transactionId: z.ZodOptional<z.ZodString>;
    createdAt: z.ZodUnion<[z.ZodDate, z.ZodString]>;
    updatedAt: z.ZodUnion<[z.ZodDate, z.ZodString]>;
}, "status" | "id" | "createdAt" | "updatedAt" | "transactionId">, "strip", z.ZodTypeAny, {
    amount: number;
    currency: string;
    paymentMethod: string;
}, {
    amount: number;
    currency: string;
    paymentMethod: string;
}>;
export type CreatePayment = z.infer<typeof CreatePaymentSchema>;
//# sourceMappingURL=payment.d.ts.map