import { NgZone } from '@angular/core';
import { BlockScrollStrategy, ScrollDispatcher, ScrollStrategyOptions } from '@angular/cdk/overlay';
import { RViewportRulerAdapter } from './viewport-ruler-adapter';
import { RLayoutScrollService } from '../../services/scroll.service';
export declare class RBlockScrollStrategyAdapter extends BlockScrollStrategy {
    protected scrollService: RLayoutScrollService;
    constructor(document: any, viewportRuler: RViewportRulerAdapter, scrollService: RLayoutScrollService);
    enable(): void;
    disable(): void;
}
export declare class RScrollStrategyOptions extends ScrollStrategyOptions {
    protected scrollService: RLayoutScrollService;
    protected scrollDispatcher: ScrollDispatcher;
    protected viewportRuler: RViewportRulerAdapter;
    protected ngZone: NgZone;
    protected document: any;
    constructor(scrollService: RLayoutScrollService, scrollDispatcher: ScrollDispatcher, viewportRuler: RViewportRulerAdapter, ngZone: NgZone, document: any);
    block: () => RBlockScrollStrategyAdapter;
}
export declare type RScrollStrategies = keyof Pick<RScrollStrategyOptions, 'noop' | 'close' | 'block' | 'reposition'>;
