/** @packageDocumentation
 * @module Tiles
 */
import { Range1d } from "@itwin/core-geometry";
import { RealityMeshParams } from "../../render/RealityMeshParams";
import { MapCartoRectangle, MapTile, MapTilingScheme, QuadId, ReadMeshArgs, TerrainMeshProvider, TerrainMeshProviderOptions, TileRequest } from "../internal";
/** A terrain mesh provider that produces geometry that represents a smooth ellipsoid without any height perturbations.
 * The area within the project extents are represented as planar tiles and other tiles are facetted approximations
 * of the WGS84 ellipsoid.
 * This is the terrain provider used when the background map is enabled but 3d terrain is disabled.
 * @public
 */
export declare class EllipsoidTerrainProvider extends TerrainMeshProvider {
    private _tilingScheme;
    private readonly _wantSkirts;
    /** Construct a new terrain provider.
     * @note [[TerrainMeshProviderOptions.wantNormals]] is ignored - no normals are produced.
     */
    constructor(opts: TerrainMeshProviderOptions);
    /** Implements [[TerrainMeshProvider.maxDepth]] to return a fixed maximum depth of 22. */
    get maxDepth(): number;
    /** Implements [[TerrainMeshProvider.getChildHeightRange]] to return an empty range, because the ellipsoid is smooth. */
    getChildHeightRange(_quadId: QuadId, _rectangle: MapCartoRectangle, _parent: MapTile): Range1d | undefined;
    /** Implements [[TerrainMeshProvider.tilingScheme]]. */
    get tilingScheme(): MapTilingScheme;
    private createSkirtlessPlanarMesh;
    private createSkirtedPlanarMesh;
    /** @internal override */
    readMesh(args: ReadMeshArgs): Promise<RealityMeshParams | undefined>;
    private createGlobeMesh;
    /** Implements [[TerrainMeshProvider.requestMeshData]] to return an empty string because the mesh can be generated
     * purely from information provided by the [[MapTile]].
     */
    requestMeshData(): Promise<TileRequest.Response>;
}
//# sourceMappingURL=EllipsoidTerrainProvider.d.ts.map