import type { Clonable } from "../../core/Clonable.js";

export interface ElevationProfileLineViewOptionsProperties extends Partial<Pick<ElevationProfileLineViewOptions, "indicatorPointVisible" | "lineVisible">> {}

/**
 * Provides configuration options, such as its visibility, for visualizing a specific elevation profile line within a view.
 * The results remain available even if the line is not visible.
 *
 * @since 4.34
 * @see [ElevationProfileAnalysis](https://developers.arcgis.com/javascript/latest/api-reference/esri-analysis-ElevationProfileAnalysis.html)
 * @see [ElevationProfileViewOptions](https://developers.arcgis.com/javascript/latest/api-reference/esri-analysis-ElevationProfile-ElevationProfileViewOptions.html)
 * @see [ElevationProfileLineChartOptions](https://developers.arcgis.com/javascript/latest/api-reference/esri-analysis-ElevationProfile-ElevationProfileLineChartOptions.html)
 */
export default class ElevationProfileLineViewOptions extends Clonable {
  constructor(properties?: ElevationProfileLineViewOptionsProperties);
  /**
   * Whether to show an indicator point in the view when an
   * [indicator location](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-3d-analysis-ElevationProfileAnalysisView3D.html#indicatorRelativePosition) is set.
   * If false, the indicator point is not displayed, but results are still available.
   *
   * @default true
   * @see [ElevationProfileAnalysisView2D.indicatorRelativePosition](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-analysis-ElevationProfileAnalysisView2D.html#indicatorRelativePosition)
   * @see [ElevationProfileAnalysisView3D.indicatorRelativePosition](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-3d-analysis-ElevationProfileAnalysisView3D.html#indicatorRelativePosition)
   * @see [ElevationProfileAnalysisView2D.indicatorPoints](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-2d-analysis-ElevationProfileAnalysisView2D.html#indicatorPoints)
   * @see [ElevationProfileAnalysisView3D.indicatorPoints](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-3d-analysis-ElevationProfileAnalysisView3D.html#indicatorPoints)
   */
  accessor indicatorPointVisible: boolean;
  /**
   * Whether to show the profile line in the view.
   * If false, the line is not displayed in the view, but results are still available.
   *
   * @default true
   */
  accessor lineVisible: boolean;
}