@windoge98/pnp-solflare
Version:
Solflare Wallet adapter for PNP (Plug N Play)
46 lines • 1.91 kB
TypeScript
import { BaseSiwxAdapter, Adapter, Wallet, AdapterConstructorArgs } from '@windoge98/plug-n-play';
import { ActorSubclass } from '@dfinity/agent';
import { WalletAdapterNetwork } from '@solana/wallet-adapter-base';
import { Ed25519KeyIdentity, DelegationChain } from '@dfinity/identity';
export interface SolflareAdapterConfig {
enabled: boolean;
solanaNetwork?: WalletAdapterNetwork;
siwsProviderCanisterId?: string;
providerCanisterId?: string;
rpcEndpoint?: string;
}
/**
* Solflare Wallet adapter implementation for SIWS (Sign-In with Solana)
* Extends BaseSiwxAdapter to provide IC integration via Solana signatures
*/
export declare class SolflareAdapter extends BaseSiwxAdapter<SolflareAdapterConfig> {
readonly id: string;
private solanaAdapter;
private solanaConnection;
private solanaAddress;
private connectingPromise;
constructor(args: AdapterConstructorArgs<SolflareAdapterConfig>);
private initializeConnection;
private initializeSolanaAdapter;
private setupWalletListeners;
private removeWalletListeners;
private handleSolanaConnect;
private handleSolanaDisconnect;
private handleSolanaError;
connect(): Promise<Wallet.Account>;
private performConnect;
private performSiwsLogin;
private createSiwsProviderActor;
isConnected(): Promise<boolean>;
getPrincipal(): Promise<string>;
getAccountId(): Promise<string>;
getAddresses(): Promise<Adapter.Addresses>;
protected disconnectInternal(): Promise<void>;
protected createActorInternal<T>(canisterId: string, idl: any, options?: {
requiresSigning?: boolean;
}): ActorSubclass<T>;
protected onStorageRestored(_sessionKey: Ed25519KeyIdentity, _delegationChain: DelegationChain): Promise<void>;
protected onClearStoredSession(): Promise<void>;
destroy(): void;
}
//# sourceMappingURL=SolflareAdapter.d.ts.map