import { Service } from '../../services/base/service'; export interface Editor { /** Services that make up this editor. */ readonly services: S; } export declare type EditorServices = { [key: string]: Service; }; export interface EditorSpec { /** Services to be made available on the editor's services property. */ services: S; /** * Additional services/dependencies whose side effects to mix in. * * Private services get the lowest priority, unless they are also a dependency of one of the public * services. */ privateServices?: Service[]; } export declare function createEditor(spec: EditorSpec): Editor; export declare class BaseEditor implements Editor { constructor(spec: EditorSpec); readonly services: S; }