import TinyDiInjectable from '../tinydiinjectable'; import { Logger } from '../logger'; import PluginSystem from '../extensions/pluginsystem'; import Configuration from './configuration'; import { DependencyManager } from '../../pluginsystem/depmanager'; export default class Installation extends TinyDiInjectable { private websocket; private logger; private pluginSystem; private depManager; private configuration; private files; constructor(websocket: SocketIO.Server, logger: Logger, pluginSystem: PluginSystem, depManager: DependencyManager, configuration: Configuration); /** * websocket listener */ installListener(npmPackage: string): void; uploadStartListener(socket: SocketIO.Socket): (data: any) => void; uploadListener(socket: SocketIO.Socket): (data: any) => void; mergeConfigs(): Q.Promise<{}>; checkConfigsforAllDeps(deps: any[]): Q.Promise; mergeConfigForPlugin(plugin: string, config: any): Q.Promise; assignConfigToDefault(def: any, my: any): void; objectToArray(object: any): any[]; }