/**
 * Provides a utility function to determine whether a graphic's origin is a [OGCFeatureGraphicOrigin](https://developers.arcgis.com/javascript/latest/api-reference/esri-graphic-OGCFeatureGraphicOrigin.html).
 *
 * @since 5.0
 * @example
 * // Use hitTest() to get a graphic, then check whether it originated from a OGCFeatureLayer.
 * view.hitTest(screenPoint).then((response) => {
 *   const graphic = response.results[0]?.graphic;
 *   if (!graphic) {
 *     return;
 *   }
 *   if (isOGCFeatureGraphicOrigin(graphic.origin)) {
 *     // hitTest returned a graphic from a OGCFeatureLayer.
 *     // Use this info for your processing logic.
 *   } else {
 *     console.log("graphic's origin is NOT a OGCFeatureLayer");
 *   }
 * });
 */
import type GraphicOrigin from "./GraphicOrigin.js";
import type OGCFeatureGraphicOrigin from "./OGCFeatureGraphicOrigin.js";

/**
 * Utility function that determines whether a graphic’s origin is a [OGCFeatureGraphicOrigin](https://developers.arcgis.com/javascript/latest/api-reference/esri-graphic-OGCFeatureGraphicOrigin.html).
 *
 * @param origin - The graphic origin to check.
 * @returns Returns `true` if the graphic origin is of type [OGCFeatureGraphicOrigin](https://developers.arcgis.com/javascript/latest/api-reference/esri-graphic-OGCFeatureGraphicOrigin.html), `false` otherwise.
 */
export function isOGCFeatureGraphicOrigin(origin: GraphicOrigin | null | undefined): origin is OGCFeatureGraphicOrigin;