@etherspot/prime-sdk
Version:
Etherspot Prime (Account Abstraction) SDK
27 lines (26 loc) • 1.21 kB
TypeScript
import { Observable } from 'rxjs';
import { BytesLike, providers, Wallet as EtherWallet } from 'ethers';
import { Service, ObjectSubject } from '../common';
import { WalletProvider, WalletProviderLike, MessagePayload } from './providers';
import { Wallet, WalletOptions } from './interfaces';
export declare class WalletService extends Service {
private providerLike;
private options;
rpcUrl: string;
chain: number;
readonly wallet$: ObjectSubject<Wallet, keyof Wallet>;
readonly EOAAddress$: Observable<string>;
readonly rpcBundlerUrl: string;
readonly chainId: number;
provider: WalletProvider;
constructor(providerLike: WalletProviderLike, options: WalletOptions, rpcUrl: string, chain: number);
get wallet(): Wallet;
get etherWallet(): Partial<EtherWallet>;
get EOAAddress(): string;
get walletProvider(): WalletProvider;
getWalletProvider(): providers.JsonRpcProvider;
signMessage(message: BytesLike): Promise<string>;
signTypedData(types: MessagePayload, message: any, factoryAddress?: string, initCode?: string): Promise<string>;
protected switchWalletProvider(providerLike: WalletProviderLike): void;
protected onInit(): void;
}