Adds a new style custom layer.

Note: This is an experimental API and is a subject to change.

Whenever a new style is being parsed and currently used style has persistent layers, an engine will try to do following:

  • keep the persistent layer at its relative position

  • keep the source used by a persistent layer

  • keep images added through addStyleImage method

In cases when a new style has the same layer, source or image resource, style's resources would be used instead and MapLoadingError event will be emitted.


A string describing an error if the operation was not successful, or empty otherwise.



The custom layer host.


A style layer identifier.


If not empty, the new layer will be positioned according to layer position parameters.

open override fun addPersistentStyleCustomLayer(layerId: String, layerHost: CustomLayerHost, layerPosition: LayerPosition?): Expected<String, None>