///
import type Graphic from "@arcgis/core/Graphic.js";
import type MapView from "@arcgis/core/views/MapView.js";
import type { IReportingOptions, ISortingInfo } from "../../utils/interfaces.js";
import type { PublicLitElement as LitElement } from "@arcgis/lumina";
import type { T9nMeta } from "@arcgis/lumina/controllers";
export abstract class FeatureList extends LitElement {
/**
* Contains the translations for this component.
* All UI strings should be defined here.
*
* @internal
*/
protected _translations: {
error: string;
featureErrorMsg: string;
featureErrorMsgInCurrentMapView: string;
thousands_value: string;
millions_value: string;
searchPlaceholder: string;
extentFilterMsg: string;
} & T9nMeta<{
error: string;
featureErrorMsg: string;
featureErrorMsgInCurrentMapView: string;
thousands_value: string;
millions_value: string;
searchPlaceholder: string;
extentFilterMsg: string;
}>;
/**
* boolean: If true will consider the FeatureFilter applied on the layerview
*
* @default false
*/
accessor applyLayerViewFilter: boolean | undefined;
/**
* boolean: when true the feature from map view extent will shown
*
* @default false
*/
accessor filterByMapExtent: boolean;
/**
* boolean: Highlight feature on map optional (default false) boolean to indicate if we should highlight when hover on Feature in list
*
* @default false
*/
accessor highlightOnHover: boolean | undefined;
/**
* boolean: Highlight feature on map optional (default false) boolean to indicate if we should highlight and zoom to the extent of the feature geometry
*
* @default false
*/
accessor highlightOnMap: boolean | undefined;
/** esri/views/MapView: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html */
accessor mapView: MapView | undefined;
/**
* string: Message to be displayed when features are not found
*
* @default ''
*/
accessor noFeaturesFoundMsg: string | undefined;
/**
* number: Number features to be fetched per page, by default 100 features will be fetched
*
* @default 100
*/
accessor pageSize: number | undefined;
/** IReportingOptions: Key options for reporting */
accessor reportingOptions: IReportingOptions | undefined;
/**
* string: Layer id of the feature layer to show the list
*
* @default ''
*/
accessor selectedLayerId: string;
/**
* boolean: If true will show error msg when features are not present
*
* @default false
*/
accessor showErrorWhenNoFeatures: boolean | undefined;
/**
* boolean: If true display's feature symbol on each feature item
*
* @default false
*/
accessor showFeatureSymbol: boolean | undefined;
/**
* boolean: When false popup title will shown in single line
*
* @default true
*/
accessor showFullTitle: boolean;
/**
* boolean: Show initial loading indicator when creating list
*
* @default true
*/
accessor showInitialLoading: boolean | undefined;
/**
* boolean: If true display's profile img on each feature item
*
* @default false
*/
accessor showUserImageInList: boolean | undefined;
/** ISortingInfo: Sorting field and order using which features list will be sorted */
accessor sortingInfo: ISortingInfo | undefined;
/**
* string(small/large): Controls the font size of the title
*
* @default 'large'
*/
accessor textSize: "large" | "small" | undefined;
/** string: where clause to filter the features list */
accessor whereClause: string | undefined;
/**
* Refresh the feature list which will fetch the latest features and update the features list
*
* @param maintainPageState - If true feature list page state will be maintained
* @returns Promise that resolves when the operation is complete
*/
refresh(maintainPageState?: boolean): Promise;
/** Emitted on demand when feature is clicked using the list */
readonly featureClick: import("@arcgis/lumina").TargetedEvent;
/** Emitted on demand when feature is selected using the list */
readonly featureSelect: import("@arcgis/lumina").TargetedEvent;
readonly "@eventTypes": {
featureClick: FeatureList["featureClick"]["detail"];
featureSelect: FeatureList["featureSelect"]["detail"];
};
}