import type GraphicOrigin from "./GraphicOrigin.js";
import type TileLayer from "../layers/TileLayer.js";
import type Sublayer from "../layers/support/Sublayer.js";

/**
 * Provides information about the [TileLayer](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-TileLayer.html) from which a graphic originates.
 * Also provides access to the [Sublayer](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-support-Sublayer.html) that contains the graphic.
 * You can access the graphic's origin through the graphic's [origin](https://developers.arcgis.com/javascript/latest/api-reference/esri-Graphic.html#origin) property.
 *
 * @since 5.0
 */
export default class TileGraphicOrigin extends GraphicOrigin {
  constructor(layer: TileLayer, sublayer: Sublayer);
  /** A layer from which a graphic originates. */
  readonly layer: TileLayer;
  /** The [Sublayer](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-support-Sublayer.html) from which a graphic originates. */
  readonly sublayer: Sublayer;
  /**
   * Indicates the type of layer the graphic originated from.
   *
   * @default "tile"
   */
  readonly type: TileLayer["type"];
}