@@ -321,6 +321,46 @@ export abstract class BaseTNClient<T extends EnvironmentType> {
321321 return action . listWalletRewards ( chain , wallet , withPending ) ;
322322 }
323323
324+ /**
325+ * Gets withdrawal proof for a specific wallet address on a blockchain network
326+ * Returns merkle proofs and validator signatures needed for withdrawal
327+ *
328+ * This method is used for non-custodial bridge withdrawals where users need to
329+ * manually claim their withdrawals by submitting proofs to the destination chain.
330+ * The proof includes validator signatures, merkle root, block hash, and amount.
331+ *
332+ * @param chain The chain identifier (e.g., "hoodi", "sepolia", etc.)
333+ * @param walletAddress The wallet address to get withdrawal proof for
334+ * @returns Promise that resolves to an array of withdrawal proof data
335+ *
336+ * @example
337+ * ```typescript
338+ * // Get withdrawal proofs for Hoodi
339+ * const proofs = await client.getWithdrawalProof("hoodi", "0x742d35Cc6634C0532925a3b844Bc9e7595f0bEb");
340+ *
341+ * // Proofs will be an array like:
342+ * // [{
343+ * // chain: "hoodi",
344+ * // chain_id: "3639",
345+ * // contract: "0x878D6aaeB6e746033f50B8dC268d54B4631554E7",
346+ * // created_at: 3080,
347+ * // recipient: "0x...",
348+ * // amount: "100000000000000000000",
349+ * // block_hash: <base64-encoded>,
350+ * // root: <base64-encoded>,
351+ * // proofs: [],
352+ * // signatures: [<base64-encoded-signatures>]
353+ * // }]
354+ * ```
355+ *
356+ * @note This method has been tested via integration tests in the node repository.
357+ * See: /home/micbun/trufnetwork/kwil-db/node/exts/erc20-bridge/erc20/meta_extension_withdrawal_test.go
358+ */
359+ async getWithdrawalProof ( chain : string , walletAddress : string ) : Promise < any [ ] > {
360+ const action = this . loadAction ( ) ;
361+ return action . getWithdrawalProof ( chain , walletAddress ) ;
362+ }
363+
324364 /**
325365 * Gets taxonomies for specific streams in batch.
326366 * High-level wrapper for ComposedAction.getTaxonomiesForStreams()
0 commit comments