import { ElementRef, OnDestroy, OnInit } from '@angular/core';
import { MultichoiceField, MultichoiceFieldValue } from '../models/multichoice-field';
import { MatChipInputEvent } from '@angular/material/chips';
import { Observable, Subscription } from 'rxjs';
import { DataFieldPortalData } from "../../models/data-field-portal-data-injection-token";
import { AbstractBaseDataFieldComponent } from "../../base-component/abstract-base-data-field.component";
import * as i0 from "@angular/core";
export declare abstract class AbstractMultichoiceAutocompleteFieldComponentComponent extends AbstractBaseDataFieldComponent<MultichoiceField> implements OnInit, OnDestroy {
    input: ElementRef;
    separatorKeysCodes: number[];
    subscriptionChangeData$: Subscription;
    filteredOptions: Observable<Array<MultichoiceFieldValue>>;
    constructor(dataFieldPortalData: DataFieldPortalData<MultichoiceField>);
    ngOnInit(): void;
    ngOnDestroy(): void;
    add(event: MatChipInputEvent): void;
    remove(value: string): void;
    change(): void;
    protected filterType(): string | undefined;
    protected _filter(value: string): Array<MultichoiceFieldValue>;
    protected _filterInclude(value: string): Array<MultichoiceFieldValue>;
    protected _filterIndexOf(value: string): Array<MultichoiceFieldValue>;
    renderSelection: (key: any) => any;
    getValueFromKey(key: string): string | undefined;
    static ɵfac: i0.ɵɵFactoryDeclaration<AbstractMultichoiceAutocompleteFieldComponentComponent, [{ optional: true; }]>;
    static ɵcmp: i0.ɵɵComponentDeclaration<AbstractMultichoiceAutocompleteFieldComponentComponent, "ncc-abstract-multichoice-autocomplete-field", never, {}, {}, never, never, false, never>;
}
