///
import { AfterViewInit, Injector, OnChanges, OnDestroy, OnInit, SimpleChanges } from '@angular/core';
import { SimplePropertySchemaFieldLoaderComponent } from '../../../schema/schema-field-host.component';
import { SmeInternalFormFieldComponent } from '../form-field.component';
import * as i0 from "@angular/core";
export declare class CodeFormFieldLoaderComponent extends SimplePropertySchemaFieldLoaderComponent {
static ɵfac: i0.ɵɵFactoryDeclaration;
static ɵcmp: i0.ɵɵComponentDeclaration;
}
/**
* Accessible text field implementation
*/
export declare class CodeFormFieldComponent extends SmeInternalFormFieldComponent implements OnInit, AfterViewInit, OnDestroy, OnChanges {
/**
* The source name to use for logging
*/
protected get logSourceName(): string;
/**
* The language of the code in the editor
*/
language: string;
/**
* The monaco editor construction options. When provided, overrides the default behaviors of this control
*/
options: monaco.editor.IStandaloneEditorConstructionOptions;
/**
* The current monaco editor instance
*/
get editor(): monaco.editor.IStandaloneCodeEditor;
/**
* The current monaco editor instance
*/
get model(): monaco.editor.ITextModel;
/**
* Reference to the element that we use to contain the monaco text editor
*/
private editorHost;
/**
* internal placeholder for the current monaco editor instance.
*/
private internalEditor;
/**
* Tracking mechanism for subscriptions for the current editor instance
*/
private editorSubscriptions;
/**
* Initializes a new instance of the TextFormFieldComponent
*/
constructor(injector: Injector);
/**
* Implementation of angular AfterViewInit interface
*/
ngAfterViewInit(): void;
/**
* Implementation of angular OnChanges interface
*/
ngOnChanges(changes: SimpleChanges): void;
/**
* Implementation of angular OnDestroy interface
*/
ngOnDestroy(): void;
/**
* Keydown handler for this form field
*/
onKeyDown(event: KeyboardEvent): void;
/**
* Scrolls and centers to a given position within the editor
* @param position The @see monaco.IPosition to scroll to
*/
scrollTo(position: monaco.IPosition): void;
/**
* Finds a range from a starting keyword to an ending keyword.
*/
findKeyword(keyword: string): monaco.Range;
/**
* Finds a range from a starting keyword to an ending keyword.
*/
findKeywordRange(startKeyword: string, endKeyword: string): monaco.Range;
/**
* Creates the idBag used by this component to store unique element ids.
* id values will be assigned be the @see BaseComponent super class.
*/
protected createIdBag(): MsftSme.StringMap;
/**
* Applies the focus to this form control
*/
focus(): void;
/**
* When ngModel's value changes, update the editors value to reflect it
*/
protected onValueChanged(value: string): void;
/**
* On layout changed event handler, occurs every time the layout has been changed.
*/
protected onLayoutChanged(): void;
/**
* Occurs every time the orientation has been changed.
*/
protected onOrientationChanged(): void;
/**
* Initializes the monaco editor
*/
private createEditor;
/**
* Creates new construction options for the editor based on the current inputs to this control
*/
private createEditorConstructionOptions;
/**
* Occurs when the editor is created or recreated
*/
private onEditorCreated;
/**
* Occurs when the editors content has changed.
* @param event the @see monaco.editor.IModelContentChangedEvent event object
*/
private onEditorContentChanged;
/**
* Occurs when the editor is being disposed
*/
private disposeEditor;
static ɵfac: i0.ɵɵFactoryDeclaration;
static ɵcmp: i0.ɵɵComponentDeclaration;
}