import { IActivityHandler } from "../../IActivityHandler";
/** Defines inputs for the GetCurrentPosition activity. */
export interface GetCurrentPositionInputs {
    /** Whether to request the best possible location data */
    enableHighAccuracy?: boolean;
    /** The maximum age of a cached position that will be accepted. */
    maximumAge?: number;
    /** The amount of time to wait for a location. */
    timeout?: number;
    /** Whether to use multiple readings to improve the accuracy of the geolocation result. */
    useMultipleReadings?: boolean;
    accuracyThreshold?: number;
}
/** Defines outputs for the GetCurrentPosition activity. */
export interface GetCurrentPositionOutputs {
    position: __esri.Point;
    accuracy: number;
    altitude?: number;
    altitudeAccuracy?: number;
    heading?: number;
    latitude: number;
    longitude: number;
    speed?: number;
    timestamp: number;
    recieverName?: string;
    pdop?: number;
    hdop?: number;
    vdop?: number;
    fixType?: number;
    correctionAge?: number;
    stationId?: number;
    numberOfSatellites?: number;
    averageAccuracy?: number;
    averageAltitudeAccuracy?: number;
    averagedPositions?: number;
    standardDeviation?: number;
    errorCode?: number;
    errorMessage?: string;
}
export declare class GetCurrentPosition implements IActivityHandler {
    static action: string;
    static suite: string;
    /** This allows us to mock the geolocation API during testing */
    geolocation: Geolocation;
    execute(inputs: GetCurrentPositionInputs): PromiseLike<GetCurrentPositionOutputs>;
}
