@arcgis/map-components
Version:
ArcGIS Map Components
154 lines (152 loc) • 6.78 kB
TypeScript
/// <reference types="@arcgis/core/interfaces.d.ts" />
/// <reference types="../../index.d.ts" />
import { Use } from '@arcgis/lumina/controllers';
import { default as RouteLayer } from '@arcgis/core/layers/RouteLayer.js';
import { default as Directions } from '@arcgis/core/widgets/Directions.js';
import { PublicLitElement as LitElement, TargetedEvent } from '@arcgis/lumina';
import { PropertyValues } from 'lit';
import { ArcgisReferenceElement } from '../../utils/component-utils';
declare const useDirectionsWidget: (component: LitElement & Pick<Directions, "icon" | "label" | "viewModel" | "headingLevel" | "layer" | "goToOverride" | "unit" | "apiKey" | "maxStops" | "searchProperties"> & {
state?: unknown;
viewModel?: __esri.DirectionsViewModel | 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>;
}) => Directions;
/**
* The Directions component provides a way to calculate directions, between two or more input locations with a [RouteLayer](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-RouteLayer.html), using ArcGIS Online and custom Network Analysis Route services.
*
* [Read more...](https://developers.arcgis.com/javascript/latest/references/map-components/arcgis-directions/)
*/
export declare class ArcgisDirections extends LitElement {
/**
* An authorization string used to access a resource or service.
*
* [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Directions.html#apiKey)
*/
apiKey: string | nullish;
/**
* 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-directions/#destroy) method when you are done to
* prevent memory leaks.
*
* @default false
*/
autoDestroyDisabled: boolean;
/**
* This function provides the ability to override either the
* [MapView goTo()](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html#goTo) or
* [SceneView goTo()](https://developers.arcgis.com/javascript/latest/api-reference/esri-views-SceneView.html#goTo) methods.
*
* [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Directions.html#goToOverride)
*
* @since 4.33
*/
goToOverride: nullish | __esri.GoToOverride;
/**
* Indicates the heading level to use for the origin and destination addresses (i.e.
*
* @default 2
*/
headingLevel: number;
/** @default false */
hideLayerDetails: boolean | undefined;
/** @default false */
hideSaveAsButton: boolean | undefined;
/** @default false */
hideSaveButton: boolean | undefined;
/**
* Icon which represents the component.
* Typically used when the component is controlled by another component (e.g. by the Expand component).
*
* @see [Calcite Icons](https://developers.arcgis.com/calcite-design-system/icons/)
* @default "right"
*/
icon: string;
/**
* The widget's default label.
*
* [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Directions.html#label)
*/
label: string;
/**
* The most recent route result.
*
* [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Directions.html#lastRoute)
*
* @default null
*/
readonly lastRoute: nullish | __esri.DirectionsLastRoute;
/**
* The [RouteLayer](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-RouteLayer.html) associated with the Directions widget.
*
* [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Directions.html#layer)
*/
layer: nullish | RouteLayer;
/**
* The maximum number of stops allowed for routing.
*
* @default 50
*/
maxStops: number;
/** @default "bottom-left" */
position: __esri.UIPosition;
/**
* 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;
routeLayerItemId?: string;
/**
* Controls the default properties used when searching.
*
* @default null
*/
searchProperties: nullish | __esri.DirectionsSearchProperties;
/**
* The current state of the component.
*
* @default "disabled"
*/
readonly state: "ready" | "disabled" | "error" | "initializing" | "routing" | "unauthenticated";
/**
* Unit system (imperial, metric) or specific unit used for displaying the distance values.
*
* [Read more...](https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-Directions.html#unit)
*/
unit: __esri.SystemOrLengthUnit;
/** @default false */
useDefaultRouteLayer: boolean;
/** Permanently destroy the component. */
destroy(): Promise<void>;
getDirections(): Promise<__esri.RouteLayerSolveResult>;
save(): Promise<__esri.PortalItem>;
saveAs(portalItem: __esri.PortalItem, options: {
folder: __esri.PortalFolder;
}): Promise<__esri.PortalItem>;
zoomToRoute(): 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" | "lastRoute";
}>;
/** Emitted when the component associated with a map or scene view is is ready to be interacted with. */
readonly arcgisReady: TargetedEvent<this, void>;
}
export {};