UNPKG

@dapplets/dapplet-extension

Version:
74 lines (73 loc) 2.5 kB
import { Subject } from 'rxjs'; import VersionInfo from '../background/models/versionInfo'; import { JsonRpc } from '../common/jsonrpc'; import { BaseEvent, DefaultConfig, SchemaConfig } from '../common/types'; import Core from './core'; type RegistriedModule = { manifest: VersionInfo; clazz: any; instance?: any; order: number; contextIds: string[]; constructorDependencies: string[]; instancedPropertyDependencies: { [name: string]: any; }; instancedConstructorDeps: any[]; activateMethodsDependencies: string[]; instancedActivateMethodsDependencies: any[]; defaultConfig?: DefaultConfig; schemaConfig?: SchemaConfig; onActionHandler?: Function; onHomeHandler?: Function; onShareLinkHandler?: Function; onWalletsUpdateHandler?: Function; onConnectedAccountsUpdateHandler?: Function; }; export declare const widgets: any[]; export declare class Injector { core: Core; private eventStream; private jsonrpc; private env?; availableContextIds: string[]; registry: RegistriedModule[]; private _dynamicAdapter; private _iframeContainer; constructor(core: Core, eventStream: Subject<BaseEvent>, jsonrpc: JsonRpc, env?: { shareLinkPayload: { moduleId: string; payload: any; isAllOk: boolean; }; }); loadModules(modules: { name: string; branch: string; version: string; order: number; contextIds: string[]; }[]): Promise<void>; unloadModules(modules: { name: string; branch: string; version: string; }[]): Promise<void>; openDappletAction(moduleName: string): Promise<void>; openDappletHome(moduleName: string): Promise<void>; sendShareLinkData(moduleName: string, data: any): Promise<void>; executeWalletsUpdateHandler(): Promise<void>; executeConnectedAccountsUpdateHandler(): Promise<void>; setActionHandler(moduleName: string, handler: Function): void; setHomeHandler(moduleName: string, handler: Function): void; setShareLinkHandler(moduleName: string, handler: Function): void; setWalletsUpdateHandler(moduleName: string, handler: Function): void; setConnectedAccountsUpdate(moduleName: string, handler: Function): void; dispose(): Promise<void>; private _processModules; private _setContextActivivty; private _getDependency; private _proxifyModule; private _registerModule; } export {};