import type { JSONSupport } from "../../core/JSONSupport.js";

export interface LegendLayerProperties extends Partial<Pick<LegendLayer, "layerId" | "subLayerIds" | "title">> {}

/**
 * Define layer properties for the legend layers associated with a
 * [PrintTemplate](https://developers.arcgis.com/javascript/latest/references/core/rest/support/PrintTemplate/).
 *
 * @since 4.20
 */
export default class LegendLayer extends JSONSupport {
  constructor(properties?: LegendLayerProperties);
  /** The id of the operational layer to include in the printout's legend. */
  accessor layerId: string;
  /** The ids of the sublayers to include in the printout's legend. */
  accessor subLayerIds: string[];
  /**
   * The title of the feature layer. Use this property to modify feature layer name
   * in the legend for the printout.
   */
  accessor title: string;
}