import { Emitter } from 'mitt'; export interface RequestArguments { readonly method: string; readonly params?: readonly unknown[] | object; } export interface ProviderRpcError extends Error { message: string; code: number; data?: unknown; } interface ProviderConnectInfo { readonly chainId: string; } export interface ProviderMessage { readonly type: string; readonly data: unknown; } export type ProviderEventMap = { connect: ProviderConnectInfo; disconnect: ProviderRpcError; chainChanged: string; accountsChanged: string[]; message: ProviderMessage; }; export type ProviderEventEmitter = Emitter; export interface ProviderInterface { request(args: RequestArguments): Promise; disconnect(): Promise; emit(event: K, payload: ProviderEventMap[K]): void; on(event: K, handler: (payload: ProviderEventMap[K]) => void): void; removeListener(event: K, handler: (payload: ProviderEventMap[K]) => void): void; } export type Address = string; export type HexString = string; export {}; //# sourceMappingURL=types.d.ts.map