/**
 * @hidden
 */
export class ScaleselectorController {
    /**
     * @param {angular.IScope} $scope Directive scope.
     * @param {angular.IAttributes} $attrs Attributes.
     * @param {import('ngeo/options').ngeoScaleSelectorOptions} ngeoScaleSelectorOptions The options.
     */
    constructor($scope: angular.IScope, $attrs: angular.IAttributes, ngeoScaleSelectorOptions: import("ngeo/options").ngeoScaleSelectorOptions);
    /**
     * The zoom level/scale map object.
     *
     * @type {number[]}
     */
    scales: number[];
    /**
     * @type {import('ol/Map').default}
     * @private
     */
    private map_;
    /**
     * @type {import('ngeo/options').ngeoScaleSelectorOptions}
     */
    options: import("ngeo/options").ngeoScaleSelectorOptions;
    /**
     * @type {angular.IScope}
     * @private
     */
    private $scope_;
    /**
     * @type {?import('ol/events').EventsKey}
     * @private
     */
    private resolutionChangeKey_;
    /**
     * @type {number|undefined}
     */
    currentScale: number | undefined;
    /**
     * @returns {number[]}
     */
    getZooms(): number[];
    /**
     * @param {number} zoom Zoom level.
     * @returns {number} Scale.
     */
    getScale(zoom: number): number;
    /**
     * @param {number} zoom Zoom level.
     */
    changeZoom(zoom: number): void;
    /**
     * @param {?Event|import('ol/events/Event').default} e OpenLayers object event.
     * @private
     */
    private handleResolutionChange_;
    /**
     * @param {Event|import('ol/events/Event').default} e OpenLayers object event.
     * @private
     */
    private handleViewChange_;
    /**
     * @private
     */
    private registerResolutionChangeListener_;
}
export namespace ScaleselectorController {
    let $inject: string[];
}
export default myModule;
import angular from 'angular';
/**
 * @type {angular.IModule}
 * @hidden
 */
declare const myModule: angular.IModule;
