import { Disposable, IDisposable } from "../../../../base/common/lifecycle.js"; import { ICodeEditor } from "../../editorBrowser.js"; import { IEditorContributionDescription } from "../../editorExtensions.js"; import { IEditorContribution } from "../../../common/editorCommon.js"; import { IInstantiationService } from "../../../../platform/instantiation/common/instantiation.js"; export declare class CodeEditorContributions extends Disposable { private _editor; private _instantiationService; /** * Contains all instantiated contributions. */ private readonly _instances; /** * Contains contributions which are not yet instantiated. */ private readonly _pending; /** * Tracks which instantiation kinds are still left in `_pending`. */ private readonly _finishedInstantiation; constructor(); initialize(editor: ICodeEditor, contributions: IEditorContributionDescription[], instantiationService: IInstantiationService): void; saveViewState(): { [key: string]: unknown; }; restoreViewState(contributionsState: { [key: string]: unknown; }): void; get(id: string): IEditorContribution | null; /** * used by tests */ set(id: string, value: IEditorContribution): void; onBeforeInteractionEvent(): void; onAfterModelAttached(): IDisposable; private _instantiateSome; private _findPendingContributionsByInstantiation; private _instantiateById; }