/**
 * @class
 * @ngdoc service
 * @ngname ngeoAutoProjection
 * @hidden
 */
export function AutoProjectionService(): void;
export class AutoProjectionService {
    /**
     * Parse a string and return a coordinate if the result is valid. Given string
     * must be a two numbers separated by a space.
     *
     * @param {string} str the string to parse.
     * @returns {?import('ol/coordinate').Coordinate} A coordinate or null if the format is not valid.
     */
    stringToCoordinates(str: string): import("ol/coordinate").Coordinate | null;
    /**
     * Get an array of projections corresponding to their EPSG codes. Log an error
     *     for each code that are not defined in ol projections.
     *
     * @param {string[]} projectionsCodes EPSG codes (e.g. 'EPSG:3857',
     *     'epsg:3857' or '3857').
     * @returns {import('ol/proj/Projection').default[]} An array of projections.
     */
    getProjectionList(projectionsCodes: string[]): import("ol/proj/Projection").default[];
    /**
     * It projects the point using the projection array and finds the first one for
     * which it falls inside of the viewProjection extent.
     *
     * @param {import('ol/coordinate').Coordinate} coordinates The point to test.
     * @param {import('ol/extent').Extent} extent Limits in which coordinates can be valid.
     * @param {import('ol/proj/Projection').default} viewProjection Target projection the point.
     * @param {(import('ol/proj/Projection').default | string)[]} [opt_projections] optional array of
     *     projections. The point is tested in each projection, in the order of
     *     the array.
     * @returns {?import('ol/coordinate').Coordinate} A coordinates in the view's projection if it matches
     *     in one of the given projections, or null else.
     */
    tryProjections(coordinates: import("ol/coordinate").Coordinate, extent: import("ol/extent").Extent, viewProjection: import("ol/proj/Projection").default, opt_projections?: (import("ol/proj/Projection").default | string)[]): import("ol/coordinate").Coordinate | null;
    /**
     * Same as AutoProjection.tryProjections but if tryProjections return null,
     * re-call it with coordinates in reverse order.
     *
     * @param {import('ol/coordinate').Coordinate} coordinates The point to test.
     * @param {import('ol/extent').Extent} extent Limits in which coordinates can be valid.
     * @param {import('ol/proj/Projection').default} viewProjection Target projection the point.
     * @param {(import('ol/proj/Projection').default | string)[]} [opt_projections] optional array of
     *     projections. The point is tested in each projection, in the order of
     *     the array.
     * @returns {?import('ol/coordinate').Coordinate} A coordinates in the view's projection if it matches
     *     in one of the given projections, or null else.
     */
    tryProjectionsWithInversion(coordinates: import("ol/coordinate").Coordinate, extent: import("ol/extent").Extent, viewProjection: import("ol/proj/Projection").default, opt_projections?: (import("ol/proj/Projection").default | string)[]): import("ol/coordinate").Coordinate | null;
}
export default myModule;
/**
 * @type {angular.IModule}
 * @hidden
 */
declare const myModule: angular.IModule;
import angular from 'angular';
