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/api-reference/esri-layers-ImageryLayer.html#getImageUrl)
 * or [getImageUrl()](https://developers.arcgis.com/javascript/latest/api-reference/esri-rest-imageService.html#getImageUrl) methods.
 *
 * @since 4.30
 * @see [imageService](https://developers.arcgis.com/javascript/latest/api-reference/esri-rest-imageService.html)
 * @see [ImageUrlResult](https://developers.arcgis.com/javascript/latest/api-reference/esri-rest-support-ImageUrlResult.html)
 */
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/api-reference/esri-rest-imageService.html#findImages) or
   * [ImageryLayer.findImages()](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-ImageryLayer.html#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/api-reference/esri-rest-imageService.html#findImages) or
   * [ImageryLayer.findImages()](https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-ImageryLayer.html#findImages) method.
   */
  accessor referenceUri: string;
}
declare const ImageUrlParametersSuperclass: typeof JSONSupport & typeof ClonableMixin