import type { BingLayerJson } from "./BingLayerJson.js";
import type { ImageServiceLayerJson } from "./ImageServiceLayerJson.js";
import type { ImageServiceVectorLayerJson } from "./ImageServiceVectorLayerJson.js";
import type { LayerJsonBase } from "./LayerJson.js";
import type { MapServiceLayerJson } from "./MapServiceLayerJson.js";
import type { OpenStreetMapLayerJson } from "./OpenStreetMapLayerJson.js";
import type { SceneLayerJson } from "./SceneLayerJson.js";
import type { TiledImageServiceLayerJson } from "./TiledImageServiceLayerJson.js";
import type { TiledMapServiceLayerJson } from "./TiledMapServiceLayerJson.js";
import type { VectorTileLayerJson } from "./VectorTileLayerJson.js";
import type { WMSLayerJson } from "./WMSLayerJson.js";
import type { WebTileLayerJson } from "./WebTileLayerJson.js";
/**
 * Properties for layers that are acceptable as basemap layers.
 *
 * See
 * {@link https://developers.arcgis.com/web-map-specification/objects/baseMapLayer/}.
 */
export interface BasemapLayerJsonBase extends LayerJsonBase {
    /**
     * This is applicable if used as a baseMapLayer. A boolean value indicating
     * whether or not the baseMapLayer draws on top (true) of other layers,
     * including operationalLayers , or below (false).
     */
    isReference?: boolean | null;
}
/**
 * A base map layer in a web map/scene.
 */
export type BasemapLayerJson = BingLayerJson | ImageServiceLayerJson | ImageServiceVectorLayerJson | MapServiceLayerJson | OpenStreetMapLayerJson | SceneLayerJson | TiledImageServiceLayerJson | TiledMapServiceLayerJson | VectorTileLayerJson | WebTileLayerJson | WMSLayerJson;
