UNPKG

@vertigis/viewer-spec

Version:

VertiGIS Viewer Specification

1,138 lines (1,137 loc) 542 kB
{ "$ref": "#/definitions/viewer-spec.Event", "definitions": { "@vertigis.arcgis-extensions.data._TableExtension.TableReference": { "additionalProperties": false, "description": "Matches an existing table in a map.", "properties": { "id": { "description": "The table's ID.", "type": "string" }, "title": { "description": "The table's title.", "type": "string" } }, "type": "object" }, "@vertigis.arcgis-extensions.mapping._LayerExtension.LayerReference": { "additionalProperties": false, "description": "Matches an existing layer.", "properties": { "id": { "description": "The layer's ID.", "type": "string" }, "path": { "description": "The path to the geodatabase used by an MMAP layer. Mobile only.", "type": "string" }, "subtype": { "description": "The Layer's type, used for Layer types with multiple possible layer extension mappings.", "type": "string" }, "title": { "description": "The layer's title.", "type": "string" }, "url": { "description": "The layer's url.", "type": "string" } }, "type": "object" }, "ArcGISPortalIdentity": { "additionalProperties": false, "type": "object" }, "AuthenticationType": { "description": "A type of authentication.", "enum": [ "Network", "OAuth2", "Token", "Unknown" ], "type": "string" }, "EffectFunctionJson": { "anyOf": [ { "$ref": "#/definitions/esri.rest-api.LayerJson.HueRotateEffectFunctionJson" }, { "$ref": "#/definitions/esri.rest-api.LayerJson.BlurEffectFunctionJson" }, { "$ref": "#/definitions/esri.rest-api.LayerJson.DropShadowEffectFunctionJson" }, { "$ref": "#/definitions/esri.rest-api.LayerJson.BloomEffectFunctionJson" }, { "$ref": "#/definitions/esri.rest-api.LayerJson.BrightnessEffectFunctionJson" }, { "$ref": "#/definitions/esri.rest-api.LayerJson.ContrastEffectFunctionJson" }, { "$ref": "#/definitions/esri.rest-api.LayerJson.GrayscaleEffectFunctionJson" }, { "$ref": "#/definitions/esri.rest-api.LayerJson.InvertEffectFunctionJson" }, { "$ref": "#/definitions/esri.rest-api.LayerJson.OpacityEffectFunctionJson" }, { "$ref": "#/definitions/esri.rest-api.LayerJson.SaturateEffectFunctionJson" }, { "$ref": "#/definitions/esri.rest-api.LayerJson.SepiaEffectFunctionJson" } ], "description": "Effect functions that can be combined to build a layer effect." }, "Error": { "additionalProperties": false, "properties": { "cause": {}, "message": { "type": "string" }, "name": { "type": "string" }, "stack": { "type": "string" } }, "required": [ "message", "name" ], "type": "object" }, "GeolocateAccuracyChangedEventArgs": { "additionalProperties": false, "description": "Arguments for the \"geolocation.accuracy-changed\" event.", "properties": { "accuracy": { "description": "The current geolocation accuracy, in meters.", "type": "number" } }, "required": [ "accuracy" ], "type": "object" }, "GeolocationEvent": { "additionalProperties": false, "description": "Arguments for geolocation events such as \"geolocation.position-acquired\" and \"geolocation.position-lost\".", "properties": { "gnssDeviceConnectionInfo": { "$ref": "#/definitions/GnssDeviceConnectionInfo", "description": "The GNSS source associated with the raised geolocation event. Mobile only." } }, "type": "object" }, "GeolocationStatusChangedEventArgs": { "additionalProperties": false, "description": "Arguments for the \"geolocation.status-changed\" event.", "properties": { "isEnabled": { "description": "Indicates whether the geolocation is now enabled.", "type": "boolean" } }, "required": [ "isEnabled" ], "type": "object" }, "GnssDeviceConnectionInfo": { "additionalProperties": false, "description": "A geolocation source.", "properties": { "deviceFullName": { "description": "Full name of the GNSS device.", "type": "string" }, "deviceName": { "description": "Name of the GNSS device.", "type": "string" }, "deviceType": { "$ref": "#/definitions/GnssDeviceType", "description": "The type of the device. Options are Integrated, Bluetooth, USB, and Emulator." }, "settings": { "$ref": "GnssDeviceSettings", "description": "The device settings, including the correction service's spatial reference, the desired datum transformation, and the device's antenna height." } }, "required": [ "deviceFullName", "deviceName", "deviceType", "settings" ], "type": "object" }, "GnssDeviceType": { "enum": [ "bluetooth", "emulator", "integrated", "usb" ], "type": "string" }, "HasMaps": { "additionalProperties": false, "description": "Defines an object that has a `maps` property.", "properties": { "maps": { "$ref": "#/definitions/MapsLike", "description": "Map(s) to use for the command/operation." } }, "type": "object" }, "LayerEventArgs": { "additionalProperties": false, "description": "Arguments for the \"layer.visibility-changed\" event.", "properties": { "layerContent": { "$ref": "ILayerContent", "description": "The layer whose visibility was changed. Mobile only." }, "layers": { "$ref": "#/definitions/LayersLike", "description": "The layer whose visibility was changed. Web only." } }, "required": [ "layerContent" ], "type": "object" }, "LayerLike": { "anyOf": [ { "$ref": "#/definitions/@vertigis.arcgis-extensions.mapping._LayerExtension.LayerReference" }, { "$ref": "#/definitions/@vertigis.arcgis-extensions.data._TableExtension.TableReference" }, { "$ref": "#/definitions/esri.Layer" }, { "$ref": "@vertigis.arcgis-extensions.mapping._LayerExtension.LayerExtension" }, { "$ref": "esri.SublayerLike" }, { "$ref": "@vertigis.arcgis-extensions.mapping._SublayerExtension.SublayerExtension" }, { "$ref": "@vertigis.arcgis-extensions.data._TableExtension.TableExtension" }, { "type": "string" } ], "description": "A (sub)layer extension, or an object that is convertible to one." }, "LayersLike": { "anyOf": [ { "$ref": "#/definitions/@vertigis.arcgis-extensions.mapping._LayerExtension.LayerReference" }, { "$ref": "#/definitions/@vertigis.arcgis-extensions.data._TableExtension.TableReference" }, { "$ref": "#/definitions/esri.Layer" }, { "$ref": "@vertigis.arcgis-extensions.mapping._LayerExtension.LayerExtension" }, { "$ref": "esri.SublayerLike" }, { "$ref": "@vertigis.arcgis-extensions.mapping._SublayerExtension.SublayerExtension" }, { "$ref": "@vertigis.arcgis-extensions.data._TableExtension.TableExtension" }, { "items": { "$ref": "#/definitions/LayerLike" }, "type": "array" }, { "type": "string" } ], "description": "One or more objects that are convertible to layer extensions." }, "MapEvent": { "additionalProperties": false, "description": "Arguments for the various map events.", "properties": { "mapExtension": { "$ref": "@vertigis.arcgis-extensions.mapping.MapExtension.MapExtension", "description": "The map extension for which the event was generated. This property is required in VertiGIS Studio Mobile. Mobile only." }, "maps": { "$ref": "#/definitions/MapsLike", "description": "The map from which the event was generated. Web only." } }, "type": "object" }, "MapInitializedEvent": { "additionalProperties": false, "description": "Event args for the map.initialized event.", "properties": { "loadTime": { "$ref": "#/definitions/TimeSpan", "description": "The amount of time that the map took to load. Mobile only." }, "mapExtension": { "$ref": "@vertigis.arcgis-extensions.mapping.MapExtension.MapExtension", "description": "The map extension for which the event was generated. This property is required in VertiGIS Studio Mobile. Mobile only." }, "maps": { "$ref": "#/definitions/MapsLike", "description": "The map from which the event was generated. Web only." } }, "required": [ "loadTime" ], "type": "object" }, "MapsLike": { "anyOf": [ { "$ref": "@vertigis.arcgis-extensions.mapping.MapExtension.MapExtension" }, { "items": { "$ref": "@vertigis.arcgis-extensions.mapping.MapExtension.MapExtension" }, "type": "array" } ], "description": "One or map extensions." }, "OperationalLayerJson": { "anyOf": [ { "$ref": "#/definitions/esri.rest-api.AnnotationLayerJson.AnnotationLayerJson" }, { "$ref": "#/definitions/esri.rest-api.BuildingSceneLayerJson.BuildingSceneLayerJson" }, { "$ref": "#/definitions/esri.rest-api.CSVLayerJson.CSVLayerJson" }, { "$ref": "#/definitions/esri.rest-api.FeatureLayerJson.FeatureLayerJson" }, { "$ref": "#/definitions/esri.rest-api.GeoJSONLayerJson.GeoJSONLayerJson" }, { "$ref": "#/definitions/esri.rest-api.GeoRSSLayerJson.GeoRSSLayerJson" }, { "$ref": "#/definitions/esri.rest-api.GroupLayerJson.GroupLayerJson" }, { "$ref": "#/definitions/esri.rest-api.ImageServiceLayerJson.ImageServiceLayerJson" }, { "$ref": "#/definitions/esri.rest-api.ImageServiceVectorLayerJson.ImageServiceVectorLayerJson" }, { "$ref": "#/definitions/esri.rest-api.IntegratedMeshLayerJson.IntegratedMeshLayerJson" }, { "$ref": "#/definitions/esri.rest-api.KMLLayerJson.KMLLayerJson" }, { "$ref": "#/definitions/esri.rest-api.MapServiceLayerJson.MapServiceLayerJson" }, { "$ref": "#/definitions/esri.rest-api.PointCloudLayerJson.PointCloudLayerJson" }, { "$ref": "#/definitions/esri.rest-api.SceneLayerJson.SceneLayerJson" }, { "$ref": "#/definitions/esri.rest-api.StreamLayerJson.StreamLayerJson" }, { "$ref": "#/definitions/esri.rest-api.SubtypeGroupLayerJson.SubtypeGroupLayerJson" }, { "$ref": "#/definitions/esri.rest-api.TiledImageServiceLayerJson.TiledImageServiceLayerJson" }, { "$ref": "#/definitions/esri.rest-api.TiledMapServiceLayerJson.TiledMapServiceLayerJson" }, { "$ref": "#/definitions/esri.rest-api.VectorTileLayerJson.VectorTileLayerJson" }, { "$ref": "#/definitions/esri.rest-api.WebTileLayerJson.WebTileLayerJson" }, { "$ref": "#/definitions/esri.rest-api.WFSLayerJson.WFSLayerJson" }, { "$ref": "#/definitions/esri.rest-api.WMSLayerJson.WMSLayerJson" } ], "description": "An operational layer in a web map/scene." }, "PointCloudFilterJson": { "anyOf": [ { "$ref": "#/definitions/esri.rest-api.DrawingInfoJson.PointCloudBitfieldFilterJson" }, { "$ref": "#/definitions/esri.rest-api.DrawingInfoJson.PointCloudReturnFilterJson" }, { "$ref": "#/definitions/esri.rest-api.DrawingInfoJson.PointCloudValueFilterJson" } ], "description": "Filters applied to the pointCloud which will hide a point.\n\nSee {@link https://developers.arcgis.com/web-scene-specification/objects/pointCloudFilter/}." }, "PortalType": { "description": "The type of Portal.", "enum": [ "AGOL", "ArcGISEnterprise" ], "type": "string" }, "PrintErrorEventArgs": { "additionalProperties": false, "description": "Arguments for the printing.print-error event.", "properties": { "errorCode": { "description": "The HTTP status code associated with the error, if it's a HTTP error.", "type": "number" }, "instanceId": { "description": "A unique ID to track the running of this print.", "type": "string" }, "message": { "description": "The error message.", "type": "string" }, "printTemplateId": { "description": "The ID of the print template being used.", "type": "string" } }, "required": [ "instanceId", "message", "printTemplateId" ], "type": "object" }, "PrintFinishedEventArgs": { "additionalProperties": false, "description": "Arguments for the printing.print-finished event.", "properties": { "downloadUrl": { "description": "The URL from which to download the print.", "type": "string" }, "instanceId": { "description": "A unique ID to track the running of this print.", "type": "string" }, "printTemplateId": { "description": "The ID of the print template being used.", "type": "string" } }, "required": [ "downloadUrl", "instanceId", "printTemplateId" ], "type": "object" }, "PrintProgressEventArgs": { "additionalProperties": false, "description": "Arguments for the printing.print-progress event.", "properties": { "instanceId": { "description": "A unique ID to track the running of this print.", "type": "string" }, "printTemplateId": { "description": "The ID of the print template being used.", "type": "string" } }, "required": [ "instanceId", "printTemplateId" ], "type": "object" }, "PrintStartedEventArgs": { "additionalProperties": false, "description": "Arguments for the printing.print-started event.", "properties": { "instanceId": { "description": "A unique ID to track the running of this print.", "type": "string" }, "printTemplateId": { "description": "The ID of the print template being used.", "type": "string" } }, "required": [ "instanceId", "printTemplateId" ], "type": "object" }, "SignInCompletedEventArgs": { "additionalProperties": false, "description": "Arguments for the auth.sign-in-completed and auth.portal-sign-in-completed events. Only available in VertiGIS Studio Mobile.", "properties": { "identity": { "$ref": "#/definitions/ArcGISPortalIdentity", "description": "The identity that was obtained from the sign in." } }, "required": [ "identity" ], "type": "object" }, "SignInEventArgs": { "additionalProperties": false, "description": "Arguments for the auth.sign-in events. Only available in VertiGIS Studio Mobile.", "properties": { "authenticationType": { "$ref": "#/definitions/AuthenticationType", "description": "The authentication method used for the sign in process. Not available in VertiGIS Studio Web." }, "portalType": { "$ref": "#/definitions/PortalType", "description": "The type of Portal: AGOL or Enterprise." }, "requestInfo": { "description": "Information about the resource that is required to sign in. Not available in VertiGIS Studio Web. Will be an instance of esri.security.CredentialRequestInfo for VertiGIS Studio Mobile." } }, "required": [ "authenticationType", "portalType", "requestInfo" ], "type": "object" }, "SignInFailedEventArgs": { "additionalProperties": false, "description": "Arguments for the auth.sign-in-failed event. Only available in the VertiGIS Studio Mobile Viewer.", "properties": { "authenticationType": { "$ref": "#/definitions/AuthenticationType", "description": "The authentication method used for the sign in process. Not available in VertiGIS Studio Web." }, "exception": { "description": "The exception that occurred during the sign in. Not available in VertiGIS Studio Web." }, "portalType": { "$ref": "#/definitions/PortalType", "description": "The type of Portal: AGOL or Enterprise." }, "requestInfo": { "description": "Information about the resource that is required to sign in. Not available in VertiGIS Studio Web. Will be an instance of esri.security.CredentialRequestInfo for VertiGIS Studio Mobile." } }, "required": [ "authenticationType", "exception", "portalType", "requestInfo" ], "type": "object" }, "TimeSpan": { "additionalProperties": false, "type": "object" }, "WorkflowErrorEventArgs": { "additionalProperties": false, "description": "Arguments for the \"workflow.workflow-error\" event.", "properties": { "errorMessage": { "description": "The human readable error message.", "type": "string" }, "exception": { "$ref": "#/definitions/Error", "description": "The Error object containing detailed information about the error." }, "workflow": { "$ref": "WorkflowModel", "description": "The workflow pertaining to the event." } }, "required": [ "workflow" ], "type": "object" }, "WorkflowFinishedEventArgs": { "additionalProperties": false, "description": "Arguments for the \"workflow.workflow-finished\" event.", "properties": { "workflow": { "$ref": "WorkflowModel", "description": "The workflow pertaining to the event." } }, "required": [ "workflow" ], "type": "object" }, "auth.sign-in-completed": { "description": "Raised when successfully signed in. Principal event type used in Web, SignInCompletedEventArgs used in Mobile.", "enum": [ "auth.sign-in-completed" ] }, "auth.sign-in-completed:input": { "anyOf": [ { "$ref": "Principal" }, { "$ref": "#/definitions/SignInCompletedEventArgs" } ] }, "auth.sign-in-failed": { "description": "Raised when a sign-in attempt fails.", "enum": [ "auth.sign-in-failed" ] }, "auth.sign-in-failed:input": { "anyOf": [ { "$ref": "#/definitions/SignInFailedEventArgs" }, { "type": "null" } ] }, "auth.sign-in-requested": { "description": "Raised when the user requests a sign-in.", "enum": [ "auth.sign-in-requested" ] }, "auth.sign-in-requested:input": { "anyOf": [ { "$ref": "#/definitions/SignInEventArgs" }, { "type": "null" } ] }, "auth.sign-out-completed": { "description": "Raised when the user is signed out.", "enum": [ "auth.sign-out-completed" ] }, "auth.sign-out-requested": { "description": "Raised when the user requests a sign-out.", "enum": [ "auth.sign-out-requested" ] }, "auth.token-refreshed": { "description": "Raised when the user's token is refreshed. Will be the new token in the VertiGIS Studio Web, and a TokenCredential object in VertiGIS Studio Mobile.", "enum": [ "auth.token-refreshed" ] }, "auth.token-refreshed:input": { "type": "string" }, "edit.feature-added": { "description": "Raised when a new feature is added to a feature source.", "enum": [ "edit.feature-added" ] }, "edit.feature-added:input": { "$ref": "@vertigis.arcgis-extensions.data.Feature.Feature" }, "edit.feature-deleted": { "description": "Raised when a feature is deleted from a feature source.", "enum": [ "edit.feature-deleted" ] }, "edit.feature-deleted:input": { "$ref": "@vertigis.arcgis-extensions.data.Feature.Feature" }, "edit.feature-updated": { "description": "Raised when the attributes or geometry of a feature from a feature source are updated.", "enum": [ "edit.feature-updated" ] }, "edit.feature-updated:input": { "$ref": "@vertigis.arcgis-extensions.data.Feature.Feature" }, "esri.Layer": { "$ref": "esri/layers/Layer" }, "esri.Point": { "$ref": "esri/geometry/Point" }, "esri.rest-api.AnnotationLayerJson.AnnotationLayerJson": { "additionalProperties": false, "description": "Annotation layers can be created by referencing a layer from a feature service. Annotation layers honor any feature templates configured in the source document.", "properties": { "blendMode": { "description": "Blend modes are used to blend layers together to create an interesting effect in a layer, or even to produce what seems like a new layer.", "enum": [ "average", "color", "color-burn", "color-dodge", "darken", "destination-atop", "destination-in", "destination-out", "destination-over", "difference", "exclusion", "hard-light", "hue", "invert", "lighten", "lighter", "luminosity", "minus", "multiply", "normal", "overlay", "plus", "reflect", "saturation", "screen", "soft-light", "source-atop", "source-in", "source-out", "vivid-light", "xor" ], "type": "string" }, "customParameters": { "description": "A sequence of custom parameters appended to the URL of all requests related to supporting ArcGIS layer types." }, "disablePopup": { "description": "Indicates whether to allow a client to ignore popups defined by the service item.", "type": "boolean" }, "effect": { "$ref": "#/definitions/esri.rest-api.LayerJson.EffectJson", "description": "Effect provides various filter functions to achieve different visual effects similar to how image filters (photo apps) work." }, "enableEditing": { "description": "Indicates whether a client can add, remove or update features in the layer.", "type": "boolean" }, "id": { "description": "A unique identifying string for the layer.", "type": "string" }, "layerDefinition": { "$ref": "#/definitions/esri.rest-api.LayerDefinitionJson.LayerDefinitionJson", "description": "A layerDefinition object defining the attribute schema and drawing information for the layer." }, "layerType": { "const": "ArcGISAnnotationLayer", "description": "The layer type.", "type": "string" }, "listMode": { "$ref": "esri.ListMode", "description": "Indicates how the layer should display in the table of contents. The known values are listed below. See {@link support /esri!ListMode}." }, "maxScale": { "description": "A number representing the maximum scale at which the layer will be visible. The number is the scale's denominator; thus, a value of 2400 represents a scale of 1/2,400. A value of 0 indicates that the layer will be visible no matter how far you zoom in.", "type": "number" }, "minScale": { "description": "A number representing the minimum scale at which the layer will be visible. The number is the scale's denominator; thus, a value of 2400 represents a scale of 1/2,400.", "type": "number" }, "opacity": { "description": "The degree of transparency applied to the layer on the client side, where\n0 is full transparency and 1 is no transparency.", "type": "number" }, "popupInfo": { "$ref": "#/definitions/esri.rest-api.PopupInfoJson.PopupInfoJson", "description": "A PopupInfo object defining the content of pop-up windows when you click or query a feature." }, "refreshInterval": { "description": "When the refresh interval is set on a layer, the client must refresh that layer only, not the entire web map. The default value is '0', meaning the no refresh. You can enable a refresh interval on the following types of layers: ArcGIS Server web service, hosted feature layer, hosted tile layer, OGC WMS, OGS WMTS, tile layer, GeoRSS, Living Atlas layers, basemaps (including Bing Maps basemaps), CSV from the web with latitude and longitude fields, and KML when added to ArcGIS Online through the My Content page. See {@link https://doc.arcgis.com/en/arcgis-online/create-maps/set-refresh-interval.htm}.", "type": "number" }, "showLegend": { "description": "Indicates whether to allow map authors the ability to control what layers should be shown in a client's legend.", "type": "boolean" }, "title": { "description": "A user-friendly title for the layer that can be used in a table of contents. If this is not included, then a title is derived from the service.", "type": "string" }, "type": { "description": "(Deprecated, use layerType instead.) If the layer is referenced through a URL, but is not an ArcGIS web service, then this parameter can be supplied to denote the layer type.", "enum": [ "BingMapsAerial", "BingMapsHybrid", "BingMapsRoad", "CSV", "KML", "OpenStreetMap", "WMS", "WebTiledLayer" ], "type": "string" }, "url": { "description": "The URL to the layer.If the layer is not from a web service but rather a feature collection, than the url property is omitted.", "type": "string" }, "visibility": { "description": "Determines whether the layer is initially visible in the web map.", "type": "boolean" }, "visibleLayers": { "description": "An array of sublayer ids that should appear visible. These ids refer to subsets of the Annotation features in the AnnotationLayer, identified by their AnnotationClassId.", "items": { "type": "number" }, "type": "array" } }, "required": [ "layerType" ], "type": "object" }, "esri.rest-api.BuildingSceneLayerJson.AuthoringInfoFilterBlockJson": { "additionalProperties": false, "description": "The filter authoring info object contains metadata about the authoring process for creating a filter block object. This allows the authoring client to save specific, overridable settings. The next time it is accessed via an authoring client, their selections are remembered. Non-authoring clients can ignore it.", "properties": { "filterTypes": { "description": "Array of defined filter types. Each filter type has an array of filter values.", "items": { "$ref": "#/definitions/esri.rest-api.BuildingSceneLayerJson.AuthoringInfoFilterTypeJson" }, "type": "array" } }, "type": "object" }, "esri.rest-api.BuildingSceneLayerJson.AuthoringInfoFilterTypeJson": { "additionalProperties": false, "description": "The file authoring information for a filter, including the filter type and its value settings.", "properties": { "filterType": { "description": "Represents the filter type name. Name is a unique identifier.", "type": "string" }, "filterValues": { "description": "Array of filter values. Filter values are the attributes that can be stored for individual fields in a layer.", "items": { "type": "string" }, "type": "array" } }, "type": "object" }, "esri.rest-api.BuildingSceneLayerJson.BuildingSceneLayerJson": { "additionalProperties": false, "description": "The BuildingSceneLayer is a layer type designed for on-demand streaming and displaying building data.", "properties": { "activeFilterId": { "description": "Specifies the id of the currently active filter.", "type": "string" }, "blendMode": { "description": "Blend modes are used to blend layers together to create an interesting effect in a layer, or even to produce what seems like a new layer.", "enum": [ "average", "color", "color-burn", "color-dodge", "darken", "destination-atop", "destination-in", "destination-out", "destination-over", "difference", "exclusion", "hard-light", "hue", "invert", "lighten", "lighter", "luminosity", "minus", "multiply", "normal", "overlay", "plus", "reflect", "saturation", "screen", "soft-light", "source-atop", "source-in", "source-out", "vivid-light", "xor" ], "type": "string" }, "effect": { "$ref": "#/definitions/esri.rest-api.LayerJson.EffectJson", "description": "Effect provides various filter functions to achieve different visual effects similar to how image filters (photo apps) work." }, "filters": { "description": "A list of filters available for this layer. Overrides filters defined on the service.", "items": { "$ref": "#/definitions/esri.rest-api.BuildingSceneLayerJson.FilterJson" }, "type": "array" }, "id": { "description": "A unique identifying string for the layer.", "type": "string" }, "itemId": { "description": "Optional string containing the item ID of the service if it's registered on ArcGIS Online or your organization's portal.", "type": "string" }, "layerDefinition": { "$ref": "#/definitions/esri.rest-api.LayerDefinitionJson.LayerDefinitionJson", "description": "Additional properties that can define an elevation offset for the layer." }, "layerType": { "const": "BuildingSceneLayer", "description": "The type of layer.", "type": "string" }, "listMode": { "$ref": "esri.ListMode", "description": "Indicates how the layer should display in the table of contents. The known values are listed below. See {@link support /esri!ListMode}." }, "maxScale": { "description": "A number representing the maximum scale at which the layer will be visible. The number is the scale's denominator; thus, a value of 2400 represents a scale of 1/2,400. A value of 0 indicates that the layer will be visible no matter how far you zoom in.", "type": "number" }, "minScale": { "description": "A number representing the minimum scale at which the layer will be visible. The number is the scale's denominator; thus, a value of 2400 represents a scale of 1/2,400.", "type": "number" }, "opacity": { "description": "The degree of transparency applied to the layer on the client side, where\n0 is full transparency and 1 is no transparency.", "type": "number" }, "refreshInterval": { "description": "When the refresh interval is set on a layer, the client must refresh that layer only, not the entire web map. The default value is '0', meaning the no refresh. You can enable a refresh interval on the following types of layers: ArcGIS Server web service, hosted feature layer, hosted tile layer, OGC WMS, OGS WMTS, tile layer, GeoRSS, Living Atlas layers, basemaps (including Bing Maps basemaps), CSV from the web with latitude and longitude fields, and KML when added to ArcGIS Online through the My Content page. See {@link https://doc.arcgis.com/en/arcgis-online/create-maps/set-refresh-interval.htm}.", "type": "number" }, "showLegend": { "description": "Indicates whether to allow map authors the ability to control what layers should be shown in a client's legend.", "type": "boolean" }, "sublayers": { "description": "An array of objects specifying overrides for building scene layer sublayers.", "items": { "$ref": "#/definitions/esri.rest-api.BuildingSceneSublayerJson.BuildingSceneSublayerJson" }, "type": "array" }, "title": { "description": "A user-friendly title for the layer that can be used in a table of contents. If this is not included, then a title is derived from the service.", "type": "string" }, "type": { "description": "(Deprecated, use layerType instead.) If the layer is referenced through a URL, but is not an ArcGIS web service, then this parameter can be supplied to denote the layer type.", "enum": [ "BingMapsAerial", "BingMapsHybrid", "BingMapsRoad", "CSV", "KML", "OpenStreetMap", "WMS", "WebTiledLayer" ], "type": "string" }, "url": { "description": "The URL to the service.", "type": "string" }, "visibility": { "description": "Determines whether the layer is initially visible in the web map.", "type": "boolean" } }, "required": [ "layerType" ], "type": "object" }, "esri.rest-api.BuildingSceneLayerJson.FilterAuthoringInfoCheckboxJson": { "additionalProperties": false, "description": "Client UI with checkbox representation for each filter type and filter value.", "properties": { "filterBlocks": { "description": "Array of filter block authoring infos.", "items": { "$ref": "#/definitions/esri.rest-api.BuildingSceneLayerJson.AuthoringInfoFilterBlockJson" }, "type": "array" }, "type": { "const": "checkbox", "description": "Type of filter authoring info. Value of this property must be checkbox.", "type": "string" } }, "required": [ "type" ], "type": "object" }, "esri.rest-api.BuildingSceneLayerJson.FilterBlockJson": { "additionalProperties": false, "description": "A filter block defines what elements will be filtered with a specific filter mode. To ensure performance on client applications, it is not recommended to declare multiple filter blocks with the same filter mode. Filter blocks are contained in a filter for a building scene layer. Each filter includes at least one filter block.", "properties": { "filterExpression": { "description": "SQL expression to select features that belong to this filter block.", "type": "string" }, "filterMode": { "$ref": "#/definitions/esri.rest-api.BuildingSceneLayerJson.FilterModeJson", "description": "Filter mode defines how features are drawn. For example, the filter mode of a filter can be solid or wire frame." }, "title": { "description": "Title of the filter block.", "type": "string" } }, "type": "object" }, "esri.rest-api.BuildingSceneLayerJson.FilterJson": { "additionalProperties": false, "description": "Filter allows client applications to reduce the drawn elements of a building to specific types and values. Filters on the webscene override the list of existing filters on the service.", "properties": { "description": { "description": "Description of the filter.", "type": "string" }, "filterAuthoringInfo": { "$ref": "#/definitions/esri.rest-api.BuildingSceneLayerJson.FilterAuthoringInfoCheckboxJson", "description": "Metadata about the authoring process for this filter." }, "filterBlocks": { "description": "Array of filter blocks defining the filter. A filter contains at least one filter block.", "items": { "$ref": "#/definitions/esri.rest-api.BuildingSceneLayerJson.FilterBlockJson" }, "type": "array" }, "id": { "description": "Unique filter id (uuid). Either a new id to extend the list of filters, or an existing id to override properties of an existing filter.", "type": "string" }, "name": { "description": "Name of the filter.", "type": "string" } }, "required": [ "filterBlocks" ], "type": "object" }, "esri.rest-api.BuildingSceneLayerJson.FilterModeJson": { "anyOf": [ { "$ref": "#/definitions/esri.rest-api.BuildingSceneLayerJson.FilterModeSolidJson" }, { "$ref": "#/definitions/esri.rest-api.BuildingSceneLayerJson.FilterModeWireFrameJson" } ], "description": "Filter mode represents the way elements draw when participating in a filter block." }, "esri.rest-api.BuildingSceneLayerJson.FilterModeSolidJson": { "additionalProperties": false, "description": "Draw elements of this filter block in solid mode. This mode does not change the display of features.", "properties": { "type": { "const": "solid", "description": "Declares filter mode of type solid. Value of this property must be solid.", "type": "string" } }, "required": [ "type" ], "type": "object" }, "esri.rest-api.BuildingSceneLayerJson.FilterModeWireFrameJson": { "additionalProperties": false, "description": "Draw elements of this filter block in wireframe mode. This mode draws only the edges of the features with the specified edge style.", "properties": { "edges": { "$ref": "#/definitions/esri.rest-api.SymbolJson.EdgesJson",