import { NgZone, OnDestroy } from '@angular/core';
import { Observable } from 'rxjs';
/** Time in ms to throttle the resize events by default. */
export declare const DEFAULT_RESIZE_TIME = 20;
/**
 * Simple utility for getting the bounds of the browser viewport.
 * @docs-private
 */
export declare class ViewportRuler implements OnDestroy {
    /** Cached document client rectangle. */
    private _documentRect?;
    /** Stream of viewport change events. */
    private _change;
    /** Subscription to streams that invalidate the cached viewport dimensions. */
    private _invalidateCache;
    constructor(ngZone: NgZone);
    /** Caches the latest client rectangle of the document element. */
    _cacheViewportGeometry(): void;
    ngOnDestroy(): void;
    /**
     * Returns a stream that emits whenever the size of the viewport changes.
     * @param throttle Time in milliseconds to throttle the stream.
     * @return { Subscription }
     */
    change(throttleTime?: number): Observable<Event>;
}
