@itwin/core-frontend
Version:
iTwin.js frontend components
39 lines • 1.98 kB
TypeScript
/** @packageDocumentation
* @module Tiles
*/
import { ImageMapLayerSettings } from "@itwin/core-common";
import { ArcGISServiceMetadata, MapLayerAccessClient, MapLayerAccessToken, MapLayerImageryProvider, MapLayerImageryProviderStatus } from "../../../../tile/internal";
/** Base class for ArcGIS map-layer imagery providers.
*
* The initial purpose of this class is to offer shared methods
* to query ArcGIS services and apply the appropriate security token.
* @see [[ArcGISMapLayerImageryProvider]]
* @internal
*/
export declare abstract class ArcGISImageryProvider extends MapLayerImageryProvider {
protected _accessClient: MapLayerAccessClient | undefined;
protected _lastAccessToken: MapLayerAccessToken | undefined;
/** Flag indicating if access token should be added to request.
* @note We assume a service to require access token for the entire viewing session.
*/
protected _accessTokenRequired: boolean;
protected _querySupported: boolean;
get supportsMapFeatureInfo(): boolean;
constructor(settings: ImageMapLayerSettings, usesCachedTiles: boolean);
/** Updates the accessClient token state whenever the status of the provider change.
* */
protected onStatusUpdated(status: MapLayerImageryProviderStatus): void;
/**
* Fetch an ArcGIS service metadata, and returns its JSON representation.
* This wrapper maintains token state and should be used instead of the the ArcGisUtilities version.
*/
protected getServiceJson(): Promise<ArcGISServiceMetadata | undefined>;
/**
* Make a request to an ArcGIS service using the provided URL and init parameters.
* @param url URL to query
* @param options Custom settings to apply to the request.
* Refer to fetch API for more details (https://developer.mozilla.org/en-US/docs/Web/API/fetch)
*/
protected fetch(url: URL, options?: RequestInit): Promise<Response>;
}
//# sourceMappingURL=ArcGISImageryProvider.d.ts.map