import { AfterViewInit, EventEmitter, OnDestroy, SimpleChanges, ViewContainerRef } from '@angular/core';
import * as MonacoEditor from 'monaco-editor';
import * as i0 from "@angular/core";
export declare class MonacoEditorComponent implements AfterViewInit, OnDestroy {
    private viewContainer;
    isDirty: boolean;
    editor: MonacoEditor.editor.IStandaloneCodeEditor;
    filename: string;
    private _code;
    set code(value: string);
    get code(): string;
    codeChange: EventEmitter<string>;
    private onCodeType;
    private typeDebounce;
    customLanguage: {
        init: Function;
    };
    private _language;
    set language(value: string);
    get language(): string;
    installationLocation: string;
    tabSize: number;
    readOnly: boolean;
    theme: string;
    fontFamily: string;
    fontSize: number;
    automaticLayout: boolean;
    colorDecorators: boolean;
    folding: boolean;
    minimapEnabled: boolean;
    minimap: MonacoEditor.editor.IEditorMinimapOptions;
    scrollbar: MonacoEditor.editor.IEditorScrollbarOptions;
    smoothScrolling: boolean;
    mouseWheelScrollSensitivity: number;
    scrollBeyondLastLine: boolean;
    scrollBeyondLastColumn: number;
    lineNumbers: MonacoEditor.editor.LineNumbersType;
    restSettings: MonacoEditor.editor.IStandaloneEditorConstructionOptions;
    get settings(): MonacoEditor.editor.IStandaloneEditorConstructionOptions;
    private _sub;
    constructor(viewContainer: ViewContainerRef);
    ngOnInit(): void;
    ngOnChanges(changes: SimpleChanges): void;
    ngAfterViewInit(): Promise<void>;
    ngOnDestroy(): void;
    private createEditor;
    private configureLanguageSupport;
    download(): void;
    resize: () => void;
    static ɵfac: i0.ɵɵFactoryDeclaration<MonacoEditorComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<MonacoEditorComponent, "ngx-monaco-editor", never, { "code": { "alias": "code"; "required": false; }; "customLanguage": { "alias": "customLanguage"; "required": false; }; "language": { "alias": "language"; "required": false; }; "installationLocation": { "alias": "installationLocation"; "required": false; }; "tabSize": { "alias": "tabSize"; "required": false; }; "readOnly": { "alias": "readOnly"; "required": false; }; "theme": { "alias": "theme"; "required": false; }; "fontFamily": { "alias": "fontFamily"; "required": false; }; "fontSize": { "alias": "fontSize"; "required": false; }; "automaticLayout": { "alias": "automaticLayout"; "required": false; }; "colorDecorators": { "alias": "colorDecorators"; "required": false; }; "folding": { "alias": "folding"; "required": false; }; "minimapEnabled": { "alias": "minimapEnabled"; "required": false; }; "minimap": { "alias": "minimap"; "required": false; }; "scrollbar": { "alias": "scrollbar"; "required": false; }; "smoothScrolling": { "alias": "smoothScrolling"; "required": false; }; "mouseWheelScrollSensitivity": { "alias": "mouseWheelScrollSensitivity"; "required": false; }; "scrollBeyondLastLine": { "alias": "scrollBeyondLastLine"; "required": false; }; "scrollBeyondLastColumn": { "alias": "scrollBeyondLastColumn"; "required": false; }; "lineNumbers": { "alias": "lineNumbers"; "required": false; }; "restSettings": { "alias": "restSettings"; "required": false; }; }, { "codeChange": "codeChange"; }, never, never, true, never>;
}
export declare const InstallMonacoUMD: (path?: string) => Promise<any>;
