import type OGCFeatureLayer from "../../layers/OGCFeatureLayer.js";
import type FeatureLikeLayerView from "./FeatureLikeLayerView.js";

/**
 * Represents the [LayerView](https://developers.arcgis.com/javascript/latest/references/core/views/layers/LayerView/) of a [OGCFeatureLayer](https://developers.arcgis.com/javascript/latest/references/core/layers/OGCFeatureLayer/)
 * after it has been added to a [Map](https://developers.arcgis.com/javascript/latest/references/core/Map/) in either a [MapView](https://developers.arcgis.com/javascript/latest/references/core/views/MapView/), [Map component](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-map/),
 * [SceneView](https://developers.arcgis.com/javascript/latest/references/core/views/SceneView/) or [Scene component](https://developers.arcgis.com/javascript/latest/references/map-components/components/arcgis-scene/).
 *
 * The OGCFeatureLayerView is responsible for rendering a [OGCFeatureLayer's](https://developers.arcgis.com/javascript/latest/references/core/layers/OGCFeatureLayer/)
 * features as [graphics](https://developers.arcgis.com/javascript/latest/references/core/Graphic/) in the [View](https://developers.arcgis.com/javascript/latest/references/core/views/View/).
 *
 * @since 4.16
 * @see [OGCFeatureLayer](https://developers.arcgis.com/javascript/latest/references/core/layers/OGCFeatureLayer/)
 */
export default abstract class OGCFeatureLayerView extends FeatureLikeLayerView {
  /** The layer being viewed. */
  get layer(): OGCFeatureLayer;
}