import { ElementRef, EventEmitter, OnDestroy, OnInit } from '@angular/core';
import { ControlValueAccessor } from '@angular/forms';
import { OptionModel } from '../dropdown-option.model';
import { DropdownService } from '../dropdown.service';
import { OptionsService } from '../options.service';
import * as i0 from "@angular/core";
export declare class SelectComponent implements ControlValueAccessor, OnInit, OnDestroy {
    private document;
    private platformId;
    private dropdownService;
    private optionsService;
    private req;
    set required(val: any);
    get required(): any;
    selectElem: ElementRef;
    options: OptionModel[];
    label: string;
    placeholder: string;
    disabled: boolean;
    small: boolean;
    multi: boolean;
    enableNullValue: boolean;
    icon: string;
    caption: string;
    focusEvent: EventEmitter<any>;
    blurEvent: EventEmitter<any>;
    resultEvent: EventEmitter<any>;
    error: string;
    get isDisabled(): boolean;
    isOpen: boolean;
    focused: boolean;
    currentValue: OptionModel;
    currentValues: Set<OptionModel>;
    constructor(document: any, platformId: any, dropdownService: DropdownService, optionsService: OptionsService);
    getOptions(): OptionModel[];
    isInactive(): boolean;
    hasValuesToDrop(): boolean;
    onOpen(ev?: any): void;
    onClose(ev?: any): void;
    emitBlur(): void;
    emitFocus(): void;
    selected(): string;
    onResult(option: OptionModel): void;
    writeValue(val: any): void;
    addValue(o: OptionModel): void;
    clearValue(e: any): void;
    onChange(value: any): void;
    onTouched(): void;
    registerOnChange(fn: any): void;
    registerOnTouched(fn: any): void;
    setDisabledState?(isDisabled: boolean): void;
    showDropdown(): void;
    ngOnInit(): void;
    ngOnDestroy(): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<SelectComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<SelectComponent, "sdk-select", never, { "required": "required"; "options": "options"; "label": "label"; "placeholder": "placeholder"; "disabled": "disabled"; "small": "small"; "multi": "multi"; "enableNullValue": "enableNullValue"; "icon": "icon"; "caption": "caption"; "error": "error"; "isDisabled": "isDisabled"; }, { "focusEvent": "focusEvent"; "blurEvent": "blurEvent"; "resultEvent": "resultEvent"; }, never, never, false>;
}
