import { BooleanInput } from '@angular/cdk/coercion'; import { ChangeDetectorRef, EventEmitter } from '@angular/core'; import { CKEditor5 } from '@ckeditor/ckeditor5-angular'; import { MtnaInlineEditorAction } from '@mtna/core-angular'; import { MtnaLanguageIds } from '@mtna/core-i18n-angular'; import { BehaviorSubject, Observable } from 'rxjs'; import * as i0 from "@angular/core"; declare const ClassicEditor: any; /** * A component for editing rich text; capable of outputting HTML in string format. * @note Documentation for the ckeditor can be found here: https://ckeditor.com/docs/ckeditor5/latest/installation/index.html * @remarks In order to tailor to a specific language, a script must be added in project.json build for the desired language; * @example - French * "build": { * "options": { * "scripts": ["node_modules/@ckeditor/ckeditor5-build-classic/build/translations/fr.js"] * } * } * @example - German * "build": { * "options": { * "scripts": ["node_modules/@ckeditor/ckeditor5-build-classic/build/translations/de.js"] * } * } */ export declare class RdsCRichTextEditorComponent { protected cdr: ChangeDetectorRef; static ngAcceptInputType_applying: BooleanInput; static ngAcceptInputType_hideEditorControls: BooleanInput; static ngAcceptInputType_readonly: BooleanInput; static ngAcceptInputType_value: string | null | undefined; static ngAcceptInputType_valueObservable: Observable | null | undefined; /** required to hook up the ckeditor in the template. DO NOT USE */ Editor: any; /** Whether changes are being applied. */ get applying(): boolean; set applying(applying: boolean); private _applying; /** * Whether to hide the editor controls. Defaults to false. * @note This will cause the editor to apply changes on blur */ get hideEditorControls(): boolean; set hideEditorControls(hideEditorControls: boolean); private _hideEditorControls; /** * MtnaLanguageId that this editor represent. Defaults to 'en' */ get languageId(): typeof MtnaLanguageIds.type; set languageId(languageId: typeof MtnaLanguageIds.type); private _languageId; /** Placeholder text in the content field of the editor. Defaults to 'Enter the content here.' */ get placeholder(): string; set placeholder(p: string); private _placeholder; get readonly(): boolean; set readonly(readonly: boolean); private _readonly; get value(): string; set value(value: string); private _value; _internalValue: string; /** * FOR USE IN I18N EDITOR ONLY. * A BehaviorSubject to subscribe to for value changes. * Due to Angular's internal code, inputs only change when the primitive value or reference changes. * Even though this component updates this.value internally, the input doesn't appear to trigger when * the original value is re-input externally, i.e. on a value reset, so we must instead take this Subject and force input update internally. */ get valueObservable(): BehaviorSubject | undefined; set valueObservable(subject: BehaviorSubject | undefined); private _valueObservable; /** Internal configuration for the rich text editor. DO NOT USE */ _editorConfig: CKEditor5.Config; valueChange: EventEmitter; constructor(cdr: ChangeDetectorRef); /** * Internal Function for connecting the rich text editor. DO NOT USE. */ _onReady(editor: typeof ClassicEditor): void; /** Handle value changes from the rich text editor */ changeValue(action: MtnaInlineEditorAction): void; protected _setEditorConfigLanguage(): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } export {};