# Module: ol/layer/Layer

This documentation is for OpenLayers v10.9.0. The latest is v.

## ol/layer/Layer

### Classes

Layer

### Type Definitions

#### LayerEventType{'sourceready'} {'change:source'}

#### Options{Object}

  ##### Properties:

  Name | Type | Description
  --- | --- | ---
  `className` | string (defaults to 'ol-layer') | A CSS class name to set to the layer element.
  `opacity` | number (defaults to 1) | Opacity (0, 1).
  `visible` | boolean (defaults to true) | Visibility.
  `extent` | Extent | undefined | The bounding extent for layer rendering. The layer will not be rendered outside of this extent.
  `zIndex` | number | undefined | The z-index for layer rendering. At rendering time, the layers will be ordered, first by Z-index and then by position. When `undefined`, a `zIndex` of 0 is assumed for layers that are added to the map's `layers` collection, or `Infinity` when the layer's `setMap()` method was used.
  `minResolution` | number | undefined | The minimum resolution (inclusive) at which this layer will be visible.
  `maxResolution` | number | undefined | The maximum resolution (exclusive) below which this layer will be visible.
  `minZoom` | number | undefined | The minimum view zoom level (exclusive) above which this layer will be visible.
  `maxZoom` | number | undefined | The maximum view zoom level (inclusive) at which this layer will be visible.
  `source` | SourceType | undefined | Source for this layer. If not provided to the constructor, the source can be set by calling `layer.setSource(source)` after construction.
  `map` | Map | null | undefined | Map.
  `render` | RenderFunction | undefined | Render function. Takes the frame state as input and is expected to return an HTML element. Will overwrite the default rendering for the layer.
  `properties` | Properties | undefined | Arbitrary observable properties. Can be accessed with `#get()` and `#set()`.

#### RenderFunction()

layer/Layer.js, line 13

#### State{Object}

  ##### Properties:

  Name | Type | Description
  --- | --- | ---
  `layer` | Layer | Layer.
  `opacity` | number | Opacity, the value is rounded to two digits to appear after the decimal point.
  `visible` | boolean | Visible.
  `managed` | boolean | Managed.
  `extent` | Extent | undefined | Extent.
  `zIndex` | number | ZIndex.
  `maxResolution` | number | Maximum resolution.
  `minResolution` | number | Minimum resolution.
  `minZoom` | number | Minimum zoom.
  `maxZoom` | number | Maximum zoom.