import { OnInit, EventEmitter, ElementRef, ChangeDetectorRef } from '@angular/core'; import { LfFieldInfo, LfFieldValue } from '../../../utils/lf-field-types'; import { FormControl, ValidatorFn, FormGroup } from '@angular/forms'; import { LfFieldTokenData, LfFieldTokenService } from '../lf-field-token.service'; import { AppLocalizationService, ValidationRule } from '@laserfiche/lf-ui-components/internal-shared'; import { Observable } from 'rxjs'; import * as i0 from "@angular/core"; /** @internal */ export declare abstract class BaseFieldDirective implements OnInit { tokenService: LfFieldTokenService; ref: ChangeDetectorRef; localizationService: AppLocalizationService; lf_field_info: LfFieldInfo; lf_field_form_control: FormControl; lf_field_value: LfFieldValue | undefined; parent_form: FormGroup | undefined; is_import_mode: boolean; fieldValueChange: EventEmitter; tokenTarget?: ElementRef; dynamic_field_value_options: string[] | undefined; showTokenTextBox: boolean; private readonly CHARACTER_COUNT; private readonly NOT_AVAILABLE_WITH_TOKENS; private readonly REQUIRED_FIELD_IS_EMPTY; private THIS_FIELD_HAS_MAXIMUM_ALLOWED_LENGTH_0_CHARACTERS?; get containsToken(): boolean; get lfFieldTokenData(): LfFieldTokenData; get isDynamic(): boolean; readonly tokenCharacterCountHint: Observable; readonly noTokenCharacterCountHint: Observable; private getConcatenatedTokenLabel; private getTokenCharacterCountHint; private getNoTokenCharacterCountHint; private getFieldLengthRatio; constructor(tokenService: LfFieldTokenService, ref: ChangeDetectorRef, localizationService: AppLocalizationService); fieldValidationErrorMsg: Observable; ngOnInit(): Promise; abstract deserializeLfFieldValue(): string; abstract serializeFieldFormControlValue(): string; abstract getAdditionalValidatorsForFieldType(): ValidatorFn[]; abstract getValidationTextForFieldType(validationRuleName: ValidationRule): Observable | undefined; protected fieldOnValueChanged(): void; getLfFieldFormControlValue(): string; setLfFieldFormControlValue(newValue: string | undefined): void; onValueChanged(emitEvent?: boolean): void; getBrokenValidationRule(): ValidationRule | undefined; onDateOrTimeTokenValueChanged(): void; onFocusOutTokenInput(): void; protected getValidationErrorMsg(validationRuleName: ValidationRule | undefined): Observable | undefined; onTokenChosen(token: string): void; createNewFieldValueWithToken(token: string): string; resetToDefaultValidators(): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; }