import type { MessageTypes, MessageTypesWithNoSubscriptions, MessageTypesWithNullRequest, MessageTypesWithSubscriptions, RequestTypes, ResponseTypes, SubscriptionMessageTypes, TransportResponseMessage } from '../background/types'; import { EvmProvider } from '@soul-wallet/extension-inject/types'; import Injected from './Injected'; export interface Handler { resolve: (data?: any) => void; reject: (error: Error) => void; subscriber?: (data: any) => void; } export declare type Handlers = Record; export declare function sendMessage(message: TMessageType): Promise; export declare function sendMessage(message: TMessageType, request: RequestTypes[TMessageType]): Promise; export declare function sendMessage(message: TMessageType, request: RequestTypes[TMessageType], subscriber: (data: SubscriptionMessageTypes[TMessageType]) => void): Promise; export declare function enable(origin: string): Promise; export declare function handleResponse(data: TransportResponseMessage & { subscription?: string; }): void; export declare function initEvmProvider(version: string): EvmProvider;