import * as React from "react";
export declare enum ZoomDirection {
    In = 0,
    Out = 1
}
export declare enum PanDirection {
    East = 0,
    West = 1,
    South = 2,
    North = 3
}
/**
 * Navigator component props
 *
 * @export
 * @interface INavigatorProps
 * @extends {React.Props<any>}
 */
export interface INavigatorProps extends React.Props<any> {
    style?: React.CSSProperties;
    busy: boolean;
    scale: number;
    /**
     * A list of finite scales. Set when the map contains base (tiled) layers. When set, slider drags will snap to the values
     * in this list. Zooming in and out will move to the next/previous finite scale instead of the default logarithmic calculation
     *
     * @type {number[]}
     * @memberOf INavigatorProps
     */
    finiteScaleList?: number[];
    locale?: string;
    onZoom: (direction: ZoomDirection) => void;
    onPan: (direction: PanDirection) => void;
    onRequestZoomToScale: (scale: number) => void;
}
/**
 * The Navigator component provides an interactive zoom slider for the map viewer
 * @param props
 */
export declare const Navigator: (props: INavigatorProps) => JSX.Element;
