import { OpenAppLinkType, RequestArguments } from "../protocol"; import { EngineConnectInfo, RequestAnswer } from "./constants"; import { SessionTypes } from "../protocol/connect/session"; import { ConnectEngineRequest } from "../protocol/connect/connect-request"; import { Iconnector } from "../connector/iconnector"; import { ConnectionManager } from "./connectionManager"; import SessionConfig = SessionTypes.SessionConfig; import Wallet = SessionTypes.Wallet; export declare class Engine { connectionManager: ConnectionManager; private connectors; private useConnector; private wsOpenWalletConnector; private connectResultListener; private sessionConnectingListener; private accountChangeListener; deviceInfo?: { platform?: string; appName?: string; appVersion?: string; maxProtocolVersion?: number; }; constructor(appName: string | undefined); getConnector(): Iconnector | undefined; setAccountChangeListener(accountChangeListener: ((session: SessionTypes.Struct) => void) | undefined): void; registerConnector(connectors: Iconnector[]): void; getAllConnectors(): Iconnector[]; private hasWsConnector; private isWsConnector; private isInjectedConnector; universalConnect(request: ConnectEngineRequest, sessionConfig: SessionConfig, connectInfoAndUrl: (info: EngineConnectInfo) => void): Promise; private fixDappName; private setWsOpenWallet; private getOGSiteName; private addOnConnectResultListener; openWallet(engineConnectInfo?: EngineConnectInfo, connector?: Iconnector, openAppLinkType?: OpenAppLinkType): void; send(request: RequestArguments, requestAnswer: RequestAnswer, ttl?: number): Promise; clearData(): void; addDisconnectListener(disconnecter: () => void): void; saveSessionContent(key: string, data: unknown): void; getSessionContent(key: string): any; setConnectConnector(wallet: Wallet | undefined, sessionConfig: SessionConfig | undefined): void; private setUseConnector; setSessionConnectingListener(sessionConnectingListener: () => void): void; restoreconnect(sessionInfo: SessionTypes.Struct, onConnectResult: (session: SessionTypes.Struct | null) => void): Promise; restoreconnectFromTopic(topic: string): Promise; getCurrentConnectionReady(namespaceKeys: string[]): boolean; /** * Get all chainIds from session namespaces, joined by comma * @param session Session structure containing namespaces information * @returns String of chainIds joined by comma */ getChainIdsFromSession(session: SessionTypes.Struct): string; private sessionRetryTimer; connectManagerDisconnect(fromRestore?: boolean): Promise; sendSession(sessionInfo: string, topic: string, openUniversalLink: boolean): Promise; private stopSendSessionRetry; private getDefaultWsConnector; private addConnectionListener; }