/// <reference path="../../index.d.ts" />
import type MapView from "@arcgis/core/views/MapView.js";
import type { IBasemapConfig } from "../../utils/interfaces.js";
import type { PublicLitElement as LitElement } from "@arcgis/lumina";
import type { Ref } from "lit-html/directives/ref.js";
import type { ArcgisBasemapGallery as ArcgisBasemapGallery2 } from "@arcgis/map-components/components/arcgis-basemap-gallery";

export abstract class MapBasemapGallery extends LitElement {
  /** IBasemapConfig: List of any basemaps to filter out from the basemap widget */
  accessor basemapConfig: IBasemapConfig | undefined;
  /** Reference to the arcgis-basemap-gallery web component */
  accessor basemapGalleryRef: Ref<ArcgisBasemapGallery2>;
  /** esri/views/View: https://developers.arcgis.com/javascript/latest/api-reference/esri-views-MapView.html */
  accessor mapView: MapView | undefined;
}