import { Observable } from "rxjs";
import { ITimelineZoom, TimelineViewMode } from "../models/zoom";
import { IIndexedZoom, IZoomsHandler } from "../models";
export declare class ZoomsHandler<ViewMode = TimelineViewMode> implements IZoomsHandler<ViewMode> {
    private _zooms;
    private _activeZoom$;
    activeZoom$: Observable<IIndexedZoom<ViewMode>>;
    get activeZoom(): IIndexedZoom<ViewMode>;
    get zooms(): IIndexedZoom<ViewMode>[];
    constructor(zooms: ITimelineZoom<ViewMode>[]);
    setZooms(zooms: ITimelineZoom<ViewMode>[]): void;
    getFirstZoom(): IIndexedZoom<ViewMode>;
    getLastZoom(): IIndexedZoom<ViewMode>;
    zoomIn(): void;
    zoomOut(): void;
    changeActiveZoom(zoom: ITimelineZoom<ViewMode>): void;
    isZoomActive(zoom: ITimelineZoom<ViewMode>): boolean;
    private _findZoomIndex;
}
