@arcgis/map-components
Version:
ArcGIS Map Components
168 lines (166 loc) • 8.01 kB
TypeScript
/// <reference types="@arcgis/core/interfaces.d.ts" />
/// <reference types="../../index.d.ts" />
import { Use } from '@arcgis/lumina/controllers';
import { default as ElevationProfile } from '@arcgis/core/widgets/ElevationProfile.js';
import { PublicLitElement as LitElement, TargetedEvent } from '@arcgis/lumina';
import { ArcgisReferenceElement } from '../../utils/component-utils';
declare const useElevationProfileWidget: (component: LitElement & Pick<ElevationProfile, "icon" | "label" | "viewModel" | "input" | "unit" | "profiles" | "unitOptions"> & {
state?: unknown;
viewModel?: __esri.ElevationProfileViewModel | undefined;
closed?: boolean;
icon: import('@arcgis/components-utils').Nil | string;
label: import('@arcgis/components-utils').Nil | string;
referenceElement?: ArcgisReferenceElement | string;
position: __esri.UIPosition;
arcgisReady: import('@arcgis/lumina').EventEmitter;
arcgisPropertyChange: import('@arcgis/lumina').EventEmitter<{
name: string;
}> | undefined;
el: HTMLElement & {
childElem?: HTMLElement & {
ownedBy?: HTMLElement;
};
view?: __esri.LinkChartView | __esri.MapView | __esri.SceneView;
};
autoDestroyDisabled: boolean;
destroy: () => Promise<void>;
}) => ElevationProfile;
/**
* The Elevation Profile component is used to generate and display an elevation profile from an [input line graphic](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-ElevationProfile.html#input).
*
* **See also**
*
* - [Sample - Elevation Profile component](https://developers.arcgis.com/javascript/latest/sample-code/elevation-profile/)
*
* [Read more...](https://developers.arcgis.com/javascript/latest/references/map-components/arcgis-elevation-profile/)
*/
export declare class ArcgisElevationProfile extends LitElement {
/**
* If true, the component will not be destroyed automatically when it is
* disconnected from the document. This is useful when you want to move the
* component to a different place on the page, or temporarily hide it. If this
* is set, make sure to call the [destroy](https://developers.arcgis.com/javascript/latest/references/map-components/arcgis-elevation-profile/#destroy) method when you are done to
* prevent memory leaks.
*
* @default false
*/
autoDestroyDisabled: boolean;
/** Units which have been selected according to the magnitude of the elevations and distances that are to be displayed in the component, according to the selected unit or unit system. */
readonly effectiveUnits: __esri.EffectiveUnits;
/** @default false */
hideChart: boolean;
/** @default false */
hideClearButton: boolean;
/** @default false */
hideLegend: boolean;
/** @default false */
hideSelectButton: boolean;
/** @default false */
hideSettingsButton: boolean;
/** @default false */
hideSketchButton: boolean;
/** @default false */
hideUniformChartScalingToggle: boolean;
/** @default false */
hideUnitSelector: boolean;
/**
* Whether the graphic used as [input](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-ElevationProfile.html#input)
* is highlighted.
*
* [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-ElevationProfile-ElevationProfileViewModel.html#highlightEnabled)
*
* @default true
*/
highlightEnabled: boolean;
/**
* The position, in the range [0, 1], being hovered in the graph.
*
* [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-ElevationProfile-ElevationProfileViewModel.html#hoveredChartPosition)
*/
hoveredChartPosition: number | nullish;
/**
* Icon which represents the component. Typically used when the component is controlled by another component (e.g. by the Expand component).
*
* See also: [Calcite Icons](https://developers.arcgis.com/calcite-design-system/icons/)
*
* @default "altitude"
*/
icon: string;
/**
* The input path along which elevation will be queried in order to generate an elevation profile.
*
* [Read more](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-ElevationProfile.html#input)
*
* @default null
*/
input: nullish | __esri.Graphic;
/** The component's default label. */
label: string;
/** @default "bottom-left" */
position: __esri.UIPosition;
/**
* Collection of elevation profile lines which are to be generated and displayed in the component's chart.
*
* [Read more](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-ElevationProfile.html#profiles)
*/
profiles: __esri.Collection<__esri.ElevationProfileLineGround | __esri.ElevationProfileLineInput | __esri.ElevationProfileLineQuery | __esri.ElevationProfileLineView>;
/**
* The progress, between 0 and 1 of generating all the configured elevation
* profiles.
*
* [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-ElevationProfile-ElevationProfileViewModel.html#progress)
*/
readonly progress: number;
/**
* By assigning the `id` attribute of the Map or Scene component to this property, you can position a child component anywhere in the DOM while still maintaining a connection to the Map or Scene.
*
* @see [Associate components with a Map or Scene component](https://developers.arcgis.com/javascript/latest/programming-patterns/#associate-components-with-a-map-or-scene-component)
*/
referenceElement?: ArcgisReferenceElement | string;
/**
* The component's state. The values mean the following:
*
* * `disabled` - component is being created
* * `ready` - component is ready; no path configured and no interactive operation ongoing
* * `creating` - user is creating a new input path
* * `created` - input path is configured but no interactive operation is ongoing
* * `selecting` - user is selecting an existing input path
* * `selected` - user selected an existing input path
*
* @default "disabled"
*/
readonly state: "ready" | "selected" | "disabled" | "creating" | "created" | "selecting";
/**
* Whether the chart should use a uniform scale for the X and Y axes.
*
* [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-ElevationProfile-ElevationProfileViewModel.html#uniformChartScaling)
*
* @default false
*/
uniformChartScaling: boolean;
/**
* Unit system (imperial, metric) or specific unit used for displaying the elevation and distance values.
*
* [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-ElevationProfile.html#unit)
*/
unit: __esri.SystemOrLengthUnit;
/**
* List of available units and unit systems (imperial, metric) for displaying the elevation and distance values.
*
* [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-ElevationProfile.html#unitOptions)
*/
unitOptions: __esri.SystemOrLengthUnit[];
/** Permanently destroy the component. */
destroy(): Promise<void>;
/** Switches to the "creating" state in which the user can draw a new line. */
start(): Promise<void>;
/** Stops the creation operation. */
stop(): Promise<void>;
/** Emitted when the value of a property is changed. Use this to listen to changes to properties. */
readonly arcgisPropertyChange: TargetedEvent<this, {
name: "state" | "input" | "progress" | "effectiveUnits";
}>;
/** Emitted when the component associated with a map or scene view is is ready to be interacted with. */
readonly arcgisReady: TargetedEvent<this, void>;
}
export {};