UNPKG

@shogun-sdk/one-shot

Version:

Shogun Network unified SDK — core logic, React hooks, and wallet adapters.

34 lines (30 loc) 1.83 kB
import { VersionedTransaction } from '@solana/web3.js'; import { A as AdaptedWallet } from './wallet-DfvPIcuW.js'; import { Signer } from 'ethers/lib/ethers.js'; import { CustomTransport, HttpTransport, WalletClient } from 'viem'; /** * Wraps a Solana-compatible wallet implementation in the {@link AdaptedWallet} interface. * * @param walletAddress - The active Solana account public key as a base58 string. * @param chainId - Numeric identifier representing the target Solana cluster. * @param rpcUrl - RPC endpoint used for follow-on requests (exposed for consumers that need it). * @param signAndSendTransaction - Wallet-supplied runner that signs and submits {@link VersionedTransaction}s. * @returns An {@link AdaptedWallet} tailored for the Solana virtual machine (SVM). */ declare const adaptSolanaWallet: (walletAddress: string, chainId: number, rpcUrl: string, signAllTransactions: (transaction: VersionedTransaction[]) => Promise<VersionedTransaction[]>) => AdaptedWallet; /** * Wraps an ethers {@link Signer} in the {@link AdaptedWallet} interface. * * @param signer - Ethers.js signer instance (e.g. from MetaMask, WalletConnect, JsonRpcProvider). * @param transport - Optional transport used for RPC calls when delegating to `viem`. * @returns An {@link AdaptedWallet} targeting the EVM. */ declare const adaptEthersSigner: (signer: Signer, transport?: CustomTransport | HttpTransport) => AdaptedWallet; /** * Wraps a `viem` {@link WalletClient} instance in the {@link AdaptedWallet} interface. * * @param wallet - Viem wallet client implementing transaction + signature primitives. * @returns An {@link AdaptedWallet} targeting the EVM with viem semantics. */ declare const adaptViemWallet: (wallet: WalletClient) => AdaptedWallet; export { adaptEthersSigner, adaptSolanaWallet, adaptViemWallet };