@neilberkman/sidereon 0.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,4724 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+
4
+ /**
5
+ * Acquisition search-grid metadata.
6
+ */
7
+ export class AcquisitionGrid {
8
+ private constructor();
9
+ free(): void;
10
+ [Symbol.dispose](): void;
11
+ /**
12
+ * Number of code-phase bins searched.
13
+ */
14
+ readonly codePhaseBins: number;
15
+ /**
16
+ * Doppler bins searched, hertz, as a `Float64Array`.
17
+ */
18
+ readonly dopplerHz: Float64Array;
19
+ /**
20
+ * Doppler step, hertz.
21
+ */
22
+ readonly dopplerStepHz: number;
23
+ /**
24
+ * Samples per C/A chip.
25
+ */
26
+ readonly samplesPerChip: number;
27
+ }
28
+
29
+ /**
30
+ * Result of a 2D C/A code-phase and Doppler acquisition search.
31
+ */
32
+ export class AcquisitionResult {
33
+ private constructor();
34
+ free(): void;
35
+ [Symbol.dispose](): void;
36
+ /**
37
+ * Recovered C/A code phase, chips.
38
+ */
39
+ readonly codePhaseChips: number;
40
+ /**
41
+ * Recovered Doppler bin, hertz.
42
+ */
43
+ readonly dopplerHz: number;
44
+ /**
45
+ * Search-grid metadata.
46
+ */
47
+ readonly grid: AcquisitionGrid;
48
+ /**
49
+ * Alias of `peakMetric`.
50
+ */
51
+ readonly metric: number;
52
+ /**
53
+ * Peak-to-mean-off-peak acquisition metric.
54
+ */
55
+ readonly peakMetric: number;
56
+ /**
57
+ * Peak correlator power.
58
+ */
59
+ readonly peakPower: number;
60
+ }
61
+
62
+ /**
63
+ * A receiver or satellite ANTEX antenna calibration block.
64
+ */
65
+ export class Antenna {
66
+ private constructor();
67
+ free(): void;
68
+ [Symbol.dispose](): void;
69
+ /**
70
+ * Frequency-dependent phase-center offset, north/east/up metres, as a
71
+ * length-3 `Float64Array`.
72
+ */
73
+ pco(frequency: string): Float64Array;
74
+ /**
75
+ * Frequency-dependent phase-center variation, metres. `azimuthDeg` is
76
+ * optional; without it the no-azimuth interpolation is used.
77
+ */
78
+ pcv(frequency: string, zenith_deg: number, azimuth_deg?: number | null): number;
79
+ /**
80
+ * Whether this antenna block is valid at `epoch`.
81
+ */
82
+ validAt(epoch: AntexDateTime): boolean;
83
+ /**
84
+ * ANTEX antenna type field.
85
+ */
86
+ readonly antennaType: string;
87
+ /**
88
+ * Azimuth grid spacing, degrees.
89
+ */
90
+ readonly daziDeg: number;
91
+ /**
92
+ * Available frequency codes, e.g. `"G01"`.
93
+ */
94
+ readonly frequencies: string[];
95
+ /**
96
+ * ANTEX `TYPE / SERIAL` id.
97
+ */
98
+ readonly id: string;
99
+ /**
100
+ * Block role: `"receiver"` or `"satellite"`.
101
+ */
102
+ readonly kind: string;
103
+ /**
104
+ * ANTEX serial, PRN, or radome field.
105
+ */
106
+ readonly serial: string;
107
+ /**
108
+ * Optional SINEX calibration code.
109
+ */
110
+ readonly sinexCode: string | undefined;
111
+ /**
112
+ * First valid timestamp, or `undefined` for an open-ended block.
113
+ */
114
+ readonly validFrom: AntexDateTime | undefined;
115
+ /**
116
+ * Last valid timestamp, or `undefined` for an open-ended block.
117
+ */
118
+ readonly validUntil: AntexDateTime | undefined;
119
+ /**
120
+ * Zenith grid end angle, degrees.
121
+ */
122
+ readonly zenithEndDeg: number;
123
+ /**
124
+ * Zenith grid start angle, degrees.
125
+ */
126
+ readonly zenithStartDeg: number;
127
+ /**
128
+ * Zenith grid step, degrees.
129
+ */
130
+ readonly zenithStepDeg: number;
131
+ }
132
+
133
+ /**
134
+ * A parsed ANTEX receiver and satellite antenna calibration product.
135
+ */
136
+ export class Antex {
137
+ private constructor();
138
+ free(): void;
139
+ [Symbol.dispose](): void;
140
+ /**
141
+ * Return an antenna by exact `TYPE / SERIAL` id, or `undefined`.
142
+ */
143
+ antenna(id: string): Antenna | undefined;
144
+ /**
145
+ * Return the satellite antenna for `prn` valid at `epoch`, or `undefined`.
146
+ */
147
+ satelliteAntenna(prn: string, epoch: AntexDateTime): Antenna | undefined;
148
+ /**
149
+ * Number of antenna blocks parsed from the product.
150
+ */
151
+ readonly antennaCount: number;
152
+ /**
153
+ * ANTEX `TYPE / SERIAL` ids in deterministic order.
154
+ */
155
+ readonly antennaIds: string[];
156
+ }
157
+
158
+ /**
159
+ * A civil UTC-like ANTEX validity timestamp.
160
+ */
161
+ export class AntexDateTime {
162
+ free(): void;
163
+ [Symbol.dispose](): void;
164
+ /**
165
+ * Create an ANTEX validity timestamp. `hour` / `minute` / `second` default
166
+ * to 0. Throws a `RangeError` on an invalid date.
167
+ */
168
+ constructor(year: number, month: number, day: number, hour?: number | null, minute?: number | null, second?: number | null);
169
+ /**
170
+ * Calendar day of month.
171
+ */
172
+ readonly day: number;
173
+ /**
174
+ * Hour of day.
175
+ */
176
+ readonly hour: number;
177
+ /**
178
+ * Minute of hour.
179
+ */
180
+ readonly minute: number;
181
+ /**
182
+ * Calendar month, 1..=12.
183
+ */
184
+ readonly month: number;
185
+ /**
186
+ * Second of minute.
187
+ */
188
+ readonly second: number;
189
+ /**
190
+ * Calendar year.
191
+ */
192
+ readonly year: number;
193
+ }
194
+
195
+ /**
196
+ * Result of applying base corrections to rover observations.
197
+ */
198
+ export class AppliedCorrections {
199
+ private constructor();
200
+ free(): void;
201
+ [Symbol.dispose](): void;
202
+ /**
203
+ * Corrected rover observations as `{ satelliteId, pseudorangeM }[]`, in
204
+ * rover-observation order.
205
+ */
206
+ readonly corrected: any;
207
+ /**
208
+ * Rover satellite tokens with no matching base correction, in rover order.
209
+ */
210
+ readonly dropped: string[];
211
+ }
212
+
213
+ /**
214
+ * A parsed broadcast ephemeris store from a RINEX NAV file. `records` are the
215
+ * usable GPS/Galileo/BeiDou records selected by the core default SPP policy.
216
+ */
217
+ export class BroadcastEphemeris {
218
+ private constructor();
219
+ free(): void;
220
+ [Symbol.dispose](): void;
221
+ /**
222
+ * Compare this broadcast product against a precise SP3 product over a
223
+ * J2000-second window `[fromJ2000S, toJ2000S]` at `stepS`.
224
+ *
225
+ * `satellites` is the list of tokens (e.g. `["G01", "G11"]`) to compare. The
226
+ * per-epoch keys are built here: the broadcast query second is the epoch
227
+ * itself, and the precise queries use the SP3 split Julian dates at the
228
+ * epoch and at `epoch +/- round(stepS / 2)` for the centered velocity
229
+ * difference. Returns a `{ overall, perSatellite, missing }` report; metre
230
+ * fields are `null` where no compared epoch populated them.
231
+ */
232
+ compareToSp3(precise: Sp3, satellites: string[], from_j2000_s: number, to_j2000_s: number, step_s: number): any;
233
+ /**
234
+ * Solve a receiver position from broadcast ephemeris ALONE: the supported
235
+ * real-time / offline single-point-positioning mode. `request` is the same
236
+ * SPP request object [`Sp3.solveSpp`] takes. The result is identical to
237
+ * solving against this broadcast store as an ephemeris source.
238
+ */
239
+ solveBroadcast(request: any): SppSolution;
240
+ /**
241
+ * Number of usable GLONASS records.
242
+ */
243
+ readonly glonassRecordCount: number;
244
+ /**
245
+ * Healthy GLONASS broadcast records in file order.
246
+ */
247
+ readonly glonassRecords: GlonassRecordJs[];
248
+ /**
249
+ * Broadcast ionosphere coefficients parsed from the NAV header.
250
+ */
251
+ readonly ionoCorrections: IonoCorrectionsJs;
252
+ /**
253
+ * GPS minus UTC leap seconds from the NAV header, or `undefined`.
254
+ */
255
+ readonly leapSeconds: number | undefined;
256
+ /**
257
+ * Number of usable GPS, Galileo, and BeiDou records.
258
+ */
259
+ readonly recordCount: number;
260
+ /**
261
+ * Usable GPS, Galileo, and BeiDou broadcast records in file order.
262
+ */
263
+ readonly records: BroadcastRecordJs[];
264
+ }
265
+
266
+ /**
267
+ * Evaluated broadcast orbit and satellite clock at one seconds-of-week epoch.
268
+ */
269
+ export class BroadcastEvaluation {
270
+ private constructor();
271
+ free(): void;
272
+ [Symbol.dispose](): void;
273
+ /**
274
+ * Broadcast clock-polynomial component, seconds.
275
+ */
276
+ readonly clockPolynomialS: number;
277
+ /**
278
+ * Total satellite clock offset, seconds.
279
+ */
280
+ readonly clockS: number;
281
+ /**
282
+ * Broadcast group delay subtracted from the clock offset, seconds.
283
+ */
284
+ readonly groupDelayS: number;
285
+ /**
286
+ * Fixed-point iterations used to solve Kepler's equation.
287
+ */
288
+ readonly keplerIterations: number;
289
+ /**
290
+ * ITRF/ECEF satellite position `[x, y, z]`, metres.
291
+ */
292
+ readonly positionM: Float64Array;
293
+ /**
294
+ * Relativistic eccentricity clock component, seconds.
295
+ */
296
+ readonly relativisticClockS: number;
297
+ /**
298
+ * Query epoch, seconds of week in the record's broadcast time scale.
299
+ */
300
+ readonly tSowS: number;
301
+ /**
302
+ * ITRF/ECEF X, metres.
303
+ */
304
+ readonly xM: number;
305
+ /**
306
+ * ITRF/ECEF Y, metres.
307
+ */
308
+ readonly yM: number;
309
+ /**
310
+ * ITRF/ECEF Z, metres.
311
+ */
312
+ readonly zM: number;
313
+ }
314
+
315
+ /**
316
+ * One GPS, Galileo, or BeiDou broadcast ephemeris record from RINEX NAV.
317
+ */
318
+ export class BroadcastRecordJs {
319
+ private constructor();
320
+ free(): void;
321
+ [Symbol.dispose](): void;
322
+ /**
323
+ * Evaluate the broadcast record at a seconds-of-week epoch. `tSowS` is in
324
+ * the record's broadcast time scale. Throws a `RangeError` on a non-finite
325
+ * epoch and an `Error` if the orbit cannot be evaluated.
326
+ */
327
+ evaluate(t_sow_s: number): BroadcastEvaluation;
328
+ /**
329
+ * Satellite clock polynomial.
330
+ */
331
+ readonly clock: ClockPolynomialJs;
332
+ /**
333
+ * Keplerian orbital elements in SI units.
334
+ */
335
+ readonly elements: KeplerianElementsJs;
336
+ /**
337
+ * GPS curve-fit interval, seconds, or `undefined` when not broadcast.
338
+ */
339
+ readonly fitIntervalS: number | undefined;
340
+ /**
341
+ * Broadcast group delay, seconds.
342
+ */
343
+ readonly groupDelayS: number;
344
+ /**
345
+ * Broadcast message type.
346
+ */
347
+ readonly message: NavMessage;
348
+ /**
349
+ * RINEX satellite token such as `"G01"`.
350
+ */
351
+ readonly satellite: string;
352
+ /**
353
+ * Signal-in-space accuracy, metres.
354
+ */
355
+ readonly svAccuracyM: number;
356
+ /**
357
+ * Satellite health word; 0 is healthy for nominal GPS/Galileo.
358
+ */
359
+ readonly svHealth: number;
360
+ /**
361
+ * Continuous constellation week number from the broadcast record.
362
+ */
363
+ readonly week: number;
364
+ }
365
+
366
+ /**
367
+ * A canonical GNSS carrier band. The JS value matches the variant order below.
368
+ */
369
+ export enum CarrierBand {
370
+ /**
371
+ * GPS/QZSS L1.
372
+ */
373
+ L1 = 0,
374
+ /**
375
+ * GPS/QZSS L2.
376
+ */
377
+ L2 = 1,
378
+ /**
379
+ * GPS/QZSS L5.
380
+ */
381
+ L5 = 2,
382
+ /**
383
+ * Galileo E1.
384
+ */
385
+ E1 = 3,
386
+ /**
387
+ * Galileo E5a.
388
+ */
389
+ E5a = 4,
390
+ /**
391
+ * Galileo E5b.
392
+ */
393
+ E5b = 5,
394
+ /**
395
+ * Galileo E5 AltBOC.
396
+ */
397
+ E5 = 6,
398
+ /**
399
+ * Galileo E6.
400
+ */
401
+ E6 = 7,
402
+ /**
403
+ * BeiDou B1C.
404
+ */
405
+ B1c = 8,
406
+ /**
407
+ * BeiDou B1I.
408
+ */
409
+ B1i = 9,
410
+ /**
411
+ * BeiDou B2a.
412
+ */
413
+ B2a = 10,
414
+ /**
415
+ * BeiDou B2b.
416
+ */
417
+ B2b = 11,
418
+ /**
419
+ * BeiDou B2.
420
+ */
421
+ B2 = 12,
422
+ /**
423
+ * BeiDou B3I.
424
+ */
425
+ B3i = 13,
426
+ /**
427
+ * GLONASS G1 FDMA.
428
+ */
429
+ G1 = 14,
430
+ /**
431
+ * GLONASS G2 FDMA.
432
+ */
433
+ G2 = 15,
434
+ }
435
+
436
+ /**
437
+ * A standard two-carrier ionosphere-free pair.
438
+ */
439
+ export class CarrierPair {
440
+ free(): void;
441
+ [Symbol.dispose](): void;
442
+ /**
443
+ * Create a two-carrier pair.
444
+ */
445
+ constructor(band1: CarrierBand, band2: CarrierBand);
446
+ /**
447
+ * First carrier band.
448
+ */
449
+ readonly band1: CarrierBand;
450
+ /**
451
+ * Second carrier band.
452
+ */
453
+ readonly band2: CarrierBand;
454
+ }
455
+
456
+ /**
457
+ * Flattened carrier-phase rows from one RINEX OBS epoch. Numeric arrays are
458
+ * row-aligned with `satellites` and `codes`; missing values and unknown
459
+ * carrier metadata are `NaN`.
460
+ */
461
+ export class CarrierPhaseSeries {
462
+ private constructor();
463
+ free(): void;
464
+ [Symbol.dispose](): void;
465
+ /**
466
+ * RINEX carrier observation codes, row-aligned with all arrays.
467
+ */
468
+ readonly codes: string[];
469
+ /**
470
+ * Carrier frequency, hertz.
471
+ */
472
+ readonly frequencyHz: Float64Array;
473
+ /**
474
+ * Number of flattened rows.
475
+ */
476
+ readonly length: number;
477
+ /**
478
+ * RINEX LLI values, `NaN` for blanks.
479
+ */
480
+ readonly lli: Float64Array;
481
+ /**
482
+ * Applied phase shift, cycles.
483
+ */
484
+ readonly phaseShiftCycles: Float64Array;
485
+ /**
486
+ * Satellite tokens, row-aligned with all arrays.
487
+ */
488
+ readonly satellites: string[];
489
+ /**
490
+ * RINEX SSI values, `NaN` for blanks.
491
+ */
492
+ readonly ssi: Float64Array;
493
+ /**
494
+ * Carrier phase, cycles.
495
+ */
496
+ readonly valueCycles: Float64Array;
497
+ /**
498
+ * Carrier phase, metres.
499
+ */
500
+ readonly valueM: Float64Array;
501
+ /**
502
+ * Carrier wavelength, metres.
503
+ */
504
+ readonly wavelengthM: Float64Array;
505
+ }
506
+
507
+ /**
508
+ * A two-object CCSDS Conjunction Data Message parsed from KVN or XML.
509
+ */
510
+ export class Cdm {
511
+ free(): void;
512
+ [Symbol.dispose](): void;
513
+ /**
514
+ * Build a CDM from two objects. `meta` carries the optional message-level
515
+ * fields.
516
+ */
517
+ constructor(object1: CdmObject, object2: CdmObject, meta: any);
518
+ /**
519
+ * Encode this message to CCSDS CDM KVN text.
520
+ */
521
+ toKvnString(): string;
522
+ /**
523
+ * Encode this message to CCSDS CDM XML text.
524
+ */
525
+ toXmlString(): string;
526
+ /**
527
+ * Collision probability.
528
+ */
529
+ readonly collisionProbability: number | undefined;
530
+ /**
531
+ * Collision-probability method label.
532
+ */
533
+ readonly collisionProbabilityMethod: string | undefined;
534
+ /**
535
+ * Creation date.
536
+ */
537
+ readonly creationDate: string | undefined;
538
+ /**
539
+ * Hard-body radius, metres.
540
+ */
541
+ readonly hardBodyRadiusM: number | undefined;
542
+ /**
543
+ * Message id.
544
+ */
545
+ readonly messageId: string | undefined;
546
+ /**
547
+ * Miss distance, metres.
548
+ */
549
+ readonly missDistanceM: number | undefined;
550
+ /**
551
+ * First object.
552
+ */
553
+ readonly object1: CdmObject;
554
+ /**
555
+ * Second object.
556
+ */
557
+ readonly object2: CdmObject;
558
+ /**
559
+ * Originator.
560
+ */
561
+ readonly originator: string | undefined;
562
+ /**
563
+ * Relative speed, m/s.
564
+ */
565
+ readonly relativeSpeedMS: number | undefined;
566
+ /**
567
+ * Time of closest approach (TCA).
568
+ */
569
+ readonly tca: string | undefined;
570
+ }
571
+
572
+ /**
573
+ * One object's metadata, state vector, and RTN position covariance from a CDM.
574
+ */
575
+ export class CdmObject {
576
+ free(): void;
577
+ [Symbol.dispose](): void;
578
+ /**
579
+ * Build a CDM object. `positionKm` / `velocityKmS` are length-3
580
+ * `Float64Array`s; `covarianceRtn` is the length-6 RTN lower triangle
581
+ * `[CR_R, CT_R, CT_T, CN_R, CN_T, CN_N]`. `meta` carries the optional
582
+ * string fields.
583
+ */
584
+ constructor(position_km: Float64Array, velocity_km_s: Float64Array, covariance_rtn: Float64Array, meta: any);
585
+ /**
586
+ * Catalog name.
587
+ */
588
+ readonly catalogName: string | undefined;
589
+ /**
590
+ * RTN position-covariance lower triangle, length-6 `Float64Array`.
591
+ */
592
+ readonly covarianceRtn: Float64Array;
593
+ /**
594
+ * International designator (COSPAR ID).
595
+ */
596
+ readonly internationalDesignator: string | undefined;
597
+ /**
598
+ * Object designator.
599
+ */
600
+ readonly objectDesignator: string | undefined;
601
+ /**
602
+ * Object name.
603
+ */
604
+ readonly objectName: string | undefined;
605
+ /**
606
+ * Object type.
607
+ */
608
+ readonly objectType: string | undefined;
609
+ /**
610
+ * Position vector, kilometres, length-3 `Float64Array`.
611
+ */
612
+ readonly positionKm: Float64Array;
613
+ /**
614
+ * Reference frame.
615
+ */
616
+ readonly refFrame: string | undefined;
617
+ /**
618
+ * Velocity vector, km/s, length-3 `Float64Array`.
619
+ */
620
+ readonly velocityKmS: Float64Array;
621
+ }
622
+
623
+ /**
624
+ * An advisory TLE checksum discrepancy. The TLE grammar does not reject a line
625
+ * on a bad modulo-10 checksum, so each mismatch is surfaced here rather than
626
+ * thrown.
627
+ */
628
+ export class ChecksumWarning {
629
+ private constructor();
630
+ free(): void;
631
+ [Symbol.dispose](): void;
632
+ /**
633
+ * The checksum digit recomputed from columns 1-68.
634
+ */
635
+ readonly computed: number;
636
+ /**
637
+ * The checksum digit found in column 69 of the line.
638
+ */
639
+ readonly expected: number;
640
+ /**
641
+ * Which line the discrepancy is on: `"line 1"` or `"line 2"`.
642
+ */
643
+ readonly lineLabel: string;
644
+ }
645
+
646
+ /**
647
+ * A civil GPS-time epoch for RINEX clock interpolation. Calendar fields are
648
+ * interpreted in GPS time; `gpsSeconds` is seconds since 1980-01-06 GPST.
649
+ */
650
+ export class ClockEpoch {
651
+ free(): void;
652
+ [Symbol.dispose](): void;
653
+ /**
654
+ * Build a GPS-time civil epoch. Throws a `RangeError` for invalid fields.
655
+ */
656
+ constructor(year: number, month: number, day: number, hour: number, minute: number, second: number);
657
+ readonly day: number;
658
+ /**
659
+ * Seconds since the GPS epoch, 1980-01-06 00:00:00 GPST.
660
+ */
661
+ readonly gpsSeconds: number;
662
+ readonly hour: number;
663
+ readonly minute: number;
664
+ readonly month: number;
665
+ readonly second: number;
666
+ readonly year: number;
667
+ }
668
+
669
+ /**
670
+ * Broadcast satellite-clock polynomial. `af0`/`af1`/`af2` are s, s/s, s/s^2;
671
+ * `tocSow` is seconds of week.
672
+ */
673
+ export class ClockPolynomialJs {
674
+ private constructor();
675
+ free(): void;
676
+ [Symbol.dispose](): void;
677
+ readonly af0: number;
678
+ readonly af1: number;
679
+ readonly af2: number;
680
+ readonly tocSow: number;
681
+ }
682
+
683
+ /**
684
+ * Per-satellite RINEX clock-bias samples. `gpsSeconds` and `biasS` are
685
+ * row-aligned `Float64Array`s; epochs are GPS seconds, biases are seconds.
686
+ */
687
+ export class ClockSeries {
688
+ private constructor();
689
+ free(): void;
690
+ [Symbol.dispose](): void;
691
+ /**
692
+ * Satellite clock-bias samples, seconds, as a `Float64Array`.
693
+ */
694
+ readonly biasS: Float64Array;
695
+ /**
696
+ * Sample times, GPS seconds, as a `Float64Array`.
697
+ */
698
+ readonly gpsSeconds: Float64Array;
699
+ /**
700
+ * Number of clock samples for this satellite.
701
+ */
702
+ readonly length: number;
703
+ /**
704
+ * RINEX satellite token such as `"G05"`.
705
+ */
706
+ readonly satellite: string;
707
+ }
708
+
709
+ /**
710
+ * Collision-probability result and encounter-plane summary.
711
+ */
712
+ export class CollisionProbability {
713
+ private constructor();
714
+ free(): void;
715
+ [Symbol.dispose](): void;
716
+ /**
717
+ * Orthogonal miss distance in the encounter plane, km.
718
+ */
719
+ readonly missKm: number;
720
+ /**
721
+ * Collision probability.
722
+ */
723
+ readonly pc: number;
724
+ /**
725
+ * Relative speed, km/s.
726
+ */
727
+ readonly relativeSpeedKmS: number;
728
+ /**
729
+ * Principal-axis standard deviation in the encounter plane, km.
730
+ */
731
+ readonly sigmaXKm: number;
732
+ /**
733
+ * Principal-axis standard deviation in the encounter plane, km.
734
+ */
735
+ readonly sigmaZKm: number;
736
+ }
737
+
738
+ /**
739
+ * One object's conjunction state: ECI position (km), velocity (km/s), and 3x3
740
+ * position covariance (km^2, flat row-major length 9).
741
+ */
742
+ export class ConjunctionState {
743
+ free(): void;
744
+ [Symbol.dispose](): void;
745
+ /**
746
+ * Build a conjunction state. `positionKm` and `velocityKmS` are length-3
747
+ * `Float64Array`s; `covarianceKm2` is a flat row-major length-9
748
+ * `Float64Array`.
749
+ */
750
+ constructor(position_km: Float64Array, velocity_km_s: Float64Array, covariance_km2: Float64Array);
751
+ /**
752
+ * Position covariance, km^2, as a flat row-major length-9 `Float64Array`.
753
+ */
754
+ readonly covarianceKm2: Float64Array;
755
+ /**
756
+ * ECI position, kilometres, as a length-3 `Float64Array`.
757
+ */
758
+ readonly positionKm: Float64Array;
759
+ /**
760
+ * ECI velocity, km/s, as a length-3 `Float64Array`.
761
+ */
762
+ readonly velocityKmS: Float64Array;
763
+ }
764
+
765
+ /**
766
+ * Coherent GPS C/A correlation result.
767
+ */
768
+ export class CorrelationResult {
769
+ private constructor();
770
+ free(): void;
771
+ [Symbol.dispose](): void;
772
+ /**
773
+ * In-phase coherent sum.
774
+ */
775
+ readonly i: number;
776
+ /**
777
+ * Squared magnitude, `i*i + q*q`.
778
+ */
779
+ readonly power: number;
780
+ /**
781
+ * Quadrature coherent sum.
782
+ */
783
+ readonly q: number;
784
+ }
785
+
786
+ /**
787
+ * A DGNSS rover solve: the corrected SPP solution plus the base-relative
788
+ * baseline.
789
+ */
790
+ export class DgnssSolution {
791
+ private constructor();
792
+ free(): void;
793
+ [Symbol.dispose](): void;
794
+ /**
795
+ * Baseline length, metres.
796
+ */
797
+ readonly baselineM: number;
798
+ /**
799
+ * Rover-minus-base ECEF vector `[dx, dy, dz]`, metres.
800
+ */
801
+ readonly baselineVectorM: Float64Array;
802
+ /**
803
+ * Rover satellite tokens without a matching base correction.
804
+ */
805
+ readonly droppedSats: string[];
806
+ /**
807
+ * `[latRad, lonRad, heightM]` when the solve was asked for geodetic output.
808
+ */
809
+ readonly geodetic: Float64Array | undefined;
810
+ /**
811
+ * Corrected rover ECEF position `[x, y, z]`, metres.
812
+ */
813
+ readonly positionM: Float64Array;
814
+ /**
815
+ * Post-fit residuals, metres, index-aligned to `usedSats`.
816
+ */
817
+ readonly residualsM: Float64Array;
818
+ /**
819
+ * Receiver clock bias, seconds (absorbs the base/rover clock difference).
820
+ */
821
+ readonly rxClockS: number;
822
+ /**
823
+ * Satellite tokens used in the accepted solution, ascending.
824
+ */
825
+ readonly usedSats: string[];
826
+ }
827
+
828
+ /**
829
+ * GNSS dilution-of-precision scalars.
830
+ */
831
+ export class Dop {
832
+ private constructor();
833
+ free(): void;
834
+ [Symbol.dispose](): void;
835
+ /**
836
+ * Compute DOP from topocentric azimuth/elevation rows.
837
+ *
838
+ * `azimuthDeg` and `elevationDeg` are `Float64Array`s of length `n`
839
+ * (azimuth clockwise from geodetic north). `receiver` defines the local ENU
840
+ * frame. Optional `weights` is a positive `Float64Array` of length `n`.
841
+ */
842
+ static fromAzEl(azimuth_deg: Float64Array, elevation_deg: Float64Array, receiver: Wgs84Geodetic, weights?: Float64Array | null): Dop;
843
+ /**
844
+ * Compute DOP from ECEF line-of-sight unit rows.
845
+ *
846
+ * `lineOfSight` is a flat row-major `(n, 3)` `Float64Array` of ECEF unit
847
+ * vectors, `receiver` is WGS84 geodetic, optional `weights` is a positive
848
+ * `Float64Array` of length `n`. At least four rows are required.
849
+ */
850
+ static fromLineOfSight(line_of_sight: Float64Array, receiver: Wgs84Geodetic, weights?: Float64Array | null): Dop;
851
+ /**
852
+ * Geometric DOP.
853
+ */
854
+ readonly gdop: number;
855
+ /**
856
+ * Horizontal DOP.
857
+ */
858
+ readonly hdop: number;
859
+ /**
860
+ * Position DOP.
861
+ */
862
+ readonly pdop: number;
863
+ /**
864
+ * Time DOP.
865
+ */
866
+ readonly tdop: number;
867
+ /**
868
+ * Vertical DOP.
869
+ */
870
+ readonly vdop: number;
871
+ }
872
+
873
+ /**
874
+ * DOP values sampled from an SP3 precise product over an epoch grid. Only
875
+ * samples with finite DOP are retained.
876
+ */
877
+ export class DopSeries {
878
+ private constructor();
879
+ free(): void;
880
+ [Symbol.dispose](): void;
881
+ /**
882
+ * Satellite tokens used at finite sample `index`, ascending in elevation.
883
+ */
884
+ satellitesAt(index: number): string[] | undefined;
885
+ /**
886
+ * Number of finite DOP samples.
887
+ */
888
+ readonly epochCount: number;
889
+ /**
890
+ * Geometric DOP samples, `Float64Array`.
891
+ */
892
+ readonly gdop: Float64Array;
893
+ /**
894
+ * Horizontal DOP samples, `Float64Array`.
895
+ */
896
+ readonly hdop: Float64Array;
897
+ /**
898
+ * Successful sample epochs, seconds since J2000, `Float64Array`.
899
+ */
900
+ readonly j2000Seconds: Float64Array;
901
+ /**
902
+ * Position DOP samples, `Float64Array`.
903
+ */
904
+ readonly pdop: Float64Array;
905
+ /**
906
+ * Number of satellites used at each finite sample, `Int32Array`.
907
+ */
908
+ readonly satelliteCount: Int32Array;
909
+ /**
910
+ * Input epoch indices for finite DOP samples, `Int32Array`.
911
+ */
912
+ readonly stepIndex: Int32Array;
913
+ /**
914
+ * Time DOP samples, `Float64Array`.
915
+ */
916
+ readonly tdop: Float64Array;
917
+ /**
918
+ * Vertical DOP samples, `Float64Array`.
919
+ */
920
+ readonly vdop: Float64Array;
921
+ }
922
+
923
+ /**
924
+ * Orthonormal encounter frame built from two relative states.
925
+ */
926
+ export class EncounterFrame {
927
+ private constructor();
928
+ free(): void;
929
+ [Symbol.dispose](): void;
930
+ /**
931
+ * Orthogonal miss distance in the encounter plane, km.
932
+ */
933
+ readonly missKm: number;
934
+ /**
935
+ * Relative position (object2 minus object1), km, length-3 `Float64Array`.
936
+ */
937
+ readonly relativePositionKm: Float64Array;
938
+ /**
939
+ * Relative speed, km/s.
940
+ */
941
+ readonly relativeSpeedKmS: number;
942
+ /**
943
+ * Relative velocity (object2 minus object1), km/s, length-3 `Float64Array`.
944
+ */
945
+ readonly relativeVelocityKmS: Float64Array;
946
+ /**
947
+ * In-plane cross-track unit axis, length-3 `Float64Array`.
948
+ */
949
+ readonly xHat: Float64Array;
950
+ /**
951
+ * Relative-velocity unit axis, length-3 `Float64Array`.
952
+ */
953
+ readonly yHat: Float64Array;
954
+ /**
955
+ * Encounter-plane normal unit axis, length-3 `Float64Array`.
956
+ */
957
+ readonly zHat: Float64Array;
958
+ }
959
+
960
+ /**
961
+ * An ephemeris from numerical state-vector propagation: the requested output
962
+ * epochs plus the Cartesian state at each. Arrays are flat row-major.
963
+ */
964
+ export class Ephemeris {
965
+ private constructor();
966
+ free(): void;
967
+ [Symbol.dispose](): void;
968
+ /**
969
+ * Number of output epochs.
970
+ */
971
+ readonly epochCount: number;
972
+ /**
973
+ * ECI positions, km, flat `[x0, y0, z0, x1, ...]`, length `3 * epochCount`.
974
+ */
975
+ readonly positionKm: Float64Array;
976
+ /**
977
+ * The full state ephemeris as a flat row-major `Float64Array` of length
978
+ * `6 * epochCount`, each row `[x, y, z, vx, vy, vz]` (km, km/s).
979
+ */
980
+ readonly states: Float64Array;
981
+ /**
982
+ * The output epochs (TDB seconds), as a `Float64Array` of length `epochCount`.
983
+ */
984
+ readonly timesS: Float64Array;
985
+ /**
986
+ * ECI velocities, km/s, flat `[vx0, vy0, vz0, ...]`, length `3 * epochCount`.
987
+ */
988
+ readonly velocityKmS: Float64Array;
989
+ }
990
+
991
+ /**
992
+ * A fault-detection-and-exclusion result: the surviving solution, the excluded
993
+ * satellites in exclusion order, and the number of exclusions performed.
994
+ */
995
+ export class FdeSolution {
996
+ private constructor();
997
+ free(): void;
998
+ [Symbol.dispose](): void;
999
+ /**
1000
+ * Excluded satellite tokens, in the order RAIM removed them.
1001
+ */
1002
+ readonly excluded: string[];
1003
+ /**
1004
+ * `[latRad, lonRad, heightM]` when geodetic output was requested.
1005
+ */
1006
+ readonly geodetic: Float64Array | undefined;
1007
+ /**
1008
+ * Number of exclusions performed before the set passed RAIM.
1009
+ */
1010
+ readonly iterations: number;
1011
+ /**
1012
+ * Surviving-solution ECEF position `[x, y, z]`, metres.
1013
+ */
1014
+ readonly positionM: Float64Array;
1015
+ /**
1016
+ * Post-fit residuals, metres, index-aligned to `usedSats`.
1017
+ */
1018
+ readonly residualsM: Float64Array;
1019
+ /**
1020
+ * Receiver clock bias, seconds.
1021
+ */
1022
+ readonly rxClockS: number;
1023
+ /**
1024
+ * Satellite tokens used in the surviving solution, ascending.
1025
+ */
1026
+ readonly usedSats: string[];
1027
+ }
1028
+
1029
+ /**
1030
+ * A batch of transformed states from [`temeToGcrs`]: flat row-major
1031
+ * `positionKm` and `velocityKmS` `Float64Array`s, each length `3 * epochCount`.
1032
+ */
1033
+ export class FrameStates {
1034
+ private constructor();
1035
+ free(): void;
1036
+ [Symbol.dispose](): void;
1037
+ /**
1038
+ * Number of states in the batch.
1039
+ */
1040
+ readonly epochCount: number;
1041
+ /**
1042
+ * Transformed positions, kilometres, flat row-major `(n, 3)`.
1043
+ */
1044
+ readonly positionKm: Float64Array;
1045
+ /**
1046
+ * Transformed velocities, km/s, flat row-major `(n, 3)`.
1047
+ */
1048
+ readonly velocityKmS: Float64Array;
1049
+ }
1050
+
1051
+ /**
1052
+ * One GLONASS broadcast state-vector record. `toeUtcJ2000S` is UTC seconds past
1053
+ * J2000; position is PZ-90.11 ECEF metres, velocity m/s, acceleration m/s^2.
1054
+ */
1055
+ export class GlonassRecordJs {
1056
+ private constructor();
1057
+ free(): void;
1058
+ [Symbol.dispose](): void;
1059
+ /**
1060
+ * Lunisolar acceleration `[ax, ay, az]`, metres per second squared.
1061
+ */
1062
+ readonly accelerationMS2: Float64Array;
1063
+ /**
1064
+ * Broadcast clock bias, seconds.
1065
+ */
1066
+ readonly clockBiasS: number;
1067
+ /**
1068
+ * FDMA frequency-channel number.
1069
+ */
1070
+ readonly freqChannel: number;
1071
+ /**
1072
+ * Relative frequency offset.
1073
+ */
1074
+ readonly gammaN: number;
1075
+ /**
1076
+ * PZ-90.11 ECEF position `[x, y, z]`, metres.
1077
+ */
1078
+ readonly positionM: Float64Array;
1079
+ /**
1080
+ * RINEX satellite token such as `"R10"`.
1081
+ */
1082
+ readonly satellite: string;
1083
+ /**
1084
+ * Satellite health; 0 is healthy.
1085
+ */
1086
+ readonly svHealth: number;
1087
+ /**
1088
+ * Reference epoch, UTC seconds past J2000.
1089
+ */
1090
+ readonly toeUtcJ2000S: number;
1091
+ /**
1092
+ * PZ-90.11 ECEF velocity `[vx, vy, vz]`, metres per second.
1093
+ */
1094
+ readonly velocityMS: Float64Array;
1095
+ }
1096
+
1097
+ /**
1098
+ * A GNSS constellation. The JS value matches the variant order below.
1099
+ */
1100
+ export enum GnssSystem {
1101
+ /**
1102
+ * GPS, RINEX letter `G`.
1103
+ */
1104
+ Gps = 0,
1105
+ /**
1106
+ * GLONASS, RINEX letter `R`.
1107
+ */
1108
+ Glonass = 1,
1109
+ /**
1110
+ * Galileo, RINEX letter `E`.
1111
+ */
1112
+ Galileo = 2,
1113
+ /**
1114
+ * BeiDou, RINEX letter `C`.
1115
+ */
1116
+ BeiDou = 3,
1117
+ /**
1118
+ * QZSS, RINEX letter `J`.
1119
+ */
1120
+ Qzss = 4,
1121
+ /**
1122
+ * NavIC, RINEX letter `I`.
1123
+ */
1124
+ Navic = 5,
1125
+ /**
1126
+ * SBAS, RINEX letter `S`.
1127
+ */
1128
+ Sbas = 6,
1129
+ }
1130
+
1131
+ /**
1132
+ * A GNSS week number plus time-of-week, tagged by constellation.
1133
+ */
1134
+ export class GnssWeekTow {
1135
+ free(): void;
1136
+ [Symbol.dispose](): void;
1137
+ /**
1138
+ * Create a week/TOW. Throws a `RangeError` on an invalid value.
1139
+ */
1140
+ constructor(system: TimeScale, week: number, tow_s: number);
1141
+ /**
1142
+ * Normalize so `towS` lands in `[0, 604800)`, carrying whole weeks into
1143
+ * `week`. Negative `towS` borrows from the week count.
1144
+ */
1145
+ normalized(): GnssWeekTow;
1146
+ /**
1147
+ * Apply a 1024-week rollover count to recover the continuous week number.
1148
+ */
1149
+ unrolledWeek(rollovers: number): number;
1150
+ /**
1151
+ * The constellation/system whose week/TOW convention this uses.
1152
+ */
1153
+ readonly system: TimeScale;
1154
+ /**
1155
+ * Time of week, seconds, nominally `[0, 604800)`.
1156
+ */
1157
+ readonly towS: number;
1158
+ /**
1159
+ * Week number (constellation-native, may have rolled over).
1160
+ */
1161
+ readonly week: number;
1162
+ }
1163
+
1164
+ /**
1165
+ * A geodetic ground station: WGS84 latitude/longitude in degrees, altitude in
1166
+ * metres. Pass to [`Tle.lookAngles`] / [`Tle.findPasses`].
1167
+ */
1168
+ export class GroundStation {
1169
+ free(): void;
1170
+ [Symbol.dispose](): void;
1171
+ /**
1172
+ * Create a ground station. `altitudeM` defaults to 0.
1173
+ */
1174
+ constructor(latitude_deg: number, longitude_deg: number, altitude_m?: number | null);
1175
+ readonly altitudeM: number;
1176
+ readonly latitudeDeg: number;
1177
+ readonly longitudeDeg: number;
1178
+ }
1179
+
1180
+ /**
1181
+ * A point in time, tagged UTC, with the precise time scales resolved.
1182
+ *
1183
+ * Construct from a unix-microsecond UTC stamp (a `bigint`) or from UTC calendar
1184
+ * fields. The resolved TT/UT1/TDB Julian dates, sidereal time, and
1185
+ * precession/nutation are exposed as read-only properties and methods, all from
1186
+ * the engine's parity-critical pipeline.
1187
+ */
1188
+ export class Instant {
1189
+ private constructor();
1190
+ free(): void;
1191
+ [Symbol.dispose](): void;
1192
+ /**
1193
+ * Build an instant from a unix-microsecond UTC stamp.
1194
+ */
1195
+ static fromUnixMicros(unix_micros: bigint): Instant;
1196
+ /**
1197
+ * Build an instant from UTC calendar fields. `second` may be fractional and
1198
+ * is held to microsecond resolution. Throws a `RangeError` on an
1199
+ * out-of-range calendar field.
1200
+ */
1201
+ static fromUtc(year: number, month: number, day: number, hour?: number | null, minute?: number | null, second?: number | null): Instant;
1202
+ /**
1203
+ * Greenwich Apparent Sidereal Time, radians in `[0, 2pi)`.
1204
+ */
1205
+ gastRadians(): number;
1206
+ /**
1207
+ * Greenwich Mean Sidereal Time, radians in `[0, 2pi)`.
1208
+ */
1209
+ gmstRadians(): number;
1210
+ /**
1211
+ * IAU 2000A nutation in longitude and obliquity `[dpsi, deps]`, radians,
1212
+ * as a `Float64Array` of length 2.
1213
+ */
1214
+ nutationAngles(): Float64Array;
1215
+ /**
1216
+ * IAU 2000A nutation rotation matrix as a flat row-major `Float64Array` of
1217
+ * length 9 (3-by-3).
1218
+ */
1219
+ nutationMatrix(): Float64Array;
1220
+ /**
1221
+ * IAU 2006 precession rotation matrix as a flat row-major `Float64Array` of
1222
+ * length 9 (3-by-3).
1223
+ */
1224
+ precessionMatrix(): Float64Array;
1225
+ /**
1226
+ * Delta-T (TT minus UT1), seconds.
1227
+ */
1228
+ readonly deltaTSeconds: number;
1229
+ /**
1230
+ * The shared integer Julian-day boundary (TAI-aligned).
1231
+ */
1232
+ readonly jdWhole: number;
1233
+ /**
1234
+ * IAU mean obliquity of the ecliptic, radians.
1235
+ */
1236
+ readonly meanObliquityRadians: number;
1237
+ /**
1238
+ * TDB day fraction relative to `jdWhole`.
1239
+ */
1240
+ readonly tdbFraction: number;
1241
+ /**
1242
+ * Full Barycentric Dynamical Time (TDB) Julian date.
1243
+ */
1244
+ readonly tdbJd: number;
1245
+ /**
1246
+ * The two-part TDB Julian date (`jdWhole`, `tdbFraction`).
1247
+ */
1248
+ readonly tdbJdSplit: JulianDate;
1249
+ /**
1250
+ * TT day fraction relative to `jdWhole`.
1251
+ */
1252
+ readonly ttFraction: number;
1253
+ /**
1254
+ * Full Terrestrial Time (TT) Julian date.
1255
+ */
1256
+ readonly ttJd: number;
1257
+ /**
1258
+ * The two-part TT Julian date (`jdWhole`, `ttFraction`).
1259
+ */
1260
+ readonly ttJdSplit: JulianDate;
1261
+ /**
1262
+ * The unix-microsecond UTC stamp backing this instant.
1263
+ */
1264
+ readonly unixMicros: bigint;
1265
+ /**
1266
+ * UT1 day fraction relative to `jdWhole`.
1267
+ */
1268
+ readonly ut1Fraction: number;
1269
+ /**
1270
+ * Full UT1 Julian date.
1271
+ */
1272
+ readonly ut1Jd: number;
1273
+ /**
1274
+ * The two-part UT1 Julian date (`jdWhole`, `ut1Fraction`).
1275
+ */
1276
+ readonly ut1JdSplit: JulianDate;
1277
+ }
1278
+
1279
+ /**
1280
+ * A parsed IONEX vertical-TEC product. Create with [`load_ionex`].
1281
+ */
1282
+ export class Ionex {
1283
+ private constructor();
1284
+ free(): void;
1285
+ [Symbol.dispose](): void;
1286
+ /**
1287
+ * IONEX slant ionospheric group delay, positive metres.
1288
+ *
1289
+ * Receiver latitude/longitude and satellite azimuth/elevation are degrees
1290
+ * (latitude positive north, longitude positive east, azimuth clockwise
1291
+ * from north). The pierce point rides on the IONEX shell, so no receiver
1292
+ * height enters. `epochJ2000S` is an integer number of seconds since J2000.
1293
+ * `frequencyHz` is the carrier the dispersive delay is reported on. Throws
1294
+ * a `RangeError` on non-finite input and an `Error` on out-of-range input.
1295
+ */
1296
+ slantDelay(lat_deg: number, lon_deg: number, azimuth_deg: number, elevation_deg: number, epoch_j2000_s: number, frequency_hz: number): number;
1297
+ /**
1298
+ * Mean Earth radius used by the geometry, kilometres.
1299
+ */
1300
+ readonly baseRadiusKm: number;
1301
+ /**
1302
+ * The IONEX `EXPONENT` header field; the TEC scale is `10^exponent`.
1303
+ */
1304
+ readonly exponent: number;
1305
+ /**
1306
+ * Latitude node values, degrees, as a `Float64Array`, descending
1307
+ * (north-to-south).
1308
+ */
1309
+ readonly latNodesDeg: Float64Array;
1310
+ /**
1311
+ * Longitude node values, degrees, as a `Float64Array`, ascending
1312
+ * (west-to-east).
1313
+ */
1314
+ readonly lonNodesDeg: Float64Array;
1315
+ /**
1316
+ * Map epochs as seconds since J2000, ascending, as a `Float64Array`. This
1317
+ * is the exact axis [`Ionex.slantDelay`] brackets against.
1318
+ */
1319
+ readonly mapEpochsJ2000S: Float64Array;
1320
+ /**
1321
+ * Single-layer shell height, kilometres.
1322
+ */
1323
+ readonly shellHeightKm: number;
1324
+ }
1325
+
1326
+ /**
1327
+ * A staleness-selected IONEX product plus its [`StalenessMetadata`]. The inner
1328
+ * product is the present product for an exact selection or a diurnal-shifted
1329
+ * copy for a degraded one; either way `slantDelay` evaluates the standard slant
1330
+ * delay on it.
1331
+ */
1332
+ export class IonexSelection {
1333
+ private constructor();
1334
+ free(): void;
1335
+ [Symbol.dispose](): void;
1336
+ /**
1337
+ * Slant ionospheric group delay, positive metres, from the selected product.
1338
+ * Same degree-valued geometry as [`Ionex.slantDelay`]; for an exact
1339
+ * selection the result is bit-for-bit identical to evaluating the caller's
1340
+ * product directly.
1341
+ */
1342
+ slantDelay(lat_deg: number, lon_deg: number, azimuth_deg: number, elevation_deg: number, epoch_j2000_s: number, frequency_hz: number): number;
1343
+ /**
1344
+ * The usable IONEX product as a standalone [`Ionex`] handle: the present
1345
+ * product for an exact selection, or the diurnal-shifted copy.
1346
+ */
1347
+ readonly ionex: Ionex;
1348
+ /**
1349
+ * The staleness metadata as a plain object (see [`StalenessMetadataJs`]).
1350
+ */
1351
+ readonly metadata: any;
1352
+ }
1353
+
1354
+ /**
1355
+ * Broadcast ionosphere coefficients parsed from a RINEX NAV header.
1356
+ */
1357
+ export class IonoCorrectionsJs {
1358
+ private constructor();
1359
+ free(): void;
1360
+ [Symbol.dispose](): void;
1361
+ /**
1362
+ * BeiDou Klobuchar coefficients, if the header has BDSA and BDSB.
1363
+ */
1364
+ readonly beidou: KlobucharAlphaBetaJs | undefined;
1365
+ /**
1366
+ * GPS Klobuchar coefficients, if the header has GPSA and GPSB.
1367
+ */
1368
+ readonly gps: KlobucharAlphaBetaJs | undefined;
1369
+ }
1370
+
1371
+ /**
1372
+ * Result of combining two pseudorange bands into ionosphere-free ranges.
1373
+ */
1374
+ export class IonoFreePseudorangeResult {
1375
+ private constructor();
1376
+ free(): void;
1377
+ [Symbol.dispose](): void;
1378
+ /**
1379
+ * Combined ionosphere-free ranges, metres, row-aligned with `combinedSats`.
1380
+ */
1381
+ readonly combinedM: Float64Array;
1382
+ /**
1383
+ * Satellite tokens with a combined ionosphere-free range, sorted.
1384
+ */
1385
+ readonly combinedSats: string[];
1386
+ /**
1387
+ * Drop reasons row-aligned with `droppedSats`.
1388
+ */
1389
+ readonly droppedReasons: any[];
1390
+ /**
1391
+ * Satellite tokens dropped from the combination, sorted.
1392
+ */
1393
+ readonly droppedSats: string[];
1394
+ }
1395
+
1396
+ /**
1397
+ * Hatch-smoothed ionosphere-free code output for one epoch.
1398
+ */
1399
+ export class IonoFreeSmoothResult {
1400
+ private constructor();
1401
+ free(): void;
1402
+ [Symbol.dispose](): void;
1403
+ /**
1404
+ * Instantaneous ionosphere-free carrier phase, metres, or `undefined`.
1405
+ */
1406
+ readonly lIfM: number | undefined;
1407
+ /**
1408
+ * Instantaneous ionosphere-free code, metres, or `undefined`.
1409
+ */
1410
+ readonly pIfM: number | undefined;
1411
+ /**
1412
+ * Smoothed ionosphere-free code pseudorange, metres, or `undefined`.
1413
+ */
1414
+ readonly pSmoothM: number | undefined;
1415
+ /**
1416
+ * True when a prior running window was reset by a slip.
1417
+ */
1418
+ readonly reset: boolean;
1419
+ /**
1420
+ * Hatch window length used at this epoch.
1421
+ */
1422
+ readonly window: number;
1423
+ }
1424
+
1425
+ /**
1426
+ * A two-part Julian date: an integer-day boundary plus a residual fraction,
1427
+ * preserving sub-microsecond precision across the Julian-date range.
1428
+ */
1429
+ export class JulianDate {
1430
+ private constructor();
1431
+ free(): void;
1432
+ [Symbol.dispose](): void;
1433
+ /**
1434
+ * Residual day fraction relative to `whole`.
1435
+ */
1436
+ readonly fraction: number;
1437
+ /**
1438
+ * The recombined single-`number` Julian date (`whole + fraction`).
1439
+ */
1440
+ readonly jd: number;
1441
+ /**
1442
+ * Integer-day boundary (typically `*.0` or `*.5`).
1443
+ */
1444
+ readonly whole: number;
1445
+ }
1446
+
1447
+ /**
1448
+ * Broadcast Keplerian orbital elements. Units are SI: angles in radians,
1449
+ * correction terms in radians or metres, `toeSow` in seconds of week.
1450
+ */
1451
+ export class KeplerianElementsJs {
1452
+ private constructor();
1453
+ free(): void;
1454
+ [Symbol.dispose](): void;
1455
+ readonly cic: number;
1456
+ readonly cis: number;
1457
+ readonly crc: number;
1458
+ readonly crs: number;
1459
+ readonly cuc: number;
1460
+ readonly cus: number;
1461
+ readonly deltaN: number;
1462
+ readonly e: number;
1463
+ readonly i0: number;
1464
+ readonly idot: number;
1465
+ readonly m0: number;
1466
+ readonly omega: number;
1467
+ readonly omega0: number;
1468
+ readonly omegaDot: number;
1469
+ readonly sqrtA: number;
1470
+ readonly toeSow: number;
1471
+ }
1472
+
1473
+ /**
1474
+ * Klobuchar alpha and beta ionosphere coefficients (each a 4-element array).
1475
+ */
1476
+ export class KlobucharAlphaBetaJs {
1477
+ private constructor();
1478
+ free(): void;
1479
+ [Symbol.dispose](): void;
1480
+ /**
1481
+ * Alpha coefficients as a `Float64Array` of length 4.
1482
+ */
1483
+ readonly alpha: Float64Array;
1484
+ /**
1485
+ * Beta coefficients as a `Float64Array` of length 4.
1486
+ */
1487
+ readonly beta: Float64Array;
1488
+ }
1489
+
1490
+ /**
1491
+ * Provenance and coverage of the embedded IERS leap-second (TAI-UTC) table.
1492
+ */
1493
+ export class LeapSecondTable {
1494
+ private constructor();
1495
+ free(): void;
1496
+ [Symbol.dispose](): void;
1497
+ /**
1498
+ * Number of entries in the table.
1499
+ */
1500
+ readonly entries: number;
1501
+ /**
1502
+ * Modified Julian date of the first table entry.
1503
+ */
1504
+ readonly firstMjd: number;
1505
+ /**
1506
+ * Modified Julian date of the last table entry.
1507
+ */
1508
+ readonly lastMjd: number;
1509
+ /**
1510
+ * Human-readable provenance string for the table.
1511
+ */
1512
+ readonly source: string;
1513
+ }
1514
+
1515
+ /**
1516
+ * Link-budget inputs for [`LinkBudget.margin`].
1517
+ */
1518
+ export class LinkBudget {
1519
+ free(): void;
1520
+ [Symbol.dispose](): void;
1521
+ /**
1522
+ * Build a link-budget input object. `otherLossesDb` defaults to 0. Throws a
1523
+ * `RangeError` on a non-finite field.
1524
+ */
1525
+ constructor(eirp_dbw: number, fspl_db: number, receiver_gt_dbk: number, required_cn0_dbhz: number, other_losses_db?: number | null);
1526
+ /**
1527
+ * Transmitter EIRP, dBW.
1528
+ */
1529
+ readonly eirpDbw: number;
1530
+ /**
1531
+ * Free-space path loss, dB.
1532
+ */
1533
+ readonly fsplDb: number;
1534
+ /**
1535
+ * Link margin, dB, for this budget.
1536
+ */
1537
+ readonly margin: number;
1538
+ /**
1539
+ * Sum of miscellaneous losses, dB.
1540
+ */
1541
+ readonly otherLossesDb: number;
1542
+ /**
1543
+ * Receiver figure of merit G/T, dB/K.
1544
+ */
1545
+ readonly receiverGtDbk: number;
1546
+ /**
1547
+ * Required C/N0 threshold, dB-Hz.
1548
+ */
1549
+ readonly requiredCn0Dbhz: number;
1550
+ }
1551
+
1552
+ /**
1553
+ * Topocentric look angles from a batched arc, each a `Float64Array` of length
1554
+ * `epochCount`.
1555
+ */
1556
+ export class LookAngles {
1557
+ private constructor();
1558
+ free(): void;
1559
+ [Symbol.dispose](): void;
1560
+ /**
1561
+ * Azimuth, degrees clockwise from north.
1562
+ */
1563
+ readonly azimuthDeg: Float64Array;
1564
+ /**
1565
+ * Elevation, degrees above the horizon.
1566
+ */
1567
+ readonly elevationDeg: Float64Array;
1568
+ /**
1569
+ * Number of epochs evaluated.
1570
+ */
1571
+ readonly epochCount: number;
1572
+ /**
1573
+ * Slant range, kilometres.
1574
+ */
1575
+ readonly rangeKm: Float64Array;
1576
+ }
1577
+
1578
+ /**
1579
+ * Niell hydrostatic and wet mapping factors, dimensionless.
1580
+ */
1581
+ export class MappingFactors {
1582
+ private constructor();
1583
+ free(): void;
1584
+ [Symbol.dispose](): void;
1585
+ /**
1586
+ * Hydrostatic mapping factor (includes the height correction).
1587
+ */
1588
+ readonly dry: number;
1589
+ /**
1590
+ * Wet mapping factor.
1591
+ */
1592
+ readonly wet: number;
1593
+ }
1594
+
1595
+ /**
1596
+ * Which supported RINEX NAV message a broadcast record carries.
1597
+ */
1598
+ export enum NavMessage {
1599
+ /**
1600
+ * GPS legacy LNAV.
1601
+ */
1602
+ GpsLnav = 0,
1603
+ /**
1604
+ * Galileo I/NAV.
1605
+ */
1606
+ GalileoInav = 1,
1607
+ /**
1608
+ * Galileo F/NAV.
1609
+ */
1610
+ GalileoFnav = 2,
1611
+ /**
1612
+ * BeiDou D1.
1613
+ */
1614
+ BeidouD1 = 3,
1615
+ /**
1616
+ * BeiDou D2.
1617
+ */
1618
+ BeidouD2 = 4,
1619
+ }
1620
+
1621
+ /**
1622
+ * One RINEX OBS epoch. Observation values are read through `RinexObs` methods.
1623
+ */
1624
+ export class ObsEpoch {
1625
+ private constructor();
1626
+ free(): void;
1627
+ [Symbol.dispose](): void;
1628
+ /**
1629
+ * Civil epoch in the file time scale.
1630
+ */
1631
+ readonly epoch: ObsEpochTime;
1632
+ /**
1633
+ * RINEX epoch flag. `0` is a normal observation epoch.
1634
+ */
1635
+ readonly flag: number;
1636
+ /**
1637
+ * Number of satellites present at this epoch.
1638
+ */
1639
+ readonly satelliteCount: number;
1640
+ /**
1641
+ * Satellite tokens present at this epoch.
1642
+ */
1643
+ readonly satellites: string[];
1644
+ }
1645
+
1646
+ /**
1647
+ * Civil epoch from a RINEX observation file, in the file time scale.
1648
+ */
1649
+ export class ObsEpochTime {
1650
+ private constructor();
1651
+ free(): void;
1652
+ [Symbol.dispose](): void;
1653
+ /**
1654
+ * Calendar day of month, 1..31.
1655
+ */
1656
+ readonly day: number;
1657
+ /**
1658
+ * Hour of day, 0..23.
1659
+ */
1660
+ readonly hour: number;
1661
+ /**
1662
+ * Minute of hour, 0..59.
1663
+ */
1664
+ readonly minute: number;
1665
+ /**
1666
+ * Calendar month, 1..12.
1667
+ */
1668
+ readonly month: number;
1669
+ /**
1670
+ * Fractional seconds of minute.
1671
+ */
1672
+ readonly second: number;
1673
+ /**
1674
+ * Calendar year.
1675
+ */
1676
+ readonly year: number;
1677
+ }
1678
+
1679
+ /**
1680
+ * Parsed RINEX OBS header.
1681
+ */
1682
+ export class ObsHeader {
1683
+ private constructor();
1684
+ free(): void;
1685
+ [Symbol.dispose](): void;
1686
+ /**
1687
+ * Observation codes for a constellation, in RINEX header order.
1688
+ */
1689
+ obsCodes(system: GnssSystem): string[];
1690
+ /**
1691
+ * Antenna H/E/N offset `[h, e, n]`, metres, or `undefined`.
1692
+ */
1693
+ readonly antennaDeltaHenM: Float64Array | undefined;
1694
+ /**
1695
+ * Surveyed a-priori ECEF position `[x, y, z]`, metres, or `undefined`.
1696
+ */
1697
+ readonly approxPositionM: Float64Array | undefined;
1698
+ /**
1699
+ * GLONASS slot/frequency-channel pairs, flat `[slot0, chan0, slot1, ...]`.
1700
+ */
1701
+ readonly glonassSlots: Int32Array;
1702
+ /**
1703
+ * Nominal epoch interval, seconds, or `undefined`.
1704
+ */
1705
+ readonly intervalS: number | undefined;
1706
+ /**
1707
+ * Marker or station name, or `undefined`.
1708
+ */
1709
+ readonly markerName: string | undefined;
1710
+ /**
1711
+ * Carrier phase-shift records, in header order.
1712
+ */
1713
+ readonly phaseShifts: ObsPhaseShift[];
1714
+ /**
1715
+ * Constellations with declared observation-code lists.
1716
+ */
1717
+ readonly systems: any[];
1718
+ /**
1719
+ * First observation epoch, or `undefined`.
1720
+ */
1721
+ readonly timeOfFirstObsEpoch: ObsEpochTime | undefined;
1722
+ /**
1723
+ * Time scale of the first observation epoch, or `undefined`.
1724
+ */
1725
+ readonly timeOfFirstObsScale: TimeScale | undefined;
1726
+ /**
1727
+ * RINEX version, for example `3.05`.
1728
+ */
1729
+ readonly version: number;
1730
+ }
1731
+
1732
+ /**
1733
+ * One `SYS / PHASE SHIFT` record from a RINEX OBS header.
1734
+ */
1735
+ export class ObsPhaseShift {
1736
+ private constructor();
1737
+ free(): void;
1738
+ [Symbol.dispose](): void;
1739
+ /**
1740
+ * RINEX carrier observation code, such as `L1C`.
1741
+ */
1742
+ readonly code: string;
1743
+ /**
1744
+ * Phase correction in carrier cycles.
1745
+ */
1746
+ readonly correctionCycles: number;
1747
+ /**
1748
+ * Satellite tokens this correction is restricted to. Empty means all.
1749
+ */
1750
+ readonly satellites: string[];
1751
+ /**
1752
+ * Constellation this correction applies to.
1753
+ */
1754
+ readonly system: GnssSystem;
1755
+ }
1756
+
1757
+ /**
1758
+ * Optional observation-code allow-list for raw and carrier-phase rows. Build
1759
+ * with `new ObservationFilter()` then chain `.withSystem(system, codes)`.
1760
+ */
1761
+ export class ObservationFilter {
1762
+ free(): void;
1763
+ [Symbol.dispose](): void;
1764
+ /**
1765
+ * An empty filter that keeps every parsed observation.
1766
+ */
1767
+ constructor();
1768
+ /**
1769
+ * Return a copy with one constellation's code allow-list set.
1770
+ */
1771
+ withSystem(system: GnssSystem, codes: string[]): ObservationFilter;
1772
+ }
1773
+
1774
+ /**
1775
+ * Observation kind inferred from a RINEX observation code.
1776
+ */
1777
+ export enum ObservationKind {
1778
+ /**
1779
+ * Code pseudorange, metres.
1780
+ */
1781
+ Pseudorange = 0,
1782
+ /**
1783
+ * Carrier phase, cycles.
1784
+ */
1785
+ CarrierPhase = 1,
1786
+ /**
1787
+ * Doppler, hertz.
1788
+ */
1789
+ Doppler = 2,
1790
+ /**
1791
+ * Signal strength, dB-Hz.
1792
+ */
1793
+ SignalStrength = 3,
1794
+ /**
1795
+ * Unknown leading RINEX code letter.
1796
+ */
1797
+ Unknown = 4,
1798
+ }
1799
+
1800
+ /**
1801
+ * Flattened raw observation rows from one RINEX OBS epoch. Numeric arrays are
1802
+ * row-aligned with `satellites`, `codes`, and `kinds`; blank RINEX values, LLI,
1803
+ * and SSI are `NaN`.
1804
+ */
1805
+ export class ObservationValueSeries {
1806
+ private constructor();
1807
+ free(): void;
1808
+ [Symbol.dispose](): void;
1809
+ /**
1810
+ * RINEX observation codes, row-aligned with all arrays.
1811
+ */
1812
+ readonly codes: string[];
1813
+ /**
1814
+ * Observation kinds, row-aligned with all arrays.
1815
+ */
1816
+ readonly kinds: any[];
1817
+ /**
1818
+ * Number of flattened rows.
1819
+ */
1820
+ readonly length: number;
1821
+ /**
1822
+ * RINEX LLI values, `NaN` for blanks.
1823
+ */
1824
+ readonly lli: Float64Array;
1825
+ /**
1826
+ * Satellite tokens, row-aligned with all arrays.
1827
+ */
1828
+ readonly satellites: string[];
1829
+ /**
1830
+ * RINEX SSI values, `NaN` for blanks.
1831
+ */
1832
+ readonly ssi: Float64Array;
1833
+ /**
1834
+ * Parsed observation values, as a `Float64Array`.
1835
+ */
1836
+ readonly values: Float64Array;
1837
+ }
1838
+
1839
+ /**
1840
+ * A canonical, format-agnostic CCSDS Orbit Mean-Elements Message.
1841
+ */
1842
+ export class Omm {
1843
+ free(): void;
1844
+ [Symbol.dispose](): void;
1845
+ /**
1846
+ * Build an OMM. The eight leading arguments are required; `meta` carries the
1847
+ * optional fields (`ccsdsOmmVers`, `creationDate`, ... `bstar`,
1848
+ * `meanMotionDot`, `meanMotionDdot`).
1849
+ */
1850
+ constructor(epoch: OmmEpoch, mean_motion: number, eccentricity: number, inclination_deg: number, ra_of_asc_node_deg: number, arg_of_pericenter_deg: number, mean_anomaly_deg: number, norad_cat_id: number, meta: any);
1851
+ /**
1852
+ * Encode this OMM to CCSDS/CelesTrak JSON text.
1853
+ */
1854
+ toJsonString(): string;
1855
+ /**
1856
+ * Encode this OMM to CCSDS OMM KVN text.
1857
+ */
1858
+ toKvnString(): string;
1859
+ /**
1860
+ * Encode this OMM to CCSDS OMM XML text.
1861
+ */
1862
+ toXmlString(): string;
1863
+ /**
1864
+ * Argument of pericenter, degrees.
1865
+ */
1866
+ readonly argOfPericenterDeg: number;
1867
+ /**
1868
+ * B* drag term.
1869
+ */
1870
+ readonly bstar: number;
1871
+ /**
1872
+ * CCSDS OMM version string.
1873
+ */
1874
+ readonly ccsdsOmmVers: string;
1875
+ /**
1876
+ * Center name.
1877
+ */
1878
+ readonly centerName: string | undefined;
1879
+ /**
1880
+ * Classification type.
1881
+ */
1882
+ readonly classificationType: string;
1883
+ /**
1884
+ * Creation date.
1885
+ */
1886
+ readonly creationDate: string | undefined;
1887
+ /**
1888
+ * Eccentricity.
1889
+ */
1890
+ readonly eccentricity: number;
1891
+ /**
1892
+ * Element set number.
1893
+ */
1894
+ readonly elementSetNo: number;
1895
+ /**
1896
+ * SGP4 ephemeris type.
1897
+ */
1898
+ readonly ephemerisType: number;
1899
+ /**
1900
+ * The epoch.
1901
+ */
1902
+ readonly epoch: OmmEpoch;
1903
+ /**
1904
+ * Inclination, degrees.
1905
+ */
1906
+ readonly inclinationDeg: number;
1907
+ /**
1908
+ * Mean anomaly, degrees.
1909
+ */
1910
+ readonly meanAnomalyDeg: number;
1911
+ /**
1912
+ * Mean-element theory.
1913
+ */
1914
+ readonly meanElementTheory: string | undefined;
1915
+ /**
1916
+ * Mean motion, rev/day.
1917
+ */
1918
+ readonly meanMotion: number;
1919
+ /**
1920
+ * Second derivative of mean motion.
1921
+ */
1922
+ readonly meanMotionDdot: number;
1923
+ /**
1924
+ * First derivative of mean motion.
1925
+ */
1926
+ readonly meanMotionDot: number;
1927
+ /**
1928
+ * NORAD catalog number.
1929
+ */
1930
+ readonly noradCatId: number;
1931
+ /**
1932
+ * Object id.
1933
+ */
1934
+ readonly objectId: string | undefined;
1935
+ /**
1936
+ * Object name.
1937
+ */
1938
+ readonly objectName: string | undefined;
1939
+ /**
1940
+ * Originator.
1941
+ */
1942
+ readonly originator: string | undefined;
1943
+ /**
1944
+ * Right ascension of the ascending node, degrees.
1945
+ */
1946
+ readonly raOfAscNodeDeg: number;
1947
+ /**
1948
+ * Reference frame.
1949
+ */
1950
+ readonly refFrame: string | undefined;
1951
+ /**
1952
+ * Revolution number at epoch.
1953
+ */
1954
+ readonly revAtEpoch: bigint;
1955
+ /**
1956
+ * Time system.
1957
+ */
1958
+ readonly timeSystem: string | undefined;
1959
+ }
1960
+
1961
+ /**
1962
+ * UTC calendar epoch carried by an OMM `EPOCH` field.
1963
+ */
1964
+ export class OmmEpoch {
1965
+ free(): void;
1966
+ [Symbol.dispose](): void;
1967
+ /**
1968
+ * Build an OMM epoch from UTC calendar fields. Throws a `RangeError` on an
1969
+ * out-of-range field.
1970
+ */
1971
+ constructor(year: number, month: number, day: number, hour: number, minute: number, second: number, microsecond: number);
1972
+ /**
1973
+ * Calendar day.
1974
+ */
1975
+ readonly day: number;
1976
+ /**
1977
+ * Hour of day.
1978
+ */
1979
+ readonly hour: number;
1980
+ /**
1981
+ * ISO-8601 epoch text with microsecond precision.
1982
+ */
1983
+ readonly iso8601: string;
1984
+ /**
1985
+ * Microsecond of second.
1986
+ */
1987
+ readonly microsecond: number;
1988
+ /**
1989
+ * Minute of hour.
1990
+ */
1991
+ readonly minute: number;
1992
+ /**
1993
+ * Calendar month.
1994
+ */
1995
+ readonly month: number;
1996
+ /**
1997
+ * Second of minute.
1998
+ */
1999
+ readonly second: number;
2000
+ /**
2001
+ * Calendar year.
2002
+ */
2003
+ readonly year: number;
2004
+ }
2005
+
2006
+ /**
2007
+ * Static integer-fixed PPP solution.
2008
+ */
2009
+ export class PppFixedSolution {
2010
+ private constructor();
2011
+ free(): void;
2012
+ [Symbol.dispose](): void;
2013
+ readonly codeRmsM: number;
2014
+ readonly converged: boolean;
2015
+ /**
2016
+ * Fixed ambiguities, integer cycles, as an id-keyed object.
2017
+ */
2018
+ readonly fixedAmbiguitiesCycles: any;
2019
+ /**
2020
+ * Fixed ambiguities, metres, as an id-keyed object.
2021
+ */
2022
+ readonly fixedAmbiguitiesM: any;
2023
+ /**
2024
+ * The float solution that seeded the integer search.
2025
+ */
2026
+ readonly floatSolution: PppFloatSolution;
2027
+ readonly integerCandidates: number;
2028
+ readonly integerRatio: number;
2029
+ /**
2030
+ * Integer ambiguity-fix status: `"Fixed"` or `"NotFixed"`.
2031
+ */
2032
+ readonly integerStatus: string;
2033
+ readonly iterations: number;
2034
+ readonly phaseRmsM: number;
2035
+ /**
2036
+ * ECEF position as a `Float64Array` `[x, y, z]`, metres.
2037
+ */
2038
+ readonly positionM: Float64Array;
2039
+ /**
2040
+ * Satellite tokens used in the accepted solution.
2041
+ */
2042
+ readonly usedSats: string[];
2043
+ readonly weightedRmsM: number;
2044
+ /**
2045
+ * Estimated zenith tropospheric delay residual, metres, or `undefined`.
2046
+ */
2047
+ readonly ztdResidualM: number | undefined;
2048
+ }
2049
+
2050
+ /**
2051
+ * Static float PPP solution.
2052
+ */
2053
+ export class PppFloatSolution {
2054
+ private constructor();
2055
+ free(): void;
2056
+ [Symbol.dispose](): void;
2057
+ /**
2058
+ * Float ambiguities, metres, as an id-keyed object.
2059
+ */
2060
+ readonly ambiguitiesM: any;
2061
+ readonly codeRmsM: number;
2062
+ readonly converged: boolean;
2063
+ readonly iterations: number;
2064
+ readonly phaseRmsM: number;
2065
+ /**
2066
+ * ECEF position as a `Float64Array` `[x, y, z]`, metres.
2067
+ */
2068
+ readonly positionM: Float64Array;
2069
+ /**
2070
+ * Satellite tokens used in the accepted solution.
2071
+ */
2072
+ readonly usedSats: string[];
2073
+ readonly weightedRmsM: number;
2074
+ /**
2075
+ * Estimated zenith tropospheric delay residual, metres, or `undefined`.
2076
+ */
2077
+ readonly ztdResidualM: number | undefined;
2078
+ }
2079
+
2080
+ /**
2081
+ * Reason a satellite was dropped from paired pseudorange combination.
2082
+ */
2083
+ export enum PseudorangeDropReason {
2084
+ /**
2085
+ * Present in band 2 only.
2086
+ */
2087
+ MissingBand1 = 0,
2088
+ /**
2089
+ * Present in band 1 only.
2090
+ */
2091
+ MissingBand2 = 1,
2092
+ /**
2093
+ * Repeated within at least one input band.
2094
+ */
2095
+ DuplicateObservation = 2,
2096
+ /**
2097
+ * Unsupported constellation or override band.
2098
+ */
2099
+ UnknownSystem = 3,
2100
+ }
2101
+
2102
+ /**
2103
+ * Flattened pseudorange rows from one RINEX OBS epoch. `satellites` is
2104
+ * row-aligned with `rangesM`; ranges are metres.
2105
+ */
2106
+ export class PseudorangeSeries {
2107
+ private constructor();
2108
+ free(): void;
2109
+ [Symbol.dispose](): void;
2110
+ /**
2111
+ * Number of rows.
2112
+ */
2113
+ readonly length: number;
2114
+ /**
2115
+ * Pseudorange values, metres, as a `Float64Array`.
2116
+ */
2117
+ readonly rangesM: Float64Array;
2118
+ /**
2119
+ * Satellite tokens, row-aligned with `rangesM`.
2120
+ */
2121
+ readonly satellites: string[];
2122
+ }
2123
+
2124
+ /**
2125
+ * RAIM weighting mode: either unit weights or per-satellite inverse-variance
2126
+ * weights (missing satellites default to unit weight).
2127
+ */
2128
+ export class RaimWeights {
2129
+ private constructor();
2130
+ free(): void;
2131
+ [Symbol.dispose](): void;
2132
+ /**
2133
+ * Per-satellite inverse-variance weights. `weights` must be positive and
2134
+ * finite and the same length as `satelliteIds`. Throws a `TypeError` on a
2135
+ * length mismatch and a `RangeError` on a non-positive weight.
2136
+ */
2137
+ static bySatellite(satellite_ids: string[], weights: Float64Array): RaimWeights;
2138
+ /**
2139
+ * Unit weights, equivalent to sigma = 1 m for every satellite.
2140
+ */
2141
+ static unit(): RaimWeights;
2142
+ /**
2143
+ * True when all satellites use unit weight.
2144
+ */
2145
+ readonly isUnit: boolean;
2146
+ /**
2147
+ * Satellite tokens for per-satellite weights, sorted by token.
2148
+ */
2149
+ readonly satelliteIds: string[];
2150
+ /**
2151
+ * Inverse-variance weights as a `Float64Array`, sorted by satellite token.
2152
+ */
2153
+ readonly weights: Float64Array;
2154
+ }
2155
+
2156
+ /**
2157
+ * A parsed RINEX clock product with satellite clock-bias interpolation.
2158
+ */
2159
+ export class RinexClock {
2160
+ private constructor();
2161
+ free(): void;
2162
+ [Symbol.dispose](): void;
2163
+ /**
2164
+ * Interpolate one satellite clock bias at a GPS-time civil epoch.
2165
+ * Returns `undefined` if the satellite or epoch coverage is absent.
2166
+ */
2167
+ clockS(satellite_id: string, epoch: ClockEpoch): number | undefined;
2168
+ /**
2169
+ * Interpolate one satellite clock bias at GPS seconds. Throws a
2170
+ * `RangeError` if `gpsSeconds` is non-finite.
2171
+ */
2172
+ clockSAtGpsSeconds(satellite_id: string, gps_seconds: number): number | undefined;
2173
+ /**
2174
+ * One satellite's clock series, or `undefined` if the satellite is absent.
2175
+ */
2176
+ seriesFor(satellite_id: string): ClockSeries | undefined;
2177
+ /**
2178
+ * Total number of parsed satellite clock samples.
2179
+ */
2180
+ readonly sampleCount: number;
2181
+ /**
2182
+ * Number of satellites with clock samples.
2183
+ */
2184
+ readonly satelliteCount: number;
2185
+ /**
2186
+ * Satellite tokens with at least one parsed `AS` clock sample.
2187
+ */
2188
+ readonly satellites: string[];
2189
+ /**
2190
+ * Per-satellite clock-bias series in satellite sort order.
2191
+ */
2192
+ readonly series: ClockSeries[];
2193
+ }
2194
+
2195
+ /**
2196
+ * A parsed RINEX 3/4 observation file.
2197
+ */
2198
+ export class RinexObs {
2199
+ private constructor();
2200
+ free(): void;
2201
+ [Symbol.dispose](): void;
2202
+ /**
2203
+ * Flatten carrier-phase values for one epoch.
2204
+ */
2205
+ carrierPhaseRows(epoch_index: number, filter?: ObservationFilter | null): CarrierPhaseSeries;
2206
+ /**
2207
+ * One epoch by zero-based index. Throws a `RangeError` if out of range.
2208
+ */
2209
+ epoch(epoch_index: number): ObsEpoch;
2210
+ /**
2211
+ * Observation codes for a constellation, in header order.
2212
+ */
2213
+ obsCodes(system: GnssSystem): string[];
2214
+ /**
2215
+ * Flatten raw observation values for one epoch.
2216
+ */
2217
+ observationValues(epoch_index: number, filter?: ObservationFilter | null): ObservationValueSeries;
2218
+ /**
2219
+ * Extract single-frequency pseudoranges for one epoch.
2220
+ */
2221
+ pseudoranges(epoch_index: number, policy?: SignalPolicy | null): PseudorangeSeries;
2222
+ /**
2223
+ * Number of parsed epoch records.
2224
+ */
2225
+ readonly epochCount: number;
2226
+ /**
2227
+ * Epoch records in file order.
2228
+ */
2229
+ readonly epochs: ObsEpoch[];
2230
+ /**
2231
+ * Parsed RINEX OBS header.
2232
+ */
2233
+ readonly header: ObsHeader;
2234
+ }
2235
+
2236
+ /**
2237
+ * Validated fixed RTK baseline solution.
2238
+ */
2239
+ export class RtkFixedSolution {
2240
+ private constructor();
2241
+ free(): void;
2242
+ [Symbol.dispose](): void;
2243
+ readonly converged: boolean;
2244
+ /**
2245
+ * Fixed (integer-resolved) baseline as a `Float64Array` `[dx, dy, dz]`, metres.
2246
+ */
2247
+ readonly fixedBaselineM: Float64Array;
2248
+ /**
2249
+ * The underlying float baseline as a `Float64Array` `[dx, dy, dz]`, metres.
2250
+ */
2251
+ readonly floatBaselineM: Float64Array;
2252
+ readonly integerCandidates: number;
2253
+ /**
2254
+ * Integer ambiguity ratio, or `undefined` when no ratio was computed.
2255
+ */
2256
+ readonly integerRatio: number | undefined;
2257
+ /**
2258
+ * Integer ambiguity-fix status: `"Fixed"` or `"NotFixed"`.
2259
+ */
2260
+ readonly integerStatus: string;
2261
+ }
2262
+
2263
+ /**
2264
+ * Static float RTK baseline solution.
2265
+ */
2266
+ export class RtkFloatSolution {
2267
+ private constructor();
2268
+ free(): void;
2269
+ [Symbol.dispose](): void;
2270
+ /**
2271
+ * Float single-difference ambiguities, metres, as an id-keyed object.
2272
+ */
2273
+ readonly ambiguitiesM: any;
2274
+ /**
2275
+ * Baseline (rover minus base) as a `Float64Array` `[dx, dy, dz]`, metres.
2276
+ */
2277
+ readonly baselineM: Float64Array;
2278
+ readonly codeRmsM: number;
2279
+ readonly converged: boolean;
2280
+ readonly iterations: number;
2281
+ readonly nObservations: number;
2282
+ readonly phaseRmsM: number;
2283
+ readonly weightedRmsM: number;
2284
+ }
2285
+
2286
+ /**
2287
+ * A satellite pass over a ground station: acquisition of signal, loss of
2288
+ * signal, culmination time (all unix microseconds UTC), and the elevation at
2289
+ * culmination.
2290
+ */
2291
+ export class SatellitePass {
2292
+ private constructor();
2293
+ free(): void;
2294
+ [Symbol.dispose](): void;
2295
+ /**
2296
+ * Acquisition of signal (rise above the mask), unix microseconds UTC.
2297
+ */
2298
+ readonly aosUnixUs: bigint;
2299
+ /**
2300
+ * Culmination (maximum elevation) time, unix microseconds UTC.
2301
+ */
2302
+ readonly culminationUnixUs: bigint;
2303
+ /**
2304
+ * Pass duration (LOS minus AOS), seconds.
2305
+ */
2306
+ readonly durationS: number;
2307
+ /**
2308
+ * Loss of signal (set below the mask), unix microseconds UTC.
2309
+ */
2310
+ readonly losUnixUs: bigint;
2311
+ /**
2312
+ * Elevation at culmination, degrees.
2313
+ */
2314
+ readonly maxElevationDeg: number;
2315
+ }
2316
+
2317
+ /**
2318
+ * Satellite-keyed measurement sigmas (metres) or inverse-variance weights.
2319
+ */
2320
+ export class SatelliteVector {
2321
+ private constructor();
2322
+ free(): void;
2323
+ [Symbol.dispose](): void;
2324
+ /**
2325
+ * Satellite tokens, sorted, row-aligned with `values`.
2326
+ */
2327
+ readonly satelliteIds: string[];
2328
+ /**
2329
+ * Per-satellite values as a `Float64Array`.
2330
+ */
2331
+ readonly values: Float64Array;
2332
+ }
2333
+
2334
+ /**
2335
+ * Per-constellation single-frequency pseudorange code-selection policy. Build
2336
+ * with `new SignalPolicy()` then chain `.withSystem(system, codes)`, or use
2337
+ * the static `defaultFor(version)`.
2338
+ */
2339
+ export class SignalPolicy {
2340
+ free(): void;
2341
+ [Symbol.dispose](): void;
2342
+ /**
2343
+ * The core default pseudorange policy for a RINEX version.
2344
+ */
2345
+ static defaultFor(version: number): SignalPolicy;
2346
+ /**
2347
+ * An empty policy with no constellation preferences.
2348
+ */
2349
+ constructor();
2350
+ /**
2351
+ * Return a copy with one constellation's preference list set.
2352
+ */
2353
+ withSystem(system: GnssSystem, codes: string[]): SignalPolicy;
2354
+ }
2355
+
2356
+ /**
2357
+ * Reason a carrier-phase arc split was flagged.
2358
+ */
2359
+ export enum SlipReason {
2360
+ /**
2361
+ * Loss-of-lock indicator bit 0 set on either band.
2362
+ */
2363
+ Lli = 0,
2364
+ /**
2365
+ * Gap to the previous usable sample exceeded the threshold.
2366
+ */
2367
+ DataGap = 1,
2368
+ /**
2369
+ * Geometry-free phase step exceeded the threshold.
2370
+ */
2371
+ GeometryFree = 2,
2372
+ /**
2373
+ * Melbourne-Wubbena step exceeded the threshold.
2374
+ */
2375
+ MelbourneWubbena = 3,
2376
+ }
2377
+
2378
+ /**
2379
+ * Cycle-slip classification for one input epoch.
2380
+ */
2381
+ export class SlipResult {
2382
+ private constructor();
2383
+ free(): void;
2384
+ [Symbol.dispose](): void;
2385
+ /**
2386
+ * Current geometry-free phase, metres, or `undefined`.
2387
+ */
2388
+ readonly gfM: number | undefined;
2389
+ /**
2390
+ * Current Melbourne-Wubbena combination, metres, or `undefined`.
2391
+ */
2392
+ readonly mwM: number | undefined;
2393
+ /**
2394
+ * Slip reasons in deterministic API order.
2395
+ */
2396
+ readonly reasons: any[];
2397
+ /**
2398
+ * Whether the epoch was skipped because a frequency was unavailable.
2399
+ */
2400
+ readonly skipped: boolean;
2401
+ /**
2402
+ * Whether any slip reason was flagged.
2403
+ */
2404
+ readonly slip: boolean;
2405
+ }
2406
+
2407
+ /**
2408
+ * Hatch-smoothed single-frequency code output for one epoch.
2409
+ */
2410
+ export class SmoothCodeResult {
2411
+ private constructor();
2412
+ free(): void;
2413
+ [Symbol.dispose](): void;
2414
+ /**
2415
+ * Smoothed code pseudorange, metres, or `undefined`.
2416
+ */
2417
+ readonly pSmoothM: number | undefined;
2418
+ /**
2419
+ * True when a prior running window was reset by a slip.
2420
+ */
2421
+ readonly reset: boolean;
2422
+ /**
2423
+ * Hatch window length used at this epoch.
2424
+ */
2425
+ readonly window: number;
2426
+ }
2427
+
2428
+ /**
2429
+ * A receiver solution paired with the provenance of the ephemeris that produced
2430
+ * it. Returned by [`solveWithFallback`].
2431
+ */
2432
+ export class SourcedSolution {
2433
+ private constructor();
2434
+ free(): void;
2435
+ [Symbol.dispose](): void;
2436
+ /**
2437
+ * The solved receiver position / clock as an [`SppSolution`].
2438
+ */
2439
+ readonly solution: SppSolution;
2440
+ /**
2441
+ * Which ephemeris source produced the fix, with its staleness / rejection
2442
+ * provenance, as a plain object (see [`FixSourceJs`]).
2443
+ */
2444
+ readonly source: any;
2445
+ }
2446
+
2447
+ /**
2448
+ * A parsed SP3-c or SP3-d precise-ephemeris product.
2449
+ *
2450
+ * Create with [`load_sp3`]. Query interpolated states with
2451
+ * [`Sp3.interpolate`], the exact parsed records with [`Sp3.state`], the node
2452
+ * epoch axis with [`Sp3.epochsJ2000Seconds`], run positioning with
2453
+ * [`Sp3.solveSpp`], and serialize back with [`Sp3.toSp3String`].
2454
+ */
2455
+ export class Sp3 {
2456
+ private constructor();
2457
+ free(): void;
2458
+ [Symbol.dispose](): void;
2459
+ /**
2460
+ * Compute DGNSS pseudorange corrections from a surveyed base station.
2461
+ *
2462
+ * `request` is `{ basePositionM, baseObservations, tRxJ2000S }`; returns a
2463
+ * `{ satelliteId, correctionM }[]` array sorted by satellite token.
2464
+ */
2465
+ dgnssCorrections(request: any): any;
2466
+ /**
2467
+ * Solve a DGNSS rover position: compute base corrections, apply them to the
2468
+ * rover, and run the corrected SPP. `request` carries the base + rover
2469
+ * observations and the receive-time scalars; see the `DgnssSolveRequest`
2470
+ * TypeScript type. Returns the corrected solution and the base baseline.
2471
+ */
2472
+ dgnssSolve(request: any): DgnssSolution;
2473
+ /**
2474
+ * The product's parsed epochs as seconds since J2000 (the product's own
2475
+ * time scale), ascending. This is the exact axis [`Sp3.interpolate`]
2476
+ * consumes.
2477
+ */
2478
+ epochsJ2000Seconds(): Float64Array;
2479
+ /**
2480
+ * Run fault detection and exclusion (FDE) against this ephemeris.
2481
+ *
2482
+ * `request` is the SPP solve request plus the RAIM/exclusion options (see
2483
+ * the `FdeRequest` TypeScript type). The core loop solves, runs RAIM, and
2484
+ * excludes the worst satellite until the set passes or the exclusion budget
2485
+ * is exhausted. Returns the surviving solution and the excluded satellites;
2486
+ * throws an `Error` if the fault is unresolved.
2487
+ */
2488
+ fde(request: any): FdeSolution;
2489
+ /**
2490
+ * Interpolate `satellite`'s position and clock at each query epoch.
2491
+ *
2492
+ * `j2000Seconds` is a `Float64Array` of query times in seconds since J2000,
2493
+ * in the product's own time scale. Throws a `TypeError` if the satellite is
2494
+ * absent or the query array is empty, and an `Error` if a query lies in a
2495
+ * coverage gap (the engine refuses to extrapolate).
2496
+ */
2497
+ interpolate(satellite: string, j2000_seconds: Float64Array): Sp3Interpolation;
2498
+ /**
2499
+ * Run single-point positioning against this ephemeris.
2500
+ *
2501
+ * `request` is a plain object; see the `SppRequest` TypeScript type. Throws
2502
+ * a `TypeError` for malformed input and an `Error` if the solve fails.
2503
+ */
2504
+ solveSpp(request: any): SppSolution;
2505
+ /**
2506
+ * The exact parsed state of `satellite` at record `epochIndex` (no
2507
+ * interpolation). Throws a `RangeError` past the last epoch and a
2508
+ * `TypeError` if the satellite has no record there.
2509
+ */
2510
+ state(satellite: string, epoch_index: number): Sp3State;
2511
+ /**
2512
+ * Serialize to standard SP3 text (the version named by the header, `c` or
2513
+ * `d`). Deterministic: the same product always produces byte-identical text.
2514
+ */
2515
+ toSp3String(): string;
2516
+ /**
2517
+ * Number of epochs in the product.
2518
+ */
2519
+ readonly epochCount: number;
2520
+ /**
2521
+ * Satellite tokens present in the product (e.g. `"G01"`), ascending.
2522
+ */
2523
+ readonly satellites: string[];
2524
+ }
2525
+
2526
+ /**
2527
+ * A batch of interpolated SP3 states.
2528
+ */
2529
+ export class Sp3Interpolation {
2530
+ private constructor();
2531
+ free(): void;
2532
+ [Symbol.dispose](): void;
2533
+ /**
2534
+ * Interpolated clock offsets, seconds, as a `Float64Array` (NaN where the
2535
+ * satellite has no clock estimate at that epoch).
2536
+ */
2537
+ readonly clockS: Float64Array;
2538
+ /**
2539
+ * Number of query epochs in the batch.
2540
+ */
2541
+ readonly epochCount: number;
2542
+ /**
2543
+ * Interpolated ECEF positions, metres, as a flat row-major `Float64Array`
2544
+ * of length `3 * epochCount` (`[x0, y0, z0, x1, y1, z1, ...]`).
2545
+ */
2546
+ readonly positionM: Float64Array;
2547
+ }
2548
+
2549
+ /**
2550
+ * One SP3 merge audit flag for an epoch and satellite.
2551
+ */
2552
+ export class Sp3MergeFlag {
2553
+ private constructor();
2554
+ free(): void;
2555
+ [Symbol.dispose](): void;
2556
+ /**
2557
+ * Flagged epoch as seconds since J2000 in the product time scale.
2558
+ */
2559
+ readonly epochJ2000Seconds: number;
2560
+ /**
2561
+ * Satellite token, e.g. `"G01"`.
2562
+ */
2563
+ readonly satellite: string;
2564
+ /**
2565
+ * Source indices (into the input array) this flag refers to.
2566
+ */
2567
+ readonly sources: Uint32Array;
2568
+ }
2569
+
2570
+ /**
2571
+ * Audit report returned with a merged SP3 product.
2572
+ */
2573
+ export class Sp3MergeReport {
2574
+ private constructor();
2575
+ free(): void;
2576
+ [Symbol.dispose](): void;
2577
+ readonly positionOutlierCount: number;
2578
+ /**
2579
+ * Cells where an accepted consensus rejected source outliers.
2580
+ */
2581
+ readonly positionOutliers: Sp3MergeFlag[];
2582
+ /**
2583
+ * Cells omitted because sources disagreed beyond tolerance.
2584
+ */
2585
+ readonly quarantined: Sp3MergeFlag[];
2586
+ readonly quarantinedCount: number;
2587
+ /**
2588
+ * Cells carried from one source because no cross-check was possible.
2589
+ */
2590
+ readonly singleSource: Sp3MergeFlag[];
2591
+ readonly singleSourceCount: number;
2592
+ }
2593
+
2594
+ /**
2595
+ * The result of an SP3 merge: the merged product plus the audit report.
2596
+ */
2597
+ export class Sp3MergeResult {
2598
+ private constructor();
2599
+ free(): void;
2600
+ [Symbol.dispose](): void;
2601
+ /**
2602
+ * The merge audit report.
2603
+ */
2604
+ readonly report: Sp3MergeReport;
2605
+ /**
2606
+ * The merged precise orbit and clock product.
2607
+ */
2608
+ readonly sp3: Sp3;
2609
+ }
2610
+
2611
+ /**
2612
+ * A staleness-selected SP3 product plus its [`StalenessMetadata`].
2613
+ */
2614
+ export class Sp3Selection {
2615
+ private constructor();
2616
+ free(): void;
2617
+ [Symbol.dispose](): void;
2618
+ /**
2619
+ * Interpolate `satellite` at `queryJ2000S` on the selected product, returning
2620
+ * a plain object `{ positionM: [x, y, z], clockS: number | null }`. Delegates
2621
+ * to the reference interpolation, so an exact selection matches the caller's
2622
+ * product bit-for-bit. Throws a `TypeError` for an unknown satellite and an
2623
+ * `Error` for a query in a coverage gap.
2624
+ */
2625
+ positionAtJ2000Seconds(satellite: string, query_j2000_s: number): any;
2626
+ /**
2627
+ * The staleness metadata as a plain object (see [`StalenessMetadataJs`]).
2628
+ */
2629
+ readonly metadata: any;
2630
+ /**
2631
+ * The selected SP3 product as a standalone [`Sp3`] handle, exposing the full
2632
+ * SP3 query / solve surface.
2633
+ */
2634
+ readonly sp3: Sp3;
2635
+ }
2636
+
2637
+ /**
2638
+ * The exact parsed state of one satellite at one SP3 epoch.
2639
+ */
2640
+ export class Sp3State {
2641
+ private constructor();
2642
+ free(): void;
2643
+ [Symbol.dispose](): void;
2644
+ /**
2645
+ * Clock discontinuity (`E`) flagged at this epoch.
2646
+ */
2647
+ readonly clockEvent: boolean;
2648
+ /**
2649
+ * The clock is predicted, not fitted.
2650
+ */
2651
+ readonly clockPredicted: boolean;
2652
+ /**
2653
+ * Clock offset in seconds, or `undefined` for the bad-clock sentinel.
2654
+ */
2655
+ readonly clockS: number | undefined;
2656
+ /**
2657
+ * The satellite was being maneuvered at this epoch.
2658
+ */
2659
+ readonly maneuver: boolean;
2660
+ /**
2661
+ * The orbit is predicted, not fitted.
2662
+ */
2663
+ readonly orbitPredicted: boolean;
2664
+ /**
2665
+ * ECEF position as a `Float64Array` `[x, y, z]`, metres.
2666
+ */
2667
+ readonly positionM: Float64Array;
2668
+ /**
2669
+ * ECEF velocity as a `Float64Array` `[vx, vy, vz]`, metres per second, or
2670
+ * `undefined` for a position-only product.
2671
+ */
2672
+ readonly velocityMS: Float64Array | undefined;
2673
+ }
2674
+
2675
+ /**
2676
+ * A parsed in-memory JPL/NAIF SPK kernel.
2677
+ *
2678
+ * Construct from the raw `.bsp` bytes (a `Uint8Array`), then query states with
2679
+ * [`Spk.state`] or inspect the segment table with [`Spk.segments`].
2680
+ *
2681
+ * ```js
2682
+ * import init, { Spk } from "@neilberkman/sidereon";
2683
+ * await init();
2684
+ * const spk = new Spk(new Uint8Array(bspBytes));
2685
+ * const state = spk.state(20000433, 10, 757339200.0);
2686
+ * state.positionKm; // Float64Array [x, y, z] km
2687
+ * state.velocityKmS; // Float64Array [vx, vy, vz] km/s (or undefined)
2688
+ * ```
2689
+ */
2690
+ export class Spk {
2691
+ free(): void;
2692
+ [Symbol.dispose](): void;
2693
+ /**
2694
+ * Parse an SPK/DAF kernel from its raw bytes (the full, decompressed
2695
+ * `.bsp` file). Throws an `Error` if the bytes are not a supported SPK
2696
+ * kernel.
2697
+ */
2698
+ constructor(bytes: Uint8Array);
2699
+ /**
2700
+ * Query the state of NAIF `target` relative to NAIF `center` at `et`
2701
+ * (ET/TDB seconds past J2000). Resolves the segment chain connecting the
2702
+ * two bodies and evaluates SPK Types 2, 3, and 21.
2703
+ *
2704
+ * Throws a `RangeError` if `et` is not finite, and an `Error` if the bodies
2705
+ * are absent, unconnected, out of coverage, or in an unsupported segment.
2706
+ */
2707
+ state(target: number, center: number, et: number): SpkState;
2708
+ /**
2709
+ * The DAF internal name from the file record.
2710
+ */
2711
+ readonly internalName: string;
2712
+ /**
2713
+ * Number of segments in the kernel.
2714
+ */
2715
+ readonly segmentCount: number;
2716
+ /**
2717
+ * Segment descriptors in DAF summary order.
2718
+ */
2719
+ readonly segments: SpkSegment[];
2720
+ }
2721
+
2722
+ /**
2723
+ * A descriptor for one SPK segment as recorded in the DAF summary, in summary
2724
+ * order. Read via [`Spk.segments`].
2725
+ */
2726
+ export class SpkSegment {
2727
+ private constructor();
2728
+ free(): void;
2729
+ [Symbol.dispose](): void;
2730
+ /**
2731
+ * NAIF center body id.
2732
+ */
2733
+ readonly center: number;
2734
+ /**
2735
+ * SPK segment data type (2, 3, or 21 for the supported evaluators).
2736
+ */
2737
+ readonly dataType: number;
2738
+ /**
2739
+ * NAIF reference-frame id.
2740
+ */
2741
+ readonly frame: number;
2742
+ /**
2743
+ * Segment comment/name from the DAF summary record.
2744
+ */
2745
+ readonly name: string;
2746
+ /**
2747
+ * Coverage start, ET/TDB seconds past J2000.
2748
+ */
2749
+ readonly startEt: number;
2750
+ /**
2751
+ * Coverage stop, ET/TDB seconds past J2000.
2752
+ */
2753
+ readonly stopEt: number;
2754
+ /**
2755
+ * NAIF target body id.
2756
+ */
2757
+ readonly target: number;
2758
+ }
2759
+
2760
+ /**
2761
+ * The state of a target relative to a center, resolved from an SPK query.
2762
+ * Returned by [`Spk.state`].
2763
+ */
2764
+ export class SpkState {
2765
+ private constructor();
2766
+ free(): void;
2767
+ [Symbol.dispose](): void;
2768
+ /**
2769
+ * NAIF center body id for the returned relative state.
2770
+ */
2771
+ readonly center: number;
2772
+ /**
2773
+ * NAIF reference-frame id shared by all segments in the resolved path.
2774
+ */
2775
+ readonly frame: number;
2776
+ /**
2777
+ * Position of the target relative to the center as a `Float64Array`
2778
+ * `[x, y, z]`, kilometres.
2779
+ */
2780
+ readonly positionKm: Float64Array;
2781
+ /**
2782
+ * NAIF target body id for the returned relative state.
2783
+ */
2784
+ readonly target: number;
2785
+ /**
2786
+ * Velocity of the target relative to the center as a `Float64Array`
2787
+ * `[vx, vy, vz]`, kilometres per second, or `undefined` when the resolved
2788
+ * path includes a Type-2 segment (which stores position only).
2789
+ */
2790
+ readonly velocityKmS: Float64Array | undefined;
2791
+ }
2792
+
2793
+ /**
2794
+ * The result of an SPP solve.
2795
+ */
2796
+ export class SppSolution {
2797
+ private constructor();
2798
+ free(): void;
2799
+ [Symbol.dispose](): void;
2800
+ /**
2801
+ * `[latRad, lonRad, heightM]` as a `Float64Array` if the solve was asked
2802
+ * for geodetic output, otherwise `undefined`.
2803
+ */
2804
+ readonly geodetic: Float64Array | undefined;
2805
+ /**
2806
+ * ECEF position as a `Float64Array` `[x, y, z]`, metres.
2807
+ */
2808
+ readonly positionM: Float64Array;
2809
+ /**
2810
+ * Post-fit residuals, metres, index-aligned to `usedSats`.
2811
+ */
2812
+ readonly residualsM: Float64Array;
2813
+ /**
2814
+ * Receiver clock bias, seconds.
2815
+ */
2816
+ readonly rxClockS: number;
2817
+ /**
2818
+ * Satellite tokens used in the accepted solution, ascending.
2819
+ */
2820
+ readonly usedSats: string[];
2821
+ /**
2822
+ * ECEF X, metres.
2823
+ */
2824
+ readonly xM: number;
2825
+ /**
2826
+ * ECEF Y, metres.
2827
+ */
2828
+ readonly yM: number;
2829
+ /**
2830
+ * ECEF Z, metres.
2831
+ */
2832
+ readonly zM: number;
2833
+ }
2834
+
2835
+ /**
2836
+ * A batch of Sun and Moon positions, one per epoch: flat row-major `sun` and
2837
+ * `moon` `Float64Array`s of length `3 * epochCount`, in **metres**.
2838
+ *
2839
+ * The frame (geocentric ECI of date vs Earth-fixed ITRS/ECEF) is fixed by which
2840
+ * function produced this object: [`sunMoonEci`] or [`sunMoonEcef`].
2841
+ */
2842
+ export class SunMoon {
2843
+ private constructor();
2844
+ free(): void;
2845
+ [Symbol.dispose](): void;
2846
+ /**
2847
+ * Number of epochs in the batch.
2848
+ */
2849
+ readonly epochCount: number;
2850
+ /**
2851
+ * The frame these positions are in: `"eci"` or `"ecef"`.
2852
+ */
2853
+ readonly frame: string;
2854
+ /**
2855
+ * Moon positions, metres, flat row-major `(n, 3)`.
2856
+ */
2857
+ readonly moon: Float64Array;
2858
+ /**
2859
+ * Sun positions, metres, flat row-major `(n, 3)`.
2860
+ */
2861
+ readonly sun: Float64Array;
2862
+ }
2863
+
2864
+ /**
2865
+ * A named time scale. The JS value matches the variant order below.
2866
+ */
2867
+ export enum TimeScale {
2868
+ /**
2869
+ * Coordinated Universal Time.
2870
+ */
2871
+ Utc = 0,
2872
+ /**
2873
+ * International Atomic Time.
2874
+ */
2875
+ Tai = 1,
2876
+ /**
2877
+ * Terrestrial Time.
2878
+ */
2879
+ Tt = 2,
2880
+ /**
2881
+ * Barycentric Dynamical Time.
2882
+ */
2883
+ Tdb = 3,
2884
+ /**
2885
+ * GPS time.
2886
+ */
2887
+ Gpst = 4,
2888
+ /**
2889
+ * Galileo System Time.
2890
+ */
2891
+ Gst = 5,
2892
+ /**
2893
+ * BeiDou Time.
2894
+ */
2895
+ Bdt = 6,
2896
+ }
2897
+
2898
+ /**
2899
+ * A parsed two-line element set with an initialized SGP4 satellite.
2900
+ */
2901
+ export class Tle {
2902
+ free(): void;
2903
+ [Symbol.dispose](): void;
2904
+ /**
2905
+ * Find passes over `station` within `[startUnixUs, endUnixUs)` by dense
2906
+ * elevation sampling. `elevationMaskDeg` defaults to 0, `stepSeconds` to 30,
2907
+ * `timeToleranceS` to 1e-3. Throws a `RangeError` on a non-positive step or
2908
+ * an end at or before the start.
2909
+ */
2910
+ findPasses(station: GroundStation, start_unix_us: bigint, end_unix_us: bigint, elevation_mask_deg?: number | null, step_seconds?: number | null, time_tolerance_s?: number | null): SatellitePass[];
2911
+ /**
2912
+ * Topocentric azimuth/elevation/range from `station` over a
2913
+ * `BigInt64Array` of unix-microsecond epochs. Throws an `Error` on failure.
2914
+ */
2915
+ lookAngles(station: GroundStation, epochs_unix_us: BigInt64Array): LookAngles;
2916
+ /**
2917
+ * Parse two TLE lines and initialize SGP4. `opsMode` is `"improved"`
2918
+ * (default) or `"afspc"`. Throws an `Error` if the lines fail to parse or
2919
+ * SGP4 fails to initialize.
2920
+ */
2921
+ constructor(line1: string, line2: string, ops_mode_label?: string | null);
2922
+ /**
2923
+ * Propagate over a `BigInt64Array` of unix-microsecond epochs. Returns TEME
2924
+ * position (km) and velocity (km/s). Throws an `Error` on SGP4 failure.
2925
+ */
2926
+ propagate(epochs_unix_us: BigInt64Array): TlePropagation;
2927
+ /**
2928
+ * Re-encode the parsed elements as the two 69-character TLE lines (with
2929
+ * checksums), as a `[line1, line2]` string array. For a well-formed input
2930
+ * the round-trip is character-exact.
2931
+ */
2932
+ toLines(): string[];
2933
+ /**
2934
+ * Topocentric visibility arrays and a dense pass list over an epoch grid.
2935
+ *
2936
+ * `epochsUnixUs` must be a strictly increasing `BigInt64Array` with at least
2937
+ * two samples. The az/el geometry is the same path as [`lookAngles`]; the
2938
+ * pass list is the dense finder over `[first, last]`.
2939
+ */
2940
+ visibilitySeries(station: GroundStation, epochs_unix_us: BigInt64Array, elevation_mask_deg?: number | null, step_seconds?: number | null, time_tolerance_s?: number | null): VisibilitySeries;
2941
+ /**
2942
+ * Argument of perigee, degrees.
2943
+ */
2944
+ readonly argPerigeeDeg: number;
2945
+ /**
2946
+ * B* drag term (TLE dimensionless convention).
2947
+ */
2948
+ readonly bstar: number;
2949
+ /**
2950
+ * NORAD catalog number (as recorded in the TLE).
2951
+ */
2952
+ readonly catalogNumber: string;
2953
+ /**
2954
+ * Advisory checksum discrepancies found while parsing. Empty when both
2955
+ * lines' checksums are valid.
2956
+ */
2957
+ readonly checksumWarnings: ChecksumWarning[];
2958
+ /**
2959
+ * Classification character (`U`/`C`/`S`).
2960
+ */
2961
+ readonly classification: string;
2962
+ /**
2963
+ * Orbital eccentricity (dimensionless).
2964
+ */
2965
+ readonly eccentricity: number;
2966
+ /**
2967
+ * Fractional day-of-year of the epoch.
2968
+ */
2969
+ readonly epochDayOfYear: number;
2970
+ /**
2971
+ * Four-digit epoch year.
2972
+ */
2973
+ readonly epochYear: number;
2974
+ /**
2975
+ * Inclination, degrees.
2976
+ */
2977
+ readonly inclinationDeg: number;
2978
+ /**
2979
+ * International designator (COSPAR ID).
2980
+ */
2981
+ readonly internationalDesignator: string;
2982
+ /**
2983
+ * Mean anomaly at epoch, degrees.
2984
+ */
2985
+ readonly meanAnomalyDeg: number;
2986
+ /**
2987
+ * First derivative of mean motion (rev/day^2).
2988
+ */
2989
+ readonly meanMotionDot: number;
2990
+ /**
2991
+ * Second derivative of mean motion (rev/day^3).
2992
+ */
2993
+ readonly meanMotionDoubleDot: number;
2994
+ /**
2995
+ * Mean motion, revolutions per day.
2996
+ */
2997
+ readonly meanMotionRevPerDay: number;
2998
+ /**
2999
+ * Right ascension of the ascending node, degrees.
3000
+ */
3001
+ readonly raanDeg: number;
3002
+ /**
3003
+ * Revolution number at epoch.
3004
+ */
3005
+ readonly revNumber: number;
3006
+ }
3007
+
3008
+ /**
3009
+ * TEME states from a batched SGP4 propagation. Each array is flat row-major,
3010
+ * length `3 * epochCount`.
3011
+ */
3012
+ export class TlePropagation {
3013
+ private constructor();
3014
+ free(): void;
3015
+ [Symbol.dispose](): void;
3016
+ /**
3017
+ * Number of epochs propagated.
3018
+ */
3019
+ readonly epochCount: number;
3020
+ /**
3021
+ * TEME positions, km, flat `[x0, y0, z0, x1, ...]`.
3022
+ */
3023
+ readonly positionKm: Float64Array;
3024
+ /**
3025
+ * TEME velocities, km/s, flat `[vx0, vy0, vz0, ...]`.
3026
+ */
3027
+ readonly velocityKmS: Float64Array;
3028
+ }
3029
+
3030
+ /**
3031
+ * Provenance and coverage of the embedded UT1-UTC / delta-T (EOP) table.
3032
+ */
3033
+ export class Ut1Coverage {
3034
+ private constructor();
3035
+ free(): void;
3036
+ [Symbol.dispose](): void;
3037
+ /**
3038
+ * Number of entries in the table.
3039
+ */
3040
+ readonly entries: number;
3041
+ /**
3042
+ * TT Julian date of the first table entry (coverage lower bound).
3043
+ */
3044
+ readonly firstJdTt: number;
3045
+ /**
3046
+ * Modified Julian date of the first table entry.
3047
+ */
3048
+ readonly firstMjd: number;
3049
+ /**
3050
+ * TT Julian date of the last table entry (coverage upper bound).
3051
+ */
3052
+ readonly lastJdTt: number;
3053
+ /**
3054
+ * Modified Julian date of the last table entry.
3055
+ */
3056
+ readonly lastMjd: number;
3057
+ /**
3058
+ * Human-readable provenance string for the table.
3059
+ */
3060
+ readonly source: string;
3061
+ }
3062
+
3063
+ /**
3064
+ * Receiver velocity solve result.
3065
+ */
3066
+ export class VelocitySolution {
3067
+ private constructor();
3068
+ free(): void;
3069
+ [Symbol.dispose](): void;
3070
+ /**
3071
+ * Receiver clock drift, seconds per second.
3072
+ */
3073
+ readonly clockDriftSS: number;
3074
+ /**
3075
+ * Post-fit range-rate residuals, metres per second.
3076
+ */
3077
+ readonly residualsMS: Float64Array;
3078
+ /**
3079
+ * Receiver speed, metres per second.
3080
+ */
3081
+ readonly speedMS: number;
3082
+ /**
3083
+ * Satellite tokens contributing rows, in residual order.
3084
+ */
3085
+ readonly usedSats: string[];
3086
+ /**
3087
+ * Receiver ECEF velocity `[vx, vy, vz]`, metres per second.
3088
+ */
3089
+ readonly velocityMS: Float64Array;
3090
+ }
3091
+
3092
+ /**
3093
+ * Per-epoch topocentric visibility plus the dense pass list over the grid
3094
+ * window.
3095
+ */
3096
+ export class VisibilitySeries {
3097
+ private constructor();
3098
+ free(): void;
3099
+ [Symbol.dispose](): void;
3100
+ /**
3101
+ * Azimuth, degrees clockwise from north.
3102
+ */
3103
+ readonly azimuthDeg: Float64Array;
3104
+ /**
3105
+ * Elevation, degrees above the horizon.
3106
+ */
3107
+ readonly elevationDeg: Float64Array;
3108
+ /**
3109
+ * Number of epochs evaluated.
3110
+ */
3111
+ readonly epochCount: number;
3112
+ /**
3113
+ * Epoch grid, UTC unix microseconds, as a `BigInt64Array`.
3114
+ */
3115
+ readonly epochUnixUs: BigInt64Array;
3116
+ /**
3117
+ * Number of passes found over the epoch-grid window.
3118
+ */
3119
+ readonly passCount: number;
3120
+ /**
3121
+ * Dense pass-finder results over the epoch-grid window.
3122
+ */
3123
+ readonly passes: SatellitePass[];
3124
+ /**
3125
+ * Slant range, kilometres.
3126
+ */
3127
+ readonly rangeKm: Float64Array;
3128
+ /**
3129
+ * Visibility mask as a `Uint8Array` (1 where `elevationDeg >=
3130
+ * elevationMaskDeg`, else 0).
3131
+ */
3132
+ readonly visible: Uint8Array;
3133
+ }
3134
+
3135
+ /**
3136
+ * WGS84 receiver geodetic coordinates (radians, metres) for DOP.
3137
+ */
3138
+ export class Wgs84Geodetic {
3139
+ free(): void;
3140
+ [Symbol.dispose](): void;
3141
+ /**
3142
+ * Build a WGS84 geodetic coordinate. `heightM` defaults to 0. Throws a
3143
+ * `RangeError` on a non-finite field or latitude outside `[-pi/2, pi/2]`.
3144
+ */
3145
+ constructor(lat_rad: number, lon_rad: number, height_m?: number | null);
3146
+ /**
3147
+ * Ellipsoidal height above WGS84, metres.
3148
+ */
3149
+ readonly heightM: number;
3150
+ /**
3151
+ * Geodetic latitude, radians.
3152
+ */
3153
+ readonly latRad: number;
3154
+ /**
3155
+ * Geodetic longitude, radians east.
3156
+ */
3157
+ readonly lonRad: number;
3158
+ }
3159
+
3160
+ /**
3161
+ * Zenith hydrostatic and wet tropospheric delays, positive metres.
3162
+ */
3163
+ export class ZenithDelay {
3164
+ private constructor();
3165
+ free(): void;
3166
+ [Symbol.dispose](): void;
3167
+ /**
3168
+ * Zenith hydrostatic (dry) delay, positive metres.
3169
+ */
3170
+ readonly dryM: number;
3171
+ /**
3172
+ * Zenith wet delay, positive metres.
3173
+ */
3174
+ readonly wetM: number;
3175
+ }
3176
+
3177
+ /**
3178
+ * Acquire a GPS C/A PRN by direct code-phase and Doppler search. `samples` is
3179
+ * interleaved `[i0, q0, i1, q1, ...]`.
3180
+ */
3181
+ export function acquire(samples: Float64Array, prn: bigint, options: any): AcquisitionResult;
3182
+
3183
+ /**
3184
+ * One wrapping GPS C/A chip at a zero-based index.
3185
+ */
3186
+ export function caChip(prn: bigint, index: bigint): number;
3187
+
3188
+ /**
3189
+ * GPS C/A code chips for a PRN, an `Int8Array` of length 1023, chips `+1`/`-1`.
3190
+ */
3191
+ export function caCode(prn: bigint): Int8Array;
3192
+
3193
+ /**
3194
+ * Canonical lower-case carrier-band token, e.g. `"l1"`.
3195
+ */
3196
+ export function carrierBandName(band: CarrierBand): string;
3197
+
3198
+ /**
3199
+ * Carrier frequency in hertz for a constellation and canonical carrier band.
3200
+ */
3201
+ export function carrierFrequencyHz(system: GnssSystem, band: CarrierBand): number | undefined;
3202
+
3203
+ /**
3204
+ * Returns `true` when a diff has any findings.
3205
+ */
3206
+ export function changed(diff: any): boolean;
3207
+
3208
+ /**
3209
+ * Carrier-to-noise-density ratio, dB-Hz. `otherLossesDb` defaults to 0.
3210
+ */
3211
+ export function cn0(eirp_dbw: number, fspl_db: number, receiver_gt_dbk: number, other_losses_db?: number | null): number;
3212
+
3213
+ /**
3214
+ * Coherent integration loss from residual frequency error.
3215
+ */
3216
+ export function coherentLoss(freq_error_hz: number, integration_time_s: number): number;
3217
+
3218
+ /**
3219
+ * Coherent integration loss in decibels.
3220
+ */
3221
+ export function coherentLossDb(freq_error_hz: number, integration_time_s: number): number;
3222
+
3223
+ /**
3224
+ * Compute collision probability from two conjunction states and a hard-body
3225
+ * radius. `method` is one of `"foster_equal_area"` (default),
3226
+ * `"foster_numerical"`, `"alfano_2005"`.
3227
+ */
3228
+ export function collisionProbability(object1: ConjunctionState, object2: ConjunctionState, hard_body_radius_km: number, method?: string | null): CollisionProbability;
3229
+
3230
+ /**
3231
+ * Coherently correlate interleaved IQ samples against a GPS C/A PRN replica.
3232
+ * `iq` is `[i0, q0, i1, q1, ...]`.
3233
+ */
3234
+ export function correlate(iq: Float64Array, prn: bigint, options: any): CorrelationResult;
3235
+
3236
+ /**
3237
+ * Whether a 3x3 covariance (flat row-major length 9) is symmetric positive
3238
+ * semidefinite within the engine tolerance.
3239
+ */
3240
+ export function covarianceIsPositiveSemidefinite(covariance_km2: Float64Array): boolean;
3241
+
3242
+ /**
3243
+ * Whether a 3x3 covariance (flat row-major length 9) is symmetric within the
3244
+ * engine tolerance.
3245
+ */
3246
+ export function covarianceIsSymmetric(covariance_km2: Float64Array): boolean;
3247
+
3248
+ /**
3249
+ * Decode Compact RINEX (Hatanaka) bytes into plain RINEX OBS text. Throws a
3250
+ * `TypeError` on non-UTF-8 input and an `Error` on a decode failure.
3251
+ */
3252
+ export function decodeCrinex(bytes: Uint8Array): string;
3253
+
3254
+ /**
3255
+ * Decode Compact RINEX bytes into plain RINEX OBS lines (each without its
3256
+ * trailing newline). Throws a `TypeError` on non-UTF-8 input and an `Error` on
3257
+ * a decode failure.
3258
+ */
3259
+ export function decodeCrinexLines(bytes: Uint8Array): string[];
3260
+
3261
+ /**
3262
+ * Standard dual-frequency ionosphere-free carrier pair for a constellation.
3263
+ */
3264
+ export function defaultPair(system: GnssSystem): CarrierPair | undefined;
3265
+
3266
+ /**
3267
+ * Detect cycle slips on a time-ordered single-satellite carrier-phase arc.
3268
+ * `arc` is an array of `{ phi1Cycles?, phi2Cycles?, p1M?, p2M?, lli1?, lli2?,
3269
+ * f1Hz?, f2Hz?, gapTimeS? }`.
3270
+ */
3271
+ export function detectCycleSlips(arc: any, options: any): SlipResult[];
3272
+
3273
+ /**
3274
+ * Apply base pseudorange corrections to rover observations by satellite token.
3275
+ *
3276
+ * `roverObservations` is `{ satelliteId, pseudorangeM }[]`; `corrections` is the
3277
+ * `{ satelliteId, correctionM }[]` array from [`Sp3.dgnssCorrections`]. Output
3278
+ * order follows the rover order; rover satellites with no correction are
3279
+ * reported in `dropped`.
3280
+ */
3281
+ export function dgnssApply(rover_observations: any, corrections: any): AppliedCorrections;
3282
+
3283
+ /**
3284
+ * Compare two catalog snapshots by `(system, prn)` identity.
3285
+ *
3286
+ * `previous` and `current` are each a `Record[]`. Returns a `Diff` of added,
3287
+ * removed, and per-field changes on held PRNs.
3288
+ */
3289
+ export function diff(previous: any, current: any): any;
3290
+
3291
+ /**
3292
+ * Parabolic-dish antenna gain, dBi.
3293
+ */
3294
+ export function dishGain(diameter_m: number, frequency_hz: number, efficiency: number): number;
3295
+
3296
+ /**
3297
+ * Convert a Doppler shift in hertz to pseudorange rate in metres per second.
3298
+ */
3299
+ export function dopplerToRangeRate(doppler_hz: number, carrier_hz: number): number;
3300
+
3301
+ /**
3302
+ * Angular radius in degrees of Earth as seen from each satellite position.
3303
+ */
3304
+ export function earthAngularRadius(satellite_position_km: Float64Array): Float64Array;
3305
+
3306
+ /**
3307
+ * Convert a batch of ITRS (ECEF) positions to geodetic coordinates.
3308
+ *
3309
+ * `positionKm` is a flat row-major `(n, 3)` `Float64Array` in kilometres.
3310
+ * Returns a flat `(n, 3)` `Float64Array` whose columns are
3311
+ * `[latitudeDeg, longitudeDeg, altitudeKm]` (WGS84). Time-independent.
3312
+ */
3313
+ export function ecefToGeodetic(position_km: Float64Array): Float64Array;
3314
+
3315
+ /**
3316
+ * Eclipse status for satellite and Sun position batches, km. Returns a
3317
+ * `string[]` of `"sunlit"` / `"penumbra"` / `"umbra"`.
3318
+ */
3319
+ export function eclipseStatus(satellite_position_km: Float64Array, sun_position_km: Float64Array): string[];
3320
+
3321
+ /**
3322
+ * Effective isotropic radiated power, dBW.
3323
+ */
3324
+ export function eirp(tx_power_dbm: number, tx_antenna_gain_dbi: number): number;
3325
+
3326
+ /**
3327
+ * Build the encounter frame from two position/velocity states (each a length-3
3328
+ * `Float64Array`).
3329
+ */
3330
+ export function encounterFrame(position1_km: Float64Array, velocity1_km_s: Float64Array, position2_km: Float64Array, velocity2_km_s: Float64Array): EncounterFrame;
3331
+
3332
+ /**
3333
+ * Project a 3x3 ECI covariance into the encounter B-plane `(x, z)`. Returns a
3334
+ * flat row-major length-4 (2-by-2) `Float64Array`.
3335
+ */
3336
+ export function encounterPlaneCovariance(frame: EncounterFrame, covariance_km2: Float64Array): Float64Array;
3337
+
3338
+ /**
3339
+ * J2 oblateness gravitational acceleration in km/s^2.
3340
+ *
3341
+ * `positionKm` and `velocityKmS` are length-3 `Float64Array`s in the same
3342
+ * inertial frame; the result is the J2 perturbing acceleration as a length-3
3343
+ * `Float64Array`. Uses the core Earth gravitational parameter, equatorial
3344
+ * radius, and J2 coefficient. Throws a `RangeError` for a non-finite input and
3345
+ * an `Error` for a degenerate (zero-magnitude) position.
3346
+ */
3347
+ export function forceJ2Acceleration(position_km: Float64Array, velocity_km_s: Float64Array): Float64Array;
3348
+
3349
+ /**
3350
+ * Two-body (point-mass) gravitational acceleration in km/s^2.
3351
+ *
3352
+ * `positionKm` and `velocityKmS` are length-3 `Float64Array`s in the same
3353
+ * inertial frame; the result is a length-3 `Float64Array`. Uses the core
3354
+ * Earth gravitational parameter. Throws a `RangeError` for a non-finite input
3355
+ * and an `Error` for a degenerate (zero-magnitude) position.
3356
+ */
3357
+ export function forceTwoBodyAcceleration(position_km: Float64Array, velocity_km_s: Float64Array): Float64Array;
3358
+
3359
+ /**
3360
+ * Build GPS identity records from CelesTrak `gps-ops` OMM JSON-array text.
3361
+ *
3362
+ * Parses the CelesTrak JSON array into OMM records, then derives normalized
3363
+ * `Record` rows (sorted by PRN). Returns a `Record[]`. Throws an `Error` on a
3364
+ * JSON parse failure or a CelesTrak object name with no parseable PRN.
3365
+ */
3366
+ export function fromCelestrakJson(json: string): any;
3367
+
3368
+ /**
3369
+ * Free-space path loss, dB, for range in km and frequency in MHz.
3370
+ */
3371
+ export function fspl(distance_km: number, frequency_mhz: number): number;
3372
+
3373
+ /**
3374
+ * Ionosphere-free coefficient `gamma = f1^2 / (f1^2 - f2^2)`.
3375
+ */
3376
+ export function gamma(f1_hz: number, f2_hz: number): number;
3377
+
3378
+ /**
3379
+ * Transform a batch of GCRS positions to ITRS (Earth-fixed / ECEF), each at its
3380
+ * own epoch. Returns a flat row-major `(n, 3)` `Float64Array`.
3381
+ */
3382
+ export function gcrsToItrs(position_km: Float64Array, epochs_unix_us: BigInt64Array, skyfield_compat?: boolean | null): Float64Array;
3383
+
3384
+ /**
3385
+ * Convert a batch of geodetic coordinates to ITRS (ECEF).
3386
+ *
3387
+ * `geodetic` is a flat row-major `(n, 3)` `Float64Array` whose columns are
3388
+ * `[latitudeDeg, longitudeDeg, altitudeKm]` (WGS84). Returns a flat `(n, 3)`
3389
+ * ITRS `Float64Array` in kilometres. Time-independent.
3390
+ */
3391
+ export function geodeticToEcef(geodetic: Float64Array): Float64Array;
3392
+
3393
+ /**
3394
+ * Geometry-free phase combination `L_GF = L1 - L2`, metres.
3395
+ */
3396
+ export function geometryFree(l1_m: number, l2_m: number): number;
3397
+
3398
+ /**
3399
+ * GNSS dilution of precision from ECEF line-of-sight unit rows and weights.
3400
+ *
3401
+ * `lineOfSight` is a flat row-major `(n, 3)` `Float64Array`; `weights` is a
3402
+ * positive `Float64Array` of length `n`.
3403
+ */
3404
+ export function gnssDop(line_of_sight: Float64Array, weights: Float64Array, receiver: Wgs84Geodetic): Dop;
3405
+
3406
+ /**
3407
+ * Sample SP3-derived GNSS DOP over a J2000 epoch grid.
3408
+ *
3409
+ * `stationEcefM` is an ECEF metre vector (length 3); `j2000Seconds` is a
3410
+ * `Float64Array` grid in the SP3 product time scale. Samples with too few
3411
+ * satellites or singular geometry are omitted. `options` is
3412
+ * `{ satellites?, elevationMaskDeg?=5, systems?, weighting?="unit", lightTime?=false }`.
3413
+ */
3414
+ export function gnssDopSeries(sp3: Sp3, station_ecef_m: Float64Array, j2000_seconds: Float64Array, options: any): DopSeries;
3415
+
3416
+ /**
3417
+ * Stable lower-case display label for a constellation, e.g. `"gps"`.
3418
+ */
3419
+ export function gnssSystemLabel(system: GnssSystem): string;
3420
+
3421
+ /**
3422
+ * Canonical RINEX one-letter identifier for a constellation, e.g. `"G"`.
3423
+ */
3424
+ export function gnssSystemLetter(system: GnssSystem): string;
3425
+
3426
+ /**
3427
+ * Ionosphere-free code or meter-valued phase combination, metres.
3428
+ */
3429
+ export function ionosphereFree(obs1_m: number, obs2_m: number, f1_hz: number, f2_hz: number): number;
3430
+
3431
+ /**
3432
+ * Ionosphere-free carrier-phase combination from cycle-valued phase inputs.
3433
+ */
3434
+ export function ionosphereFreePhaseCycles(phi1_cycles: number, phi2_cycles: number, f1_hz: number, f2_hz: number): number;
3435
+
3436
+ /**
3437
+ * Ionosphere-free carrier-phase combination from meter-valued phase inputs.
3438
+ */
3439
+ export function ionosphereFreePhaseM(phase1_m: number, phase2_m: number, f1_hz: number, f2_hz: number): number;
3440
+
3441
+ /**
3442
+ * Combine two satellite-keyed pseudorange bands into ionosphere-free ranges.
3443
+ * `band1` and `band2` are arrays of `{ satelliteId, valueM }`. `overrides` is
3444
+ * an optional array of `{ system, band1, band2 }` RINEX band selections.
3445
+ */
3446
+ export function ionosphereFreePseudoranges(band1: any, band2: any, overrides: any): IonoFreePseudorangeResult;
3447
+
3448
+ /**
3449
+ * Returns `true` when a validation report has no findings.
3450
+ */
3451
+ export function isValid(validation: any): boolean;
3452
+
3453
+ /**
3454
+ * Transform a batch of ITRS (ECEF) positions to GCRS, each at its own epoch.
3455
+ * Returns a flat row-major `(n, 3)` `Float64Array`.
3456
+ */
3457
+ export function itrsToGcrs(position_km: Float64Array, epochs_unix_us: BigInt64Array): Float64Array;
3458
+
3459
+ /**
3460
+ * Provenance and coverage of the embedded leap-second (TAI-UTC) table.
3461
+ */
3462
+ export function leapSecondTableInfo(): LeapSecondTable;
3463
+
3464
+ /**
3465
+ * TAI-UTC (cumulative leap seconds) in effect on a UTC calendar date.
3466
+ */
3467
+ export function leapSeconds(year: number, month: number, day: number): number;
3468
+
3469
+ /**
3470
+ * Leap seconds for a batch of UTC dates, as a `Float64Array`. `dates` is a flat
3471
+ * row-major `(n, 3)` `Int32Array` (or `number[]`) of `[year, month, day]`.
3472
+ */
3473
+ export function leapSecondsBatch(dates: Int32Array): Float64Array;
3474
+
3475
+ /**
3476
+ * Parse an ANTEX 1.4 antenna product from in-memory bytes (a `Uint8Array`).
3477
+ * Throws an `Error` on a parse failure or non-UTF-8 input.
3478
+ */
3479
+ export function loadAntex(bytes: Uint8Array): Antex;
3480
+
3481
+ /**
3482
+ * Alias of [`decodeCrinex`] for callers that read a file as bytes.
3483
+ */
3484
+ export function loadCrinex(bytes: Uint8Array): string;
3485
+
3486
+ /**
3487
+ * Parse an IONEX vertical-TEC product from the full text content (as bytes).
3488
+ * Throws an `Error` on malformed input.
3489
+ */
3490
+ export function loadIonex(bytes: Uint8Array): Ionex;
3491
+
3492
+ /**
3493
+ * Alias of [`parseRinexClock`] for callers that read a file as bytes.
3494
+ */
3495
+ export function loadRinexClock(bytes: Uint8Array): RinexClock;
3496
+
3497
+ /**
3498
+ * Alias of [`parseRinexClockLossy`] for callers that read a file as bytes.
3499
+ */
3500
+ export function loadRinexClockLossy(bytes: Uint8Array): RinexClock;
3501
+
3502
+ /**
3503
+ * Alias of [`parseRinexNav`] for callers that read a file as bytes.
3504
+ */
3505
+ export function loadRinexNav(bytes: Uint8Array): BroadcastEphemeris;
3506
+
3507
+ /**
3508
+ * Alias of [`parseRinexObs`] for callers that read a file as bytes.
3509
+ */
3510
+ export function loadRinexObs(bytes: Uint8Array): RinexObs;
3511
+
3512
+ /**
3513
+ * Parse an SP3-c or SP3-d byte buffer (the full, already-decompressed file)
3514
+ * into a precise-ephemeris product. Throws an `Error` on malformed input.
3515
+ */
3516
+ export function loadSp3(bytes: Uint8Array): Sp3;
3517
+
3518
+ /**
3519
+ * Melbourne-Wubbena combination, metres.
3520
+ */
3521
+ export function melbourneWubbena(phi1_cycles: number, phi2_cycles: number, p1_m: number, p2_m: number, f1_hz: number, f2_hz: number): number;
3522
+
3523
+ /**
3524
+ * Merge NAVCEN status rows into records by PRN.
3525
+ *
3526
+ * `records` is a `Record[]` (from [`fromCelestrakJson`]); `statuses` is a
3527
+ * `NavcenStatus[]` (from [`parseNavcen`]). Returns the merged `Record[]` sorted
3528
+ * by PRN, filling SVN/usability and NAVCEN provenance on compatible matches.
3529
+ */
3530
+ export function mergeNavcen(records: any, statuses: any): any;
3531
+
3532
+ /**
3533
+ * Merge SP3 products with the core consensus merge path.
3534
+ *
3535
+ * `sources` is a JS array of parsed [`Sp3`] products, ordered by source
3536
+ * precedence; the handles are consumed. `options` is an optional plain object
3537
+ * (see the `Sp3MergeOptions` TypeScript type). Returns an [`Sp3MergeResult`]
3538
+ * carrying the merged product and the audit report. Throws a `TypeError` for an
3539
+ * empty source list or bad options, and an `Error` for incompatible inputs
3540
+ * (mismatched time systems or coordinate frames).
3541
+ */
3542
+ export function mergeSp3(sources: Sp3[], options: any): Sp3MergeResult;
3543
+
3544
+ /**
3545
+ * Angle in degrees between satellite nadir and the Moon direction.
3546
+ */
3547
+ export function moonAngle(satellite_position_km: Float64Array, moon_position_km: Float64Array): Float64Array;
3548
+
3549
+ /**
3550
+ * Narrow-lane code combination, metres.
3551
+ */
3552
+ export function narrowLaneCode(p1_m: number, p2_m: number, f1_hz: number, f2_hz: number): number;
3553
+
3554
+ /**
3555
+ * Stable lower-case selector for a NAV message, e.g. `"gps_lnav"`.
3556
+ */
3557
+ export function navMessageLabel(message: NavMessage): string;
3558
+
3559
+ /**
3560
+ * Equal-variance noise amplification of the ionosphere-free combination.
3561
+ */
3562
+ export function noiseAmplification(f1_hz: number, f2_hz: number): number;
3563
+
3564
+ /**
3565
+ * Stable lower-case label for an observation kind.
3566
+ */
3567
+ export function observationKindLabel(kind: ObservationKind): string;
3568
+
3569
+ /**
3570
+ * Parse CCSDS CDM KVN text. Throws an `Error` on a parse failure.
3571
+ */
3572
+ export function parseCdmKvn(text: string): Cdm;
3573
+
3574
+ /**
3575
+ * Parse CCSDS CDM XML text. Throws an `Error` on a parse failure.
3576
+ */
3577
+ export function parseCdmXml(text: string): Cdm;
3578
+
3579
+ /**
3580
+ * Parse NAVCEN's GPS constellation status HTML into status rows.
3581
+ *
3582
+ * Returns a `NavcenStatus[]` sorted by PRN. Throws an `Error` when the HTML
3583
+ * carries no GPS rows or a required integer cell fails to parse.
3584
+ */
3585
+ export function parseNavcen(html: string): any;
3586
+
3587
+ /**
3588
+ * Parse CCSDS/CelesTrak OMM JSON text. Throws an `Error` on a parse failure.
3589
+ */
3590
+ export function parseOmmJson(text: string): Omm;
3591
+
3592
+ /**
3593
+ * Parse CCSDS OMM KVN text. Throws an `Error` on a parse failure.
3594
+ */
3595
+ export function parseOmmKvn(text: string): Omm;
3596
+
3597
+ /**
3598
+ * Parse CCSDS OMM XML text. Throws an `Error` on a parse failure.
3599
+ */
3600
+ export function parseOmmXml(text: string): Omm;
3601
+
3602
+ /**
3603
+ * Strictly parse RINEX clock bytes into satellite clock-bias series. Throws a
3604
+ * `TypeError` on non-UTF-8 input and an `Error` on a malformed record.
3605
+ */
3606
+ export function parseRinexClock(bytes: Uint8Array): RinexClock;
3607
+
3608
+ /**
3609
+ * Parse RINEX clock bytes, skipping malformed and non-`AS` rows. Throws a
3610
+ * `TypeError` only on non-UTF-8 input.
3611
+ */
3612
+ export function parseRinexClockLossy(bytes: Uint8Array): RinexClock;
3613
+
3614
+ /**
3615
+ * Parse all GLONASS state-vector records from RINEX NAV bytes.
3616
+ */
3617
+ export function parseRinexGlonassRecords(bytes: Uint8Array): GlonassRecordJs[];
3618
+
3619
+ /**
3620
+ * Parse GPS and BeiDou Klobuchar coefficients from a RINEX NAV header.
3621
+ */
3622
+ export function parseRinexIonoCorrections(bytes: Uint8Array): IonoCorrectionsJs;
3623
+
3624
+ /**
3625
+ * Parse the NAV header GPS minus UTC leap seconds, or `undefined`.
3626
+ */
3627
+ export function parseRinexLeapSeconds(bytes: Uint8Array): number | undefined;
3628
+
3629
+ /**
3630
+ * Parse RINEX NAV bytes into the default broadcast ephemeris store. Throws a
3631
+ * `TypeError` on non-UTF-8 input and an `Error` on a parse failure.
3632
+ */
3633
+ export function parseRinexNav(bytes: Uint8Array): BroadcastEphemeris;
3634
+
3635
+ /**
3636
+ * Parse all supported GPS, Galileo, and BeiDou broadcast records from NAV
3637
+ * bytes, before the store's default health and message-policy filter.
3638
+ */
3639
+ export function parseRinexNavRecords(bytes: Uint8Array): BroadcastRecordJs[];
3640
+
3641
+ /**
3642
+ * Parse a RINEX OBS byte buffer (UTF-8 text) into an observation product.
3643
+ * Throws a `TypeError` on non-UTF-8 input and an `Error` on a parse failure.
3644
+ */
3645
+ export function parseRinexObs(bytes: Uint8Array): RinexObs;
3646
+
3647
+ /**
3648
+ * Sun-satellite-observer phase angle in degrees.
3649
+ */
3650
+ export function phaseAngle(satellite_position_km: Float64Array, sun_position_km: Float64Array, observer_position_km: Float64Array): Float64Array;
3651
+
3652
+ /**
3653
+ * Carrier phase converted to metres, `L = c / f * phi`.
3654
+ */
3655
+ export function phaseMeters(phi_cycles: number, f_hz: number): number;
3656
+
3657
+ /**
3658
+ * Numerically propagate an ECI Cartesian state and sample it at a grid of
3659
+ * epochs.
3660
+ *
3661
+ * `request` is a plain object; see the `PropagateStateRequest` TypeScript type.
3662
+ * Throws a `TypeError` for malformed input (wrong shape, unknown selector), a
3663
+ * `RangeError` for a non-positive initial step, and an `Error` if the engine's
3664
+ * propagation fails.
3665
+ */
3666
+ export function propagateState(request: any): Ephemeris;
3667
+
3668
+ /**
3669
+ * Stable lower-case label for a pseudorange drop reason.
3670
+ */
3671
+ export function pseudorangeDropReasonLabel(reason: PseudorangeDropReason): string;
3672
+
3673
+ /**
3674
+ * Pseudorange measurement variance, square metres.
3675
+ */
3676
+ export function pseudorangeVariance(elevation_deg: number, options: any): number;
3677
+
3678
+ /**
3679
+ * Convert a pseudorange rate in metres per second to Doppler shift in hertz.
3680
+ */
3681
+ export function rangeRateToDoppler(range_rate_m_s: number, carrier_hz: number): number;
3682
+
3683
+ /**
3684
+ * Build a sampled GPS C/A code replica, an `Int8Array`.
3685
+ */
3686
+ export function replica(prn: bigint, options: any): Int8Array;
3687
+
3688
+ /**
3689
+ * RINEX observation band frequency in hertz for a system and band digit.
3690
+ */
3691
+ export function rinexBandFrequencyHz(system: GnssSystem, band: string, glonass_channel?: number | null): number | undefined;
3692
+
3693
+ /**
3694
+ * RINEX observation band wavelength in metres for a system and band digit.
3695
+ */
3696
+ export function rinexBandWavelengthM(system: GnssSystem, band: string, glonass_channel?: number | null): number | undefined;
3697
+
3698
+ /**
3699
+ * Transform a 3x3 RTN covariance (flat row-major length 9) to ECI for the given
3700
+ * orbit state. Returns a flat row-major length-9 `Float64Array`.
3701
+ */
3702
+ export function rtnToEciCovariance(covariance_rtn: Float64Array, position_km: Float64Array, velocity_km_s: Float64Array): Float64Array;
3703
+
3704
+ /**
3705
+ * Select an IONEX product usable at `requestedEpochJ2000S`, degrading to a
3706
+ * diurnal-shifted prior product within `policy`.
3707
+ *
3708
+ * `products` is a JS array of parsed [`Ionex`] handles (consumed). `policy` is
3709
+ * optional (`{ maxStalenessS }` or `{ maxStalenessDays }`, default 3 days).
3710
+ * Throws a typed selection `Error` when no product fits the request and cap.
3711
+ */
3712
+ export function selectIonex(products: Ionex[], requested_epoch_j2000_s: number, policy: any): IonexSelection;
3713
+
3714
+ /**
3715
+ * Select an IONEX product usable across `[startEpochJ2000S, endEpochJ2000S]`.
3716
+ * See [`selectIonex`] for the single-epoch case and the arguments.
3717
+ */
3718
+ export function selectIonexOverRange(products: Ionex[], start_epoch_j2000_s: number, end_epoch_j2000_s: number, policy: any): IonexSelection;
3719
+
3720
+ /**
3721
+ * Select an SP3 product usable at `requestedEpochJ2000S`, degrading to the
3722
+ * most-recent prior product within `policy`. See [`selectIonex`] for the
3723
+ * `products` / `policy` conventions.
3724
+ */
3725
+ export function selectSp3(products: Sp3[], requested_epoch_j2000_s: number, policy: any): Sp3Selection;
3726
+
3727
+ /**
3728
+ * Select an SP3 product usable across `[startEpochJ2000S, endEpochJ2000S]`.
3729
+ */
3730
+ export function selectSp3OverRange(products: Sp3[], start_epoch_j2000_s: number, end_epoch_j2000_s: number, policy: any): Sp3Selection;
3731
+
3732
+ /**
3733
+ * Shadow fraction in `[0, 1]` for satellite and Sun position batches, km.
3734
+ *
3735
+ * `satellitePositionKm` and `sunPositionKm` are flat row-major `(n, 3)`
3736
+ * `Float64Array`s. Returns a `Float64Array` of length `n`.
3737
+ */
3738
+ export function shadowFraction(satellite_position_km: Float64Array, sun_position_km: Float64Array): Float64Array;
3739
+
3740
+ /**
3741
+ * Build satellite-keyed pseudorange sigmas in metres from `{ satelliteId,
3742
+ * elevationDeg, cn0Dbhz? }` entries. Invalid entries are dropped by the core.
3743
+ */
3744
+ export function sigmas(entries: any, options: any): SatelliteVector;
3745
+
3746
+ /**
3747
+ * Stable lower-case label for a slip reason.
3748
+ */
3749
+ export function slipReasonLabel(reason: SlipReason): string;
3750
+
3751
+ /**
3752
+ * Single-frequency Hatch carrier-smoothed code on band 1.
3753
+ */
3754
+ export function smoothCode(arc: any, options: any, hatch_window_cap?: number | null): SmoothCodeResult[];
3755
+
3756
+ /**
3757
+ * Dual-frequency ionosphere-free Hatch carrier-smoothed code.
3758
+ */
3759
+ export function smoothIonoFreeCode(arc: any, options: any, hatch_window_cap?: number | null): IonoFreeSmoothResult[];
3760
+
3761
+ /**
3762
+ * Post-correlation predetection SNR in decibels.
3763
+ */
3764
+ export function snrPostDb(cn0_dbhz: number, integration_time_s: number): number;
3765
+
3766
+ /**
3767
+ * Search integer ambiguities from a float PPP solution and re-solve fixed.
3768
+ *
3769
+ * `epochs` and `config` are plain objects (`PppEpoch`, `PppFixedConfig`);
3770
+ * `floatSolution` is the result of [`solvePppFloat`] over the same arc. Throws
3771
+ * a `TypeError` for malformed input and an `Error` if the solve fails.
3772
+ */
3773
+ export function solvePppFixed(sp3: Sp3, epochs: any, float_solution: PppFloatSolution, config: any): PppFixedSolution;
3774
+
3775
+ /**
3776
+ * Solve a static multi-epoch float PPP arc against an SP3 product.
3777
+ *
3778
+ * `epochs`, `initialState`, and `config` are plain objects; see the
3779
+ * `PppEpoch`, `PppFloatState`, and `PppFloatConfig` TypeScript types. Throws a
3780
+ * `TypeError` for malformed input and an `Error` if the solve fails.
3781
+ */
3782
+ export function solvePppFloat(sp3: Sp3, epochs: any, initial_state: any, config: any): PppFloatSolution;
3783
+
3784
+ /**
3785
+ * Solve a static fixed RTK baseline with residual validation / FDE.
3786
+ *
3787
+ * `config` is a plain object; see the `RtkFixedConfig` TypeScript type. Throws
3788
+ * a `TypeError` for malformed input and an `Error` if the solve fails.
3789
+ */
3790
+ export function solveRtkFixed(config: any): RtkFixedSolution;
3791
+
3792
+ /**
3793
+ * Solve a static float RTK baseline.
3794
+ *
3795
+ * `config` is a plain object; see the `RtkFloatConfig` TypeScript type. Throws
3796
+ * a `TypeError` for malformed input and an `Error` if the solve fails.
3797
+ */
3798
+ export function solveRtkFloat(config: any): RtkFloatSolution;
3799
+
3800
+ /**
3801
+ * Solve receiver ECEF velocity and clock drift from one epoch of observations.
3802
+ * `observations` is an array of `{ satelliteId, value, carrierHz,
3803
+ * satClockDriftSS? }`; `receiverEcefM` is a length-3 `Float64Array`.
3804
+ */
3805
+ export function solveVelocity(sp3: Sp3, observations: any, receiver_ecef_m: Float64Array, t_rx_j2000_s: number, options: any): VelocitySolution;
3806
+
3807
+ /**
3808
+ * Solve a receiver position, preferring precise SP3 products and falling back to
3809
+ * broadcast ephemeris, reporting which source was used and how stale it is.
3810
+ *
3811
+ * `precise` is a JS array of parsed [`Sp3`] handles (consumed); the staleness
3812
+ * layer selects among them at the request's receive epoch. `broadcast` is the
3813
+ * broadcast store used when no precise product covers the epoch within `policy`.
3814
+ * `request` is the SPP request object [`Sp3.solveSpp`] takes. Returns a
3815
+ * [`SourcedSolution`]; throws a typed fallback `Error` if the chosen path's
3816
+ * solve fails.
3817
+ */
3818
+ export function solveWithFallback(precise: Sp3[], broadcast: BroadcastEphemeris, request: any, policy: any): SourcedSolution;
3819
+
3820
+ /**
3821
+ * Angle in degrees between satellite nadir and the Sun direction.
3822
+ */
3823
+ export function sunAngle(satellite_position_km: Float64Array, sun_position_km: Float64Array): Float64Array;
3824
+
3825
+ /**
3826
+ * Sun elevation in degrees above the satellite local horizontal plane.
3827
+ */
3828
+ export function sunElevation(satellite_position_km: Float64Array, sun_position_km: Float64Array): Float64Array;
3829
+
3830
+ /**
3831
+ * Analytic Sun and Moon geocentric positions in the Earth-fixed ITRS (ECEF)
3832
+ * frame, metres, for a `BigInt64Array` of unix-microsecond epochs.
3833
+ */
3834
+ export function sunMoonEcef(epochs_unix_us: BigInt64Array): SunMoon;
3835
+
3836
+ /**
3837
+ * Analytic Sun and Moon positions in the geocentric ECI frame (mean equator and
3838
+ * equinox of date), metres, for a `BigInt64Array` of unix-microsecond epochs.
3839
+ */
3840
+ export function sunMoonEci(epochs_unix_us: BigInt64Array): SunMoon;
3841
+
3842
+ /**
3843
+ * Transform a batch of TEME states to GCRS, each at its own epoch.
3844
+ *
3845
+ * `positionKm` and `velocityKmS` are flat row-major `(n, 3)` `Float64Array`s;
3846
+ * `epochsUnixUs` is a `BigInt64Array` of unix-microsecond UTC stamps.
3847
+ * `skyfieldCompat` (default true) selects the AU-scaled Skyfield-parity path.
3848
+ */
3849
+ export function temeToGcrs(position_km: Float64Array, velocity_km_s: Float64Array, epochs_unix_us: BigInt64Array, skyfield_compat?: boolean | null): FrameStates;
3850
+
3851
+ /**
3852
+ * Short uppercase identifier for a time scale, e.g. `"GPST"`.
3853
+ */
3854
+ export function timeScaleAbbrev(scale: TimeScale): string;
3855
+
3856
+ /**
3857
+ * Export records as the compact mapping CSV (`prn,norad_cat_id,active,sp3_id`).
3858
+ *
3859
+ * `booleans` selects the `active` column rendering: `"lower"` (default) for
3860
+ * `true`/`false`, `"title"` for `True`/`False`.
3861
+ */
3862
+ export function toCsv(records: any, booleans?: string | null): string;
3863
+
3864
+ /**
3865
+ * Niell hydrostatic and wet mapping factors at an elevation.
3866
+ *
3867
+ * `elevationDeg` and `latDeg` are degrees, `heightM` the WGS84 ellipsoidal
3868
+ * height in metres, and (`jdWhole`, `jdFraction`) a split Julian date for the
3869
+ * seasonal day-of-year. Unity at the zenith; grows toward the horizon.
3870
+ */
3871
+ export function tropoMappingFactors(elevation_deg: number, lat_deg: number, height_m: number, jd_whole: number, jd_fraction: number): MappingFactors;
3872
+
3873
+ /**
3874
+ * Full slant tropospheric delay, positive metres.
3875
+ *
3876
+ * Composes the Saastamoinen zenith delays with the Niell mapping at
3877
+ * `elevationDeg`. The receiver is `latDeg` / `lonDeg` / `heightM`; `met` is the
3878
+ * `{ pressureHpa, temperatureK, relativeHumidity }` object; (`jdWhole`,
3879
+ * `jdFraction`) the split Julian date. Returns `0` at or below the horizon
3880
+ * (no signal path), matching the cross-binding contract.
3881
+ */
3882
+ export function tropoSlantDelay(elevation_deg: number, lat_deg: number, lon_deg: number, height_m: number, met: any, jd_whole: number, jd_fraction: number): number;
3883
+
3884
+ /**
3885
+ * Saastamoinen zenith tropospheric delays from supplied meteorology.
3886
+ *
3887
+ * `latDeg` is the receiver geodetic latitude in degrees, `heightM` the WGS84
3888
+ * ellipsoidal height in metres, and `met` a `{ pressureHpa, temperatureK,
3889
+ * relativeHumidity }` object. The hydrostatic term carries the latitude/height
3890
+ * gravity correction. Throws a `RangeError`/`Error` for out-of-domain input.
3891
+ */
3892
+ export function tropoZenithDelay(lat_deg: number, height_m: number, met: any): ZenithDelay;
3893
+
3894
+ /**
3895
+ * Provenance and coverage of the embedded UT1-UTC / delta-T (EOP) table.
3896
+ */
3897
+ export function ut1CoverageInfo(): Ut1Coverage;
3898
+
3899
+ /**
3900
+ * Validate catalog identity without an SP3 product.
3901
+ *
3902
+ * Returns a `Validation` reporting duplicate PRNs, duplicate NORAD ids, and
3903
+ * inactive/unusable PRNs.
3904
+ */
3905
+ export function validate(records: any): any;
3906
+
3907
+ /**
3908
+ * Validate catalog identity against a list of SP3/RINEX satellite tokens.
3909
+ *
3910
+ * Returns a `Validation` that additionally reports active+usable catalog ids
3911
+ * missing from `ids` and GPS ids in `ids` absent from the active+usable catalog.
3912
+ */
3913
+ export function validateAgainstSp3Ids(records: any, ids: any): any;
3914
+
3915
+ /**
3916
+ * Wavelength, metres, for frequency in Hz.
3917
+ */
3918
+ export function wavelength(frequency_hz: number): number;
3919
+
3920
+ /**
3921
+ * Carrier wavelength in metres for a constellation and canonical carrier band.
3922
+ */
3923
+ export function wavelengthM(system: GnssSystem, band: CarrierBand): number | undefined;
3924
+
3925
+ /**
3926
+ * Build satellite-keyed inverse-variance pseudorange weights.
3927
+ */
3928
+ export function weightVector(entries: any, options: any): SatelliteVector;
3929
+
3930
+ /**
3931
+ * Melbourne-Wubbena wide-lane ambiguity estimate, wide-lane cycles.
3932
+ */
3933
+ export function wideLaneCycles(phi1_cycles: number, phi2_cycles: number, p1_m: number, p2_m: number, f1_hz: number, f2_hz: number): number;
3934
+
3935
+ /**
3936
+ * Wide-lane wavelength `c / (f1 - f2)`, metres.
3937
+ */
3938
+ export function wideLaneWavelength(f1_hz: number, f2_hz: number): number;
3939
+
3940
+ export type InitInput = RequestInfo | URL | Response | BufferSource | WebAssembly.Module;
3941
+
3942
+ export interface InitOutput {
3943
+ readonly memory: WebAssembly.Memory;
3944
+ readonly __wbg_appliedcorrections_free: (a: number, b: number) => void;
3945
+ readonly __wbg_dgnsssolution_free: (a: number, b: number) => void;
3946
+ readonly __wbg_mappingfactors_free: (a: number, b: number) => void;
3947
+ readonly __wbg_pppfixedsolution_free: (a: number, b: number) => void;
3948
+ readonly __wbg_pppfloatsolution_free: (a: number, b: number) => void;
3949
+ readonly __wbg_sppsolution_free: (a: number, b: number) => void;
3950
+ readonly __wbg_zenithdelay_free: (a: number, b: number) => void;
3951
+ readonly appliedcorrections_corrected: (a: number) => [number, number, number];
3952
+ readonly appliedcorrections_dropped: (a: number) => [number, number];
3953
+ readonly changed: (a: any) => [number, number, number];
3954
+ readonly dgnssApply: (a: any, b: any) => [number, number, number];
3955
+ readonly dgnsssolution_baselineM: (a: number) => number;
3956
+ readonly dgnsssolution_baselineVectorM: (a: number) => [number, number];
3957
+ readonly dgnsssolution_droppedSats: (a: number) => [number, number];
3958
+ readonly dgnsssolution_geodetic: (a: number) => [number, number];
3959
+ readonly dgnsssolution_positionM: (a: number) => [number, number];
3960
+ readonly dgnsssolution_residualsM: (a: number) => [number, number];
3961
+ readonly dgnsssolution_rxClockS: (a: number) => number;
3962
+ readonly dgnsssolution_usedSats: (a: number) => [number, number];
3963
+ readonly diff: (a: any, b: any) => [number, number, number];
3964
+ readonly fromCelestrakJson: (a: number, b: number) => [number, number, number];
3965
+ readonly isValid: (a: any) => [number, number, number];
3966
+ readonly mappingfactors_dry: (a: number) => number;
3967
+ readonly mappingfactors_wet: (a: number) => number;
3968
+ readonly mergeNavcen: (a: any, b: any) => [number, number, number];
3969
+ readonly parseNavcen: (a: number, b: number) => [number, number, number];
3970
+ readonly pppfixedsolution_codeRmsM: (a: number) => number;
3971
+ readonly pppfixedsolution_converged: (a: number) => number;
3972
+ readonly pppfixedsolution_fixedAmbiguitiesCycles: (a: number) => any;
3973
+ readonly pppfixedsolution_fixedAmbiguitiesM: (a: number) => any;
3974
+ readonly pppfixedsolution_floatSolution: (a: number) => number;
3975
+ readonly pppfixedsolution_integerCandidates: (a: number) => number;
3976
+ readonly pppfixedsolution_integerRatio: (a: number) => number;
3977
+ readonly pppfixedsolution_integerStatus: (a: number) => [number, number];
3978
+ readonly pppfixedsolution_iterations: (a: number) => number;
3979
+ readonly pppfixedsolution_phaseRmsM: (a: number) => number;
3980
+ readonly pppfixedsolution_positionM: (a: number) => [number, number];
3981
+ readonly pppfixedsolution_usedSats: (a: number) => [number, number];
3982
+ readonly pppfixedsolution_weightedRmsM: (a: number) => number;
3983
+ readonly pppfixedsolution_ztdResidualM: (a: number) => [number, number];
3984
+ readonly pppfloatsolution_ambiguitiesM: (a: number) => any;
3985
+ readonly pppfloatsolution_codeRmsM: (a: number) => number;
3986
+ readonly pppfloatsolution_converged: (a: number) => number;
3987
+ readonly pppfloatsolution_iterations: (a: number) => number;
3988
+ readonly pppfloatsolution_phaseRmsM: (a: number) => number;
3989
+ readonly pppfloatsolution_positionM: (a: number) => [number, number];
3990
+ readonly pppfloatsolution_usedSats: (a: number) => [number, number];
3991
+ readonly pppfloatsolution_weightedRmsM: (a: number) => number;
3992
+ readonly pppfloatsolution_ztdResidualM: (a: number) => [number, number];
3993
+ readonly solvePppFixed: (a: number, b: any, c: number, d: any) => [number, number, number];
3994
+ readonly solvePppFloat: (a: number, b: any, c: any, d: any) => [number, number, number];
3995
+ readonly sppsolution_geodetic: (a: number) => [number, number];
3996
+ readonly sppsolution_positionM: (a: number) => [number, number];
3997
+ readonly sppsolution_residualsM: (a: number) => [number, number];
3998
+ readonly sppsolution_rxClockS: (a: number) => number;
3999
+ readonly sppsolution_usedSats: (a: number) => [number, number];
4000
+ readonly sppsolution_xM: (a: number) => number;
4001
+ readonly sppsolution_yM: (a: number) => number;
4002
+ readonly sppsolution_zM: (a: number) => number;
4003
+ readonly toCsv: (a: any, b: number, c: number) => [number, number, number, number];
4004
+ readonly tropoMappingFactors: (a: number, b: number, c: number, d: number, e: number) => [number, number, number];
4005
+ readonly tropoSlantDelay: (a: number, b: number, c: number, d: number, e: any, f: number, g: number) => [number, number, number];
4006
+ readonly tropoZenithDelay: (a: number, b: number, c: any) => [number, number, number];
4007
+ readonly validate: (a: any) => [number, number, number];
4008
+ readonly validateAgainstSp3Ids: (a: any, b: any) => [number, number, number];
4009
+ readonly zenithdelay_dryM: (a: number) => number;
4010
+ readonly zenithdelay_wetM: (a: number) => number;
4011
+ readonly __wbg_acquisitiongrid_free: (a: number, b: number) => void;
4012
+ readonly __wbg_acquisitionresult_free: (a: number, b: number) => void;
4013
+ readonly __wbg_carrierpair_free: (a: number, b: number) => void;
4014
+ readonly __wbg_correlationresult_free: (a: number, b: number) => void;
4015
+ readonly __wbg_ionofreepseudorangeresult_free: (a: number, b: number) => void;
4016
+ readonly __wbg_ionofreesmoothresult_free: (a: number, b: number) => void;
4017
+ readonly __wbg_raimweights_free: (a: number, b: number) => void;
4018
+ readonly __wbg_satellitevector_free: (a: number, b: number) => void;
4019
+ readonly __wbg_slipresult_free: (a: number, b: number) => void;
4020
+ readonly __wbg_smoothcoderesult_free: (a: number, b: number) => void;
4021
+ readonly __wbg_velocitysolution_free: (a: number, b: number) => void;
4022
+ readonly acquire: (a: number, b: number, c: bigint, d: any) => [number, number, number];
4023
+ readonly acquisitiongrid_codePhaseBins: (a: number) => number;
4024
+ readonly acquisitiongrid_dopplerHz: (a: number) => [number, number];
4025
+ readonly acquisitiongrid_dopplerStepHz: (a: number) => number;
4026
+ readonly acquisitiongrid_samplesPerChip: (a: number) => number;
4027
+ readonly acquisitionresult_codePhaseChips: (a: number) => number;
4028
+ readonly acquisitionresult_dopplerHz: (a: number) => number;
4029
+ readonly acquisitionresult_grid: (a: number) => number;
4030
+ readonly acquisitionresult_metric: (a: number) => number;
4031
+ readonly acquisitionresult_peakMetric: (a: number) => number;
4032
+ readonly acquisitionresult_peakPower: (a: number) => number;
4033
+ readonly caChip: (a: bigint, b: bigint) => [number, number, number];
4034
+ readonly caCode: (a: bigint) => [number, number, number, number];
4035
+ readonly carrierFrequencyHz: (a: number, b: number) => [number, number];
4036
+ readonly carrierpair_band1: (a: number) => number;
4037
+ readonly carrierpair_band2: (a: number) => number;
4038
+ readonly carrierpair_new: (a: number, b: number) => number;
4039
+ readonly coherentLoss: (a: number, b: number) => [number, number, number];
4040
+ readonly coherentLossDb: (a: number, b: number) => [number, number, number];
4041
+ readonly correlate: (a: number, b: number, c: bigint, d: any) => [number, number, number];
4042
+ readonly correlationresult_i: (a: number) => number;
4043
+ readonly correlationresult_power: (a: number) => number;
4044
+ readonly correlationresult_q: (a: number) => number;
4045
+ readonly defaultPair: (a: number) => number;
4046
+ readonly detectCycleSlips: (a: any, b: any) => [number, number, number, number];
4047
+ readonly dopplerToRangeRate: (a: number, b: number) => [number, number, number];
4048
+ readonly gamma: (a: number, b: number) => [number, number, number];
4049
+ readonly geometryFree: (a: number, b: number) => [number, number, number];
4050
+ readonly ionofreepseudorangeresult_combinedM: (a: number) => [number, number];
4051
+ readonly ionofreepseudorangeresult_combinedSats: (a: number) => [number, number];
4052
+ readonly ionofreepseudorangeresult_droppedReasons: (a: number) => [number, number];
4053
+ readonly ionofreepseudorangeresult_droppedSats: (a: number) => [number, number];
4054
+ readonly ionofreesmoothresult_lIfM: (a: number) => [number, number];
4055
+ readonly ionofreesmoothresult_pIfM: (a: number) => [number, number];
4056
+ readonly ionofreesmoothresult_pSmoothM: (a: number) => [number, number];
4057
+ readonly ionofreesmoothresult_reset: (a: number) => number;
4058
+ readonly ionofreesmoothresult_window: (a: number) => number;
4059
+ readonly ionosphereFree: (a: number, b: number, c: number, d: number) => [number, number, number];
4060
+ readonly ionosphereFreePhaseCycles: (a: number, b: number, c: number, d: number) => [number, number, number];
4061
+ readonly ionosphereFreePhaseM: (a: number, b: number, c: number, d: number) => [number, number, number];
4062
+ readonly ionosphereFreePseudoranges: (a: any, b: any, c: any) => [number, number, number];
4063
+ readonly melbourneWubbena: (a: number, b: number, c: number, d: number, e: number, f: number) => [number, number, number];
4064
+ readonly narrowLaneCode: (a: number, b: number, c: number, d: number) => [number, number, number];
4065
+ readonly noiseAmplification: (a: number, b: number) => [number, number, number];
4066
+ readonly phaseMeters: (a: number, b: number) => [number, number, number];
4067
+ readonly pseudorangeDropReasonLabel: (a: number) => [number, number];
4068
+ readonly pseudorangeVariance: (a: number, b: any) => [number, number, number];
4069
+ readonly raimweights_bySatellite: (a: number, b: number, c: number, d: number) => [number, number, number];
4070
+ readonly raimweights_isUnit: (a: number) => number;
4071
+ readonly raimweights_satelliteIds: (a: number) => [number, number];
4072
+ readonly raimweights_unit: () => number;
4073
+ readonly raimweights_weights: (a: number) => [number, number];
4074
+ readonly rangeRateToDoppler: (a: number, b: number) => [number, number, number];
4075
+ readonly replica: (a: bigint, b: any) => [number, number, number, number];
4076
+ readonly rinexBandFrequencyHz: (a: number, b: number, c: number, d: number) => [number, number, number, number];
4077
+ readonly rinexBandWavelengthM: (a: number, b: number, c: number, d: number) => [number, number, number, number];
4078
+ readonly satellitevector_satelliteIds: (a: number) => [number, number];
4079
+ readonly satellitevector_values: (a: number) => [number, number];
4080
+ readonly sigmas: (a: any, b: any) => [number, number, number];
4081
+ readonly slipReasonLabel: (a: number) => [number, number];
4082
+ readonly slipresult_gfM: (a: number) => [number, number];
4083
+ readonly slipresult_mwM: (a: number) => [number, number];
4084
+ readonly slipresult_reasons: (a: number) => [number, number];
4085
+ readonly slipresult_skipped: (a: number) => number;
4086
+ readonly slipresult_slip: (a: number) => number;
4087
+ readonly smoothCode: (a: any, b: any, c: number) => [number, number, number, number];
4088
+ readonly smoothIonoFreeCode: (a: any, b: any, c: number) => [number, number, number, number];
4089
+ readonly smoothcoderesult_pSmoothM: (a: number) => [number, number];
4090
+ readonly smoothcoderesult_reset: (a: number) => number;
4091
+ readonly smoothcoderesult_window: (a: number) => number;
4092
+ readonly snrPostDb: (a: number, b: number) => [number, number, number];
4093
+ readonly solveVelocity: (a: number, b: any, c: number, d: number, e: number, f: any) => [number, number, number];
4094
+ readonly velocitysolution_clockDriftSS: (a: number) => number;
4095
+ readonly velocitysolution_residualsMS: (a: number) => [number, number];
4096
+ readonly velocitysolution_speedMS: (a: number) => number;
4097
+ readonly velocitysolution_usedSats: (a: number) => [number, number];
4098
+ readonly velocitysolution_velocityMS: (a: number) => [number, number];
4099
+ readonly wavelengthM: (a: number, b: number) => [number, number];
4100
+ readonly weightVector: (a: any, b: any) => [number, number, number];
4101
+ readonly wideLaneCycles: (a: number, b: number, c: number, d: number, e: number, f: number) => [number, number, number];
4102
+ readonly wideLaneWavelength: (a: number, b: number) => [number, number, number];
4103
+ readonly __wbg_carrierphaseseries_free: (a: number, b: number) => void;
4104
+ readonly __wbg_clockepoch_free: (a: number, b: number) => void;
4105
+ readonly __wbg_clockseries_free: (a: number, b: number) => void;
4106
+ readonly __wbg_ionex_free: (a: number, b: number) => void;
4107
+ readonly __wbg_obsepoch_free: (a: number, b: number) => void;
4108
+ readonly __wbg_obsepochtime_free: (a: number, b: number) => void;
4109
+ readonly __wbg_observationfilter_free: (a: number, b: number) => void;
4110
+ readonly __wbg_observationvalueseries_free: (a: number, b: number) => void;
4111
+ readonly __wbg_obsheader_free: (a: number, b: number) => void;
4112
+ readonly __wbg_obsphaseshift_free: (a: number, b: number) => void;
4113
+ readonly __wbg_pseudorangeseries_free: (a: number, b: number) => void;
4114
+ readonly __wbg_rinexclock_free: (a: number, b: number) => void;
4115
+ readonly __wbg_rinexobs_free: (a: number, b: number) => void;
4116
+ readonly __wbg_signalpolicy_free: (a: number, b: number) => void;
4117
+ readonly __wbg_sp3_free: (a: number, b: number) => void;
4118
+ readonly __wbg_sp3interpolation_free: (a: number, b: number) => void;
4119
+ readonly __wbg_sp3state_free: (a: number, b: number) => void;
4120
+ readonly carrierphaseseries_codes: (a: number) => [number, number];
4121
+ readonly carrierphaseseries_frequencyHz: (a: number) => [number, number];
4122
+ readonly carrierphaseseries_length: (a: number) => number;
4123
+ readonly carrierphaseseries_lli: (a: number) => [number, number];
4124
+ readonly carrierphaseseries_phaseShiftCycles: (a: number) => [number, number];
4125
+ readonly carrierphaseseries_satellites: (a: number) => [number, number];
4126
+ readonly carrierphaseseries_ssi: (a: number) => [number, number];
4127
+ readonly carrierphaseseries_valueCycles: (a: number) => [number, number];
4128
+ readonly carrierphaseseries_valueM: (a: number) => [number, number];
4129
+ readonly carrierphaseseries_wavelengthM: (a: number) => [number, number];
4130
+ readonly clockepoch_day: (a: number) => number;
4131
+ readonly clockepoch_gpsSeconds: (a: number) => number;
4132
+ readonly clockepoch_hour: (a: number) => number;
4133
+ readonly clockepoch_minute: (a: number) => number;
4134
+ readonly clockepoch_month: (a: number) => number;
4135
+ readonly clockepoch_new: (a: number, b: number, c: number, d: number, e: number, f: number) => [number, number, number];
4136
+ readonly clockepoch_second: (a: number) => number;
4137
+ readonly clockepoch_year: (a: number) => number;
4138
+ readonly clockseries_biasS: (a: number) => [number, number];
4139
+ readonly clockseries_gpsSeconds: (a: number) => [number, number];
4140
+ readonly clockseries_length: (a: number) => number;
4141
+ readonly clockseries_satellite: (a: number) => [number, number];
4142
+ readonly ionex_baseRadiusKm: (a: number) => number;
4143
+ readonly ionex_exponent: (a: number) => number;
4144
+ readonly ionex_latNodesDeg: (a: number) => [number, number];
4145
+ readonly ionex_lonNodesDeg: (a: number) => [number, number];
4146
+ readonly ionex_mapEpochsJ2000S: (a: number) => [number, number];
4147
+ readonly ionex_shellHeightKm: (a: number) => number;
4148
+ readonly ionex_slantDelay: (a: number, b: number, c: number, d: number, e: number, f: number, g: number) => [number, number, number];
4149
+ readonly loadIonex: (a: number, b: number) => [number, number, number];
4150
+ readonly loadRinexClock: (a: number, b: number) => [number, number, number];
4151
+ readonly loadRinexClockLossy: (a: number, b: number) => [number, number, number];
4152
+ readonly loadRinexObs: (a: number, b: number) => [number, number, number];
4153
+ readonly loadSp3: (a: number, b: number) => [number, number, number];
4154
+ readonly obsepoch_epoch: (a: number) => number;
4155
+ readonly obsepoch_flag: (a: number) => number;
4156
+ readonly obsepoch_satelliteCount: (a: number) => number;
4157
+ readonly obsepoch_satellites: (a: number) => [number, number];
4158
+ readonly obsepochtime_day: (a: number) => number;
4159
+ readonly obsepochtime_hour: (a: number) => number;
4160
+ readonly obsepochtime_minute: (a: number) => number;
4161
+ readonly obsepochtime_month: (a: number) => number;
4162
+ readonly obsepochtime_second: (a: number) => number;
4163
+ readonly obsepochtime_year: (a: number) => number;
4164
+ readonly observationKindLabel: (a: number) => [number, number];
4165
+ readonly observationfilter_new: () => number;
4166
+ readonly observationfilter_withSystem: (a: number, b: number, c: number, d: number) => number;
4167
+ readonly observationvalueseries_codes: (a: number) => [number, number];
4168
+ readonly observationvalueseries_kinds: (a: number) => [number, number];
4169
+ readonly observationvalueseries_length: (a: number) => number;
4170
+ readonly observationvalueseries_lli: (a: number) => [number, number];
4171
+ readonly observationvalueseries_satellites: (a: number) => [number, number];
4172
+ readonly observationvalueseries_ssi: (a: number) => [number, number];
4173
+ readonly observationvalueseries_values: (a: number) => [number, number];
4174
+ readonly obsheader_antennaDeltaHenM: (a: number) => [number, number];
4175
+ readonly obsheader_approxPositionM: (a: number) => [number, number];
4176
+ readonly obsheader_glonassSlots: (a: number) => [number, number];
4177
+ readonly obsheader_intervalS: (a: number) => [number, number];
4178
+ readonly obsheader_markerName: (a: number) => [number, number];
4179
+ readonly obsheader_obsCodes: (a: number, b: number) => [number, number];
4180
+ readonly obsheader_phaseShifts: (a: number) => [number, number];
4181
+ readonly obsheader_systems: (a: number) => [number, number];
4182
+ readonly obsheader_timeOfFirstObsEpoch: (a: number) => number;
4183
+ readonly obsheader_timeOfFirstObsScale: (a: number) => number;
4184
+ readonly obsheader_version: (a: number) => number;
4185
+ readonly obsphaseshift_code: (a: number) => [number, number];
4186
+ readonly obsphaseshift_correctionCycles: (a: number) => number;
4187
+ readonly obsphaseshift_satellites: (a: number) => [number, number];
4188
+ readonly obsphaseshift_system: (a: number) => number;
4189
+ readonly parseRinexClock: (a: number, b: number) => [number, number, number];
4190
+ readonly parseRinexClockLossy: (a: number, b: number) => [number, number, number];
4191
+ readonly parseRinexObs: (a: number, b: number) => [number, number, number];
4192
+ readonly pseudorangeseries_length: (a: number) => number;
4193
+ readonly pseudorangeseries_rangesM: (a: number) => [number, number];
4194
+ readonly pseudorangeseries_satellites: (a: number) => [number, number];
4195
+ readonly rinexclock_clockS: (a: number, b: number, c: number, d: number) => [number, number, number, number];
4196
+ readonly rinexclock_clockSAtGpsSeconds: (a: number, b: number, c: number, d: number) => [number, number, number, number];
4197
+ readonly rinexclock_sampleCount: (a: number) => number;
4198
+ readonly rinexclock_satelliteCount: (a: number) => number;
4199
+ readonly rinexclock_satellites: (a: number) => [number, number];
4200
+ readonly rinexclock_series: (a: number) => [number, number];
4201
+ readonly rinexclock_seriesFor: (a: number, b: number, c: number) => number;
4202
+ readonly rinexobs_carrierPhaseRows: (a: number, b: number, c: number) => [number, number, number];
4203
+ readonly rinexobs_epoch: (a: number, b: number) => [number, number, number];
4204
+ readonly rinexobs_epochCount: (a: number) => number;
4205
+ readonly rinexobs_epochs: (a: number) => [number, number];
4206
+ readonly rinexobs_header: (a: number) => number;
4207
+ readonly rinexobs_obsCodes: (a: number, b: number) => [number, number];
4208
+ readonly rinexobs_observationValues: (a: number, b: number, c: number) => [number, number, number];
4209
+ readonly rinexobs_pseudoranges: (a: number, b: number, c: number) => [number, number, number];
4210
+ readonly signalpolicy_defaultFor: (a: number) => [number, number, number];
4211
+ readonly signalpolicy_new: () => number;
4212
+ readonly signalpolicy_withSystem: (a: number, b: number, c: number, d: number) => number;
4213
+ readonly sp3_dgnssCorrections: (a: number, b: any) => [number, number, number];
4214
+ readonly sp3_dgnssSolve: (a: number, b: any) => [number, number, number];
4215
+ readonly sp3_epochCount: (a: number) => number;
4216
+ readonly sp3_epochsJ2000Seconds: (a: number) => [number, number];
4217
+ readonly sp3_fde: (a: number, b: any) => [number, number, number];
4218
+ readonly sp3_interpolate: (a: number, b: number, c: number, d: number, e: number) => [number, number, number];
4219
+ readonly sp3_satellites: (a: number) => [number, number];
4220
+ readonly sp3_solveSpp: (a: number, b: any) => [number, number, number];
4221
+ readonly sp3_state: (a: number, b: number, c: number, d: number) => [number, number, number];
4222
+ readonly sp3_toSp3String: (a: number) => [number, number];
4223
+ readonly sp3interpolation_clockS: (a: number) => [number, number];
4224
+ readonly sp3interpolation_epochCount: (a: number) => number;
4225
+ readonly sp3interpolation_positionM: (a: number) => [number, number];
4226
+ readonly sp3state_clockEvent: (a: number) => number;
4227
+ readonly sp3state_clockPredicted: (a: number) => number;
4228
+ readonly sp3state_clockS: (a: number) => [number, number];
4229
+ readonly sp3state_maneuver: (a: number) => number;
4230
+ readonly sp3state_orbitPredicted: (a: number) => number;
4231
+ readonly sp3state_positionM: (a: number) => [number, number];
4232
+ readonly sp3state_velocityMS: (a: number) => [number, number];
4233
+ readonly __wbg_ephemeris_free: (a: number, b: number) => void;
4234
+ readonly __wbg_ionexselection_free: (a: number, b: number) => void;
4235
+ readonly __wbg_linkbudget_free: (a: number, b: number) => void;
4236
+ readonly __wbg_sourcedsolution_free: (a: number, b: number) => void;
4237
+ readonly __wbg_sp3selection_free: (a: number, b: number) => void;
4238
+ readonly broadcastephemeris_compareToSp3: (a: number, b: number, c: number, d: number, e: number, f: number, g: number) => [number, number, number];
4239
+ readonly broadcastephemeris_solveBroadcast: (a: number, b: any) => [number, number, number];
4240
+ readonly cn0: (a: number, b: number, c: number, d: number, e: number) => [number, number, number];
4241
+ readonly dishGain: (a: number, b: number, c: number) => [number, number, number];
4242
+ readonly eirp: (a: number, b: number) => [number, number, number];
4243
+ readonly ephemeris_epochCount: (a: number) => number;
4244
+ readonly ephemeris_positionKm: (a: number) => [number, number];
4245
+ readonly ephemeris_states: (a: number) => [number, number];
4246
+ readonly ephemeris_timesS: (a: number) => [number, number];
4247
+ readonly ephemeris_velocityKmS: (a: number) => [number, number];
4248
+ readonly fspl: (a: number, b: number) => [number, number, number];
4249
+ readonly ionexselection_ionex: (a: number) => number;
4250
+ readonly ionexselection_metadata: (a: number) => any;
4251
+ readonly ionexselection_slantDelay: (a: number, b: number, c: number, d: number, e: number, f: number, g: number) => [number, number, number];
4252
+ readonly linkbudget_eirpDbw: (a: number) => number;
4253
+ readonly linkbudget_fsplDb: (a: number) => number;
4254
+ readonly linkbudget_margin: (a: number) => [number, number, number];
4255
+ readonly linkbudget_new: (a: number, b: number, c: number, d: number, e: number, f: number) => [number, number, number];
4256
+ readonly linkbudget_otherLossesDb: (a: number) => number;
4257
+ readonly linkbudget_receiverGtDbk: (a: number) => number;
4258
+ readonly linkbudget_requiredCn0Dbhz: (a: number) => number;
4259
+ readonly propagateState: (a: any) => [number, number, number];
4260
+ readonly selectIonex: (a: number, b: number, c: number, d: any) => [number, number, number];
4261
+ readonly selectIonexOverRange: (a: number, b: number, c: number, d: number, e: any) => [number, number, number];
4262
+ readonly selectSp3: (a: number, b: number, c: number, d: any) => [number, number, number];
4263
+ readonly selectSp3OverRange: (a: number, b: number, c: number, d: number, e: any) => [number, number, number];
4264
+ readonly solveWithFallback: (a: number, b: number, c: number, d: any, e: any) => [number, number, number];
4265
+ readonly sourcedsolution_solution: (a: number) => number;
4266
+ readonly sourcedsolution_source: (a: number) => any;
4267
+ readonly sp3selection_metadata: (a: number) => any;
4268
+ readonly sp3selection_positionAtJ2000Seconds: (a: number, b: number, c: number, d: number) => [number, number, number];
4269
+ readonly sp3selection_sp3: (a: number) => number;
4270
+ readonly wavelength: (a: number) => [number, number, number];
4271
+ readonly __wbg_cdm_free: (a: number, b: number) => void;
4272
+ readonly __wbg_cdmobject_free: (a: number, b: number) => void;
4273
+ readonly __wbg_checksumwarning_free: (a: number, b: number) => void;
4274
+ readonly __wbg_fdesolution_free: (a: number, b: number) => void;
4275
+ readonly __wbg_groundstation_free: (a: number, b: number) => void;
4276
+ readonly __wbg_lookangles_free: (a: number, b: number) => void;
4277
+ readonly __wbg_omm_free: (a: number, b: number) => void;
4278
+ readonly __wbg_ommepoch_free: (a: number, b: number) => void;
4279
+ readonly __wbg_satellitepass_free: (a: number, b: number) => void;
4280
+ readonly __wbg_tle_free: (a: number, b: number) => void;
4281
+ readonly __wbg_tlepropagation_free: (a: number, b: number) => void;
4282
+ readonly __wbg_visibilityseries_free: (a: number, b: number) => void;
4283
+ readonly cdm_collisionProbability: (a: number) => [number, number];
4284
+ readonly cdm_collisionProbabilityMethod: (a: number) => [number, number];
4285
+ readonly cdm_creationDate: (a: number) => [number, number];
4286
+ readonly cdm_hardBodyRadiusM: (a: number) => [number, number];
4287
+ readonly cdm_messageId: (a: number) => [number, number];
4288
+ readonly cdm_missDistanceM: (a: number) => [number, number];
4289
+ readonly cdm_new: (a: number, b: number, c: any) => [number, number, number];
4290
+ readonly cdm_object1: (a: number) => number;
4291
+ readonly cdm_object2: (a: number) => number;
4292
+ readonly cdm_originator: (a: number) => [number, number];
4293
+ readonly cdm_relativeSpeedMS: (a: number) => [number, number];
4294
+ readonly cdm_tca: (a: number) => [number, number];
4295
+ readonly cdm_toKvnString: (a: number) => [number, number, number, number];
4296
+ readonly cdm_toXmlString: (a: number) => [number, number, number, number];
4297
+ readonly cdmobject_catalogName: (a: number) => [number, number];
4298
+ readonly cdmobject_covarianceRtn: (a: number) => [number, number];
4299
+ readonly cdmobject_internationalDesignator: (a: number) => [number, number];
4300
+ readonly cdmobject_new: (a: number, b: number, c: number, d: number, e: number, f: number, g: any) => [number, number, number];
4301
+ readonly cdmobject_objectDesignator: (a: number) => [number, number];
4302
+ readonly cdmobject_objectName: (a: number) => [number, number];
4303
+ readonly cdmobject_objectType: (a: number) => [number, number];
4304
+ readonly cdmobject_positionKm: (a: number) => [number, number];
4305
+ readonly cdmobject_refFrame: (a: number) => [number, number];
4306
+ readonly cdmobject_velocityKmS: (a: number) => [number, number];
4307
+ readonly checksumwarning_computed: (a: number) => number;
4308
+ readonly checksumwarning_expected: (a: number) => number;
4309
+ readonly checksumwarning_lineLabel: (a: number) => [number, number];
4310
+ readonly fdesolution_excluded: (a: number) => [number, number];
4311
+ readonly fdesolution_geodetic: (a: number) => [number, number];
4312
+ readonly fdesolution_iterations: (a: number) => number;
4313
+ readonly fdesolution_positionM: (a: number) => [number, number];
4314
+ readonly fdesolution_residualsM: (a: number) => [number, number];
4315
+ readonly fdesolution_rxClockS: (a: number) => number;
4316
+ readonly fdesolution_usedSats: (a: number) => [number, number];
4317
+ readonly groundstation_altitudeM: (a: number) => number;
4318
+ readonly groundstation_latitudeDeg: (a: number) => number;
4319
+ readonly groundstation_longitudeDeg: (a: number) => number;
4320
+ readonly groundstation_new: (a: number, b: number, c: number, d: number) => number;
4321
+ readonly lookangles_azimuthDeg: (a: number) => [number, number];
4322
+ readonly lookangles_elevationDeg: (a: number) => [number, number];
4323
+ readonly lookangles_epochCount: (a: number) => number;
4324
+ readonly lookangles_rangeKm: (a: number) => [number, number];
4325
+ readonly omm_argOfPericenterDeg: (a: number) => number;
4326
+ readonly omm_bstar: (a: number) => number;
4327
+ readonly omm_ccsdsOmmVers: (a: number) => [number, number];
4328
+ readonly omm_centerName: (a: number) => [number, number];
4329
+ readonly omm_classificationType: (a: number) => [number, number];
4330
+ readonly omm_creationDate: (a: number) => [number, number];
4331
+ readonly omm_eccentricity: (a: number) => number;
4332
+ readonly omm_elementSetNo: (a: number) => number;
4333
+ readonly omm_ephemerisType: (a: number) => number;
4334
+ readonly omm_epoch: (a: number) => number;
4335
+ readonly omm_inclinationDeg: (a: number) => number;
4336
+ readonly omm_meanAnomalyDeg: (a: number) => number;
4337
+ readonly omm_meanElementTheory: (a: number) => [number, number];
4338
+ readonly omm_meanMotion: (a: number) => number;
4339
+ readonly omm_meanMotionDdot: (a: number) => number;
4340
+ readonly omm_meanMotionDot: (a: number) => number;
4341
+ readonly omm_new: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number, i: any) => [number, number, number];
4342
+ readonly omm_noradCatId: (a: number) => number;
4343
+ readonly omm_objectId: (a: number) => [number, number];
4344
+ readonly omm_objectName: (a: number) => [number, number];
4345
+ readonly omm_originator: (a: number) => [number, number];
4346
+ readonly omm_raOfAscNodeDeg: (a: number) => number;
4347
+ readonly omm_refFrame: (a: number) => [number, number];
4348
+ readonly omm_revAtEpoch: (a: number) => bigint;
4349
+ readonly omm_timeSystem: (a: number) => [number, number];
4350
+ readonly omm_toJsonString: (a: number) => [number, number];
4351
+ readonly omm_toKvnString: (a: number) => [number, number];
4352
+ readonly omm_toXmlString: (a: number) => [number, number];
4353
+ readonly ommepoch_day: (a: number) => number;
4354
+ readonly ommepoch_hour: (a: number) => number;
4355
+ readonly ommepoch_iso8601: (a: number) => [number, number];
4356
+ readonly ommepoch_microsecond: (a: number) => number;
4357
+ readonly ommepoch_minute: (a: number) => number;
4358
+ readonly ommepoch_month: (a: number) => number;
4359
+ readonly ommepoch_new: (a: number, b: number, c: number, d: number, e: number, f: number, g: number) => [number, number, number];
4360
+ readonly ommepoch_second: (a: number) => number;
4361
+ readonly ommepoch_year: (a: number) => number;
4362
+ readonly parseCdmKvn: (a: number, b: number) => [number, number, number];
4363
+ readonly parseCdmXml: (a: number, b: number) => [number, number, number];
4364
+ readonly parseOmmJson: (a: number, b: number) => [number, number, number];
4365
+ readonly parseOmmKvn: (a: number, b: number) => [number, number, number];
4366
+ readonly parseOmmXml: (a: number, b: number) => [number, number, number];
4367
+ readonly satellitepass_aosUnixUs: (a: number) => bigint;
4368
+ readonly satellitepass_culminationUnixUs: (a: number) => bigint;
4369
+ readonly satellitepass_durationS: (a: number) => number;
4370
+ readonly satellitepass_losUnixUs: (a: number) => bigint;
4371
+ readonly satellitepass_maxElevationDeg: (a: number) => number;
4372
+ readonly tle_argPerigeeDeg: (a: number) => number;
4373
+ readonly tle_bstar: (a: number) => number;
4374
+ readonly tle_catalogNumber: (a: number) => [number, number];
4375
+ readonly tle_checksumWarnings: (a: number) => [number, number];
4376
+ readonly tle_classification: (a: number) => [number, number];
4377
+ readonly tle_eccentricity: (a: number) => number;
4378
+ readonly tle_epochDayOfYear: (a: number) => number;
4379
+ readonly tle_epochYear: (a: number) => number;
4380
+ readonly tle_findPasses: (a: number, b: number, c: bigint, d: bigint, e: number, f: number, g: number, h: number, i: number, j: number) => [number, number, number, number];
4381
+ readonly tle_inclinationDeg: (a: number) => number;
4382
+ readonly tle_internationalDesignator: (a: number) => [number, number];
4383
+ readonly tle_lookAngles: (a: number, b: number, c: number, d: number) => [number, number, number];
4384
+ readonly tle_meanAnomalyDeg: (a: number) => number;
4385
+ readonly tle_meanMotionDot: (a: number) => number;
4386
+ readonly tle_meanMotionDoubleDot: (a: number) => number;
4387
+ readonly tle_meanMotionRevPerDay: (a: number) => number;
4388
+ readonly tle_new: (a: number, b: number, c: number, d: number, e: number, f: number) => [number, number, number];
4389
+ readonly tle_propagate: (a: number, b: number, c: number) => [number, number, number];
4390
+ readonly tle_raanDeg: (a: number) => number;
4391
+ readonly tle_revNumber: (a: number) => number;
4392
+ readonly tle_toLines: (a: number) => [number, number];
4393
+ readonly tle_visibilitySeries: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number, i: number, j: number) => [number, number, number];
4394
+ readonly tlepropagation_epochCount: (a: number) => number;
4395
+ readonly tlepropagation_positionKm: (a: number) => [number, number];
4396
+ readonly tlepropagation_velocityKmS: (a: number) => [number, number];
4397
+ readonly visibilityseries_azimuthDeg: (a: number) => [number, number];
4398
+ readonly visibilityseries_elevationDeg: (a: number) => [number, number];
4399
+ readonly visibilityseries_epochCount: (a: number) => number;
4400
+ readonly visibilityseries_epochUnixUs: (a: number) => [number, number];
4401
+ readonly visibilityseries_passCount: (a: number) => number;
4402
+ readonly visibilityseries_passes: (a: number) => [number, number];
4403
+ readonly visibilityseries_rangeKm: (a: number) => [number, number];
4404
+ readonly visibilityseries_visible: (a: number) => [number, number];
4405
+ readonly __wbg_antenna_free: (a: number, b: number) => void;
4406
+ readonly __wbg_antex_free: (a: number, b: number) => void;
4407
+ readonly __wbg_antexdatetime_free: (a: number, b: number) => void;
4408
+ readonly __wbg_broadcastephemeris_free: (a: number, b: number) => void;
4409
+ readonly __wbg_broadcastevaluation_free: (a: number, b: number) => void;
4410
+ readonly __wbg_broadcastrecordjs_free: (a: number, b: number) => void;
4411
+ readonly __wbg_clockpolynomialjs_free: (a: number, b: number) => void;
4412
+ readonly __wbg_collisionprobability_free: (a: number, b: number) => void;
4413
+ readonly __wbg_conjunctionstate_free: (a: number, b: number) => void;
4414
+ readonly __wbg_encounterframe_free: (a: number, b: number) => void;
4415
+ readonly __wbg_glonassrecordjs_free: (a: number, b: number) => void;
4416
+ readonly __wbg_ionocorrectionsjs_free: (a: number, b: number) => void;
4417
+ readonly __wbg_keplerianelementsjs_free: (a: number, b: number) => void;
4418
+ readonly __wbg_klobucharalphabetajs_free: (a: number, b: number) => void;
4419
+ readonly __wbg_sp3mergeflag_free: (a: number, b: number) => void;
4420
+ readonly __wbg_sp3mergereport_free: (a: number, b: number) => void;
4421
+ readonly __wbg_sp3mergeresult_free: (a: number, b: number) => void;
4422
+ readonly antenna_antennaType: (a: number) => [number, number];
4423
+ readonly antenna_daziDeg: (a: number) => number;
4424
+ readonly antenna_frequencies: (a: number) => [number, number];
4425
+ readonly antenna_id: (a: number) => [number, number];
4426
+ readonly antenna_kind: (a: number) => [number, number];
4427
+ readonly antenna_pco: (a: number, b: number, c: number) => [number, number, number, number];
4428
+ readonly antenna_pcv: (a: number, b: number, c: number, d: number, e: number, f: number) => [number, number, number];
4429
+ readonly antenna_serial: (a: number) => [number, number];
4430
+ readonly antenna_sinexCode: (a: number) => [number, number];
4431
+ readonly antenna_validAt: (a: number, b: number) => number;
4432
+ readonly antenna_validFrom: (a: number) => number;
4433
+ readonly antenna_validUntil: (a: number) => number;
4434
+ readonly antenna_zenithEndDeg: (a: number) => number;
4435
+ readonly antenna_zenithStartDeg: (a: number) => number;
4436
+ readonly antenna_zenithStepDeg: (a: number) => number;
4437
+ readonly antex_antenna: (a: number, b: number, c: number) => number;
4438
+ readonly antex_antennaCount: (a: number) => number;
4439
+ readonly antex_antennaIds: (a: number) => [number, number];
4440
+ readonly antex_satelliteAntenna: (a: number, b: number, c: number, d: number) => number;
4441
+ readonly antexdatetime_day: (a: number) => number;
4442
+ readonly antexdatetime_hour: (a: number) => number;
4443
+ readonly antexdatetime_minute: (a: number) => number;
4444
+ readonly antexdatetime_month: (a: number) => number;
4445
+ readonly antexdatetime_new: (a: number, b: number, c: number, d: number, e: number, f: number) => [number, number, number];
4446
+ readonly antexdatetime_second: (a: number) => number;
4447
+ readonly antexdatetime_year: (a: number) => number;
4448
+ readonly broadcastephemeris_glonassRecordCount: (a: number) => number;
4449
+ readonly broadcastephemeris_glonassRecords: (a: number) => [number, number];
4450
+ readonly broadcastephemeris_ionoCorrections: (a: number) => number;
4451
+ readonly broadcastephemeris_leapSeconds: (a: number) => [number, number];
4452
+ readonly broadcastephemeris_recordCount: (a: number) => number;
4453
+ readonly broadcastephemeris_records: (a: number) => [number, number];
4454
+ readonly broadcastevaluation_clockPolynomialS: (a: number) => number;
4455
+ readonly broadcastevaluation_clockS: (a: number) => number;
4456
+ readonly broadcastevaluation_groupDelayS: (a: number) => number;
4457
+ readonly broadcastevaluation_keplerIterations: (a: number) => number;
4458
+ readonly broadcastevaluation_positionM: (a: number) => [number, number, number, number];
4459
+ readonly broadcastevaluation_relativisticClockS: (a: number) => number;
4460
+ readonly broadcastevaluation_tSowS: (a: number) => number;
4461
+ readonly broadcastevaluation_xM: (a: number) => number;
4462
+ readonly broadcastevaluation_yM: (a: number) => number;
4463
+ readonly broadcastevaluation_zM: (a: number) => number;
4464
+ readonly broadcastrecordjs_clock: (a: number) => number;
4465
+ readonly broadcastrecordjs_elements: (a: number) => number;
4466
+ readonly broadcastrecordjs_evaluate: (a: number, b: number) => [number, number, number];
4467
+ readonly broadcastrecordjs_fitIntervalS: (a: number) => [number, number];
4468
+ readonly broadcastrecordjs_groupDelayS: (a: number) => number;
4469
+ readonly broadcastrecordjs_message: (a: number) => number;
4470
+ readonly broadcastrecordjs_satellite: (a: number) => [number, number];
4471
+ readonly broadcastrecordjs_svAccuracyM: (a: number) => number;
4472
+ readonly broadcastrecordjs_svHealth: (a: number) => number;
4473
+ readonly broadcastrecordjs_week: (a: number) => number;
4474
+ readonly clockpolynomialjs_af0: (a: number) => number;
4475
+ readonly clockpolynomialjs_af1: (a: number) => number;
4476
+ readonly clockpolynomialjs_af2: (a: number) => number;
4477
+ readonly clockpolynomialjs_tocSow: (a: number) => number;
4478
+ readonly collisionProbability: (a: number, b: number, c: number, d: number, e: number) => [number, number, number];
4479
+ readonly collisionprobability_missKm: (a: number) => number;
4480
+ readonly collisionprobability_pc: (a: number) => number;
4481
+ readonly collisionprobability_relativeSpeedKmS: (a: number) => number;
4482
+ readonly collisionprobability_sigmaXKm: (a: number) => number;
4483
+ readonly collisionprobability_sigmaZKm: (a: number) => number;
4484
+ readonly conjunctionstate_covarianceKm2: (a: number) => [number, number];
4485
+ readonly conjunctionstate_new: (a: number, b: number, c: number, d: number, e: number, f: number) => [number, number, number];
4486
+ readonly conjunctionstate_positionKm: (a: number) => [number, number];
4487
+ readonly conjunctionstate_velocityKmS: (a: number) => [number, number];
4488
+ readonly covarianceIsPositiveSemidefinite: (a: number, b: number) => [number, number, number];
4489
+ readonly covarianceIsSymmetric: (a: number, b: number) => [number, number, number];
4490
+ readonly encounterFrame: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number) => [number, number, number];
4491
+ readonly encounterPlaneCovariance: (a: number, b: number, c: number) => [number, number, number, number];
4492
+ readonly encounterframe_missKm: (a: number) => number;
4493
+ readonly encounterframe_relativePositionKm: (a: number) => [number, number];
4494
+ readonly encounterframe_relativeSpeedKmS: (a: number) => number;
4495
+ readonly encounterframe_relativeVelocityKmS: (a: number) => [number, number];
4496
+ readonly encounterframe_xHat: (a: number) => [number, number];
4497
+ readonly encounterframe_yHat: (a: number) => [number, number];
4498
+ readonly encounterframe_zHat: (a: number) => [number, number];
4499
+ readonly glonassrecordjs_accelerationMS2: (a: number) => [number, number];
4500
+ readonly glonassrecordjs_clockBiasS: (a: number) => number;
4501
+ readonly glonassrecordjs_freqChannel: (a: number) => number;
4502
+ readonly glonassrecordjs_gammaN: (a: number) => number;
4503
+ readonly glonassrecordjs_positionM: (a: number) => [number, number];
4504
+ readonly glonassrecordjs_satellite: (a: number) => [number, number];
4505
+ readonly glonassrecordjs_svHealth: (a: number) => number;
4506
+ readonly glonassrecordjs_toeUtcJ2000S: (a: number) => number;
4507
+ readonly glonassrecordjs_velocityMS: (a: number) => [number, number];
4508
+ readonly ionocorrectionsjs_beidou: (a: number) => number;
4509
+ readonly ionocorrectionsjs_gps: (a: number) => number;
4510
+ readonly keplerianelementsjs_cic: (a: number) => number;
4511
+ readonly keplerianelementsjs_cis: (a: number) => number;
4512
+ readonly keplerianelementsjs_crc: (a: number) => number;
4513
+ readonly keplerianelementsjs_crs: (a: number) => number;
4514
+ readonly keplerianelementsjs_cuc: (a: number) => number;
4515
+ readonly keplerianelementsjs_cus: (a: number) => number;
4516
+ readonly keplerianelementsjs_deltaN: (a: number) => number;
4517
+ readonly keplerianelementsjs_e: (a: number) => number;
4518
+ readonly keplerianelementsjs_i0: (a: number) => number;
4519
+ readonly keplerianelementsjs_idot: (a: number) => number;
4520
+ readonly keplerianelementsjs_m0: (a: number) => number;
4521
+ readonly keplerianelementsjs_omega: (a: number) => number;
4522
+ readonly keplerianelementsjs_omega0: (a: number) => number;
4523
+ readonly keplerianelementsjs_omegaDot: (a: number) => number;
4524
+ readonly keplerianelementsjs_sqrtA: (a: number) => number;
4525
+ readonly keplerianelementsjs_toeSow: (a: number) => number;
4526
+ readonly klobucharalphabetajs_alpha: (a: number) => [number, number];
4527
+ readonly klobucharalphabetajs_beta: (a: number) => [number, number];
4528
+ readonly loadAntex: (a: number, b: number) => [number, number, number];
4529
+ readonly loadRinexNav: (a: number, b: number) => [number, number, number];
4530
+ readonly mergeSp3: (a: number, b: number, c: any) => [number, number, number];
4531
+ readonly navMessageLabel: (a: number) => [number, number];
4532
+ readonly parseRinexGlonassRecords: (a: number, b: number) => [number, number, number, number];
4533
+ readonly parseRinexIonoCorrections: (a: number, b: number) => [number, number, number];
4534
+ readonly parseRinexLeapSeconds: (a: number, b: number) => [number, number, number, number];
4535
+ readonly parseRinexNav: (a: number, b: number) => [number, number, number];
4536
+ readonly parseRinexNavRecords: (a: number, b: number) => [number, number, number, number];
4537
+ readonly rtnToEciCovariance: (a: number, b: number, c: number, d: number, e: number, f: number) => [number, number, number, number];
4538
+ readonly sp3mergeflag_epochJ2000Seconds: (a: number) => number;
4539
+ readonly sp3mergeflag_satellite: (a: number) => [number, number];
4540
+ readonly sp3mergeflag_sources: (a: number) => [number, number];
4541
+ readonly sp3mergereport_positionOutlierCount: (a: number) => number;
4542
+ readonly sp3mergereport_positionOutliers: (a: number) => [number, number];
4543
+ readonly sp3mergereport_quarantined: (a: number) => [number, number];
4544
+ readonly sp3mergereport_quarantinedCount: (a: number) => number;
4545
+ readonly sp3mergereport_singleSource: (a: number) => [number, number];
4546
+ readonly sp3mergereport_singleSourceCount: (a: number) => number;
4547
+ readonly sp3mergeresult_report: (a: number) => number;
4548
+ readonly sp3mergeresult_sp3: (a: number) => number;
4549
+ readonly __wbg_dop_free: (a: number, b: number) => void;
4550
+ readonly __wbg_dopseries_free: (a: number, b: number) => void;
4551
+ readonly __wbg_framestates_free: (a: number, b: number) => void;
4552
+ readonly __wbg_gnssweektow_free: (a: number, b: number) => void;
4553
+ readonly __wbg_instant_free: (a: number, b: number) => void;
4554
+ readonly __wbg_juliandate_free: (a: number, b: number) => void;
4555
+ readonly __wbg_leapsecondtable_free: (a: number, b: number) => void;
4556
+ readonly __wbg_rtkfixedsolution_free: (a: number, b: number) => void;
4557
+ readonly __wbg_rtkfloatsolution_free: (a: number, b: number) => void;
4558
+ readonly __wbg_spk_free: (a: number, b: number) => void;
4559
+ readonly __wbg_spksegment_free: (a: number, b: number) => void;
4560
+ readonly __wbg_spkstate_free: (a: number, b: number) => void;
4561
+ readonly __wbg_ut1coverage_free: (a: number, b: number) => void;
4562
+ readonly __wbg_wgs84geodetic_free: (a: number, b: number) => void;
4563
+ readonly dop_fromAzEl: (a: number, b: number, c: number, d: number, e: number, f: number, g: number) => [number, number, number];
4564
+ readonly dop_fromLineOfSight: (a: number, b: number, c: number, d: number, e: number) => [number, number, number];
4565
+ readonly dop_gdop: (a: number) => number;
4566
+ readonly dop_hdop: (a: number) => number;
4567
+ readonly dop_pdop: (a: number) => number;
4568
+ readonly dop_tdop: (a: number) => number;
4569
+ readonly dop_vdop: (a: number) => number;
4570
+ readonly dopseries_epochCount: (a: number) => number;
4571
+ readonly dopseries_gdop: (a: number) => [number, number];
4572
+ readonly dopseries_hdop: (a: number) => [number, number];
4573
+ readonly dopseries_j2000Seconds: (a: number) => [number, number];
4574
+ readonly dopseries_pdop: (a: number) => [number, number];
4575
+ readonly dopseries_satelliteCount: (a: number) => [number, number];
4576
+ readonly dopseries_satellitesAt: (a: number, b: number) => [number, number];
4577
+ readonly dopseries_stepIndex: (a: number) => [number, number];
4578
+ readonly dopseries_tdop: (a: number) => [number, number];
4579
+ readonly dopseries_vdop: (a: number) => [number, number];
4580
+ readonly ecefToGeodetic: (a: number, b: number) => [number, number, number, number];
4581
+ readonly framestates_epochCount: (a: number) => number;
4582
+ readonly framestates_positionKm: (a: number) => [number, number];
4583
+ readonly framestates_velocityKmS: (a: number) => [number, number];
4584
+ readonly gcrsToItrs: (a: number, b: number, c: number, d: number, e: number) => [number, number, number, number];
4585
+ readonly geodeticToEcef: (a: number, b: number) => [number, number, number, number];
4586
+ readonly gnssDop: (a: number, b: number, c: number, d: number, e: number) => [number, number, number];
4587
+ readonly gnssDopSeries: (a: number, b: number, c: number, d: number, e: number, f: any) => [number, number, number];
4588
+ readonly gnssweektow_new: (a: number, b: number, c: number) => [number, number, number];
4589
+ readonly gnssweektow_normalized: (a: number) => [number, number, number];
4590
+ readonly gnssweektow_system: (a: number) => number;
4591
+ readonly gnssweektow_towS: (a: number) => number;
4592
+ readonly gnssweektow_unrolledWeek: (a: number, b: number) => [number, number, number];
4593
+ readonly gnssweektow_week: (a: number) => number;
4594
+ readonly instant_deltaTSeconds: (a: number) => number;
4595
+ readonly instant_fromUnixMicros: (a: bigint) => number;
4596
+ readonly instant_fromUtc: (a: number, b: number, c: number, d: number, e: number, f: number, g: number) => [number, number, number];
4597
+ readonly instant_gastRadians: (a: number) => [number, number, number];
4598
+ readonly instant_gmstRadians: (a: number) => [number, number, number];
4599
+ readonly instant_jdWhole: (a: number) => number;
4600
+ readonly instant_meanObliquityRadians: (a: number) => [number, number, number];
4601
+ readonly instant_nutationAngles: (a: number) => [number, number, number, number];
4602
+ readonly instant_nutationMatrix: (a: number) => [number, number, number, number];
4603
+ readonly instant_precessionMatrix: (a: number) => [number, number, number, number];
4604
+ readonly instant_tdbFraction: (a: number) => number;
4605
+ readonly instant_tdbJd: (a: number) => number;
4606
+ readonly instant_tdbJdSplit: (a: number) => number;
4607
+ readonly instant_ttFraction: (a: number) => number;
4608
+ readonly instant_ttJd: (a: number) => number;
4609
+ readonly instant_ttJdSplit: (a: number) => number;
4610
+ readonly instant_unixMicros: (a: number) => bigint;
4611
+ readonly instant_ut1Fraction: (a: number) => number;
4612
+ readonly instant_ut1Jd: (a: number) => number;
4613
+ readonly instant_ut1JdSplit: (a: number) => number;
4614
+ readonly itrsToGcrs: (a: number, b: number, c: number, d: number) => [number, number, number, number];
4615
+ readonly juliandate_fraction: (a: number) => number;
4616
+ readonly juliandate_jd: (a: number) => number;
4617
+ readonly juliandate_whole: (a: number) => number;
4618
+ readonly leapSecondTableInfo: () => number;
4619
+ readonly leapSecondsBatch: (a: number, b: number) => [number, number, number, number];
4620
+ readonly leapsecondtable_entries: (a: number) => number;
4621
+ readonly leapsecondtable_firstMjd: (a: number) => number;
4622
+ readonly leapsecondtable_lastMjd: (a: number) => number;
4623
+ readonly leapsecondtable_source: (a: number) => [number, number];
4624
+ readonly rtkfixedsolution_converged: (a: number) => number;
4625
+ readonly rtkfixedsolution_fixedBaselineM: (a: number) => [number, number];
4626
+ readonly rtkfixedsolution_floatBaselineM: (a: number) => [number, number];
4627
+ readonly rtkfixedsolution_integerCandidates: (a: number) => number;
4628
+ readonly rtkfixedsolution_integerRatio: (a: number) => [number, number];
4629
+ readonly rtkfixedsolution_integerStatus: (a: number) => [number, number];
4630
+ readonly rtkfloatsolution_ambiguitiesM: (a: number) => any;
4631
+ readonly rtkfloatsolution_baselineM: (a: number) => [number, number];
4632
+ readonly rtkfloatsolution_codeRmsM: (a: number) => number;
4633
+ readonly rtkfloatsolution_converged: (a: number) => number;
4634
+ readonly rtkfloatsolution_iterations: (a: number) => number;
4635
+ readonly rtkfloatsolution_nObservations: (a: number) => number;
4636
+ readonly rtkfloatsolution_phaseRmsM: (a: number) => number;
4637
+ readonly rtkfloatsolution_weightedRmsM: (a: number) => number;
4638
+ readonly solveRtkFixed: (a: any) => [number, number, number];
4639
+ readonly solveRtkFloat: (a: any) => [number, number, number];
4640
+ readonly spk_internalName: (a: number) => [number, number];
4641
+ readonly spk_new: (a: number, b: number) => [number, number, number];
4642
+ readonly spk_segmentCount: (a: number) => number;
4643
+ readonly spk_segments: (a: number) => [number, number];
4644
+ readonly spk_state: (a: number, b: number, c: number, d: number) => [number, number, number];
4645
+ readonly spksegment_center: (a: number) => number;
4646
+ readonly spksegment_dataType: (a: number) => number;
4647
+ readonly spksegment_frame: (a: number) => number;
4648
+ readonly spksegment_name: (a: number) => [number, number];
4649
+ readonly spksegment_startEt: (a: number) => number;
4650
+ readonly spksegment_stopEt: (a: number) => number;
4651
+ readonly spksegment_target: (a: number) => number;
4652
+ readonly spkstate_center: (a: number) => number;
4653
+ readonly spkstate_frame: (a: number) => number;
4654
+ readonly spkstate_positionKm: (a: number) => [number, number];
4655
+ readonly spkstate_target: (a: number) => number;
4656
+ readonly spkstate_velocityKmS: (a: number) => [number, number];
4657
+ readonly temeToGcrs: (a: number, b: number, c: number, d: number, e: number, f: number, g: number) => [number, number, number];
4658
+ readonly timeScaleAbbrev: (a: number) => [number, number];
4659
+ readonly ut1CoverageInfo: () => number;
4660
+ readonly ut1coverage_entries: (a: number) => number;
4661
+ readonly ut1coverage_firstJdTt: (a: number) => number;
4662
+ readonly ut1coverage_firstMjd: (a: number) => number;
4663
+ readonly ut1coverage_lastJdTt: (a: number) => number;
4664
+ readonly ut1coverage_lastMjd: (a: number) => number;
4665
+ readonly ut1coverage_source: (a: number) => [number, number];
4666
+ readonly wgs84geodetic_heightM: (a: number) => number;
4667
+ readonly wgs84geodetic_latRad: (a: number) => number;
4668
+ readonly wgs84geodetic_lonRad: (a: number) => number;
4669
+ readonly wgs84geodetic_new: (a: number, b: number, c: number, d: number) => [number, number, number];
4670
+ readonly leapSeconds: (a: number, b: number, c: number) => number;
4671
+ readonly __wbg_sunmoon_free: (a: number, b: number) => void;
4672
+ readonly carrierBandName: (a: number) => [number, number];
4673
+ readonly gnssSystemLabel: (a: number) => [number, number];
4674
+ readonly gnssSystemLetter: (a: number) => [number, number];
4675
+ readonly sunMoonEcef: (a: number, b: number) => [number, number, number];
4676
+ readonly sunMoonEci: (a: number, b: number) => [number, number, number];
4677
+ readonly sunmoon_epochCount: (a: number) => number;
4678
+ readonly sunmoon_frame: (a: number) => [number, number];
4679
+ readonly sunmoon_moon: (a: number) => [number, number];
4680
+ readonly sunmoon_sun: (a: number) => [number, number];
4681
+ readonly decodeCrinex: (a: number, b: number) => [number, number, number, number];
4682
+ readonly decodeCrinexLines: (a: number, b: number) => [number, number, number, number];
4683
+ readonly earthAngularRadius: (a: number, b: number) => [number, number, number, number];
4684
+ readonly eclipseStatus: (a: number, b: number, c: number, d: number) => [number, number, number, number];
4685
+ readonly forceJ2Acceleration: (a: number, b: number, c: number, d: number) => [number, number, number, number];
4686
+ readonly forceTwoBodyAcceleration: (a: number, b: number, c: number, d: number) => [number, number, number, number];
4687
+ readonly loadCrinex: (a: number, b: number) => [number, number, number, number];
4688
+ readonly moonAngle: (a: number, b: number, c: number, d: number) => [number, number, number, number];
4689
+ readonly phaseAngle: (a: number, b: number, c: number, d: number, e: number, f: number) => [number, number, number, number];
4690
+ readonly shadowFraction: (a: number, b: number, c: number, d: number) => [number, number, number, number];
4691
+ readonly sunAngle: (a: number, b: number, c: number, d: number) => [number, number, number, number];
4692
+ readonly sunElevation: (a: number, b: number, c: number, d: number) => [number, number, number, number];
4693
+ readonly __wbindgen_malloc: (a: number, b: number) => number;
4694
+ readonly __wbindgen_realloc: (a: number, b: number, c: number, d: number) => number;
4695
+ readonly __wbindgen_exn_store: (a: number) => void;
4696
+ readonly __externref_table_alloc: () => number;
4697
+ readonly __wbindgen_externrefs: WebAssembly.Table;
4698
+ readonly __externref_table_dealloc: (a: number) => void;
4699
+ readonly __wbindgen_free: (a: number, b: number, c: number) => void;
4700
+ readonly __externref_drop_slice: (a: number, b: number) => void;
4701
+ readonly __wbindgen_start: () => void;
4702
+ }
4703
+
4704
+ export type SyncInitInput = BufferSource | WebAssembly.Module;
4705
+
4706
+ /**
4707
+ * Instantiates the given `module`, which can either be bytes or
4708
+ * a precompiled `WebAssembly.Module`.
4709
+ *
4710
+ * @param {{ module: SyncInitInput }} module - Passing `SyncInitInput` directly is deprecated.
4711
+ *
4712
+ * @returns {InitOutput}
4713
+ */
4714
+ export function initSync(module: { module: SyncInitInput } | SyncInitInput): InitOutput;
4715
+
4716
+ /**
4717
+ * If `module_or_path` is {RequestInfo} or {URL}, makes a request and
4718
+ * for everything else, calls `WebAssembly.instantiate` directly.
4719
+ *
4720
+ * @param {{ module_or_path: InitInput | Promise<InitInput> }} module_or_path - Passing `InitInput` directly is deprecated.
4721
+ *
4722
+ * @returns {Promise<InitOutput>}
4723
+ */
4724
+ export default function __wbg_init (module_or_path?: { module_or_path: InitInput | Promise<InitInput> } | InitInput | Promise<InitInput>): Promise<InitOutput>;