UNPKG

@windoge98/pnp-coinbase

Version:

Coinbase wallet adapter for Plug-n-Play

65 lines 2.43 kB
import { BaseSiwxAdapter, Adapter, Wallet } from '@windoge98/plug-n-play'; import { ActorSubclass } from '@dfinity/agent'; import { WalletAdapterNetwork } from '@solana/wallet-adapter-base'; import { Transaction } from '@solana/web3.js'; import { Ed25519KeyIdentity, DelegationChain } from '@dfinity/identity'; export interface CoinbaseAdapterConfig { enabled: boolean; solanaNetwork?: WalletAdapterNetwork; siwsProviderCanisterId?: string; providerCanisterId?: string; rpcEndpoint?: string; } /** * Coinbase-specific SIWS adapter implementation * Provides Sign-In with Solana functionality for Coinbase wallet */ export declare class CoinbaseAdapter extends BaseSiwxAdapter<CoinbaseAdapterConfig> { walletName: string; logo: string; readonly id: string; static supportedChains: Adapter.Chain[]; private coinbaseAdapter; private solanaConnection; private solanaAddress; private connectingPromise; protected resolveProviderCanisterId(): string; constructor(args: Adapter.ConstructorArgs & { config: CoinbaseAdapterConfig; }); private isBrowser; private initializeConnection; private initializeCoinbaseAdapter; private setupWalletListeners; private removeWalletListeners; private handleCoinbaseConnect; private handleCoinbaseDisconnect; private handleCoinbaseError; destroy(): void; isConnected(): Promise<boolean>; connect(): Promise<Wallet.Account>; private createSiwsProviderActor; private signSiwsMessage; private performSiwsLogin; protected disconnectInternal(): Promise<void>; getPrincipal(): Promise<string>; getAccountId(): Promise<string>; getSolanaAddress(): Promise<string>; getAddresses(): Promise<Adapter.Addresses>; protected createActorInternal<T>(canisterId: string, idl: any, options?: { requiresSigning?: boolean; }): ActorSubclass<T>; getSolBalance(): Promise<{ amount: number; usdValue?: number; }>; estimateTransactionFee(transaction: Transaction): Promise<number>; getTransactionStatus(signature: string): Promise<{ confirmed: boolean; slot?: number; err?: any; }>; protected onStorageRestored(_sessionKey: Ed25519KeyIdentity, _delegationChain: DelegationChain): Promise<void>; protected onClearStoredSession(): Promise<void>; } //# sourceMappingURL=CoinbaseAdapter.d.ts.map