import type { CheckNullifiersResponse, CompactScanResponse, FetchByCommitmentRequest, FetchByCommitmentResponse, ChallengeResponse, CheckUsernameResponse, DeleteUserDataResponse, MerkleProofResponse, MerkleRootResponse, MerkleTreeResponse, PreRegisterKeyResponse, PrivateSwapRequest, PrivateSwapResponse, PrivateTransferRequest, PrivateTransferResponse, QueryNotesRequest, QueryNotesResponse, RegisterRequest, RegisterResponse, RestoreRequest, RestoreResponse, SaveEncryptedNoteRequest, SaveEncryptedNoteResponse, VeiloPublicKeyResponse, WithdrawRequest, WithdrawResponse, PrepareWithdrawRequest, PrepareWithdrawResponse, SubmitSpendRequest, SubmitWithdrawResponse, PrepareMergeRequest, ClientProductOpen, PrepareClientJperpOpenRequest, PrepareClientJperpOpenResponse, SubmitClientJperpOpenResponse, PrepareClientProductOpenRequest, PrepareClientProductOpenResponse, SubmitClientProductOpenResponse, PrepareClientSwapRequest, PrepareClientSwapResponse, SubmitClientSwapRequest, SubmitClientSwapResponse, PrepareTransferRequest, PrepareTransferResponse, SubmitTransferResponse, PrepareMergeResponse, SubmitMergeRequest, SubmitMergeResponse } from "./types.js"; /** Request a wallet-authentication challenge from Veilo. */ export declare function getChallenge(walletPublicKey: string): Promise; /** Register a Veilo account and receive its auth token. */ export declare function register(data: RegisterRequest): Promise; /** Restore a Veilo account and receive its auth token. */ export declare function restore(data: RestoreRequest): Promise; export declare function checkUsername(username: string): Promise; export declare function getVeiloPublicKey(params: { username: string; publicKey?: never; } | { publicKey: string; username?: never; }): Promise; export declare function preRegisterKey(solanaAddress: string): Promise; export declare function saveEncryptedNote(data: SaveEncryptedNoteRequest): Promise; /** Query notes with an explicit per-call token; no auth state is shared. */ export declare function queryEncryptedNotes(authToken: string, params?: QueryNotesRequest): Promise; /** Delete the authenticated user's stored data without retaining their token. */ export declare function deleteUserData(authToken: string): Promise; /** One page of the public compact-note feed. Prefer `scanCompactNotes`. */ export declare function compactScan(params?: { limit?: number; cursor?: string; }): Promise; /** * One fetch-by-commitment request, capped at 50 commitments by the server. * Prefer `fetchNotesByCommitment` from the notes module, which chunks for you. */ export declare function fetchNotesByCommitmentPage(data: FetchByCommitmentRequest): Promise; /** Raw check-batch call. Prefer `checkNullifiersSpent`, which chunks for you. */ export declare function checkNullifiers(nullifiers: string[]): Promise; export declare function getMerkleRoot(mintAddress?: string, treeId?: number): Promise; /** Inclusion proofs for up to 50 commitments; unindexed ones return `found: false`. */ export declare function getMerkleProof(commitments: string[], mintAddress?: string, treeId?: number): Promise; export declare function getMerkleTree(mintAddress?: string, treeId?: number): Promise; export declare function submitWithdraw(data: WithdrawRequest): Promise; export declare function submitPrivateTransfer(data: PrivateTransferRequest): Promise; export declare function submitPrivateSwap(data: PrivateSwapRequest): Promise; /** * Ask what a withdrawal proof must commit to. * * Every returned field is authoritative. `leafIndex` in particular feeds the * nullifier; a guessed one yields a proof the chain will not accept, and there * is no server-side repair once proving is client-side. */ export declare function prepareWithdraw(data: PrepareWithdrawRequest): Promise; /** Submit a locally generated withdrawal proof against its quote. */ export declare function submitWithdrawProof(data: SubmitSpendRequest): Promise; /** Quote a client-proved product open. Prefer `productOpenWithClientProof`, which checks the quote. */ export declare function prepareClientProductOpen(product: ClientProductOpen, data: PrepareClientProductOpenRequest): Promise; /** Submit a locally generated product-open proof against its quote. */ export declare function submitClientProductOpenProof(product: ClientProductOpen, data: SubmitSpendRequest): Promise; /** Quote a client-proved perp open. Prefer `jperpOpenWithClientProof`, which checks the quote. */ export declare function prepareClientJperpOpen(data: PrepareClientJperpOpenRequest): Promise; /** Submit a locally generated perp-open proof against its quote. */ export declare function submitClientJperpOpenProof(data: SubmitSpendRequest): Promise; /** Quote a client-proved swap. Prefer `swapWithClientProof`, which checks the quote. */ export declare function prepareClientSwap(data: PrepareClientSwapRequest): Promise; /** Submit a locally generated swap proof against its quote. */ export declare function submitClientSwapProof(data: SubmitClientSwapRequest): Promise; /** Ask what a private-transfer proof must commit to. No amount or recipient is sent. */ export declare function prepareTransfer(data: PrepareTransferRequest): Promise; /** Submit a locally generated private-transfer proof against its quote. */ export declare function submitTransferProof(data: SubmitSpendRequest): Promise; /** * Quote one consolidation round. * * Pass the WHOLE note set for the mint. A withdrawal accepts at most two * inputs, so more than two must be merged down first, one round at a time. */ export declare function prepareMergeRound(data: PrepareMergeRequest): Promise; /** * Submit a proved consolidation round. * * May land partially. When `data.replanRequired` is true, re-plan from the * notes now held rather than retrying the round. */ export declare function submitMergeRound(data: SubmitMergeRequest): Promise; export { submitClosePosition, submitMergePositions, submitOpenPosition, } from "../positions/relayer.js"; export { submitJperpCancelTrigger, submitJperpClose, submitJperpOpen, submitJperpRecoverNative, submitJperpRecoverSeed, submitJperpReissue, submitJperpSetTpsl, submitJperpUpdateTpsl, } from "../perps/relayer.js"; export { submitPredictionOpen, submitPredictionReissue, } from "../predictions/relayer.js";