import { constructPropertiesKey, constructWithPropertiesInternalGuardPlus } from '../../../utils'; export declare class MsmSignalData { readonly id: number; constructor(_internalGuard: never); static [constructPropertiesKey]: (exclude: never) => {}; static construct: typeof constructWithPropertiesInternalGuardPlus; } export declare class Msm1SignalData extends MsmSignalData { static [constructPropertiesKey]: (exclude: 'finePseudorange' | 'finePseudorangeMicroseconds' | 'finePseudorangeMeters') => { finePseudorange: number; } | { finePseudorangeMicroseconds: number; } | { finePseudorangeMeters: number; }; finePseudorange: number; get finePseudorangeMicroseconds(): number; set finePseudorangeMicroseconds(range: number); get finePseudorangeMeters(): number; set finePseudorangeMeters(range: number); } export declare abstract class Msm23SignalData extends MsmSignalData { protected finePseudorange: number; finePhaserange: number; get finePhaserangeMicroseconds(): number; set finePhaserangeMicroseconds(range: number); get finePhaserangeMeters(): number; set finePhaserangeMeters(range: number); phaserangeLockTimeIndicator: number; get phaserangeLockTimeMillis(): number; set phaserangeLockTimeMillis(time: number); halfCycleAmbiguityIndicator: boolean; } export declare class Msm2SignalData extends Msm23SignalData { static [constructPropertiesKey]: (exclude: 'phaserangeLockTimeIndicator' | 'phaserangeLockTimeMillis' | 'finePhaserange' | 'finePhaserangeMicroseconds' | 'finePhaserangeMeters') => ({ phaserangeLockTimeIndicator: number; } | { phaserangeLockTimeMillis: number; }) & ({ finePhaserange: number; } | { finePhaserangeMicroseconds: number; } | { finePhaserangeMeters: number; }); } export declare class Msm3SignalData extends Msm23SignalData { static [constructPropertiesKey]: (exclude: 'phaserangeLockTimeIndicator' | 'phaserangeLockTimeMillis' | 'finePseudorange' | 'finePseudorangeMicroseconds' | 'finePseudorangeMeters' | 'finePhaserange' | 'finePhaserangeMicroseconds' | 'finePhaserangeMeters') => ({ phaserangeLockTimeIndicator: number; } | { phaserangeLockTimeMillis: number; }) & ({ finePseudorange: number; } | { finePseudorangeMicroseconds: number; } | { finePseudorangeMeters: number; }) & ({ finePhaserange: number; } | { finePhaserangeMicroseconds: number; } | { finePhaserangeMeters: number; }); finePseudorange: number; get finePseudorangeMicroseconds(): number; set finePseudorangeMicroseconds(range: number); get finePseudorangeMeters(): number; set finePseudorangeMeters(range: number); } export declare class Msm4SignalData extends Msm3SignalData { cnr: number; } export declare class Msm5SignalData extends Msm4SignalData { static [constructPropertiesKey]: (exclude: 'phaserangeLockTimeIndicator' | 'phaserangeLockTimeMillis' | 'finePseudorange' | 'finePseudorangeMicroseconds' | 'finePseudorangeMeters' | 'finePhaserange' | 'finePhaserangeMicroseconds' | 'finePhaserangeMeters' | 'finePhaserangeRate' | 'finePhaserangeRateMetersPerSecond') => ({ phaserangeLockTimeIndicator: number; } | { phaserangeLockTimeMillis: number; }) & ({ finePseudorange: number; } | { finePseudorangeMicroseconds: number; } | { finePseudorangeMeters: number; }) & ({ finePhaserange: number; } | { finePhaserangeMicroseconds: number; } | { finePhaserangeMeters: number; }) & ({ finePhaserangeRate: number; } | { finePhaserangeRateMetersPerSecond: number; }); finePhaserangeRate: number; get finePhaserangeRateMetersPerSecond(): number; set finePhaserangeRateMetersPerSecond(rangeRate: number); } export declare class Msm6SignalData extends MsmSignalData { static [constructPropertiesKey]: (exclude: 'phaserangeLockTimeIndicatorExtendedRangeResolution' | 'phaserangeLockTimeMillis' | 'finePseudorangeExtendedResolution' | 'finePseudorangeMicroseconds' | 'finePseudorangeMeters' | 'finePhaserangeExtendedResolution' | 'finePhaserangeMicroseconds' | 'finePhaserangeMeters') => ({ phaserangeLockTimeIndicatorExtendedRangeResolution: number; } | { phaserangeLockTimeMillis: number; }) & ({ finePseudorangeExtendedResolution: number; } | { finePseudorangeMicroseconds: number; } | { finePseudorangeMeters: number; }) & ({ finePhaserangeExtendedResolution: number; } | { finePhaserangeMicroseconds: number; } | { finePhaserangeMeters: number; }); finePseudorangeExtendedResolution: number; finePhaserangeExtendedResolution: number; phaserangeLockTimeIndicatorExtendedRangeResolution: number; get phaserangeLockTimeMillis(): number; set phaserangeLockTimeMillis(time: number); halfCycleAmbiguityIndicator: boolean; cnrExtendedResolution: number; get finePseudorangeMicroseconds(): number; set finePseudorangeMicroseconds(range: number); get finePseudorangeMeters(): number; set finePseudorangeMeters(range: number); get finePhaserangeMicroseconds(): number; set finePhaserangeMicroseconds(range: number); get finePhaserangeMeters(): number; set finePhaserangeMeters(range: number); } export declare class Msm7SignalData extends Msm6SignalData { static [constructPropertiesKey]: (exclude: 'phaserangeLockTimeIndicatorExtendedRangeResolution' | 'phaserangeLockTimeMillis' | 'finePseudorangeExtendedResolution' | 'finePseudorangeMicroseconds' | 'finePseudorangeMeters' | 'finePhaserangeExtendedResolution' | 'finePhaserangeMicroseconds' | 'finePhaserangeMeters' | 'finePhaserangeRate' | 'finePhaserangeRateMetersPerSecond') => ({ phaserangeLockTimeIndicatorExtendedRangeResolution: number; } | { phaserangeLockTimeMillis: number; }) & ({ finePseudorangeExtendedResolution: number; } | { finePseudorangeMicroseconds: number; } | { finePseudorangeMeters: number; }) & ({ finePhaserangeExtendedResolution: number; } | { finePhaserangeMicroseconds: number; } | { finePhaserangeMeters: number; }) & ({ finePhaserangeRate: number; } | { finePhaserangeRateMetersPerSecond: number; }); finePhaserangeRate: number; get finePhaserangeRateMetersPerSecond(): number; set finePhaserangeRateMetersPerSecond(rangeRate: number); }