import { TAGS } from './constants';
import { ISOXMLManager } from '../ISOXMLManager';
import { XMLElement } from '../types';
import { Entity, EntityConstructor } from '../types';
export declare enum PositionPositionStatusEnum {
    NoGPSFix = "0",
    GNSSFix = "1",
    DGNSSFix = "2",
    PreciseGNSS = "3",
    RTKFixedInteger = "4",
    RTKFloat = "5",
    EstDRMode = "6",
    ManualInput = "7",
    SimulateMode = "8",
    Reserved9 = "9",
    Reserved10 = "10",
    Reserved11 = "11",
    Reserved12 = "12",
    Reserved13 = "13",
    Error = "14",
    PositionStatusValueIsNotAvailable = "15"
}
export type PositionAttributes = {
    PositionNorth: number;
    PositionEast: number;
    PositionUp?: number;
    PositionStatus: PositionPositionStatusEnum;
    PDOP?: number;
    HDOP?: number;
    NumberOfSatellites?: number;
    GpsUtcTime?: number;
    GpsUtcDate?: number;
    ProprietaryAttributes?: {
        [name: string]: string;
    };
    ProprietaryTags?: {
        [tag: string]: XMLElement[];
    };
};
export declare class Position implements Entity {
    attributes: PositionAttributes;
    isoxmlManager: ISOXMLManager;
    tag: TAGS;
    constructor(attributes: PositionAttributes, isoxmlManager: ISOXMLManager);
    static fromXML(xml: XMLElement, isoxmlManager: ISOXMLManager, internalId?: string, targetClass?: EntityConstructor): Promise<Entity>;
    toXML(): XMLElement;
}
