import type { ClonableMixin } from "../../core/Clonable.js"; import type { JSONSupport } from "../../core/JSONSupport.js"; /** @since 5.1 */ export interface SymbolLayerDrawingProperties extends Partial> {} /** * Defines the symbol layer drawing options for [FeatureLayer.symbolLayerDrawing](https://developers.arcgis.com/javascript/latest/references/core/layers/FeatureLayer/#symbolLayerDrawing). * Use symbol layer drawing to override the default drawing order of [CIMSymbol](https://developers.arcgis.com/javascript/latest/references/core/symbols/CIMSymbol/)s on maps. * When symbols have more than one symbol layer (such as a cased road symbol), symbol layer drawing can also control how those individual symbol layers are ordered across symbol classes. * * Default draw order | Symbol layer drawing enabled * -------------------|---------------------- * ![Default symbol layer drawing order](https://developers.arcgis.com/javascript/latest/assets/references/core/layers/featurelayer/symbol-layer-drawing-disabled.avif) | ![Symbol layer drawing enabled](https://developers.arcgis.com/javascript/latest/assets/references/core/layers/featurelayer/symbol-layer-drawing-enabled.avif) * * > [!WARNING] * > Symbol layer drawing is not supported in 3D scenes. * * @since 5.1 * @see [ArcGIS Pro - Symbol Layer Drawing](https://doc.esri.com/en/arcgis-pro/latest/help/mapping/layer-properties/symbol-layer-drawing.html) */ export default class SymbolLayerDrawing extends SymbolLayerDrawingSuperclass { constructor(properties?: SymbolLayerDrawingProperties); /** * When symbol layer drawing is enabled, this property defines the order in which symbol layers are drawn. The values correspond to the `name` of each symbol layer. * The values in the array are drawn in the order they are listed, with the first symbol layer drawn at the top and the last symbol layer drawn at the bottom. * * @see [CIMSymbolLayer.name](https://developers.arcgis.com/javascript/latest/references/core/symbols/cim/types/#CIMSymbolLayer-name) */ accessor drawOrder: string[]; /** * Defines whether symbol layer drawing is enabled. * When enabled, symbol layers are drawn in the order specified by the [drawOrder](https://developers.arcgis.com/javascript/latest/references/core/layers/support/SymbolLayerDrawing/#drawOrder) property. When disabled, symbol layers are drawn in their default order. * * @default false */ accessor enabled: boolean; } declare const SymbolLayerDrawingSuperclass: typeof JSONSupport & typeof ClonableMixin