import type Envelope from "./Envelope.js"; import type SpatialReference from "./SpatialReference.js"; import type esriUnits from "./esriUnits.js"; export interface MapServiceResponseLayer { defaultVisibility: boolean; id: number; maxScale: number; minScale: number; name: string; parentLayerId: number; subLayerIds: number[]; } export default interface MapServiceResponse { capabilities: string; copyrightText: string; currentVersion: number; description: string; documentInfo: { [key: string]: string; }; exportTilesAllowed: boolean; fullExtent: Envelope; initialExtent: Envelope; layers: MapServiceResponseLayer[]; mapName: string; maxExportTilesCount: number; maxImageHeight: number; maxImageWidth: number; maxLOD: number; maxRecordCount: number; maxScale: number; minLOD: number; minScale: number; referenceScale?: number; resampling: boolean; serviceDescription: string; singleFusedMapCache: boolean; spatialReference: SpatialReference; supportedExtensions: string; supportedImageFormatTypes: string; supportedQueryFormats: string; supportsClipping?: boolean; supportsDynamicLayers: boolean; supportsSpatialFilter?: boolean; tables: { id: number; name: string; }[]; tileInfo: TileInfo; tileServers: string[]; timeInfo: TimeInfo; units: esriUnits; } interface TileInfo { rows: number; cols: number; dpi: number; format: string; compressionQuality: number; origin: { x: number; y: number; }; spatialReference: SpatialReference; lods: { level: number; resolution: number; scale: number; }[]; } interface TimeInfo { timeExtent: [string | number | Date, string | number | Date]; timeReference: { timeZone: string; respectsDaylightSaving: boolean; }; timeRelation: esriTimeRelation; defaultTimeInterval: number; defaultTimeIntervalUnits: esriTimeUnits; defaultTimeWindow: unknown; hasLiveData: boolean; } declare enum esriTimeRelation { esriTimeRelationOverlaps = "esriTimeRelationOverlaps", esriTimeRelationOverlapsStartWithinEnd = "esriTimeRelationOverlapsStartWithinEnd", esriTimeRelationAfterStartOverlapsEnd = "esriTimeRelationAfterStartOverlapsEnd" } declare enum esriTimeUnits { esriTimeUnitsCenturies = "esriTimeUnitsCenturies", esriTimeUnitsDays = "esriTimeUnitsDays", esriTimeUnitsDecades = "esriTimeUnitsDecades", esriTimeUnitsHours = "esriTimeUnitsHours", esriTimeUnitsMilliseconds = "esriTimeUnitsMilliseconds", esriTimeUnitsMinutes = "esriTimeUnitsMinutes", esriTimeUnitsMonths = "esriTimeUnitsMonths", esriTimeUnitsSeconds = "esriTimeUnitsSeconds", esriTimeUnitsWeeks = "esriTimeUnitsWeeks", esriTimeUnitsYears = "esriTimeUnitsYears", esriTimeUnitsUnknown = "esriTimeUnitsUnknown" } export {};