/// <reference path="../../index.d.ts" />
import type { PublicLitElement as LitElement } from "@arcgis/lumina";
import type { SelectionMode } from "../interfaces.js";

/**
 * @cssproperty [--calcite-dropdown-group-border-color] - Specifies the component's border color.
 * @cssproperty [--calcite-dropdown-group-title-text-color] - Specifies the component's `groupTitle` color.
 * @slot  - A slot for adding `calcite-dropdown-item`s.
 */
export abstract class DropdownGroup extends LitElement {
  /** When specified, displays a group title. */
  accessor groupTitle: string;
  /**
   * The position of the group in the dropdown menu.
   *
   * @default -1
   * @internal
   */
  accessor position: number;
  /**
   * Specifies the selection mode of the component, where:
   *
   * `"multiple"` allows any number of selections,
   *
   * `"single"` allows only one selection, and
   *
   * `"none"` does not allow any selections.
   *
   * @default "single"
   */
  accessor selectionMode: Extract<"none" | "single" | "multiple", SelectionMode>;
}