import type EsriImageryTileLayer from "@arcgis/core/layers/ImageryTileLayer";
import type { BaseMapLayerBase } from "./BaseMapLayer.js";
import { LayerDefinition } from "./LayerDefinition.js";
import type { OperationalLayerBase } from "./OperationalLayer.js";
export declare namespace TiledImageServiceLayer {
    /**
     * Default values from Esri JavaScript API documentation.
     *
     * @deprecated Use "json/*" modules instead.
     */
    const esriImageryTileLayerDefaults: {
        legendEnabled: boolean;
        visible: boolean;
        opacity: number;
        minScale: number;
        maxScale: number;
    };
    /**
     * Converts an ArcGIS Portal JSON representation of a tiled image layer to
     * its Esri JavaScript API representation.
     *
     * @deprecated Use "json/*" modules instead.
     * @param layerJson The layer JSON to convert.
     */
    function toEsriApiLayer(layerJson: TiledImageServiceLayer): Promise<EsriImageryTileLayer>;
    /**
     * Applies an ArcGIS Portal JSON representation of a tiled image layer to
     * its Esri JavaScript API representation.
     *
     * @deprecated Use "json/*" modules instead.
     * @param layerJson The layer JSON to apply.
     * @param layer The layer object to apply it to.
     */
    function applyToEsriApiLayer(layerJson: TiledImageServiceLayer, layer: EsriImageryTileLayer): Promise<void>;
    /**
     * Converts an Esri JavaScript API TileLayer object to its ArcGIS Portal
     * JSON representation.
     *
     * @deprecated Use "json/*" modules instead.
     * @param layer The layer object to convert.
     */
    function fromEsriApiTileLayer(layer: EsriImageryTileLayer): TiledImageServiceLayer;
}
/**
 * An ArcGIS Tiled Image Service layer displays map content from an ArcGIS
 * Server Image service that has been cached (tiled).
 *
 * See
 * {@link https://developers.arcgis.com/web-map-specification/objects/tiledImageServiceLayer/}
 * {@link https://developers.arcgis.com/web-scene-specification/objects/tiledImageServiceLayer/}.
 *
 * @deprecated Use "json/*" modules instead.
 */
export interface TiledImageServiceLayer extends OperationalLayerBase, BaseMapLayerBase {
    /**
     * A sequence of custom parameters appended to the URL of all requests
     * related to supporting ArcGIS layer types.
     */
    customParameters?: Record<string, unknown>;
    /**
     * The type of layer.
     */
    layerType: "ArcGISTiledImageServiceLayer";
    /**
     * URL to the ArcGIS Server Image Service.
     */
    url: string;
    /**
     * An object that defines the attribute schema and drawing information for a
     * layer drawn using client-side graphics. See layerDefinition properties
     * table.
     */
    layerDefinition?: LayerDefinition;
}
