UNPKG

@orderly.network/default-solana-adapter

Version:

77 lines (72 loc) 2.79 kB
import { Connection } from '@solana/web3.js'; import { WalletAdapterNetwork, SignerWalletAdapterProps, WalletAdapterProps } from '@solana/wallet-adapter-base'; import { BaseWalletAdapter, RegisterAccountInputs, Message, WithdrawInputs, SignatureDomain, AddOrderlyKeyInputs, SettleInputs } from '@orderly.network/core'; import { ChainNamespace, API } from '@orderly.network/types'; declare global { interface Window { __ORDERLY_VERSION__?: { [key: string]: string; }; } } declare const _default: "2.5.3"; interface SolanaAdapterOption { provider: SolanaWalletProvider; address: string; chain: { id: number; }; } interface SolanaWalletProvider { connection?: Connection; rpcUrl?: string; network: WalletAdapterNetwork; signMessage: (message: Uint8Array) => Promise<Uint8Array>; signTransaction: SignerWalletAdapterProps['signTransaction']; sendTransaction: WalletAdapterProps['sendTransaction']; } declare class DefaultSolanaWalletAdapter extends BaseWalletAdapter<SolanaAdapterOption> { chainNamespace: ChainNamespace; private _address; private _chainId; private _provider; private _connection; constructor(); get address(): string; get chainId(): number; set chainId(chainId: number); get connection(): Connection; private setConfig; private lifecycleName; active(config: SolanaAdapterOption): void; deactivate(): void; update(config: SolanaAdapterOption): void; generateSecretKey(): string; uint8ArrayToHexString(uint8Array: Uint8Array): string; signMessage(message: Uint8Array): Promise<string>; generateRegisterAccountMessage(inputs: RegisterAccountInputs): Promise<Message>; generateWithdrawMessage(inputs: WithdrawInputs): Promise<Message & { domain: SignatureDomain; }>; generateAddOrderlyKeyMessage(inputs: AddOrderlyKeyInputs): Promise<Message>; generateSettleMessage(inputs: SettleInputs): Promise<Message & { domain: SignatureDomain; }>; getBalance(): Promise<bigint>; call(address: string, method: string, params: any[], options?: { abi: any; }): Promise<bigint>; sendTransaction(contractAddress: string, method: string, payload: { from: string; to?: string; data: any[]; value?: bigint; }, options: { abi: any; }): Promise<string | undefined>; callOnChain(chain: API.NetworkInfos, address: string, method: string, params: any[], options: { abi: any; }): Promise<any>; pollTransactionReceiptWithBackoff(txHash: string, baseInterval?: number, maxInterval?: number, maxRetries?: number): Promise<any>; } export { DefaultSolanaWalletAdapter, type SolanaWalletProvider, _default as version };