UNPKG

eth-onekey-bridge-keyring

Version:

A MetaMask compatible keyring, for onekey hardware wallets

92 lines (91 loc) 2.69 kB
import type { ConnectSettings, CoreApi, EVMGetPublicKeyParams, EVMSignedTx, EVMSignMessageParams, EVMSignTransactionParams, EVMSignTypedDataParams, Params, Unsuccessful } from '@onekeyfe/hd-core'; import type { EthereumMessageSignature } from '@onekeyfe/hd-transport'; import { OneKeyBridge } from './onekey-bridge'; export declare type OneKeyIframeBridgeOptions = { bridgeUrl: string; }; export declare class OneKeyWebBridge implements OneKeyBridge { isSDKInitialized: boolean; sdk: CoreApi | undefined; eventListeners: Map<string, (event: any) => void>; constructor(); model?: string | undefined; on(_event: string, callback: (event: any) => void): void; off(_event: string): void; handleBlockErrorEvent(payload: Unsuccessful): void; updateTransportMethod(transportType: ConnectSettings['env']): Promise<void>; init(): Promise<void>; destroy(): Promise<void>; dispose(): Promise<void>; getModel(): string | undefined; getPublicKey(params: { path: string; coin: string; }): Promise<{ success: false; payload: { error: string; code?: string | number; }; } | { success: true; payload: { publicKey: string; chainCode: string; }; }>; batchGetPublicKey(params: Params<any> & { bundle: EVMGetPublicKeyParams[]; }): Promise<{ success: false; payload: { error: string; code?: string | number; }; } | { success: true; payload: { pub: string; }[]; }>; getPassphraseState(): Promise<{ success: false; payload: { error: string; code?: string | number; }; } | { success: true; payload: string | undefined; }>; ethereumSignTransaction(params: Params<EVMSignTransactionParams>): Promise<{ success: false; payload: { error: string; code?: string | number; }; } | { success: true; payload: EVMSignedTx; }>; ethereumSignMessage(params: Params<EVMSignMessageParams>): Promise<{ success: false; payload: { error: string; code?: string | number; }; } | { success: true; payload: EthereumMessageSignature; }>; ethereumSignTypedData(params: Params<EVMSignTypedDataParams>): Promise<{ success: false; payload: { error: string; code?: string | number; }; } | { success: true; payload: EthereumMessageSignature; }>; }