import BrowserConnection from '../connection/Browser.js'; type RpcApiHandler = (p?: any) => any | undefined; type RpcApi = { [k in keyof Api]: RpcApiHandler; }; type WithOrigin> = { [k in keyof Api]: (p: Parameters[0], origin: string) => ReturnType; }; /** * Contain functionality for using RPC conection * @category aepp wallet communication * @param connection - Connection object * @param onDisconnect - Disconnect callback * @param methods - Object containing handlers for each request by name */ export default class RpcClient, LocalApi extends RpcApi> { #private; connection: BrowserConnection; constructor(connection: BrowserConnection, onDisconnect: () => void, methods: WithOrigin); /** * Make a request * @param name - Method name * @param params - Method params * @returns Promise which will be resolved after receiving response message */ request(name: Name, params: Parameters[0]): Promise>; /** * Make a notification * @param name - Method name * @param params - Method params */ notify(name: Name, params: Parameters[0]): void; } export {};