import { z } from 'zod'; import type { FeeQuote, FeeQuoteRequest } from '../types/FeeQuote'; import type { SubmitResult, VerificationResult } from '../types/GasFreeResult'; import { GasFreeTransferStatus } from '../types/GasFreeResult'; export declare const MiningUTXOSchema: z.ZodObject<{ txid: z.ZodString; vout: z.ZodNumber; value: z.ZodNumber; script_pubkey: z.ZodString; }, "strip", z.ZodTypeAny, { value: number; txid: string; vout: number; script_pubkey: string; }, { value: number; txid: string; vout: number; script_pubkey: string; }>; export declare const MiningChangeUTXOSchema: z.ZodObject<{ address: z.ZodString; value: z.ZodNumber; }, "strip", z.ZodTypeAny, { value: number; address: string; }, { value: number; address: string; }>; export declare const FeeQuoteSchema: z.ZodObject<{ quoteId: z.ZodString; userId: z.ZodString; assetId: z.ZodOptional; miningFeeSats: z.ZodNumber; feeRateSatPerVByte: z.ZodNumber; serviceFeePercentage: z.ZodNumber; serviceFeeAmount: z.ZodNumber; assetType: z.ZodOptional; witnessUtxoFundingSats: z.ZodNumber; miningUTXO: z.ZodObject<{ txid: z.ZodString; vout: z.ZodNumber; value: z.ZodNumber; script_pubkey: z.ZodString; }, "strip", z.ZodTypeAny, { value: number; txid: string; vout: number; script_pubkey: string; }, { value: number; txid: string; vout: number; script_pubkey: string; }>; miningChangeUTXO: z.ZodOptional>; serviceFeeInvoice: z.ZodString; serviceFeeRecipientId: z.ZodString; status: z.ZodEnum<["pending", "accepted", "expired", "completed", "failed"]>; expiresAt: z.ZodString; createdAt: z.ZodString; }, "strip", z.ZodTypeAny, { status: "pending" | "accepted" | "expired" | "completed" | "failed"; quoteId: string; userId: string; miningFeeSats: number; feeRateSatPerVByte: number; serviceFeePercentage: number; serviceFeeAmount: number; witnessUtxoFundingSats: number; miningUTXO: { value: number; txid: string; vout: number; script_pubkey: string; }; serviceFeeInvoice: string; serviceFeeRecipientId: string; expiresAt: string; createdAt: string; assetId?: string | undefined; assetType?: string | undefined; miningChangeUTXO?: { value: number; address: string; } | undefined; }, { status: "pending" | "accepted" | "expired" | "completed" | "failed"; quoteId: string; userId: string; miningFeeSats: number; feeRateSatPerVByte: number; serviceFeePercentage: number; serviceFeeAmount: number; witnessUtxoFundingSats: number; miningUTXO: { value: number; txid: string; vout: number; script_pubkey: string; }; serviceFeeInvoice: string; serviceFeeRecipientId: string; expiresAt: string; createdAt: string; assetId?: string | undefined; assetType?: string | undefined; miningChangeUTXO?: { value: number; address: string; } | undefined; }>; export declare const FeeQuoteRequestSchema: z.ZodObject<{ userId: z.ZodString; assetId: z.ZodString; numInputs: z.ZodNumber; numOutputs: z.ZodNumber; recipientInvoice: z.ZodString; transferAmount: z.ZodNumber; }, "strip", z.ZodTypeAny, { assetId: string; userId: string; numInputs: number; numOutputs: number; recipientInvoice: string; transferAmount: number; }, { assetId: string; userId: string; numInputs: number; numOutputs: number; recipientInvoice: string; transferAmount: number; }>; export declare const SubmitPSBTRequestSchema: z.ZodObject<{ quoteId: z.ZodString; psbtBase64: z.ZodString; consignmentBase64: z.ZodString; }, "strip", z.ZodTypeAny, { quoteId: string; psbtBase64: string; consignmentBase64: string; }, { quoteId: string; psbtBase64: string; consignmentBase64: string; }>; export declare const VerifyTransferRequestSchema: z.ZodObject<{ quoteId: z.ZodString; transferSuccess: z.ZodBoolean; signedPsbtBase64: z.ZodOptional; txid: z.ZodOptional; failureReason: z.ZodOptional; }, "strip", z.ZodTypeAny, { quoteId: string; transferSuccess: boolean; signedPsbtBase64?: string | undefined; txid?: string | undefined; failureReason?: string | undefined; }, { quoteId: string; transferSuccess: boolean; signedPsbtBase64?: string | undefined; txid?: string | undefined; failureReason?: string | undefined; }>; export declare const GasFreeTransferStatusSchema: z.ZodNativeEnum; export declare const GasFreeResultSchema: z.ZodObject<{ status: z.ZodNativeEnum; txid: z.ZodOptional; consignment: z.ZodOptional; quoteId: z.ZodString; totalFeeSats: z.ZodNumber; miningFeeSats: z.ZodNumber; serviceFeeSats: z.ZodNumber; rgbAmount: z.ZodString; assetId: z.ZodString; recipient: z.ZodString; initiatedAt: z.ZodNumber; completedAt: z.ZodOptional; error: z.ZodOptional; metadata: z.ZodOptional>; }, "strip", z.ZodTypeAny, { assetId: string; status: GasFreeTransferStatus; quoteId: string; miningFeeSats: number; totalFeeSats: number; serviceFeeSats: number; rgbAmount: string; recipient: string; initiatedAt: number; txid?: string | undefined; consignment?: string | undefined; completedAt?: number | undefined; error?: string | undefined; metadata?: Record | undefined; }, { assetId: string; status: GasFreeTransferStatus; quoteId: string; miningFeeSats: number; totalFeeSats: number; serviceFeeSats: number; rgbAmount: string; recipient: string; initiatedAt: number; txid?: string | undefined; consignment?: string | undefined; completedAt?: number | undefined; error?: string | undefined; metadata?: Record | undefined; }>; export declare const SubmitResultSchema: z.ZodObject<{ quoteId: z.ZodString; signedPsbtBase64: z.ZodString; transactionId: z.ZodString; estimatedTxSize: z.ZodNumber; miningUtxoTxid: z.ZodString; miningUtxoVout: z.ZodNumber; signedAt: z.ZodString; }, "strip", z.ZodTypeAny, { quoteId: string; signedPsbtBase64: string; transactionId: string; estimatedTxSize: number; miningUtxoTxid: string; miningUtxoVout: number; signedAt: string; }, { quoteId: string; signedPsbtBase64: string; transactionId: string; estimatedTxSize: number; miningUtxoTxid: string; miningUtxoVout: number; signedAt: string; }>; export declare const VerificationResultSchema: z.ZodObject<{ quoteId: z.ZodString; transactionId: z.ZodString; status: z.ZodEnum<["verified", "pending_verification", "failed", "errored"]>; message: z.ZodString; inMempool: z.ZodBoolean; verifiedAt: z.ZodString; }, "strip", z.ZodTypeAny, { message: string; status: "failed" | "verified" | "pending_verification" | "errored"; quoteId: string; transactionId: string; inMempool: boolean; verifiedAt: string; }, { message: string; status: "failed" | "verified" | "pending_verification" | "errored"; quoteId: string; transactionId: string; inMempool: boolean; verifiedAt: string; }>; export declare function validateFeeQuote(data: unknown): FeeQuote; export declare function validateFeeQuoteRequest(data: unknown): FeeQuoteRequest; export declare function validateSubmitResult(data: unknown): SubmitResult; export declare function validateVerificationResult(data: unknown): VerificationResult; export declare function validatePSBT(psbt: string): boolean; export declare function validateRGBAmount(amount: string): boolean; //# sourceMappingURL=validation.d.ts.map