import { IActivityHandler, Deferrable } from "../../IActivityHandler";
/** Defines inputs to the Buffer activity. This activity makes use of the geometry engine. */
export interface BufferEngineTaskInputs {
    /** The buffer input geometry. The geometry and distance parameters must be specified as either both arrays or both non-arrays. */
    geometry: __esri.Geometry | __esri.Geometry[];
    /** The specified distance(s) for buffering. */
    distance: number | number[];
    /** Measurement unit of the distances. Defaults to the units of the input geometries. */
    unit?: "meters" | "feet" | "kilometers" | "miles" | "nautical-miles" | "yards" | string;
    /** Determines whether to use a geodesic buffer or a non-geodesic buffer */
    geodesic?: boolean;
    /** Determines whether the output geometries should be unioned into a single polygon. */
    union?: boolean;
}
/** Defines outputs for the Buffer activity. */
export interface BufferEngineTaskOutputs {
    /** Indicates the first buffer or result (or the union result). */
    geometry?: __esri.Polygon;
    /** Indicates all buffer results. */
    results?: __esri.Polygon[];
}
export declare class BufferEngineTask implements IActivityHandler {
    static action: string;
    static suite: string;
    private executeUsing;
    execute(inputs: BufferEngineTaskInputs): Deferrable<BufferEngineTaskOutputs>;
}
