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

export interface ImageUrlParametersProperties extends Partial<Pick<ImageUrlParameters, "rasterId" | "referenceUri">> {}

/**
 * Input parameters for the [ImageryLayer.getImageUrl()](https://developers.arcgis.com/javascript/latest/references/core/layers/ImageryLayer/#getImageUrl)
 * or [getImageUrl()](https://developers.arcgis.com/javascript/latest/references/core/rest/imageService/#getImageUrl) methods.
 *
 * @since 4.30
 * @see [imageService](https://developers.arcgis.com/javascript/latest/references/core/rest/imageService/)
 * @see [ImageUrlResult](https://developers.arcgis.com/javascript/latest/references/core/rest/support/ImageUrlResult/)
 */
export default class ImageUrlParameters extends ImageUrlParametersSuperclass {
  constructor(properties?: ImageUrlParametersProperties);
  /**
   * The raster's object id. The raster object id can be obtained using the [findImages()](https://developers.arcgis.com/javascript/latest/references/core/rest/imageService/#findImages) or
   * [ImageryLayer.findImages()](https://developers.arcgis.com/javascript/latest/references/core/layers/ImageryLayer/#findImages) method.
   */
  accessor rasterId: number;
  /**
   * The relative reference to the image's uri. The reference uri can be obtained using the [findImages()](https://developers.arcgis.com/javascript/latest/references/core/rest/imageService/#findImages) or
   * [ImageryLayer.findImages()](https://developers.arcgis.com/javascript/latest/references/core/layers/ImageryLayer/#findImages) method.
   */
  accessor referenceUri: string;
}
declare const ImageUrlParametersSuperclass: typeof JSONSupport & typeof ClonableMixin