import type { IActivityHandler, IActivityContext } from "../../IActivityHandler"; /** Defines inputs for the Relation task. This task requires a geometry service. The input arrays are assumed to be in the same spatial reference, and the relations are evaluate in 2D. Z-coordinates are not used. Geometry types cannot be mixed within an array. */ export interface RelationServiceTaskInputs { url: string; geometry1: __esri.GeometryUnion | __esri.GeometryUnion[]; geometry2: __esri.GeometryUnion | __esri.GeometryUnion[]; relation?: "cross" | "disjoint" | "in" | "interior-intersection" | "intersection" | "line-coincidence" | "line-touch" | "overlap" | "point-touch" | "touch" | "within" | string; } /** Defines the paired index object returned by the service task. */ export interface GeometryArrayIndexPair { geometry1Index: number; geometry2Index: number; } /** Defines outputs for the Relation task. */ export interface RelationServiceTaskOutputs { /** @description The array of geometries that meet the specified relation. */ incident?: __esri.Geometry[]; /** @description The array of geometries that meet the specified relation. */ incidents?: __esri.Geometry[][]; } export declare class RelationServiceTask implements IActivityHandler { static readonly action = "gcx:wf:arcgis::RelationServiceTask"; static readonly suite = "gcx:wf:builtin"; execute(inputs: RelationServiceTaskInputs, context: IActivityContext): Promise; }