import { CustomError } from "ts-custom-error"; import { Address } from "viem"; import { z } from "zod"; declare const withdrawResponseSchema: z.ZodObject<{ tx_hash: z.ZodString; }, "strip", z.ZodTypeAny, { tx_hash: string; }, { tx_hash: string; }>; export type WithdrawResponse = z.infer; declare const quoteFeesResponseSchema: z.ZodObject<{ base_fee: z.ZodBigInt; relay_fee: z.ZodBigInt; total_fee: z.ZodBigInt; }, "strip", z.ZodTypeAny, { base_fee: bigint; relay_fee: bigint; total_fee: bigint; }, { base_fee: bigint; relay_fee: bigint; total_fee: bigint; }>; export type QuoteFeesResponse = z.infer; export declare class VersionRejectedByRelayer extends CustomError { constructor(message: string); } export declare class GenericWithdrawError extends Error { constructor(message: string); } export type IRelayer = { address: Address; withdraw: (expectedContractVersion: `0x${string}`, idHiding: bigint, oldNullifierHash: bigint, newNote: bigint, merkleRoot: bigint, amount: bigint, proof: Uint8Array, withdrawAddress: `0x${string}`) => Promise; quoteFees: () => Promise; }; export declare class Relayer implements IRelayer { url: string; address: Address; constructor(url: string, address: Address); withdraw: (expectedContractVersion: `0x${string}`, idHiding: bigint, oldNullifierHash: bigint, newNote: bigint, merkleRoot: bigint, amount: bigint, proof: Uint8Array, withdrawAddress: `0x${string}`) => Promise; quoteFees: () => Promise<{ base_fee: bigint; relay_fee: bigint; total_fee: bigint; }>; } export {};