UNPKG

@arcana/ca-sdk

Version:

Arcana Network's chain abstraction SDK for unified balance in Web3 apps

70 lines (69 loc) 2.59 kB
import { Environment } from "@arcana/ca-common"; import SafeEventEmitter from "@metamask/safe-event-emitter"; import { FuelConnector, Provider } from "fuels"; import { AllowanceQuery } from "./query"; import { BridgeQueryInput, EthereumProvider, OnAllowanceHook, OnIntentHook, RequestArguments, SDKConfig, TransferQueryInput, TxOptions } from "./typings"; export declare class CA { #private; static getSupportedChains: (env?: Environment) => { id: number; logo: string; name: string; tokens: import("./typings").TokenInfo[]; }[]; caEvents: SafeEventEmitter; private chainList; private evm?; private fuel?; private hooks; private initPromises; private initStatus; private isArcanaProvider; private networkConfig; private refundInterval; private siweStatement; constructor(config?: SDKConfig); allowance(): AllowanceQuery; bridge(input: BridgeQueryInput): Promise<{ exec: () => Promise<unknown>; simulate: () => Promise<{ intent: import("./typings").ReadableIntent; token: import("./typings").TokenInfo; }>; }>; deinit: () => void; getEVMProviderWithCA: () => EthereumProvider; getFuelWithCA(): Promise<{ connector: FuelConnector; provider: Provider; }>; getMyIntents(page?: number): Promise<import("./typings").RFF[]>; getUnifiedBalance(symbol: string): Promise<import("./typings").UserAssetDatum | undefined>; getUnifiedBalances(): Promise<import("./typings").UserAssetDatum[]>; handleEVMTx(args: RequestArguments, options?: Partial<TxOptions>): Promise<unknown>; init: () => Promise<void>; onAccountsChanged: (accounts: Array<`0x${string}`>) => void; setEVMProvider(provider: EthereumProvider): Promise<void>; setFuelConnector(connector: FuelConnector): Promise<void>; setOnAllowanceHook(hook: OnAllowanceHook): void; setOnIntentHook(hook: OnIntentHook): void; transfer(input: TransferQueryInput): Promise<{ exec: () => Promise<unknown>; simulate: () => Promise<{ intent: import("./typings").ReadableIntent; token: import("./typings").TokenInfo; }>; }>; private changeChain; private checkPendingRefunds; private createCosmosWallet; private createEVMHandler; private createFuelHandler; private getChainID; private getCosmosWallet; private getEVMAddress; private resolveInitPromises; private setProviderHooks; private signatureForLogin; private waitForInit; }