UNPKG

starknetkit

Version:

<!-- logo --> <p align="center"> <img width='300' src="https://starknetkit-website-git-blo-1541-argentlabs.vercel.app/starknetKit-logo.svg"> </p>

61 lines (59 loc) 2.31 kB
import { RequestFn } from '@starknet-io/get-starknet-core'; import { StarknetWindowObject } from '@starknet-io/types-js'; import { JsonRpcProvider } from '@walletconnect/jsonrpc-provider'; import { default as SignClient } from '@walletconnect/sign-client'; import { SignerConnection } from '@walletconnect/signer-connection'; import { SessionTypes } from '@walletconnect/types'; import { AccountInterface, ProviderInterface, SignerInterface, constants } from 'starknet'; import { NamespaceAdapterOptions, NamespaceAdapter } from '../adapter'; export interface EthereumRpcConfig { chains: string[]; methods: string[]; events: string[]; } export declare const serializeStarknetChainId: (chainId: string) => string; export declare const deserializeStarknetChainId: (chainId: string) => string; export declare class StarknetAdapter extends NamespaceAdapter implements StarknetWindowObject { id: string; name: string; version: string; icon: string; provider: ProviderInterface; signer: undefined; account: AccountInterface; selectedAddress: string; namespace: string; methods: string[]; events: string[]; remoteSigner: SignerInterface; signerConnection: SignerConnection; rpcProvider: JsonRpcProvider; chainId: string; client: SignClient; session?: SessionTypes.Struct; rpc: EthereumRpcConfig; private walletRpc; private handleRequest; constructor({ client, chainId, rpcUrl, provider }: NamespaceAdapterOptions); getNetworkName(chainId: string): constants.NetworkName; request: RequestFn; enable(): Promise<string[]>; get isConnected(): true; isPreauthorized(): Promise<boolean>; on: StarknetWindowObject["on"]; off: StarknetWindowObject["off"]; private requestWallet; get isConnecting(): boolean; disable(): Promise<void>; get isWalletConnect(): boolean; protected registerEventListeners(): void; protected formatChainId(chainId: string): string; protected parseChainId(chainId: string): string; protected setAccounts(accounts: string[]): void; private handleRequestChainId; private handleRequestAccounts; private handleGetPermissions; private handleAddInvokeTransaction; private handleSignTypedData; private handleSupportedSpecs; }