import { RtcmMessage } from '../../rtcm'; import { constructPropertiesKey, constructWithProperties, constructWithPropertiesPlus } from '../../utils'; export declare enum GlonassL1CodeIndicator { CA_CODE = 0, P_Y_CODE_DIRECT = 1 } export declare enum GlonassL2CodeIndicator { CA_L2C_CODE = 0, P_Y_CODE_DIRECT = 1, RESERVED_0 = 2, RESERVED_1 = 3 } export declare abstract class RtcmMessageGlonassObservations extends RtcmMessage { referenceStationId: number; glonassEpochTime: number; synchronousGnss: boolean; private _satelliteCount; divergenceFreeSmoothing: boolean; smoothingInterval: number; } export declare abstract class GlonassObservationsData { static construct: typeof constructWithPropertiesPlus; } export declare class GlonassL1ObservationsData extends GlonassObservationsData { static [constructPropertiesKey]: (exclude: 'lockTimeMillis' | 'lockTimeIndicator') => { lockTimeIndicator: number; } | { lockTimeMillis: number; }; codeIndicator: GlonassL1CodeIndicator; satelliteFrequencyChannelNumber: number; pseudorange: number; phaserangePseudorangeDiff: number; lockTimeIndicator: number; get lockTimeMillis(): number; set lockTimeMillis(time: number); } export declare class GlonassL1ObservationsExtendedData extends GlonassL1ObservationsData { pseudorangeModulusAmbiguity: number; cnr: number; } export declare class GlonassL2ObservationsData extends GlonassObservationsData { static [constructPropertiesKey]: (exclude: 'lockTimeMillis' | 'lockTimeIndicator') => { lockTimeIndicator: number; } | { lockTimeMillis: number; }; codeIndicator: GlonassL2CodeIndicator; pseudorangeDiff: number; phaserangePseudorangeDiff: number; lockTimeIndicator: number; get lockTimeMillis(): number; set lockTimeMillis(time: number); } export declare class GlonassL2ObservationsExtendedData extends GlonassL2ObservationsData { cnr: number; } export declare class GlonassObservationsSatelliteData { satelliteId: number; static construct: typeof constructWithProperties; } export declare class GlonassL1ObservationsSatelliteData extends GlonassObservationsSatelliteData { l1: GlonassL1ObservationsData; } export declare class GlonassL1ObservationsExtendedSatelliteData extends GlonassObservationsSatelliteData { l1: GlonassL1ObservationsExtendedData; } export declare class GlonassL1L2ObservationsSatelliteData extends GlonassObservationsSatelliteData { l1: GlonassL1ObservationsData; l2: GlonassL2ObservationsData; toL1Only(): GlonassL1ObservationsSatelliteData; } export declare class GlonassL1L2ObservationsExtendedSatelliteData extends GlonassObservationsSatelliteData { l1: GlonassL1ObservationsExtendedData; l2: GlonassL2ObservationsExtendedData; toL1Only(): GlonassL1ObservationsExtendedSatelliteData; } export declare class RtcmMessageGlonassL1Observations extends RtcmMessageGlonassObservations { satellites: GlonassL1ObservationsSatelliteData[]; } export declare class RtcmMessageGlonassL1ObservationsExtended extends RtcmMessageGlonassObservations { satellites: GlonassL1ObservationsExtendedSatelliteData[]; } export declare class RtcmMessageGlonassL1L2Observations extends RtcmMessageGlonassObservations { satellites: GlonassL1L2ObservationsSatelliteData[]; toL1Only(): RtcmMessageGlonassL1Observations; } export declare class RtcmMessageGlonassL1L2ObservationsExtended extends RtcmMessageGlonassObservations { satellites: GlonassL1L2ObservationsExtendedSatelliteData[]; toL1Only(): RtcmMessageGlonassL1ObservationsExtended; }