import { ElementRef, OnDestroy } from '@angular/core';
import { Observable, Subscription } from 'rxjs';
import { SkyBreakpoint } from '../breakpoint-observer/breakpoint';
import { SkyMediaBreakpoints } from '../media-query/media-breakpoints';
import { SkyMediaQueryListener } from '../media-query/media-query-listener';
import { SkyMediaQueryService } from '../media-query/media-query.service';
import * as i0 from "@angular/core";
/**
 * Acts like `SkyMediaQueryService` for a container element, emitting the same responsive breakpoints.
 * @deprecated Use the `SkyResponsiveHostDirective` instead.
 */
export declare class SkyResizeObserverMediaQueryService extends SkyMediaQueryService implements OnDestroy {
    #private;
    /**
     * Emits when the breakpoint changes.
     */
    get breakpointChange(): Observable<SkyBreakpoint>;
    /**
     * Returns the current breakpoint.
     * @deprecated Subscribe to the `breakpointChange` observable instead.
     */
    get current(): SkyMediaBreakpoints;
    ngOnDestroy(): void;
    /**
     * @internal
     */
    destroy(): void;
    /**
     * Sets the container element to watch. The `SkyResizeObserverMediaQueryService` will only observe one element at a
     * time. Any previous subscriptions will be unsubscribed when a new element is observed.
     */
    observe(element: ElementRef, options?: {
        updateResponsiveClasses?: boolean;
    }): SkyResizeObserverMediaQueryService;
    /**
     * Stop watching the container element and remove any added classes.
     */
    unobserve(): void;
    /**
     * Subscribes to element size changes that cross breakpoints.
     */
    subscribe(listener: SkyMediaQueryListener): Subscription;
    static ɵfac: i0.ɵɵFactoryDeclaration<SkyResizeObserverMediaQueryService, never>;
    static ɵprov: i0.ɵɵInjectableDeclaration<SkyResizeObserverMediaQueryService>;
}
