import Basemap from "@arcgis/core/Basemap";
import { type BasemapJson } from "../json/BasemapJson.js";
import { WellKnownBasemap } from "../support/esri.js";
export { basemapsAreEquivalent, standardBasemaps } from "./_layers.js";
/**
 * Creates a well-known basemap by ID.
 *
 * This is similar to Basemap.fromId(), however the basemaps that are returned
 * from this match the ones used on ArcGIS Online and Portal.
 *
 * @param id The well-known ID of the basemap.
 */
export declare function createStandardBasemap(id: WellKnownBasemap): Promise<Basemap>;
/**
 * Determines whether the given basemap is one of the standard basemaps
 * specified by WellKnownBasemap.
 *
 * @param basemap The basemap to check.
 */
export declare function isStandardBasemap(basemap: Basemap | BasemapJson): boolean;
/**
 * Determines whether the given basemap is a standard 2D basemap.
 *
 * @param basemap The basemap to check.
 */
export declare function isStandardBasemap2D(basemap: Basemap | BasemapJson): boolean;
/**
 * Given a basemap or basemap definition, get the corresponding well-known ID if
 * it matches a standard basemap, otherwise returns `undefined`.
 *
 * @param basemap The basemap or basemap definition to look up.
 */
export declare function getStandardBasemapId(basemap: Basemap | BasemapJson): WellKnownBasemap | undefined;
/**
 * Gets the thumbnail URL for a well-known basemap.
 *
 * @param id The well-known basemap ID.
 */
export declare function getStandardBasemapThumbnailUrl(id: WellKnownBasemap): string;
/**
 * Determines whether a basemap contains 3D layers.
 *
 * @param basemap The basemap to check for 3D layers.
 * @returns True if the basemap contains 3D layers, false otherwise.
 */
export declare function basemapHas3DLayers(basemap: Basemap | BasemapJson | undefined | null): boolean;
