import { AfterContentInit, EventEmitter, OnInit } from '@angular/core';
import { TypeAheadComponent } from '../type-ahead/type-ahead.component';
import { FormGroup, ValidatorFn } from '@angular/forms';
import { ITypeAheadOption } from '../../models/type-ahead/type-ahead-option.interface';
import { IIdentifiable } from '../../models/common/identifiable.interface';
import { ListContentDirective } from '../../directives/lists/list-content.directive';
export declare class ListComponentBase implements OnInit, AfterContentInit {
    enableItemAddition: boolean;
    enableItemRemoval: boolean;
    enableTypeAhead: boolean;
    freeTextValidators: ValidatorFn | ValidatorFn[];
    freeTextInputButtonText: string;
    placeholder: string;
    options: ITypeAheadOption[];
    items: IIdentifiable[];
    itemAdded$: EventEmitter<string | number>;
    freeTextItemAdded$: EventEmitter<string | number>;
    itemRemoved$: EventEmitter<string | number>;
    typeAhead: TypeAheadComponent;
    contentTemplate: ListContentDirective;
    form: FormGroup;
    ngOnInit(): void;
    ngAfterContentInit(): void;
    addFreeTextItem(): void;
    removeItem(id: string | number): void;
}
