import MonacoNamespace from 'monaco-editor'; import * as _angular_core from '@angular/core'; import { AfterViewInit, OnDestroy, ElementRef } from '@angular/core'; import { ControlValueAccessor } from '@angular/forms'; import * as i2 from '@angular/common'; type MonacoConstructionOptions = Omit & MonacoNamespace.editor.ITextModelUpdateOptions; interface MonacoTextModelConstructionOptions { initialValue: string; uri: MonacoNamespace.Uri; language: string; } type MonacoOptions = MonacoNamespace.editor.IStandaloneCodeEditor; type ICodeEditor = MonacoNamespace.editor.ICodeEditor; type Monaco = typeof MonacoNamespace; declare class MonacoEditorComponent implements AfterViewInit, OnDestroy, ControlValueAccessor { private _editor; private readonly themeService; /** * Sets the options for the monaco editor, such scrollbars, minimap, etc * @default {} */ readonly $options: _angular_core.InputSignal; /** * The URI of the current document. * This is used to identify the model in monaco. */ readonly $uri: _angular_core.InputSignal; /** * The language of the current document. * This is used to set the language of the model in monaco. * For example, 'javascript', 'typescript', 'html', etc. */ readonly $language: _angular_core.InputSignal; /** * The value of the current document. * This can do two-way binding with the editor. */ readonly $value: _angular_core.ModelSignal; /** * The theme of the monaco editor. * Can be 'auto', 'vs', 'vs-dark', 'hc-black', or 'hc-light'. * 'auto' will use the current library palette theme. * @default 'auto' */ readonly $theme: _angular_core.InputSignal<"auto" | "vs" | "vs-dark" | "hc-black" | "hc-light">; /** * Only settable once. * Defines a function that is called when monaco is ready and before component init. * Use this to set language diagnostics, etc. */ readonly $onMonacoLoad: _angular_core.InputSignal<(monaco: Monaco) => void>; /** * If true, the model will be disposed when the component is destroyed. * This is useful to avoid memory leaks when the editor is not used anymore. * @default true */ readonly $disposeModelOnDestroy: _angular_core.InputSignal; /** * Output event that is emitted when the editor is loaded. */ readonly editorLoaded: _angular_core.OutputEmitterRef; readonly editorContainer: ElementRef; readonly optionsChanged: _angular_core.EffectRef; readonly uriChanged: _angular_core.EffectRef; readonly languageChanged: _angular_core.EffectRef; readonly valueChanged: _angular_core.EffectRef; readonly themeChanged: _angular_core.EffectRef; ngAfterViewInit(): void; private onPropagateChange; private onPropagateTouched; writeValue(val: string): void; registerOnChange(fn: (val: string) => void): void; registerOnTouched(fn: () => void): void; private resizeObserver; protected initEditor(): void; private updateOrCreateModel; private getMonacoTheme; private destroyResizeObserver; ngOnDestroy(): void; static ɵfac: _angular_core.ɵɵFactoryDeclaration; static ɵcmp: _angular_core.ɵɵComponentDeclaration; } declare class TableauUiMonacoModule { static ɵfac: _angular_core.ɵɵFactoryDeclaration; static ɵmod: _angular_core.ɵɵNgModuleDeclaration; static ɵinj: _angular_core.ɵɵInjectorDeclaration; } export { MonacoEditorComponent, TableauUiMonacoModule }; export type { ICodeEditor, MonacoConstructionOptions, MonacoOptions, MonacoTextModelConstructionOptions };