import { Subject } from 'rxjs';
import { Highlightable, ListKeyManagerOption } from '@angular/cdk/a11y';
import { AfterViewChecked, ChangeDetectorRef, ElementRef, EventEmitter, InjectionToken } from '@angular/core';
export interface NtOptionParentComponent {
    disabled?: boolean;
    multiple?: boolean;
}
export declare class NtOptionSelectionChange {
    source: NtOptionComponent;
    isUserInput: boolean;
    constructor(source: NtOptionComponent, isUserInput?: boolean);
}
export declare const NT_OPTION_PARENT_COMPONENT: InjectionToken<NtOptionParentComponent>;
export declare class NtOptionComponent implements AfterViewChecked, Highlightable, ListKeyManagerOption {
    private _element;
    private _changeDetectorRef;
    private _parent;
    private _value;
    private _selected;
    private _disabled;
    private _label;
    private _hidden;
    private _mostRecentViewValue;
    _isActive: boolean;
    set label(value: string);
    get label(): string;
    get multiple(): boolean | undefined;
    set value(value: any);
    get value(): any;
    get disabled(): boolean;
    set disabled(value: boolean);
    set hidden(value: boolean);
    get hidden(): boolean;
    get selected(): boolean;
    readonly stateChanges: Subject<void>;
    readonly selectionChange: EventEmitter<NtOptionSelectionChange>;
    constructor(_element: ElementRef, _changeDetectorRef: ChangeDetectorRef, _parent: NtOptionParentComponent);
    ngAfterViewChecked(): void;
    focus(): void;
    select(): void;
    deselect(): void;
    selectViaInteraction(): void;
    setActiveStyles(): void;
    setInactiveStyles(): void;
    getLabel(): string;
    getOffsetTop(): any;
    getOffsetHeight(): any;
    protected _emitSelectionChangeEvent(isUserInput?: boolean): void;
}
