import { EventEmitter, OnChanges, SimpleChanges, TemplateRef } from '@angular/core';
import { AbstractControl } from '@angular/forms';
import { BehaviorSubject, Observable } from 'rxjs';
import * as i0 from "@angular/core";
export declare class SelectSearchComponent implements OnChanges {
    form: AbstractControl;
    options?: unknown[];
    placeholder: string;
    optionTemplate: TemplateRef<unknown>;
    selectedValueTemplate: TemplateRef<unknown>;
    multiple: boolean;
    label: string;
    keys?: string[];
    canAddNew: boolean;
    required: boolean;
    appearance: 'standand' | 'outline';
    errorsTemplate: TemplateRef<unknown>;
    prefixTemplate: TemplateRef<unknown>;
    disabled: boolean;
    valueCallback?: (option: unknown) => unknown;
    searchCallback$?: (options: unknown[], query: string) => Observable<unknown[]>;
    addNewValue: EventEmitter<any>;
    formFilterControl: AbstractControl;
    options$: BehaviorSubject<any[]>;
    searchedOptions: unknown[];
    searchResults$: Observable<unknown[]>;
    ngOnChanges(changes: SimpleChanges): void;
    removeSelection(value: unknown): void;
    clearValue(): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<SelectSearchComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<SelectSearchComponent, "ax-select-search", never, { "form": "form"; "options": "options"; "placeholder": "placeholder"; "optionTemplate": "optionTemplate"; "selectedValueTemplate": "selectedValueTemplate"; "multiple": "multiple"; "label": "label"; "keys": "keys"; "canAddNew": "canAddNew"; "required": "required"; "appearance": "appearance"; "errorsTemplate": "errorsTemplate"; "prefixTemplate": "prefixTemplate"; "disabled": "disabled"; "valueCallback": "valueCallback"; "searchCallback$": "searchCallback$"; }, { "addNewValue": "addNewValue"; }, never, never, false, never>;
}
