import { AfterViewInit, ElementRef, NgZone, OnDestroy, InjectionToken } from '@angular/core';
import { ControlValueAccessor } from '@angular/forms';
import { Events } from './Events';
import * as ɵngcc0 from '@angular/core';
export declare const TINYMCE_SCRIPT_SRC: InjectionToken<string>;
export declare class EditorComponent extends Events implements AfterViewInit, ControlValueAccessor, OnDestroy {
    private platformId;
    private tinymceScriptSrc?;
    cloudChannel: string;
    apiKey: string;
    init: Record<string, any> | undefined;
    id: string;
    initialValue: string | undefined;
    outputFormat: 'html' | 'text' | undefined;
    inline: boolean | undefined;
    tagName: string | undefined;
    plugins: string | undefined;
    toolbar: string | string[] | undefined;
    modelEvents: string;
    allowedEvents: string | string[] | undefined;
    ignoreEvents: string | string[] | undefined;
    set disabled(val: boolean);
    get disabled(): boolean;
    get editor(): any;
    ngZone: NgZone;
    private _elementRef;
    private _element;
    private _disabled;
    private _editor;
    private onTouchedCallback;
    private onChangeCallback;
    constructor(elementRef: ElementRef, ngZone: NgZone, platformId: Object, tinymceScriptSrc?: string);
    writeValue(value: string | null): void;
    registerOnChange(fn: (_: any) => void): void;
    registerOnTouched(fn: any): void;
    setDisabledState(isDisabled: boolean): void;
    ngAfterViewInit(): void;
    ngOnDestroy(): void;
    createElement(): void;
    initialise(): void;
    private getScriptSrc;
    private initEditor;
    private emitOnChange;
    static ɵfac: ɵngcc0.ɵɵFactoryDeclaration<EditorComponent, [null, null, null, { optional: true; }]>;
    static ɵcmp: ɵngcc0.ɵɵComponentDeclaration<EditorComponent, "editor", never, { "cloudChannel": "cloudChannel"; "apiKey": "apiKey"; "id": "id"; "modelEvents": "modelEvents"; "disabled": "disabled"; "initialValue": "initialValue"; "init": "init"; "inline": "inline"; "outputFormat": "outputFormat"; "tagName": "tagName"; "plugins": "plugins"; "toolbar": "toolbar"; "allowedEvents": "allowedEvents"; "ignoreEvents": "ignoreEvents"; }, {}, never, never>;
}

//# sourceMappingURL=editor.component.d.ts.map