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

/**
 * @cssproperty [--calcite-avatar-corner-radius] - Specifies the component's corner radius.
 * @cssproperty [--calcite-avatar-color] - Specifies the component's icon or initial color.
 * @cssproperty [--calcite-avatar-background-color] - Specifies the component's background color.
 */
export abstract class Avatar extends LitElement {
  /** Specifies the full name of the user. When `label` and `thumbnail` are not defined, specifies the accessible name for the component. */
  accessor fullName: string | undefined;
  /** Specifies alternative text when `thumbnail` is defined, otherwise specifies an accessible label for the component. */
  accessor label: string | undefined;
  /**
   * Specifies the size of the component.
   *
   * @default "m"
   */
  accessor scale: Scale;
  /** Specifies the `src` to an image. If the image is private, include an access token in the URL. */
  accessor thumbnail: string | undefined;
  /** Specifies the unique id of the user. */
  accessor userId: string | undefined;
  /** Specifies the username of the user. */
  accessor username: string | undefined;
}