/**
 * Performs a projection definititon lookup at epsg.io for the given EPSG code
 *
 * @export
 * @param {string | number} epsg
 * @param {string} locale
 * @param {string} mapDef
 * @returns {Promise<any>}
 * @since 0.13
 */
export declare function resolveProjectionFromEpsgIoAsync(epsg: string | number, locale: string, mapDef: string): Promise<any>;
/**
 * Ensures the given projection (by EPSG code) exists and if not invokes the given factory function (or does an epsg.io lookup)
 * to fetch the definition to be registered.
 *
 * Once registered, it will update the projection set within OpenLayers
 *
 * @export
 * @param {number} epsgCode
 * @param {() => Promise<string>} [factoryIfNotFound] A custom factory function to provide the required proj4js string for this projection. If not specified, a lookup to epsg.io will be done instead
 * @param {string} alias
 * @returns {Promise<string>}
 * @since 0.13
 */
export declare function ensureProjection(epsgCode: number, locale: string, alias?: string, factoryIfNotFound?: () => Promise<string>): Promise<[number, string]>;
