import { DappMetadata, OpenAppLinkType, RequestArguments, Response, SessionTypes } from "../protocol"; import { EngineConnectInfo, RequestAnswer } from "../connect/constants"; import { Iconnector } from "./iconnector"; import { InjectProvider } from "../inject/types/IInjectProvider"; import { ConnectionManager } from "../connect"; export declare abstract class InjectConnector implements Iconnector { protected disconnectListener: Array<() => void>; protected dappInfo?: DappMetadata; protected providerMap: Map; protected connectResultListener?: ((response: (Response | undefined), connector: Iconnector) => void) | undefined; connectionManager?: ConnectionManager; protected disconnectHandler: (() => void) | null; protected accountChangeListener: ((session: SessionTypes.Struct) => void) | undefined; walletName: string; icon: string; walletNameKey: string; enable: boolean; constructor(); setAccountChangeListener(accountChangeListener: ((session: SessionTypes.Struct) => void) | undefined): void; setConnectionManager(connectionManager: ConnectionManager): void; protected getInjectProvider(nameSpace: string | undefined): T | undefined; abstract openWallet(engineConnectInfo?: EngineConnectInfo, openAppLinkType?: OpenAppLinkType): void; abstract restoreconnect(sessionInfo: SessionTypes.Struct, onConnectResult: (session: SessionTypes.Struct | null) => void): void; abstract disconnect(): Promise; abstract getType(): number; send(request: RequestArguments, requestAnswer: RequestAnswer): Promise; protected checkWalletMatch(): Promise; clearData(): void; addDisconnectListener(disconnecter: () => void): void; setOnConnectResultListener(connectResultListener: ((response: (Response | undefined), connector: Iconnector) => void) | undefined): void; connectManagerDisconnect(_?: boolean): Promise; getCurrentConnectionReady(namespaceKeys?: string[]): boolean; getTag(): string; toJSON(): string; getSupportNameSpaces(): string[]; }