import { IDisposable } from 'phosphor/lib/core/disposable'; import { ISignal } from 'phosphor/lib/core/signaling'; import { Contents } from './contents'; import { Kernel } from './kernel'; import { Session } from './session'; import { TerminalSession } from './terminal'; import { IAjaxSettings } from './utils'; /** * A service manager interface. */ export interface IServiceManager extends IDisposable { /** * A signal emitted when the specs change on the service manager. */ specsChanged: ISignal; /** * The kernel specs for the manager. */ readonly kernelspecs: Kernel.ISpecModels; /** * The kernel manager for the manager. */ readonly kernels: Kernel.IManager; /** * The session manager for the manager. */ readonly sessions: Session.IManager; /** * The contents manager for the manager. */ readonly contents: Contents.IManager; /** * The terminals manager for the manager. */ readonly terminals: TerminalSession.IManager; } /** * The namespace for `ServiceManager` statics. */ export declare namespace ServiceManager { /** * Create a new service manager. * * @param options - The service manager creation options. * * @returns A promise that resolves with a service manager. */ function create(options?: IOptions): Promise; /** * The options used to create a service manager. */ interface IOptions { /** * The base url of the server. */ baseUrl?: string; /** * The ajax settings for the manager. */ ajaxSettings?: IAjaxSettings; /** * The kernelspecs for the manager. */ kernelspecs?: Kernel.ISpecModels; } }