/// /// import EventEmitter = NodeJS.EventEmitter; export type Wire = EventEmitter & { connect(address: string, WsConstructor: typeof WebSocket): Promise; connectSync(): any; send(data: any): Promise; shutdown(): Promise; getPort(): string; }; export type WireConstructor = { new (onmessage: (data: any) => void): Wire; }; export type RuntimeConfig = { version: string; fallbackVersion?: string; securityRealm?: string; verboseLogging?: boolean; arguments?: string; rvmDir?: string; }; export type ServiceConfig = { name: string; manifestUrl: string; }; export type BaseConfig = { uuid?: string; address?: string; name?: string; nonPersistent?: boolean; runtimeClient?: boolean; licenseKey?: string; client?: any; manifestUrl?: string; startupApp?: any; lrsUrl?: string; assetsUrl?: string; devToolsPort?: number; installerUI?: boolean; runtime?: RuntimeConfig; services?: ServiceConfig[]; appAssets?: [ { src: string; alias: string; target: string; version: string; args: string; } ]; customItems?: [any]; timeout?: number; }; export type ConfigWithUuid = BaseConfig & { uuid: string; }; export type ExistingConnectConfig = ConfigWithUuid & { address: string; }; export type ConfigWithRuntime = BaseConfig & { runtime: RuntimeConfig; }; export type ExternalConfig = BaseConfig & { manifestUrl: string; }; export type NewConnectConfig = ConfigWithUuid & ConfigWithRuntime; export type PortDiscoveryConfig = (ExternalConfig & ConfigWithRuntime) | NewConnectConfig; export type ConnectConfig = ExistingConnectConfig | NewConnectConfig | ExternalConfig; export type InternalConnectConfig = ExistingConnectConfig | NewConnectConfig; export interface RemoteConfig extends ExistingConnectConfig { token: string; } export declare function isExternalConfig(config: ConnectConfig): config is ExternalConfig; export declare function isExistingConnectConfig(config: any): config is ExistingConnectConfig; export declare function isRemoteConfig(config: any): config is RemoteConfig; export declare function isNewConnectConfig(config: any): config is NewConnectConfig; export declare function isPortDiscoveryConfig(config: any): config is PortDiscoveryConfig; export declare function isInternalConnectConfig(config: any): config is InternalConnectConfig;