import type { IActivityHandler } from "../../IActivityHandler"; /** Defines inputs for the GetCurrentPosition activity. */ export interface GetCurrentPositionInputs { enableHighAccuracy?: boolean; maximumAge?: number; timeout?: number; useMultipleReadings?: boolean; accuracyThreshold?: number; } /** Defines outputs for the GetCurrentPosition activity. */ export interface GetCurrentPositionOutputs { /** @description Represents the accuracy of the latitude and longitude properties, expressed in meters. */ accuracy: number; /** @description Represents the position's altitude in metres, relative to sea level. This value can be null if the implementation cannot provide the data. */ altitude?: number; /** @description Represents the position's altitude in metres, relative to sea level. This value can be null if the implementation cannot provide the data. */ altitudeAccuracy?: number; /** @description Represents the average horizontal accuracy(m). */ averageAccuracy?: number; /** @description Represents the average vertical accuracy(m). */ averageAltitudeAccuracy?: number; /** @description Represents the number of positions used in determining the average location. */ averagedPositions?: number; /** @description Represents the age of the differential correction being applied to the location(s). */ correctionAge?: number; /** @description Represents the reason of an error occurring when using the geolocating device. This value will be defined if there was an error. */ errorCode?: number; /** @description Represents the reason of an error occurring when using the geolocating device. This value will be defined if there was an error. */ errorMessage?: string; /** @description Represents the type of gnss location fix. Possible values are: 0 [Invalid], 1 [GPS], 2 [Differential GPS], 3 [Precise Positioning Service], 4 [Real Time Kinematic (Fixed)], 5 [Real Time Kinematic (Floating)], 6 [Estimated], 7 [Manual Input] or 8 [Simulation]. */ fixType?: number; /** @description Represents the horizontal dilution of precision. */ hdop?: number; /** @description Represents the direction in which the device is traveling. This value, specified in degrees, indicates how far off from heading true north the device is. If the device is unable to provide heading information, this value is null. */ heading?: number; /** @description Represents the position's latitude in decimal degrees. */ latitude: number; /** @description Represents the position's longitude in decimal degrees. */ longitude: number; /** @description Represents the number of satellites used in calculating position. */ numberOfSatellites?: number; /** @description Represents the position dilution of precision. */ pdop?: number; /** @description The position in WGS84. */ position: __esri.Point; /** @description Represents the name of the receiver used to get the location. */ recieverName?: string; /** @description Represents the velocity of the device in meters per second. This value can be null. */ speed?: number; /** @description Represents the standard deviation of the average. */ standardDeviation?: number; /** @description Represents the well known id of the station used for differential correction. */ stationId?: number; /** @description Represents the time (in Unix Epoch milliseconds) at which the location was retrieved. */ timestamp: number; /** @description Represents the vertical dilution of precision. */ vdop?: number; } export declare class GetCurrentPosition implements IActivityHandler { static readonly action = "gcx:wf:arcgis::GetCurrentPosition"; static readonly suite = "gcx:wf:builtin"; /** This allows us to mock the geolocation API during testing */ geolocation: Geolocation; execute(inputs: GetCurrentPositionInputs): PromiseLike; }