import type FacilityLayerInfo from "../layers/support/FacilityLayerInfo.js"; import type LevelLayerInfo from "../layers/support/LevelLayerInfo.js"; import type SiteLayerInfo from "../layers/support/SiteLayerInfo.js"; import type { JSONSupport } from "../core/JSONSupport.js"; import type { LevelLayerInfoProperties } from "../layers/support/LevelLayerInfo.js"; import type { FacilityLayerInfoProperties } from "../layers/support/FacilityLayerInfo.js"; import type { SiteLayerInfoProperties } from "../layers/support/SiteLayerInfo.js"; export interface MapFloorInfoProperties { /** Contains the facility features of a floor plan, which describe the footprints of managed buildings and other structures. The [Floor Filter](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-floor-filter/) component uses this property to identify what facilities exist in your map to use for navigation and filtering. */ facilityLayer?: FacilityLayerInfoProperties | null; /** Contains the level features of a floor plan, which describe the footprint of each occupiable floor contained in a managed facility. The [Floor Filter](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-floor-filter/) component uses this property to identify what levels exist in your map to use for filtering. */ levelLayer?: LevelLayerInfoProperties | null; /** Contains the site features of a floor plan, which describe the boundaries of managed sites and is used for visualization in mapmaking. The [Floor Filter](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-floor-filter/) component uses this property to identify the sites in your map to use for navigation and filtering. */ siteLayer?: SiteLayerInfoProperties | null; } /** * Floor-aware maps facilitate visualizing, editing, and analyzing indoor data and they allow for fast navigation of buildings in maps and scenes. To visualize your data based on a site, facility, or level, your map must contain the related floor plan layers, with features linked together in a floor plan hierarchy as done in the [ArcGIS Indoors Information Model](https://pro.arcgis.com/en/pro-app/latest/help/data/indoors/arcgis-indoors-information-model.htm). * Once you define the properties to make your map floor-aware, you can use the [Floor Filter](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-floor-filter/) component to explore the floor-aware data based on the configured site, facility, and level layers. The [Floor Filter](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-floor-filter/) currently supports [FeatureLayers](https://developers.arcgis.com/javascript/latest/references/core/layers/FeatureLayer/), [SceneLayers](https://developers.arcgis.com/javascript/latest/references/core/layers/SceneLayer/) and [MapImageLayers](https://developers.arcgis.com/javascript/latest/references/core/layers/MapImageLayer/) (map services). * The floor filter allows you to filter the floor plan data that is displayed in your [MapView](https://developers.arcgis.com/javascript/latest/references/core/views/MapView/) or [SceneView](https://developers.arcgis.com/javascript/latest/references/core/views/SceneView/), to a site, a facility in the site, or a level in the facility. * * @since 4.19 * @see [Floor Filter](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-floor-filter/) * @see [WebMap.floorInfo](https://developers.arcgis.com/javascript/latest/references/core/WebMap/#floorInfo) * @see [WebScene.floorInfo](https://developers.arcgis.com/javascript/latest/references/core/WebScene/#floorInfo) */ export default class MapFloorInfo extends JSONSupport { constructor(properties?: MapFloorInfoProperties); /** Contains the facility features of a floor plan, which describe the footprints of managed buildings and other structures. The [Floor Filter](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-floor-filter/) component uses this property to identify what facilities exist in your map to use for navigation and filtering. */ get facilityLayer(): FacilityLayerInfo | null | undefined; set facilityLayer(value: FacilityLayerInfoProperties | null | undefined); /** Contains the level features of a floor plan, which describe the footprint of each occupiable floor contained in a managed facility. The [Floor Filter](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-floor-filter/) component uses this property to identify what levels exist in your map to use for filtering. */ get levelLayer(): LevelLayerInfo | null | undefined; set levelLayer(value: LevelLayerInfoProperties | null | undefined); /** Contains the site features of a floor plan, which describe the boundaries of managed sites and is used for visualization in mapmaking. The [Floor Filter](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-floor-filter/) component uses this property to identify the sites in your map to use for navigation and filtering. */ get siteLayer(): SiteLayerInfo | null | undefined; set siteLayer(value: SiteLayerInfoProperties | null | undefined); }