# Interface GroupLayerJson

GroupLayer provides the ability to organize several sublayers into one common layer. Suppose there are several FeatureLayers that all represent water features in different dimensions. For example, wells (points), streams (lines), and lakes (polygons). The GroupLayer provides the functionality to treat them as one layer called Water Features even though they are stored as separate feature layers.

See https://developers.arcgis.com/web-scene-specification/objects/groupLayer/.

interface GroupLayerJson {
blendMode?:
| "invert"
| "normal"
| "lighter"
| "multiply"
| "color"
| "average"
| "color-burn"
| "color-dodge"
| "darken"
| "destination-atop"
| "destination-in"
| "destination-out"
| "destination-over"
| "difference"
| "exclusion"
| "hard-light"
| "hue"
| "lighten"
| "luminosity"
| "minus"
| "overlay"
| "plus"
| "reflect"
| "saturation"
| "screen"
| "soft-light"
| "source-atop"
| "source-in"
| "source-out"
| "vivid-light"
| "xor";
effect?: EffectJson;
id?: string;
layers?: OperationalLayerJson[];
layerType: "GroupLayer";
listMode?: LayerListMode;
maxScale?: number;
minScale?: number;
opacity?: number;
refreshInterval?: number;
showLegend?: boolean;
title?: string;
type?: LegacyOperationalLayerJsonType | LegacyBasemapLayerJsonType;
visibility?: boolean;
visibilityMode?: "inherited" | "independent" | "exclusive";
visibilityTimeExtent?: [number, number];
}

#### Hierarchy (view full)

- OperationalLayerJsonBase
  - GroupLayerJson

#####
Index

### Properties

blendMode?
effect?
id?
layers?
layerType
listMode?
maxScale?
minScale?
opacity?
refreshInterval?
showLegend?
title?
type?
visibility?
visibilityMode?
visibilityTimeExtent?

##
Properties

### `Optional` blendMode

blendMode?:
| "invert"
| "normal"
| "lighter"
| "multiply"
| "color"
| "average"
| "color-burn"
| "color-dodge"
| "darken"
| "destination-atop"
| "destination-in"
| "destination-out"
| "destination-over"
| "difference"
| "exclusion"
| "hard-light"
| "hue"
| "lighten"
| "luminosity"
| "minus"
| "overlay"
| "plus"
| "reflect"
| "saturation"
| "screen"
| "soft-light"
| "source-atop"
| "source-in"
| "source-out"
| "vivid-light"
| "xor"

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.

Inherited from OperationalLayerJsonBase.blendMode

### `Optional` effect

effect?: EffectJson

Effect provides various filter functions to achieve different visual effects similar to how image filters (photo apps) work.

Inherited from OperationalLayerJsonBase.effect

### `Optional` id

id?: string

A unique identifying string for the layer.

Inherited from OperationalLayerJsonBase.id

### `Optional` layers

layers?: OperationalLayerJson[]

List of child operationalLayers.

### layerType

layerType

String indicating the layer type. Value of this property must be GroupLayer.

Overrides OperationalLayerJsonBase.layerType

### `Optional` listMode

listMode?: LayerListMode

To show or hide the group layer in the layer list. See support/esri!ListMode.

Overrides OperationalLayerJsonBase.listMode

### `Optional` maxScale

maxScale?: number

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.

Inherited from OperationalLayerJsonBase.maxScale

### `Optional` minScale

minScale?: number

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.

Inherited from OperationalLayerJsonBase.minScale

### `Optional` opacity

opacity?: number

The degree of transparency applied to the layer on the client side, where 0 is full transparency and 1 is no transparency.

Inherited from OperationalLayerJsonBase.opacity

### `Optional` refreshInterval

refreshInterval?: number

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 https://doc.arcgis.com/en/arcgis-online/create-maps/set-refresh-interval.htm.

Inherited from OperationalLayerJsonBase.refreshInterval

### `Optional` showLegend

showLegend?: boolean

Indicates whether to allow map authors the ability to control what layers should be shown in a client's legend.

Inherited from OperationalLayerJsonBase.showLegend

### `Optional` title

title?: string

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.

Inherited from OperationalLayerJsonBase.title

### `Optional` type

type?: LegacyOperationalLayerJsonType | LegacyBasemapLayerJsonType

(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.

Inherited from OperationalLayerJsonBase.type

### `Optional` visibility

visibility?: boolean

Determines whether the layer is initially visible in the web map.

Inherited from OperationalLayerJsonBase.visibility

### `Optional` visibilityMode

visibilityMode?: "inherited" | "independent" | "exclusive"

How visibility of children is affected: independent, exclusive, inherited.

### `Optional` visibilityTimeExtent

visibilityTimeExtent?: [number, number]

Represents time extent that will control when a layer should be visible based on webmap's current time. Visibility time extent only affects the layer visibility and will not filter the data.

Inherited from OperationalLayerJsonBase.visibilityTimeExtent