import { AfterContentInit, AfterViewInit, ChangeDetectorRef, ElementRef, EventEmitter, NgZone, OnDestroy, QueryList } from '@angular/core';
import { Platform } from '@angular/cdk/platform';
import { MDCComponent } from '@angular-mdc/web/base';
import { MdcTopAppBarActionItem, MdcTopAppBarNavigationIcon } from './top-app-bar.directives';
import { MDCTopAppBarBaseFoundation, MDCShortTopAppBarFoundation, MDCFixedTopAppBarFoundation } from '@material/top-app-bar';
/** Event object emitted by MdcTopAppBar navigation icon selected. */
export declare class MdcTopAppBarNavSelected {
    source: MdcTopAppBar;
    constructor(source: MdcTopAppBar);
}
export declare class MdcTopAppBar extends MDCComponent<MDCTopAppBarBaseFoundation | MDCShortTopAppBarFoundation | MDCFixedTopAppBarFoundation | any> implements AfterContentInit, AfterViewInit, OnDestroy {
    private _ngZone;
    private _platform;
    private _changeDetectorRef;
    elementRef: ElementRef;
    /** Emits whenever the component is destroyed. */
    private _destroyed;
    get fixed(): boolean;
    set fixed(value: boolean);
    private _fixed;
    get prominent(): boolean;
    set prominent(value: boolean);
    private _prominent;
    get short(): boolean;
    set short(value: boolean);
    private _short;
    get shortCollapsed(): boolean;
    set shortCollapsed(value: boolean);
    private _shortCollapsed;
    get dense(): boolean;
    set dense(value: boolean);
    private _dense;
    get fixedAdjustElement(): HTMLElement | null;
    set fixedAdjustElement(element: HTMLElement | null);
    private _fixedAdjustElement;
    get scrollTarget(): any;
    set scrollTarget(target: any);
    private _scrollTarget;
    /** Event emitted when the navigation icon is selected. */
    readonly navigationSelected: EventEmitter<MdcTopAppBarNavSelected>;
    navigationIcon?: MdcTopAppBarNavigationIcon;
    actions: QueryList<MdcTopAppBarActionItem>;
    private _scrollTargetSubscription;
    getDefaultFoundation(): any;
    constructor(_ngZone: NgZone, _platform: Platform, _changeDetectorRef: ChangeDetectorRef, elementRef: ElementRef);
    ngAfterContentInit(): void;
    ngAfterViewInit(): void;
    ngOnDestroy(): void;
    /** Sets the top app bar to fixed or not. */
    setFixed(fixed: boolean, isUserInput?: boolean): void;
    /** Sets the top app bar to prominent or not. */
    setProminent(prominent: boolean, isUserInput?: boolean): void;
    /** Sets the top app bar to dense variant. */
    setDense(dense: boolean, isUserInput?: boolean): void;
    /** Sets the top app bar to short or not. */
    setShort(short: boolean, isUserInput?: boolean): void;
    /** Sets the top app bar to short-collapsed or not. */
    setShortCollapsed(shortCollapsed: boolean, isUserInput?: boolean): void;
    isCollapsed(): boolean;
    private _initFoundation;
    private _resetFixedShort;
    private _initTopAppBar;
    private _removeFixedAdjustClasses;
    private _addFixedAdjustClass;
    private _destroyFoundation;
    private _initScrollHandler;
    private _getScrollOffset;
    /** Retrieves the DOM element of the component host. */
    private _getHostElement;
}
