UNPKG

@3id/common

Version:
35 lines (34 loc) 1.39 kB
/// <reference types="node" /> export interface ProviderConnectInfo { readonly chainId: string; } export interface ProviderMessage { readonly type: string; readonly data: unknown; } export interface ProviderRpcError extends Error { message: string; code: number; data?: unknown; } export interface RequestArguments { readonly method: string; readonly params?: ReadonlyArray<unknown> | Record<string, unknown>; } export interface EthereumProvider extends NodeJS.EventEmitter { on(event: 'connect', listener: (connectInfo: ProviderConnectInfo) => void): this; on(event: 'disconnect', listener: (error: ProviderRpcError) => void): this; on(event: 'chainChanged', listener: (chainId: string) => void): this; on(event: 'accountsChanged', listener: (accounts: Array<string>) => void): this; on(event: 'message', listener: (message: ProviderMessage) => void): this; request<T = unknown>(args: RequestArguments): Promise<T>; } export interface EOSIOProvider { getKeys(): Promise<Array<string>>; getAccountName(): Promise<string>; getChainId(): Promise<string>; signArbitrary(publicKey: string, data: string): Promise<string>; } export declare type AccountsList = Array<string>; export declare type DIDLinksList = Record<string, AccountsList>; export declare type Network = 'dev-unstable' | 'testnet-clay' | 'mainnet' | 'local';