import { QueryList } from '@angular/core';
import { InputDirective } from '../input.directive';
import { InputAppearance } from '../types';
import { InputDropdownOptionComponent } from './input-dropdown-option.component';
import { InputDropdownOptionGroupComponent } from './input-dropdown-option-group.component';
import { MatSelect } from '@angular/material/select';
import * as i0 from "@angular/core";
export declare class InputDropdownComponent<T> extends InputDirective<T> {
    readonly options: QueryList<InputDropdownOptionComponent>;
    readonly optionGroups: QueryList<InputDropdownOptionGroupComponent>;
    readonly matSelect?: MatSelect;
    appearance: InputAppearance;
    max: number | undefined;
    private get exceedsMax();
    protected get selectedOptions(): readonly InputDropdownOptionComponent[];
    multiple: boolean;
    compareWith: MatSelect['compareWith'];
    static ɵfac: i0.ɵɵFactoryDeclaration<InputDropdownComponent<any>, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<InputDropdownComponent<any>, "pro-input-dropdown", never, { "appearance": { "alias": "appearance"; "required": false; }; "max": { "alias": "max"; "required": false; }; "multiple": { "alias": "multiple"; "required": false; }; "compareWith": { "alias": "compareWith"; "required": false; }; }, {}, ["options", "optionGroups"], never, true, never>;
    static ngAcceptInputType_multiple: any;
}
