/// import type Graphic from "@arcgis/core/Graphic.js"; import type MapView from "@arcgis/core/views/MapView.js"; import type { ILayerItemsHash, IReportingOptions } from "../../utils/interfaces.js"; import type { PublicLitElement as LitElement } from "@arcgis/lumina"; export abstract class FeatureDetails extends LitElement { /** * When true the snapping options will be exposed * * @default false */ accessor enableSnapping: boolean; /** esri/Graphic: https://developers.arcgis.com/javascript/latest/api-reference/esri-Graphic.html */ accessor graphics: Graphic[]; /** ILayerItemsHash: LayerDetailsHash for each layer in the map */ accessor layerItemsHash: ILayerItemsHash | undefined; /** esri/views/MapView: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html */ accessor mapView: MapView | undefined; /** IReportingOptions: Key options for reporting */ accessor reportingOptions: IReportingOptions | undefined; /** * boolean: When false comment will shown in single line in the comments list * * @default true */ accessor showFullCommentTitle: boolean; /** * boolean: When true the profile image of the comment creator will be shown in the comments list * * @default false */ accessor showUserImageInCommentsList: boolean; /** Go to the previous feature in the features widget */ back(): Promise; /** Go to the next feature in the features widget */ next(): Promise; /** * Refresh the features comments which will fetch like, dislike and update the component * * @param graphic * @returns Promise that resolves when the operation is complete */ refresh(graphic?: Graphic): Promise; /** Toggle the visibility of the features list view */ toggleListView(): Promise; /** Emitted on demand when comment icon is clicked */ readonly addComment: import("@arcgis/lumina").TargetedEvent; /** Emitted on demand when comment is clicked using the feature-list */ readonly commentClick: import("@arcgis/lumina").TargetedEvent; /** Emitted on demand when comment is selected using the feature-list */ readonly commentSelect: import("@arcgis/lumina").TargetedEvent; /** Emitted on demand when the selected index changes */ readonly featureSelectionChange: import("@arcgis/lumina").TargetedEvent; /** Emitted on demand when like or dislike button is clicked */ readonly likeOrDislikeClicked: import("@arcgis/lumina").TargetedEvent; /** Emitted on demand when like or dislike button is clicked */ readonly loadingStatus: import("@arcgis/lumina").TargetedEvent; readonly "@eventTypes": { addComment: FeatureDetails["addComment"]["detail"]; commentClick: FeatureDetails["commentClick"]["detail"]; commentSelect: FeatureDetails["commentSelect"]["detail"]; featureSelectionChange: FeatureDetails["featureSelectionChange"]["detail"]; likeOrDislikeClicked: FeatureDetails["likeOrDislikeClicked"]["detail"]; loadingStatus: FeatureDetails["loadingStatus"]["detail"]; }; }