@neilberkman/sidereon 0.10.1 → 0.11.1

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.
@@ -734,6 +734,25 @@ class BiasSet {
734
734
  if (Symbol.dispose) BiasSet.prototype[Symbol.dispose] = BiasSet.prototype.free;
735
735
  exports.BiasSet = BiasSet;
736
736
 
737
+ /**
738
+ * Broadcast group-delay term selector.
739
+ * @enum {0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10}
740
+ */
741
+ const BroadcastDelayTerm = Object.freeze({
742
+ GpsTgd: 0, "0": "GpsTgd",
743
+ GalileoBgdE5aE1: 1, "1": "GalileoBgdE5aE1",
744
+ GalileoBgdE5bE1: 2, "2": "GalileoBgdE5bE1",
745
+ BeidouTgd1: 3, "3": "BeidouTgd1",
746
+ BeidouTgd2: 4, "4": "BeidouTgd2",
747
+ CnavIscL1Ca: 5, "5": "CnavIscL1Ca",
748
+ CnavIscL2C: 6, "6": "CnavIscL2C",
749
+ CnavIscL5I5: 7, "7": "CnavIscL5I5",
750
+ CnavIscL5Q5: 8, "8": "CnavIscL5Q5",
751
+ CnavIscL1Cd: 9, "9": "CnavIscL1Cd",
752
+ CnavIscL1Cp: 10, "10": "CnavIscL1Cp",
753
+ });
754
+ exports.BroadcastDelayTerm = BroadcastDelayTerm;
755
+
737
756
  /**
738
757
  * A parsed broadcast ephemeris store from a RINEX NAV file. `records` are the
739
758
  * usable GPS/Galileo/BeiDou records selected by the core default SPP policy.
@@ -815,6 +834,22 @@ class BroadcastEphemeris {
815
834
  }
816
835
  return takeFromExternrefTable0(ret[0]);
817
836
  }
837
+ /**
838
+ * Evaluate the store-selected broadcast state for `satellite` at GPST-like
839
+ * J2000 seconds. Returns `undefined` when no usable record covers the query.
840
+ * @param {string} satellite
841
+ * @param {number} t_j2000_s
842
+ * @returns {BroadcastStoreEvaluation | undefined}
843
+ */
844
+ evaluate(satellite, t_j2000_s) {
845
+ const ptr0 = passStringToWasm0(satellite, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
846
+ const len0 = WASM_VECTOR_LEN;
847
+ const ret = wasm.broadcastephemeris_evaluate(this.__wbg_ptr, ptr0, len0, t_j2000_s);
848
+ if (ret[2]) {
849
+ throw takeFromExternrefTable0(ret[1]);
850
+ }
851
+ return ret[0] === 0 ? undefined : BroadcastStoreEvaluation.__wrap(ret[0]);
852
+ }
818
853
  /**
819
854
  * Number of usable GLONASS records.
820
855
  * @returns {number}
@@ -1015,6 +1050,46 @@ class BroadcastEvaluation {
1015
1050
  if (Symbol.dispose) BroadcastEvaluation.prototype[Symbol.dispose] = BroadcastEvaluation.prototype.free;
1016
1051
  exports.BroadcastEvaluation = BroadcastEvaluation;
1017
1052
 
1053
+ /**
1054
+ * Per-signal broadcast group-delay terms retained from a NAV record.
1055
+ */
1056
+ class BroadcastGroupDelaysJs {
1057
+ static __wrap(ptr) {
1058
+ const obj = Object.create(BroadcastGroupDelaysJs.prototype);
1059
+ obj.__wbg_ptr = ptr;
1060
+ BroadcastGroupDelaysJsFinalization.register(obj, obj.__wbg_ptr, obj);
1061
+ return obj;
1062
+ }
1063
+ __destroy_into_raw() {
1064
+ const ptr = this.__wbg_ptr;
1065
+ this.__wbg_ptr = 0;
1066
+ BroadcastGroupDelaysJsFinalization.unregister(this);
1067
+ return ptr;
1068
+ }
1069
+ free() {
1070
+ const ptr = this.__destroy_into_raw();
1071
+ wasm.__wbg_broadcastgroupdelaysjs_free(ptr, 0);
1072
+ }
1073
+ /**
1074
+ * @param {CnavSignal} signal
1075
+ * @returns {number | undefined}
1076
+ */
1077
+ cnavSingleFrequencyCorrectionS(signal) {
1078
+ const ret = wasm.broadcastgroupdelaysjs_cnavSingleFrequencyCorrectionS(this.__wbg_ptr, signal);
1079
+ return ret[0] === 0 ? undefined : ret[1];
1080
+ }
1081
+ /**
1082
+ * @param {BroadcastDelayTerm} term
1083
+ * @returns {number | undefined}
1084
+ */
1085
+ get(term) {
1086
+ const ret = wasm.broadcastgroupdelaysjs_get(this.__wbg_ptr, term);
1087
+ return ret[0] === 0 ? undefined : ret[1];
1088
+ }
1089
+ }
1090
+ if (Symbol.dispose) BroadcastGroupDelaysJs.prototype[Symbol.dispose] = BroadcastGroupDelaysJs.prototype.free;
1091
+ exports.BroadcastGroupDelaysJs = BroadcastGroupDelaysJs;
1092
+
1018
1093
  /**
1019
1094
  * One GPS, Galileo, or BeiDou broadcast ephemeris record from RINEX NAV.
1020
1095
  */
@@ -1043,6 +1118,14 @@ class BroadcastRecordJs {
1043
1118
  const ret = wasm.broadcastrecordjs_clock(this.__wbg_ptr);
1044
1119
  return ClockPolynomialJs.__wrap(ret);
1045
1120
  }
1121
+ /**
1122
+ * CNAV-family extension fields, or `undefined` for legacy records.
1123
+ * @returns {CnavParametersJs | undefined}
1124
+ */
1125
+ get cnav() {
1126
+ const ret = wasm.broadcastrecordjs_cnav(this.__wbg_ptr);
1127
+ return ret === 0 ? undefined : CnavParametersJs.__wrap(ret);
1128
+ }
1046
1129
  /**
1047
1130
  * Keplerian orbital elements in SI units.
1048
1131
  * @returns {KeplerianElementsJs}
@@ -1081,6 +1164,30 @@ class BroadcastRecordJs {
1081
1164
  const ret = wasm.broadcastrecordjs_groupDelayS(this.__wbg_ptr);
1082
1165
  return ret;
1083
1166
  }
1167
+ /**
1168
+ * Broadcast group-delay terms carried by this record.
1169
+ * @returns {BroadcastGroupDelaysJs}
1170
+ */
1171
+ get groupDelays() {
1172
+ const ret = wasm.broadcastrecordjs_groupDelays(this.__wbg_ptr);
1173
+ return BroadcastGroupDelaysJs.__wrap(ret);
1174
+ }
1175
+ /**
1176
+ * Native issue-of-data value.
1177
+ * @returns {number}
1178
+ */
1179
+ get issue() {
1180
+ const ret = wasm.broadcastrecordjs_issue(this.__wbg_ptr);
1181
+ return ret >>> 0;
1182
+ }
1183
+ /**
1184
+ * Message family attached to the issue-of-data value.
1185
+ * @returns {NavMessage}
1186
+ */
1187
+ get issueMessage() {
1188
+ const ret = wasm.broadcastrecordjs_issueMessage(this.__wbg_ptr);
1189
+ return ret;
1190
+ }
1084
1191
  /**
1085
1192
  * Broadcast message type.
1086
1193
  * @returns {NavMessage}
@@ -1133,6 +1240,68 @@ class BroadcastRecordJs {
1133
1240
  if (Symbol.dispose) BroadcastRecordJs.prototype[Symbol.dispose] = BroadcastRecordJs.prototype.free;
1134
1241
  exports.BroadcastRecordJs = BroadcastRecordJs;
1135
1242
 
1243
+ /**
1244
+ * Store-level broadcast ephemeris evaluation at a J2000 query epoch.
1245
+ */
1246
+ class BroadcastStoreEvaluation {
1247
+ static __wrap(ptr) {
1248
+ const obj = Object.create(BroadcastStoreEvaluation.prototype);
1249
+ obj.__wbg_ptr = ptr;
1250
+ BroadcastStoreEvaluationFinalization.register(obj, obj.__wbg_ptr, obj);
1251
+ return obj;
1252
+ }
1253
+ __destroy_into_raw() {
1254
+ const ptr = this.__wbg_ptr;
1255
+ this.__wbg_ptr = 0;
1256
+ BroadcastStoreEvaluationFinalization.unregister(this);
1257
+ return ptr;
1258
+ }
1259
+ free() {
1260
+ const ptr = this.__destroy_into_raw();
1261
+ wasm.__wbg_broadcaststoreevaluation_free(ptr, 0);
1262
+ }
1263
+ /**
1264
+ * @returns {number}
1265
+ */
1266
+ get clockS() {
1267
+ const ret = wasm.broadcaststoreevaluation_clockS(this.__wbg_ptr);
1268
+ return ret;
1269
+ }
1270
+ /**
1271
+ * @returns {Float64Array}
1272
+ */
1273
+ get positionM() {
1274
+ const ret = wasm.broadcaststoreevaluation_positionM(this.__wbg_ptr);
1275
+ var v1 = getArrayF64FromWasm0(ret[0], ret[1]).slice();
1276
+ wasm.__wbindgen_free(ret[0], ret[1] * 8, 8);
1277
+ return v1;
1278
+ }
1279
+ /**
1280
+ * @returns {string}
1281
+ */
1282
+ get satellite() {
1283
+ let deferred1_0;
1284
+ let deferred1_1;
1285
+ try {
1286
+ const ret = wasm.broadcaststoreevaluation_satellite(this.__wbg_ptr);
1287
+ deferred1_0 = ret[0];
1288
+ deferred1_1 = ret[1];
1289
+ return getStringFromWasm0(ret[0], ret[1]);
1290
+ } finally {
1291
+ wasm.__wbindgen_free(deferred1_0, deferred1_1, 1);
1292
+ }
1293
+ }
1294
+ /**
1295
+ * @returns {number}
1296
+ */
1297
+ get tJ2000S() {
1298
+ const ret = wasm.broadcaststoreevaluation_tJ2000S(this.__wbg_ptr);
1299
+ return ret;
1300
+ }
1301
+ }
1302
+ if (Symbol.dispose) BroadcastStoreEvaluation.prototype[Symbol.dispose] = BroadcastStoreEvaluation.prototype.free;
1303
+ exports.BroadcastStoreEvaluation = BroadcastStoreEvaluation;
1304
+
1136
1305
  /**
1137
1306
  * A canonical GNSS carrier band. The JS value matches the variant order below.
1138
1307
  * @enum {0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15}
@@ -2279,6 +2448,126 @@ class ClockSeries {
2279
2448
  if (Symbol.dispose) ClockSeries.prototype[Symbol.dispose] = ClockSeries.prototype.free;
2280
2449
  exports.ClockSeries = ClockSeries;
2281
2450
 
2451
+ /**
2452
+ * CNAV/CNAV-2 fields with no legacy LNAV counterpart.
2453
+ */
2454
+ class CnavParametersJs {
2455
+ static __wrap(ptr) {
2456
+ const obj = Object.create(CnavParametersJs.prototype);
2457
+ obj.__wbg_ptr = ptr;
2458
+ CnavParametersJsFinalization.register(obj, obj.__wbg_ptr, obj);
2459
+ return obj;
2460
+ }
2461
+ __destroy_into_raw() {
2462
+ const ptr = this.__wbg_ptr;
2463
+ this.__wbg_ptr = 0;
2464
+ CnavParametersJsFinalization.unregister(this);
2465
+ return ptr;
2466
+ }
2467
+ free() {
2468
+ const ptr = this.__destroy_into_raw();
2469
+ wasm.__wbg_cnavparametersjs_free(ptr, 0);
2470
+ }
2471
+ /**
2472
+ * @returns {number}
2473
+ */
2474
+ get adotMS() {
2475
+ const ret = wasm.cnavparametersjs_adotMS(this.__wbg_ptr);
2476
+ return ret;
2477
+ }
2478
+ /**
2479
+ * @returns {number}
2480
+ */
2481
+ get deltaN0DotRadS2() {
2482
+ const ret = wasm.cnavparametersjs_deltaN0DotRadS2(this.__wbg_ptr);
2483
+ return ret;
2484
+ }
2485
+ /**
2486
+ * @returns {number | undefined}
2487
+ */
2488
+ get flags() {
2489
+ const ret = wasm.cnavparametersjs_flags(this.__wbg_ptr);
2490
+ return ret === Number.MAX_SAFE_INTEGER ? undefined : ret;
2491
+ }
2492
+ /**
2493
+ * @returns {number}
2494
+ */
2495
+ get topTowS() {
2496
+ const ret = wasm.cnavparametersjs_topTowS(this.__wbg_ptr);
2497
+ return ret;
2498
+ }
2499
+ /**
2500
+ * @returns {number}
2501
+ */
2502
+ get topWeek() {
2503
+ const ret = wasm.cnavparametersjs_topWeek(this.__wbg_ptr);
2504
+ return ret >>> 0;
2505
+ }
2506
+ /**
2507
+ * @returns {number}
2508
+ */
2509
+ get transmissionTimeSow() {
2510
+ const ret = wasm.cnavparametersjs_transmissionTimeSow(this.__wbg_ptr);
2511
+ return ret;
2512
+ }
2513
+ /**
2514
+ * @returns {number}
2515
+ */
2516
+ get uraEdIndex() {
2517
+ const ret = wasm.cnavparametersjs_uraEdIndex(this.__wbg_ptr);
2518
+ return ret;
2519
+ }
2520
+ /**
2521
+ * @returns {number}
2522
+ */
2523
+ get uraNed0Index() {
2524
+ const ret = wasm.cnavparametersjs_uraNed0Index(this.__wbg_ptr);
2525
+ return ret;
2526
+ }
2527
+ /**
2528
+ * @returns {number}
2529
+ */
2530
+ get uraNed1Index() {
2531
+ const ret = wasm.cnavparametersjs_uraNed1Index(this.__wbg_ptr);
2532
+ return ret;
2533
+ }
2534
+ /**
2535
+ * @returns {number}
2536
+ */
2537
+ get uraNed2Index() {
2538
+ const ret = wasm.cnavparametersjs_uraNed2Index(this.__wbg_ptr);
2539
+ return ret;
2540
+ }
2541
+ /**
2542
+ * @param {number} week
2543
+ * @param {number} tow_s
2544
+ * @returns {number | undefined}
2545
+ */
2546
+ uraNedM(week, tow_s) {
2547
+ const ret = wasm.cnavparametersjs_uraNedM(this.__wbg_ptr, week, tow_s);
2548
+ if (ret[3]) {
2549
+ throw takeFromExternrefTable0(ret[2]);
2550
+ }
2551
+ return ret[0] === 0 ? undefined : ret[1];
2552
+ }
2553
+ }
2554
+ if (Symbol.dispose) CnavParametersJs.prototype[Symbol.dispose] = CnavParametersJs.prototype.free;
2555
+ exports.CnavParametersJs = CnavParametersJs;
2556
+
2557
+ /**
2558
+ * GPS/QZSS signal used for CNAV inter-signal correction accessors.
2559
+ * @enum {0 | 1 | 2 | 3 | 4 | 5}
2560
+ */
2561
+ const CnavSignal = Object.freeze({
2562
+ L1Ca: 0, "0": "L1Ca",
2563
+ L2C: 1, "1": "L2C",
2564
+ L5I5: 2, "2": "L5I5",
2565
+ L5Q5: 3, "3": "L5Q5",
2566
+ L1Cp: 4, "4": "L1Cp",
2567
+ L1Cd: 5, "5": "L1Cd",
2568
+ });
2569
+ exports.CnavSignal = CnavSignal;
2570
+
2282
2571
  /**
2283
2572
  * Collision-probability result and encounter-plane summary.
2284
2573
  */
@@ -2632,91 +2921,236 @@ if (Symbol.dispose) CorrelationResult.prototype[Symbol.dispose] = CorrelationRes
2632
2921
  exports.CorrelationResult = CorrelationResult;
2633
2922
 
2634
2923
  /**
2635
- * A computed look-angle grid for a set of satellites and ground stations at one
2636
- * epoch. Build with [`coverageLookAngles`].
2924
+ * Propagated state plus covariance nodes.
2637
2925
  */
2638
- class CoverageGrid {
2926
+ class CovarianceEphemeris {
2639
2927
  static __wrap(ptr) {
2640
- const obj = Object.create(CoverageGrid.prototype);
2928
+ const obj = Object.create(CovarianceEphemeris.prototype);
2641
2929
  obj.__wbg_ptr = ptr;
2642
- CoverageGridFinalization.register(obj, obj.__wbg_ptr, obj);
2930
+ CovarianceEphemerisFinalization.register(obj, obj.__wbg_ptr, obj);
2643
2931
  return obj;
2644
2932
  }
2645
2933
  __destroy_into_raw() {
2646
2934
  const ptr = this.__wbg_ptr;
2647
2935
  this.__wbg_ptr = 0;
2648
- CoverageGridFinalization.unregister(this);
2936
+ CovarianceEphemerisFinalization.unregister(this);
2649
2937
  return ptr;
2650
2938
  }
2651
2939
  free() {
2652
2940
  const ptr = this.__destroy_into_raw();
2653
- wasm.__wbg_coveragegrid_free(ptr, 0);
2654
- }
2655
- /**
2656
- * Number of visible satellites per station at `minElevationDeg`, as a flat
2657
- * array of length `stationCount`. Delegates to
2658
- * `sidereon_core::astro::coverage::access_counts`.
2659
- * @param {number} min_elevation_deg
2660
- * @returns {Uint32Array}
2661
- */
2662
- accessCounts(min_elevation_deg) {
2663
- const ret = wasm.coveragegrid_accessCounts(this.__wbg_ptr, min_elevation_deg);
2664
- var v1 = getArrayU32FromWasm0(ret[0], ret[1]).slice();
2665
- wasm.__wbindgen_free(ret[0], ret[1] * 4, 4);
2666
- return v1;
2941
+ wasm.__wbg_covarianceephemeris_free(ptr, 0);
2667
2942
  }
2668
2943
  /**
2669
- * The look angle for one satellite/station pair as `[azimuthDeg,
2670
- * elevationDeg, rangeKm]`, or `undefined` when that cell failed (the
2671
- * satellite was below the horizon geometry the kernel rejects) or the
2672
- * indices are out of range.
2673
- * @param {number} satellite_index
2674
- * @param {number} station_index
2675
- * @returns {Float64Array | undefined}
2944
+ * @returns {Float64Array}
2676
2945
  */
2677
- lookAngle(satellite_index, station_index) {
2678
- const ret = wasm.coveragegrid_lookAngle(this.__wbg_ptr, satellite_index, station_index);
2679
- let v1;
2680
- if (ret[0] !== 0) {
2681
- v1 = getArrayF64FromWasm0(ret[0], ret[1]).slice();
2682
- wasm.__wbindgen_free(ret[0], ret[1] * 8, 8);
2683
- }
2946
+ get covariance() {
2947
+ const ret = wasm.covarianceephemeris_covariance(this.__wbg_ptr);
2948
+ var v1 = getArrayF64FromWasm0(ret[0], ret[1]).slice();
2949
+ wasm.__wbindgen_free(ret[0], ret[1] * 8, 8);
2684
2950
  return v1;
2685
2951
  }
2686
2952
  /**
2687
- * Maximum successful elevation per station, degrees, as a flat array of
2688
- * length `stationCount`. A station with no successful cell reports `NaN`.
2689
- * Delegates to `sidereon_core::astro::coverage::max_elevation`.
2953
+ * @param {number} epoch_tdb_seconds
2690
2954
  * @returns {Float64Array}
2691
2955
  */
2692
- maxElevationDeg() {
2693
- const ret = wasm.coveragegrid_maxElevationDeg(this.__wbg_ptr);
2956
+ covarianceAt(epoch_tdb_seconds) {
2957
+ const ret = wasm.covarianceephemeris_covarianceAt(this.__wbg_ptr, epoch_tdb_seconds);
2958
+ if (ret[3]) {
2959
+ throw takeFromExternrefTable0(ret[2]);
2960
+ }
2694
2961
  var v1 = getArrayF64FromWasm0(ret[0], ret[1]).slice();
2695
2962
  wasm.__wbindgen_free(ret[0], ret[1] * 8, 8);
2696
2963
  return v1;
2697
2964
  }
2698
2965
  /**
2699
- * Number of satellites (grid rows).
2700
2966
  * @returns {number}
2701
2967
  */
2702
- get satelliteCount() {
2703
- const ret = wasm.coveragegrid_satelliteCount(this.__wbg_ptr);
2968
+ get epochCount() {
2969
+ const ret = wasm.covarianceephemeris_epochCount(this.__wbg_ptr);
2704
2970
  return ret >>> 0;
2705
2971
  }
2706
2972
  /**
2707
- * Number of ground stations (grid columns).
2708
- * @returns {number}
2973
+ * @returns {string}
2709
2974
  */
2710
- get stationCount() {
2711
- const ret = wasm.coveragegrid_stationCount(this.__wbg_ptr);
2712
- return ret >>> 0;
2975
+ get frame() {
2976
+ let deferred1_0;
2977
+ let deferred1_1;
2978
+ try {
2979
+ const ret = wasm.covarianceephemeris_frame(this.__wbg_ptr);
2980
+ deferred1_0 = ret[0];
2981
+ deferred1_1 = ret[1];
2982
+ return getStringFromWasm0(ret[0], ret[1]);
2983
+ } finally {
2984
+ wasm.__wbindgen_free(deferred1_0, deferred1_1, 1);
2985
+ }
2713
2986
  }
2714
2987
  /**
2715
- * Row-major `[satellite][station]` visibility mask at `minElevationDeg`, as a
2716
- * flat `Uint8Array` of `1` (visible) / `0`. Error cells are not visible.
2717
- * Delegates to `sidereon_core::astro::coverage::visible_mask`.
2718
- * @param {number} min_elevation_deg
2719
- * @returns {Uint8Array}
2988
+ * @returns {Float64Array}
2989
+ */
2990
+ get positionKm() {
2991
+ const ret = wasm.covarianceephemeris_positionKm(this.__wbg_ptr);
2992
+ var v1 = getArrayF64FromWasm0(ret[0], ret[1]).slice();
2993
+ wasm.__wbindgen_free(ret[0], ret[1] * 8, 8);
2994
+ return v1;
2995
+ }
2996
+ /**
2997
+ * @returns {Float64Array}
2998
+ */
2999
+ get timesS() {
3000
+ const ret = wasm.covarianceephemeris_timesS(this.__wbg_ptr);
3001
+ var v1 = getArrayF64FromWasm0(ret[0], ret[1]).slice();
3002
+ wasm.__wbindgen_free(ret[0], ret[1] * 8, 8);
3003
+ return v1;
3004
+ }
3005
+ /**
3006
+ * @returns {Float64Array}
3007
+ */
3008
+ get velocityKmS() {
3009
+ const ret = wasm.covarianceephemeris_velocityKmS(this.__wbg_ptr);
3010
+ var v1 = getArrayF64FromWasm0(ret[0], ret[1]).slice();
3011
+ wasm.__wbindgen_free(ret[0], ret[1] * 8, 8);
3012
+ return v1;
3013
+ }
3014
+ }
3015
+ if (Symbol.dispose) CovarianceEphemeris.prototype[Symbol.dispose] = CovarianceEphemeris.prototype.free;
3016
+ exports.CovarianceEphemeris = CovarianceEphemeris;
3017
+
3018
+ /**
3019
+ * Frame a 6x6 state covariance is expressed in.
3020
+ * @enum {0 | 1}
3021
+ */
3022
+ const CovarianceFrame = Object.freeze({
3023
+ Inertial: 0, "0": "Inertial",
3024
+ Rtn: 1, "1": "Rtn",
3025
+ });
3026
+ exports.CovarianceFrame = CovarianceFrame;
3027
+
3028
+ /**
3029
+ * Covariances returned by explicit STM transport.
3030
+ */
3031
+ class CovarianceTransportResult {
3032
+ static __wrap(ptr) {
3033
+ const obj = Object.create(CovarianceTransportResult.prototype);
3034
+ obj.__wbg_ptr = ptr;
3035
+ CovarianceTransportResultFinalization.register(obj, obj.__wbg_ptr, obj);
3036
+ return obj;
3037
+ }
3038
+ __destroy_into_raw() {
3039
+ const ptr = this.__wbg_ptr;
3040
+ this.__wbg_ptr = 0;
3041
+ CovarianceTransportResultFinalization.unregister(this);
3042
+ return ptr;
3043
+ }
3044
+ free() {
3045
+ const ptr = this.__destroy_into_raw();
3046
+ wasm.__wbg_covariancetransportresult_free(ptr, 0);
3047
+ }
3048
+ /**
3049
+ * @returns {Float64Array}
3050
+ */
3051
+ get covariance() {
3052
+ const ret = wasm.covariancetransportresult_covariance(this.__wbg_ptr);
3053
+ var v1 = getArrayF64FromWasm0(ret[0], ret[1]).slice();
3054
+ wasm.__wbindgen_free(ret[0], ret[1] * 8, 8);
3055
+ return v1;
3056
+ }
3057
+ /**
3058
+ * @returns {number}
3059
+ */
3060
+ get nodeCount() {
3061
+ const ret = wasm.covariancetransportresult_nodeCount(this.__wbg_ptr);
3062
+ return ret >>> 0;
3063
+ }
3064
+ }
3065
+ if (Symbol.dispose) CovarianceTransportResult.prototype[Symbol.dispose] = CovarianceTransportResult.prototype.free;
3066
+ exports.CovarianceTransportResult = CovarianceTransportResult;
3067
+
3068
+ /**
3069
+ * A computed look-angle grid for a set of satellites and ground stations at one
3070
+ * epoch. Build with [`coverageLookAngles`].
3071
+ */
3072
+ class CoverageGrid {
3073
+ static __wrap(ptr) {
3074
+ const obj = Object.create(CoverageGrid.prototype);
3075
+ obj.__wbg_ptr = ptr;
3076
+ CoverageGridFinalization.register(obj, obj.__wbg_ptr, obj);
3077
+ return obj;
3078
+ }
3079
+ __destroy_into_raw() {
3080
+ const ptr = this.__wbg_ptr;
3081
+ this.__wbg_ptr = 0;
3082
+ CoverageGridFinalization.unregister(this);
3083
+ return ptr;
3084
+ }
3085
+ free() {
3086
+ const ptr = this.__destroy_into_raw();
3087
+ wasm.__wbg_coveragegrid_free(ptr, 0);
3088
+ }
3089
+ /**
3090
+ * Number of visible satellites per station at `minElevationDeg`, as a flat
3091
+ * array of length `stationCount`. Delegates to
3092
+ * `sidereon_core::astro::coverage::access_counts`.
3093
+ * @param {number} min_elevation_deg
3094
+ * @returns {Uint32Array}
3095
+ */
3096
+ accessCounts(min_elevation_deg) {
3097
+ const ret = wasm.coveragegrid_accessCounts(this.__wbg_ptr, min_elevation_deg);
3098
+ var v1 = getArrayU32FromWasm0(ret[0], ret[1]).slice();
3099
+ wasm.__wbindgen_free(ret[0], ret[1] * 4, 4);
3100
+ return v1;
3101
+ }
3102
+ /**
3103
+ * The look angle for one satellite/station pair as `[azimuthDeg,
3104
+ * elevationDeg, rangeKm]`, or `undefined` when that cell failed (the
3105
+ * satellite was below the horizon geometry the kernel rejects) or the
3106
+ * indices are out of range.
3107
+ * @param {number} satellite_index
3108
+ * @param {number} station_index
3109
+ * @returns {Float64Array | undefined}
3110
+ */
3111
+ lookAngle(satellite_index, station_index) {
3112
+ const ret = wasm.coveragegrid_lookAngle(this.__wbg_ptr, satellite_index, station_index);
3113
+ let v1;
3114
+ if (ret[0] !== 0) {
3115
+ v1 = getArrayF64FromWasm0(ret[0], ret[1]).slice();
3116
+ wasm.__wbindgen_free(ret[0], ret[1] * 8, 8);
3117
+ }
3118
+ return v1;
3119
+ }
3120
+ /**
3121
+ * Maximum successful elevation per station, degrees, as a flat array of
3122
+ * length `stationCount`. A station with no successful cell reports `NaN`.
3123
+ * Delegates to `sidereon_core::astro::coverage::max_elevation`.
3124
+ * @returns {Float64Array}
3125
+ */
3126
+ maxElevationDeg() {
3127
+ const ret = wasm.coveragegrid_maxElevationDeg(this.__wbg_ptr);
3128
+ var v1 = getArrayF64FromWasm0(ret[0], ret[1]).slice();
3129
+ wasm.__wbindgen_free(ret[0], ret[1] * 8, 8);
3130
+ return v1;
3131
+ }
3132
+ /**
3133
+ * Number of satellites (grid rows).
3134
+ * @returns {number}
3135
+ */
3136
+ get satelliteCount() {
3137
+ const ret = wasm.coveragegrid_satelliteCount(this.__wbg_ptr);
3138
+ return ret >>> 0;
3139
+ }
3140
+ /**
3141
+ * Number of ground stations (grid columns).
3142
+ * @returns {number}
3143
+ */
3144
+ get stationCount() {
3145
+ const ret = wasm.coveragegrid_stationCount(this.__wbg_ptr);
3146
+ return ret >>> 0;
3147
+ }
3148
+ /**
3149
+ * Row-major `[satellite][station]` visibility mask at `minElevationDeg`, as a
3150
+ * flat `Uint8Array` of `1` (visible) / `0`. Error cells are not visible.
3151
+ * Delegates to `sidereon_core::astro::coverage::visible_mask`.
3152
+ * @param {number} min_elevation_deg
3153
+ * @returns {Uint8Array}
2720
3154
  */
2721
3155
  visibleMask(min_elevation_deg) {
2722
3156
  const ret = wasm.coveragegrid_visibleMask(this.__wbg_ptr, min_elevation_deg);
@@ -4034,6 +4468,42 @@ class GeoidGrid {
4034
4468
  const ptr = this.__destroy_into_raw();
4035
4469
  wasm.__wbg_geoidgrid_free(ptr, 0);
4036
4470
  }
4471
+ /**
4472
+ * Ellipsoidal height from orthometric height and degrees.
4473
+ * @param {number} orthometric_height_m
4474
+ * @param {number} lat_deg
4475
+ * @param {number} lon_deg
4476
+ * @returns {number}
4477
+ */
4478
+ ellipsoidalHeightDeg(orthometric_height_m, lat_deg, lon_deg) {
4479
+ const ret = wasm.geoidgrid_ellipsoidalHeightDeg(this.__wbg_ptr, orthometric_height_m, lat_deg, lon_deg);
4480
+ return ret;
4481
+ }
4482
+ /**
4483
+ * Ellipsoidal height from orthometric height and radians.
4484
+ * @param {number} orthometric_height_m
4485
+ * @param {number} lat_rad
4486
+ * @param {number} lon_rad
4487
+ * @returns {number}
4488
+ */
4489
+ ellipsoidalHeightRad(orthometric_height_m, lat_rad, lon_rad) {
4490
+ const ret = wasm.geoidgrid_ellipsoidalHeightRad(this.__wbg_ptr, orthometric_height_m, lat_rad, lon_rad);
4491
+ return ret;
4492
+ }
4493
+ /**
4494
+ * Parse an EGM96 `WW15MGH.DAC` byte buffer into a full-resolution grid.
4495
+ * @param {Uint8Array} bytes
4496
+ * @returns {GeoidGrid}
4497
+ */
4498
+ static fromEgm96Dac(bytes) {
4499
+ const ptr0 = passArray8ToWasm0(bytes, wasm.__wbindgen_malloc);
4500
+ const len0 = WASM_VECTOR_LEN;
4501
+ const ret = wasm.geoidgrid_fromEgm96Dac(ptr0, len0);
4502
+ if (ret[2]) {
4503
+ throw takeFromExternrefTable0(ret[1]);
4504
+ }
4505
+ return GeoidGrid.__wrap(ret[0]);
4506
+ }
4037
4507
  /**
4038
4508
  * Parse a grid from the documented whitespace-delimited text format (a
4039
4509
  * six-field header `lat_min lon_min dlat dlon n_lat n_lon` followed by
@@ -4077,6 +4547,28 @@ class GeoidGrid {
4077
4547
  GeoidGridFinalization.register(this, this.__wbg_ptr, this);
4078
4548
  return this;
4079
4549
  }
4550
+ /**
4551
+ * Orthometric height from ellipsoidal height and degrees.
4552
+ * @param {number} ellipsoidal_height_m
4553
+ * @param {number} lat_deg
4554
+ * @param {number} lon_deg
4555
+ * @returns {number}
4556
+ */
4557
+ orthometricHeightDeg(ellipsoidal_height_m, lat_deg, lon_deg) {
4558
+ const ret = wasm.geoidgrid_orthometricHeightDeg(this.__wbg_ptr, ellipsoidal_height_m, lat_deg, lon_deg);
4559
+ return ret;
4560
+ }
4561
+ /**
4562
+ * Orthometric height from ellipsoidal height and radians.
4563
+ * @param {number} ellipsoidal_height_m
4564
+ * @param {number} lat_rad
4565
+ * @param {number} lon_rad
4566
+ * @returns {number}
4567
+ */
4568
+ orthometricHeightRad(ellipsoidal_height_m, lat_rad, lon_rad) {
4569
+ const ret = wasm.geoidgrid_orthometricHeightRad(this.__wbg_ptr, ellipsoidal_height_m, lat_rad, lon_rad);
4570
+ return ret;
4571
+ }
4080
4572
  /**
4081
4573
  * Bilinearly interpolated undulation `N` (metres) at a geodetic position in
4082
4574
  * degrees (latitude positive north, longitude positive east).
@@ -4099,6 +4591,38 @@ class GeoidGrid {
4099
4591
  const ret = wasm.geoidgrid_undulationRad(this.__wbg_ptr, lat_rad, lon_rad);
4100
4592
  return ret;
4101
4593
  }
4594
+ /**
4595
+ * Batch undulation lookup for flat `[latDeg, lonDeg, ...]` pairs.
4596
+ * @param {Float64Array} points_deg
4597
+ * @returns {Float64Array}
4598
+ */
4599
+ undulationsDeg(points_deg) {
4600
+ const ptr0 = passArrayF64ToWasm0(points_deg, wasm.__wbindgen_malloc);
4601
+ const len0 = WASM_VECTOR_LEN;
4602
+ const ret = wasm.geoidgrid_undulationsDeg(this.__wbg_ptr, ptr0, len0);
4603
+ if (ret[3]) {
4604
+ throw takeFromExternrefTable0(ret[2]);
4605
+ }
4606
+ var v2 = getArrayF64FromWasm0(ret[0], ret[1]).slice();
4607
+ wasm.__wbindgen_free(ret[0], ret[1] * 8, 8);
4608
+ return v2;
4609
+ }
4610
+ /**
4611
+ * Batch undulation lookup for flat `[latRad, lonRad, ...]` pairs.
4612
+ * @param {Float64Array} points_rad
4613
+ * @returns {Float64Array}
4614
+ */
4615
+ undulationsRad(points_rad) {
4616
+ const ptr0 = passArrayF64ToWasm0(points_rad, wasm.__wbindgen_malloc);
4617
+ const len0 = WASM_VECTOR_LEN;
4618
+ const ret = wasm.geoidgrid_undulationsRad(this.__wbg_ptr, ptr0, len0);
4619
+ if (ret[3]) {
4620
+ throw takeFromExternrefTable0(ret[2]);
4621
+ }
4622
+ var v2 = getArrayF64FromWasm0(ret[0], ret[1]).slice();
4623
+ wasm.__wbindgen_free(ret[0], ret[1] * 8, 8);
4624
+ return v2;
4625
+ }
4102
4626
  }
4103
4627
  if (Symbol.dispose) GeoidGrid.prototype[Symbol.dispose] = GeoidGrid.prototype.free;
4104
4628
  exports.GeoidGrid = GeoidGrid;
@@ -6638,78 +7162,347 @@ exports.NamedTle = NamedTle;
6638
7162
 
6639
7163
  /**
6640
7164
  * Which supported RINEX NAV message a broadcast record carries.
6641
- * @enum {0 | 1 | 2 | 3 | 4}
7165
+ * @enum {0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8}
6642
7166
  */
6643
7167
  const NavMessage = Object.freeze({
6644
7168
  /**
6645
7169
  * GPS legacy LNAV.
6646
7170
  */
6647
7171
  GpsLnav: 0, "0": "GpsLnav",
7172
+ /**
7173
+ * GPS CNAV.
7174
+ */
7175
+ GpsCnav: 1, "1": "GpsCnav",
7176
+ /**
7177
+ * GPS CNAV-2.
7178
+ */
7179
+ GpsCnav2: 2, "2": "GpsCnav2",
7180
+ /**
7181
+ * QZSS CNAV.
7182
+ */
7183
+ QzssCnav: 3, "3": "QzssCnav",
7184
+ /**
7185
+ * QZSS CNAV-2.
7186
+ */
7187
+ QzssCnav2: 4, "4": "QzssCnav2",
6648
7188
  /**
6649
7189
  * Galileo I/NAV.
6650
7190
  */
6651
- GalileoInav: 1, "1": "GalileoInav",
7191
+ GalileoInav: 5, "5": "GalileoInav",
6652
7192
  /**
6653
7193
  * Galileo F/NAV.
6654
7194
  */
6655
- GalileoFnav: 2, "2": "GalileoFnav",
7195
+ GalileoFnav: 6, "6": "GalileoFnav",
6656
7196
  /**
6657
7197
  * BeiDou D1.
6658
7198
  */
6659
- BeidouD1: 3, "3": "BeidouD1",
7199
+ BeidouD1: 7, "7": "BeidouD1",
6660
7200
  /**
6661
7201
  * BeiDou D2.
6662
7202
  */
6663
- BeidouD2: 4, "4": "BeidouD2",
7203
+ BeidouD2: 8, "8": "BeidouD2",
6664
7204
  });
6665
7205
  exports.NavMessage = NavMessage;
6666
7206
 
6667
7207
  /**
6668
- * One RINEX OBS epoch. Observation values are read through `RinexObs` methods.
7208
+ * Streaming NMEA epoch accumulator.
6669
7209
  */
6670
- class ObsEpoch {
6671
- static __wrap(ptr) {
6672
- const obj = Object.create(ObsEpoch.prototype);
6673
- obj.__wbg_ptr = ptr;
6674
- ObsEpochFinalization.register(obj, obj.__wbg_ptr, obj);
6675
- return obj;
6676
- }
7210
+ class NmeaAccumulator {
6677
7211
  __destroy_into_raw() {
6678
7212
  const ptr = this.__wbg_ptr;
6679
7213
  this.__wbg_ptr = 0;
6680
- ObsEpochFinalization.unregister(this);
7214
+ NmeaAccumulatorFinalization.unregister(this);
6681
7215
  return ptr;
6682
7216
  }
6683
7217
  free() {
6684
7218
  const ptr = this.__destroy_into_raw();
6685
- wasm.__wbg_obsepoch_free(ptr, 0);
7219
+ wasm.__wbg_nmeaaccumulator_free(ptr, 0);
6686
7220
  }
6687
7221
  /**
6688
- * Civil epoch in the file time scale.
6689
- * @returns {ObsEpochTime}
7222
+ * @returns {any}
6690
7223
  */
6691
- get epoch() {
6692
- const ret = wasm.obsepoch_epoch(this.__wbg_ptr);
6693
- return ObsEpochTime.__wrap(ret);
7224
+ finish() {
7225
+ const ret = wasm.nmeaaccumulator_finish(this.__wbg_ptr);
7226
+ if (ret[2]) {
7227
+ throw takeFromExternrefTable0(ret[1]);
7228
+ }
7229
+ return takeFromExternrefTable0(ret[0]);
6694
7230
  }
6695
7231
  /**
6696
- * RINEX epoch flag. `0` is a normal observation epoch.
6697
- * @returns {number}
7232
+ * @param {any} options
6698
7233
  */
6699
- get flag() {
6700
- const ret = wasm.obsepoch_flag(this.__wbg_ptr);
6701
- return ret;
7234
+ constructor(options) {
7235
+ const ret = wasm.nmeaaccumulator_new(options);
7236
+ if (ret[2]) {
7237
+ throw takeFromExternrefTable0(ret[1]);
7238
+ }
7239
+ this.__wbg_ptr = ret[0];
7240
+ NmeaAccumulatorFinalization.register(this, this.__wbg_ptr, this);
7241
+ return this;
6702
7242
  }
6703
7243
  /**
6704
- * Number of satellites present at this epoch.
6705
- * @returns {number}
7244
+ * @param {Uint8Array} bytes
7245
+ * @returns {any}
6706
7246
  */
6707
- get satelliteCount() {
6708
- const ret = wasm.obsepoch_satelliteCount(this.__wbg_ptr);
6709
- return ret >>> 0;
6710
- }
6711
- /**
6712
- * Satellite tokens present at this epoch.
7247
+ push(bytes) {
7248
+ const ptr0 = passArray8ToWasm0(bytes, wasm.__wbindgen_malloc);
7249
+ const len0 = WASM_VECTOR_LEN;
7250
+ const ret = wasm.nmeaaccumulator_push(this.__wbg_ptr, ptr0, len0);
7251
+ if (ret[2]) {
7252
+ throw takeFromExternrefTable0(ret[1]);
7253
+ }
7254
+ return takeFromExternrefTable0(ret[0]);
7255
+ }
7256
+ /**
7257
+ * @returns {number}
7258
+ */
7259
+ get retainedLength() {
7260
+ const ret = wasm.nmeaaccumulator_retainedLength(this.__wbg_ptr);
7261
+ return ret >>> 0;
7262
+ }
7263
+ }
7264
+ if (Symbol.dispose) NmeaAccumulator.prototype[Symbol.dispose] = NmeaAccumulator.prototype.free;
7265
+ exports.NmeaAccumulator = NmeaAccumulator;
7266
+
7267
+ /**
7268
+ * Parsed NMEA log.
7269
+ */
7270
+ class NmeaParseResult {
7271
+ static __wrap(ptr) {
7272
+ const obj = Object.create(NmeaParseResult.prototype);
7273
+ obj.__wbg_ptr = ptr;
7274
+ NmeaParseResultFinalization.register(obj, obj.__wbg_ptr, obj);
7275
+ return obj;
7276
+ }
7277
+ __destroy_into_raw() {
7278
+ const ptr = this.__wbg_ptr;
7279
+ this.__wbg_ptr = 0;
7280
+ NmeaParseResultFinalization.unregister(this);
7281
+ return ptr;
7282
+ }
7283
+ free() {
7284
+ const ptr = this.__destroy_into_raw();
7285
+ wasm.__wbg_nmeaparseresult_free(ptr, 0);
7286
+ }
7287
+ /**
7288
+ * @returns {any}
7289
+ */
7290
+ get diagnostics() {
7291
+ const ret = wasm.nmeaparseresult_diagnostics(this.__wbg_ptr);
7292
+ if (ret[2]) {
7293
+ throw takeFromExternrefTable0(ret[1]);
7294
+ }
7295
+ return takeFromExternrefTable0(ret[0]);
7296
+ }
7297
+ /**
7298
+ * @returns {number}
7299
+ */
7300
+ get epochCount() {
7301
+ const ret = wasm.nmeaparseresult_epochCount(this.__wbg_ptr);
7302
+ return ret >>> 0;
7303
+ }
7304
+ /**
7305
+ * @returns {any}
7306
+ */
7307
+ get epochs() {
7308
+ const ret = wasm.nmeaparseresult_epochs(this.__wbg_ptr);
7309
+ if (ret[2]) {
7310
+ throw takeFromExternrefTable0(ret[1]);
7311
+ }
7312
+ return takeFromExternrefTable0(ret[0]);
7313
+ }
7314
+ /**
7315
+ * @returns {number}
7316
+ */
7317
+ get sentenceCount() {
7318
+ const ret = wasm.nmeaparseresult_sentenceCount(this.__wbg_ptr);
7319
+ return ret >>> 0;
7320
+ }
7321
+ /**
7322
+ * @returns {any}
7323
+ */
7324
+ get sentences() {
7325
+ const ret = wasm.nmeaparseresult_sentences(this.__wbg_ptr);
7326
+ if (ret[2]) {
7327
+ throw takeFromExternrefTable0(ret[1]);
7328
+ }
7329
+ return takeFromExternrefTable0(ret[0]);
7330
+ }
7331
+ }
7332
+ if (Symbol.dispose) NmeaParseResult.prototype[Symbol.dispose] = NmeaParseResult.prototype.free;
7333
+ exports.NmeaParseResult = NmeaParseResult;
7334
+
7335
+ /**
7336
+ * Sans-IO NTRIP client state machine.
7337
+ */
7338
+ class NtripClientMachine {
7339
+ __destroy_into_raw() {
7340
+ const ptr = this.__wbg_ptr;
7341
+ this.__wbg_ptr = 0;
7342
+ NtripClientMachineFinalization.unregister(this);
7343
+ return ptr;
7344
+ }
7345
+ free() {
7346
+ const ptr = this.__destroy_into_raw();
7347
+ wasm.__wbg_ntripclientmachine_free(ptr, 0);
7348
+ }
7349
+ /**
7350
+ * @returns {Uint8Array}
7351
+ */
7352
+ connectionRequest() {
7353
+ const ret = wasm.ntripclientmachine_connectionRequest(this.__wbg_ptr);
7354
+ if (ret[3]) {
7355
+ throw takeFromExternrefTable0(ret[2]);
7356
+ }
7357
+ var v1 = getArrayU8FromWasm0(ret[0], ret[1]).slice();
7358
+ wasm.__wbindgen_free(ret[0], ret[1] * 1, 1);
7359
+ return v1;
7360
+ }
7361
+ /**
7362
+ * @returns {any}
7363
+ */
7364
+ finish() {
7365
+ const ret = wasm.ntripclientmachine_finish(this.__wbg_ptr);
7366
+ if (ret[2]) {
7367
+ throw takeFromExternrefTable0(ret[1]);
7368
+ }
7369
+ return takeFromExternrefTable0(ret[0]);
7370
+ }
7371
+ /**
7372
+ * @param {number} now_s
7373
+ * @param {any} position
7374
+ * @param {number} utc_seconds_of_day
7375
+ * @returns {any}
7376
+ */
7377
+ ggaMessage(now_s, position, utc_seconds_of_day) {
7378
+ const ret = wasm.ntripclientmachine_ggaMessage(this.__wbg_ptr, now_s, position, utc_seconds_of_day);
7379
+ if (ret[2]) {
7380
+ throw takeFromExternrefTable0(ret[1]);
7381
+ }
7382
+ return takeFromExternrefTable0(ret[0]);
7383
+ }
7384
+ /**
7385
+ * @param {any} config
7386
+ */
7387
+ constructor(config) {
7388
+ const ret = wasm.ntripclientmachine_new(config);
7389
+ if (ret[2]) {
7390
+ throw takeFromExternrefTable0(ret[1]);
7391
+ }
7392
+ this.__wbg_ptr = ret[0];
7393
+ NtripClientMachineFinalization.register(this, this.__wbg_ptr, this);
7394
+ return this;
7395
+ }
7396
+ /**
7397
+ * @param {Uint8Array} bytes
7398
+ * @returns {any}
7399
+ */
7400
+ push(bytes) {
7401
+ const ptr0 = passArray8ToWasm0(bytes, wasm.__wbindgen_malloc);
7402
+ const len0 = WASM_VECTOR_LEN;
7403
+ const ret = wasm.ntripclientmachine_push(this.__wbg_ptr, ptr0, len0);
7404
+ if (ret[2]) {
7405
+ throw takeFromExternrefTable0(ret[1]);
7406
+ }
7407
+ return takeFromExternrefTable0(ret[0]);
7408
+ }
7409
+ reset() {
7410
+ wasm.ntripclientmachine_reset(this.__wbg_ptr);
7411
+ }
7412
+ /**
7413
+ * @returns {NtripState}
7414
+ */
7415
+ get state() {
7416
+ const ret = wasm.ntripclientmachine_state(this.__wbg_ptr);
7417
+ return ret;
7418
+ }
7419
+ /**
7420
+ * @returns {string}
7421
+ */
7422
+ get stateLabel() {
7423
+ let deferred1_0;
7424
+ let deferred1_1;
7425
+ try {
7426
+ const ret = wasm.ntripclientmachine_stateLabel(this.__wbg_ptr);
7427
+ deferred1_0 = ret[0];
7428
+ deferred1_1 = ret[1];
7429
+ return getStringFromWasm0(ret[0], ret[1]);
7430
+ } finally {
7431
+ wasm.__wbindgen_free(deferred1_0, deferred1_1, 1);
7432
+ }
7433
+ }
7434
+ }
7435
+ if (Symbol.dispose) NtripClientMachine.prototype[Symbol.dispose] = NtripClientMachine.prototype.free;
7436
+ exports.NtripClientMachine = NtripClientMachine;
7437
+
7438
+ /**
7439
+ * @enum {0 | 1 | 2 | 3 | 4 | 5}
7440
+ */
7441
+ const NtripState = Object.freeze({
7442
+ Idle: 0, "0": "Idle",
7443
+ AwaitingStatus: 1, "1": "AwaitingStatus",
7444
+ AwaitingHeaders: 2, "2": "AwaitingHeaders",
7445
+ Streaming: 3, "3": "Streaming",
7446
+ Sourcetable: 4, "4": "Sourcetable",
7447
+ Closed: 5, "5": "Closed",
7448
+ });
7449
+ exports.NtripState = NtripState;
7450
+
7451
+ /**
7452
+ * @enum {0 | 1}
7453
+ */
7454
+ const NtripVersion = Object.freeze({
7455
+ Rev1: 0, "0": "Rev1",
7456
+ Rev2: 1, "1": "Rev2",
7457
+ });
7458
+ exports.NtripVersion = NtripVersion;
7459
+
7460
+ /**
7461
+ * One RINEX OBS epoch. Observation values are read through `RinexObs` methods.
7462
+ */
7463
+ class ObsEpoch {
7464
+ static __wrap(ptr) {
7465
+ const obj = Object.create(ObsEpoch.prototype);
7466
+ obj.__wbg_ptr = ptr;
7467
+ ObsEpochFinalization.register(obj, obj.__wbg_ptr, obj);
7468
+ return obj;
7469
+ }
7470
+ __destroy_into_raw() {
7471
+ const ptr = this.__wbg_ptr;
7472
+ this.__wbg_ptr = 0;
7473
+ ObsEpochFinalization.unregister(this);
7474
+ return ptr;
7475
+ }
7476
+ free() {
7477
+ const ptr = this.__destroy_into_raw();
7478
+ wasm.__wbg_obsepoch_free(ptr, 0);
7479
+ }
7480
+ /**
7481
+ * Civil epoch in the file time scale.
7482
+ * @returns {ObsEpochTime}
7483
+ */
7484
+ get epoch() {
7485
+ const ret = wasm.obsepoch_epoch(this.__wbg_ptr);
7486
+ return ObsEpochTime.__wrap(ret);
7487
+ }
7488
+ /**
7489
+ * RINEX epoch flag. `0` is a normal observation epoch.
7490
+ * @returns {number}
7491
+ */
7492
+ get flag() {
7493
+ const ret = wasm.obsepoch_flag(this.__wbg_ptr);
7494
+ return ret;
7495
+ }
7496
+ /**
7497
+ * Number of satellites present at this epoch.
7498
+ * @returns {number}
7499
+ */
7500
+ get satelliteCount() {
7501
+ const ret = wasm.obsepoch_satelliteCount(this.__wbg_ptr);
7502
+ return ret >>> 0;
7503
+ }
7504
+ /**
7505
+ * Satellite tokens present at this epoch.
6713
7506
  * @returns {string[]}
6714
7507
  */
6715
7508
  get satellites() {
@@ -7054,21 +7847,240 @@ const ObservationKind = Object.freeze({
7054
7847
  /**
7055
7848
  * Carrier phase, cycles.
7056
7849
  */
7057
- CarrierPhase: 1, "1": "CarrierPhase",
7850
+ CarrierPhase: 1, "1": "CarrierPhase",
7851
+ /**
7852
+ * Doppler, hertz.
7853
+ */
7854
+ Doppler: 2, "2": "Doppler",
7855
+ /**
7856
+ * Signal strength, dB-Hz.
7857
+ */
7858
+ SignalStrength: 3, "3": "SignalStrength",
7859
+ /**
7860
+ * Unknown leading RINEX code letter.
7861
+ */
7862
+ Unknown: 4, "4": "Unknown",
7863
+ });
7864
+ exports.ObservationKind = ObservationKind;
7865
+
7866
+ /**
7867
+ * Aggregate observation QC report.
7868
+ */
7869
+ class ObservationQcReport {
7870
+ static __wrap(ptr) {
7871
+ const obj = Object.create(ObservationQcReport.prototype);
7872
+ obj.__wbg_ptr = ptr;
7873
+ ObservationQcReportFinalization.register(obj, obj.__wbg_ptr, obj);
7874
+ return obj;
7875
+ }
7876
+ __destroy_into_raw() {
7877
+ const ptr = this.__wbg_ptr;
7878
+ this.__wbg_ptr = 0;
7879
+ ObservationQcReportFinalization.unregister(this);
7880
+ return ptr;
7881
+ }
7882
+ free() {
7883
+ const ptr = this.__destroy_into_raw();
7884
+ wasm.__wbg_observationqcreport_free(ptr, 0);
7885
+ }
7886
+ /**
7887
+ * @returns {any}
7888
+ */
7889
+ get clockJumps() {
7890
+ const ret = wasm.observationqcreport_clockJumps(this.__wbg_ptr);
7891
+ if (ret[2]) {
7892
+ throw takeFromExternrefTable0(ret[1]);
7893
+ }
7894
+ return takeFromExternrefTable0(ret[0]);
7895
+ }
7896
+ /**
7897
+ * @returns {any}
7898
+ */
7899
+ get cycleSlips() {
7900
+ const ret = wasm.observationqcreport_cycleSlips(this.__wbg_ptr);
7901
+ if (ret[2]) {
7902
+ throw takeFromExternrefTable0(ret[1]);
7903
+ }
7904
+ return takeFromExternrefTable0(ret[0]);
7905
+ }
7906
+ /**
7907
+ * @returns {any}
7908
+ */
7909
+ get dataGaps() {
7910
+ const ret = wasm.observationqcreport_dataGaps(this.__wbg_ptr);
7911
+ if (ret[2]) {
7912
+ throw takeFromExternrefTable0(ret[1]);
7913
+ }
7914
+ return takeFromExternrefTable0(ret[0]);
7915
+ }
7916
+ /**
7917
+ * @returns {number}
7918
+ */
7919
+ get eventRecords() {
7920
+ const ret = wasm.observationqcreport_eventRecords(this.__wbg_ptr);
7921
+ return ret >>> 0;
7922
+ }
7923
+ /**
7924
+ * @returns {number | undefined}
7925
+ */
7926
+ get intervalS() {
7927
+ const ret = wasm.observationqcreport_intervalS(this.__wbg_ptr);
7928
+ return ret[0] === 0 ? undefined : ret[1];
7929
+ }
7930
+ /**
7931
+ * @returns {string}
7932
+ */
7933
+ get intervalSource() {
7934
+ let deferred1_0;
7935
+ let deferred1_1;
7936
+ try {
7937
+ const ret = wasm.observationqcreport_intervalSource(this.__wbg_ptr);
7938
+ deferred1_0 = ret[0];
7939
+ deferred1_1 = ret[1];
7940
+ return getStringFromWasm0(ret[0], ret[1]);
7941
+ } finally {
7942
+ wasm.__wbindgen_free(deferred1_0, deferred1_1, 1);
7943
+ }
7944
+ }
7945
+ /**
7946
+ * @returns {number}
7947
+ */
7948
+ get missingEpochs() {
7949
+ const ret = wasm.observationqcreport_missingEpochs(this.__wbg_ptr);
7950
+ return ret >>> 0;
7951
+ }
7952
+ /**
7953
+ * @returns {any}
7954
+ */
7955
+ get multipath() {
7956
+ const ret = wasm.observationqcreport_multipath(this.__wbg_ptr);
7957
+ if (ret[2]) {
7958
+ throw takeFromExternrefTable0(ret[1]);
7959
+ }
7960
+ return takeFromExternrefTable0(ret[0]);
7961
+ }
7962
+ /**
7963
+ * @returns {any}
7964
+ */
7965
+ get notes() {
7966
+ const ret = wasm.observationqcreport_notes(this.__wbg_ptr);
7967
+ if (ret[2]) {
7968
+ throw takeFromExternrefTable0(ret[1]);
7969
+ }
7970
+ return takeFromExternrefTable0(ret[0]);
7971
+ }
7972
+ /**
7973
+ * @returns {number}
7974
+ */
7975
+ get observationEpochs() {
7976
+ const ret = wasm.observationqcreport_observationEpochs(this.__wbg_ptr);
7977
+ return ret >>> 0;
7978
+ }
7979
+ /**
7980
+ * @returns {number}
7981
+ */
7982
+ get powerFailureEpochs() {
7983
+ const ret = wasm.observationqcreport_powerFailureEpochs(this.__wbg_ptr);
7984
+ return ret >>> 0;
7985
+ }
7986
+ /**
7987
+ * @returns {string}
7988
+ */
7989
+ renderHtml() {
7990
+ let deferred1_0;
7991
+ let deferred1_1;
7992
+ try {
7993
+ const ret = wasm.observationqcreport_renderHtml(this.__wbg_ptr);
7994
+ deferred1_0 = ret[0];
7995
+ deferred1_1 = ret[1];
7996
+ return getStringFromWasm0(ret[0], ret[1]);
7997
+ } finally {
7998
+ wasm.__wbindgen_free(deferred1_0, deferred1_1, 1);
7999
+ }
8000
+ }
8001
+ /**
8002
+ * @returns {string}
8003
+ */
8004
+ renderText() {
8005
+ let deferred1_0;
8006
+ let deferred1_1;
8007
+ try {
8008
+ const ret = wasm.observationqcreport_renderText(this.__wbg_ptr);
8009
+ deferred1_0 = ret[0];
8010
+ deferred1_1 = ret[1];
8011
+ return getStringFromWasm0(ret[0], ret[1]);
8012
+ } finally {
8013
+ wasm.__wbindgen_free(deferred1_0, deferred1_1, 1);
8014
+ }
8015
+ }
8016
+ /**
8017
+ * @returns {any}
8018
+ */
8019
+ get satelliteSignals() {
8020
+ const ret = wasm.observationqcreport_satelliteSignals(this.__wbg_ptr);
8021
+ if (ret[2]) {
8022
+ throw takeFromExternrefTable0(ret[1]);
8023
+ }
8024
+ return takeFromExternrefTable0(ret[0]);
8025
+ }
8026
+ /**
8027
+ * @returns {any}
8028
+ */
8029
+ get satellites() {
8030
+ const ret = wasm.observationqcreport_satellites(this.__wbg_ptr);
8031
+ if (ret[2]) {
8032
+ throw takeFromExternrefTable0(ret[1]);
8033
+ }
8034
+ return takeFromExternrefTable0(ret[0]);
8035
+ }
8036
+ /**
8037
+ * @returns {number}
8038
+ */
8039
+ get skippedRecords() {
8040
+ const ret = wasm.observationqcreport_skippedRecords(this.__wbg_ptr);
8041
+ return ret >>> 0;
8042
+ }
7058
8043
  /**
7059
- * Doppler, hertz.
8044
+ * @returns {any}
7060
8045
  */
7061
- Doppler: 2, "2": "Doppler",
8046
+ get systemSignals() {
8047
+ const ret = wasm.observationqcreport_systemSignals(this.__wbg_ptr);
8048
+ if (ret[2]) {
8049
+ throw takeFromExternrefTable0(ret[1]);
8050
+ }
8051
+ return takeFromExternrefTable0(ret[0]);
8052
+ }
7062
8053
  /**
7063
- * Signal strength, dB-Hz.
8054
+ * @returns {string}
7064
8055
  */
7065
- SignalStrength: 3, "3": "SignalStrength",
8056
+ toJson() {
8057
+ let deferred2_0;
8058
+ let deferred2_1;
8059
+ try {
8060
+ const ret = wasm.observationqcreport_toJson(this.__wbg_ptr);
8061
+ var ptr1 = ret[0];
8062
+ var len1 = ret[1];
8063
+ if (ret[3]) {
8064
+ ptr1 = 0; len1 = 0;
8065
+ throw takeFromExternrefTable0(ret[2]);
8066
+ }
8067
+ deferred2_0 = ptr1;
8068
+ deferred2_1 = len1;
8069
+ return getStringFromWasm0(ptr1, len1);
8070
+ } finally {
8071
+ wasm.__wbindgen_free(deferred2_0, deferred2_1, 1);
8072
+ }
8073
+ }
7066
8074
  /**
7067
- * Unknown leading RINEX code letter.
8075
+ * @returns {number}
7068
8076
  */
7069
- Unknown: 4, "4": "Unknown",
7070
- });
7071
- exports.ObservationKind = ObservationKind;
8077
+ get totalEpochRecords() {
8078
+ const ret = wasm.observationqcreport_totalEpochRecords(this.__wbg_ptr);
8079
+ return ret >>> 0;
8080
+ }
8081
+ }
8082
+ if (Symbol.dispose) ObservationQcReport.prototype[Symbol.dispose] = ObservationQcReport.prototype.free;
8083
+ exports.ObservationQcReport = ObservationQcReport;
7072
8084
 
7073
8085
  /**
7074
8086
  * Flattened raw observation rows from one RINEX OBS epoch. Numeric arrays are
@@ -8172,6 +9184,14 @@ class OmmEpoch {
8172
9184
  const ret = wasm.ommepoch_day(this.__wbg_ptr);
8173
9185
  return ret >>> 0;
8174
9186
  }
9187
+ /**
9188
+ * Femtosecond remainder within the microsecond.
9189
+ * @returns {number}
9190
+ */
9191
+ get femtosecond() {
9192
+ const ret = wasm.ommepoch_femtosecond(this.__wbg_ptr);
9193
+ return ret >>> 0;
9194
+ }
8175
9195
  /**
8176
9196
  * Hour of day.
8177
9197
  * @returns {number}
@@ -8230,9 +9250,10 @@ class OmmEpoch {
8230
9250
  * @param {number} minute
8231
9251
  * @param {number} second
8232
9252
  * @param {number} microsecond
9253
+ * @param {number | null} [femtosecond]
8233
9254
  */
8234
- constructor(year, month, day, hour, minute, second, microsecond) {
8235
- const ret = wasm.ommepoch_new(year, month, day, hour, minute, second, microsecond);
9255
+ constructor(year, month, day, hour, minute, second, microsecond, femtosecond) {
9256
+ const ret = wasm.ommepoch_new(year, month, day, hour, minute, second, microsecond, isLikeNone(femtosecond) ? Number.MAX_SAFE_INTEGER : (femtosecond) >>> 0);
8236
9257
  if (ret[2]) {
8237
9258
  throw takeFromExternrefTable0(ret[1]);
8238
9259
  }
@@ -10387,6 +11408,88 @@ class RinexClock {
10387
11408
  if (Symbol.dispose) RinexClock.prototype[Symbol.dispose] = RinexClock.prototype.free;
10388
11409
  exports.RinexClock = RinexClock;
10389
11410
 
11411
+ /**
11412
+ * Navigation repair result.
11413
+ */
11414
+ class RinexNavRepair {
11415
+ static __wrap(ptr) {
11416
+ const obj = Object.create(RinexNavRepair.prototype);
11417
+ obj.__wbg_ptr = ptr;
11418
+ RinexNavRepairFinalization.register(obj, obj.__wbg_ptr, obj);
11419
+ return obj;
11420
+ }
11421
+ __destroy_into_raw() {
11422
+ const ptr = this.__wbg_ptr;
11423
+ this.__wbg_ptr = 0;
11424
+ RinexNavRepairFinalization.unregister(this);
11425
+ return ptr;
11426
+ }
11427
+ free() {
11428
+ const ptr = this.__destroy_into_raw();
11429
+ wasm.__wbg_rinexnavrepair_free(ptr, 0);
11430
+ }
11431
+ /**
11432
+ * @returns {any}
11433
+ */
11434
+ get actions() {
11435
+ const ret = wasm.rinexnavrepair_actions(this.__wbg_ptr);
11436
+ if (ret[2]) {
11437
+ throw takeFromExternrefTable0(ret[1]);
11438
+ }
11439
+ return takeFromExternrefTable0(ret[0]);
11440
+ }
11441
+ /**
11442
+ * @returns {IonoCorrectionsJs | undefined}
11443
+ */
11444
+ get iono() {
11445
+ const ret = wasm.rinexnavrepair_iono(this.__wbg_ptr);
11446
+ return ret === 0 ? undefined : IonoCorrectionsJs.__wrap(ret);
11447
+ }
11448
+ /**
11449
+ * @returns {number | undefined}
11450
+ */
11451
+ get leapSeconds() {
11452
+ const ret = wasm.rinexnavrepair_leapSeconds(this.__wbg_ptr);
11453
+ return ret[0] === 0 ? undefined : ret[1];
11454
+ }
11455
+ /**
11456
+ * @returns {BroadcastRecordJs[]}
11457
+ */
11458
+ get records() {
11459
+ const ret = wasm.rinexnavrepair_records(this.__wbg_ptr);
11460
+ var v1 = getArrayJsValueFromWasm0(ret[0], ret[1]).slice();
11461
+ wasm.__wbindgen_free(ret[0], ret[1] * 4, 4);
11462
+ return v1;
11463
+ }
11464
+ /**
11465
+ * @returns {any}
11466
+ */
11467
+ get remaining() {
11468
+ const ret = wasm.rinexnavrepair_remaining(this.__wbg_ptr);
11469
+ if (ret[2]) {
11470
+ throw takeFromExternrefTable0(ret[1]);
11471
+ }
11472
+ return takeFromExternrefTable0(ret[0]);
11473
+ }
11474
+ /**
11475
+ * @returns {string}
11476
+ */
11477
+ get repairedText() {
11478
+ let deferred1_0;
11479
+ let deferred1_1;
11480
+ try {
11481
+ const ret = wasm.rinexnavrepair_repairedText(this.__wbg_ptr);
11482
+ deferred1_0 = ret[0];
11483
+ deferred1_1 = ret[1];
11484
+ return getStringFromWasm0(ret[0], ret[1]);
11485
+ } finally {
11486
+ wasm.__wbindgen_free(deferred1_0, deferred1_1, 1);
11487
+ }
11488
+ }
11489
+ }
11490
+ if (Symbol.dispose) RinexNavRepair.prototype[Symbol.dispose] = RinexNavRepair.prototype.free;
11491
+ exports.RinexNavRepair = RinexNavRepair;
11492
+
10390
11493
  /**
10391
11494
  * A parsed RINEX 3/4 observation file.
10392
11495
  */
@@ -10532,6 +11635,145 @@ class RinexObs {
10532
11635
  if (Symbol.dispose) RinexObs.prototype[Symbol.dispose] = RinexObs.prototype.free;
10533
11636
  exports.RinexObs = RinexObs;
10534
11637
 
11638
+ /**
11639
+ * Observation repair result.
11640
+ */
11641
+ class RinexObsRepair {
11642
+ static __wrap(ptr) {
11643
+ const obj = Object.create(RinexObsRepair.prototype);
11644
+ obj.__wbg_ptr = ptr;
11645
+ RinexObsRepairFinalization.register(obj, obj.__wbg_ptr, obj);
11646
+ return obj;
11647
+ }
11648
+ __destroy_into_raw() {
11649
+ const ptr = this.__wbg_ptr;
11650
+ this.__wbg_ptr = 0;
11651
+ RinexObsRepairFinalization.unregister(this);
11652
+ return ptr;
11653
+ }
11654
+ free() {
11655
+ const ptr = this.__destroy_into_raw();
11656
+ wasm.__wbg_rinexobsrepair_free(ptr, 0);
11657
+ }
11658
+ /**
11659
+ * @returns {any}
11660
+ */
11661
+ get actions() {
11662
+ const ret = wasm.rinexobsrepair_actions(this.__wbg_ptr);
11663
+ if (ret[2]) {
11664
+ throw takeFromExternrefTable0(ret[1]);
11665
+ }
11666
+ return takeFromExternrefTable0(ret[0]);
11667
+ }
11668
+ /**
11669
+ * @returns {boolean}
11670
+ */
11671
+ get decodedFromCrinex() {
11672
+ const ret = wasm.rinexobsrepair_decodedFromCrinex(this.__wbg_ptr);
11673
+ return ret !== 0;
11674
+ }
11675
+ /**
11676
+ * @returns {any}
11677
+ */
11678
+ get remaining() {
11679
+ const ret = wasm.rinexobsrepair_remaining(this.__wbg_ptr);
11680
+ if (ret[2]) {
11681
+ throw takeFromExternrefTable0(ret[1]);
11682
+ }
11683
+ return takeFromExternrefTable0(ret[0]);
11684
+ }
11685
+ /**
11686
+ * @returns {RinexObs}
11687
+ */
11688
+ get repaired() {
11689
+ const ret = wasm.rinexobsrepair_repaired(this.__wbg_ptr);
11690
+ return RinexObs.__wrap(ret);
11691
+ }
11692
+ /**
11693
+ * @returns {string}
11694
+ */
11695
+ get repairedText() {
11696
+ let deferred1_0;
11697
+ let deferred1_1;
11698
+ try {
11699
+ const ret = wasm.rinexobsrepair_repairedText(this.__wbg_ptr);
11700
+ deferred1_0 = ret[0];
11701
+ deferred1_1 = ret[1];
11702
+ return getStringFromWasm0(ret[0], ret[1]);
11703
+ } finally {
11704
+ wasm.__wbindgen_free(deferred1_0, deferred1_1, 1);
11705
+ }
11706
+ }
11707
+ /**
11708
+ * @returns {string}
11709
+ */
11710
+ toCrinexString() {
11711
+ let deferred2_0;
11712
+ let deferred2_1;
11713
+ try {
11714
+ const ret = wasm.rinexobsrepair_toCrinexString(this.__wbg_ptr);
11715
+ var ptr1 = ret[0];
11716
+ var len1 = ret[1];
11717
+ if (ret[3]) {
11718
+ ptr1 = 0; len1 = 0;
11719
+ throw takeFromExternrefTable0(ret[2]);
11720
+ }
11721
+ deferred2_0 = ptr1;
11722
+ deferred2_1 = len1;
11723
+ return getStringFromWasm0(ptr1, len1);
11724
+ } finally {
11725
+ wasm.__wbindgen_free(deferred2_0, deferred2_1, 1);
11726
+ }
11727
+ }
11728
+ }
11729
+ if (Symbol.dispose) RinexObsRepair.prototype[Symbol.dispose] = RinexObsRepair.prototype.free;
11730
+ exports.RinexObsRepair = RinexObsRepair;
11731
+
11732
+ /**
11733
+ * Stateful MSM lock-time tracker for deriving RINEX LLI continuity bits.
11734
+ */
11735
+ class RtcmLockTimeTracker {
11736
+ __destroy_into_raw() {
11737
+ const ptr = this.__wbg_ptr;
11738
+ this.__wbg_ptr = 0;
11739
+ RtcmLockTimeTrackerFinalization.unregister(this);
11740
+ return ptr;
11741
+ }
11742
+ free() {
11743
+ const ptr = this.__destroy_into_raw();
11744
+ wasm.__wbg_rtcmlocktimetracker_free(ptr, 0);
11745
+ }
11746
+ /**
11747
+ * Build an empty tracker.
11748
+ */
11749
+ constructor() {
11750
+ const ret = wasm.rtcmlocktimetracker_new();
11751
+ this.__wbg_ptr = ret;
11752
+ RtcmLockTimeTrackerFinalization.register(this, this.__wbg_ptr, this);
11753
+ return this;
11754
+ }
11755
+ /**
11756
+ * Derive LLI rows for one decoded MSM message object and advance state.
11757
+ * @param {any} message
11758
+ * @returns {any}
11759
+ */
11760
+ observe(message) {
11761
+ const ret = wasm.rtcmlocktimetracker_observe(this.__wbg_ptr, message);
11762
+ if (ret[2]) {
11763
+ throw takeFromExternrefTable0(ret[1]);
11764
+ }
11765
+ return takeFromExternrefTable0(ret[0]);
11766
+ }
11767
+ /**
11768
+ * Drop all per-cell lock history.
11769
+ */
11770
+ reset() {
11771
+ wasm.rtcmlocktimetracker_reset(this.__wbg_ptr);
11772
+ }
11773
+ }
11774
+ if (Symbol.dispose) RtcmLockTimeTracker.prototype[Symbol.dispose] = RtcmLockTimeTracker.prototype.free;
11775
+ exports.RtcmLockTimeTracker = RtcmLockTimeTracker;
11776
+
10535
11777
  /**
10536
11778
  * Validated fixed RTK baseline solution.
10537
11779
  */
@@ -11991,54 +13233,211 @@ if (Symbol.dispose) SpaceWeather.prototype[Symbol.dispose] = SpaceWeather.protot
11991
13233
  exports.SpaceWeather = SpaceWeather;
11992
13234
 
11993
13235
  /**
11994
- * Canonical quiet-Sun space-weather indices for NRLMSISE-00, mirrored from the
11995
- * core so a JS caller can pass moderate-activity defaults to [`atmosphereDensity`]
11996
- * without re-deriving the magic numbers.
13236
+ * Canonical quiet-Sun space-weather indices for NRLMSISE-00, mirrored from the
13237
+ * core so a JS caller can pass moderate-activity defaults to [`atmosphereDensity`]
13238
+ * without re-deriving the magic numbers.
13239
+ */
13240
+ class SpaceWeatherDefaults {
13241
+ static __wrap(ptr) {
13242
+ const obj = Object.create(SpaceWeatherDefaults.prototype);
13243
+ obj.__wbg_ptr = ptr;
13244
+ SpaceWeatherDefaultsFinalization.register(obj, obj.__wbg_ptr, obj);
13245
+ return obj;
13246
+ }
13247
+ __destroy_into_raw() {
13248
+ const ptr = this.__wbg_ptr;
13249
+ this.__wbg_ptr = 0;
13250
+ SpaceWeatherDefaultsFinalization.unregister(this);
13251
+ return ptr;
13252
+ }
13253
+ free() {
13254
+ const ptr = this.__destroy_into_raw();
13255
+ wasm.__wbg_spaceweatherdefaults_free(ptr, 0);
13256
+ }
13257
+ /**
13258
+ * Daily magnetic Ap index.
13259
+ * @returns {number}
13260
+ */
13261
+ get ap() {
13262
+ const ret = wasm.spaceweatherdefaults_ap(this.__wbg_ptr);
13263
+ return ret;
13264
+ }
13265
+ /**
13266
+ * Daily F10.7 solar radio flux.
13267
+ * @returns {number}
13268
+ */
13269
+ get f107() {
13270
+ const ret = wasm.spaceweatherdefaults_f107(this.__wbg_ptr);
13271
+ return ret;
13272
+ }
13273
+ /**
13274
+ * 81-day centred F10.7 average.
13275
+ * @returns {number}
13276
+ */
13277
+ get f107a() {
13278
+ const ret = wasm.spaceweatherdefaults_f107a(this.__wbg_ptr);
13279
+ return ret;
13280
+ }
13281
+ }
13282
+ if (Symbol.dispose) SpaceWeatherDefaults.prototype[Symbol.dispose] = SpaceWeatherDefaults.prototype.free;
13283
+ exports.SpaceWeatherDefaults = SpaceWeatherDefaults;
13284
+
13285
+ /**
13286
+ * Parsed CelesTrak CSSI space-weather table.
11997
13287
  */
11998
- class SpaceWeatherDefaults {
13288
+ class SpaceWeatherTable {
11999
13289
  static __wrap(ptr) {
12000
- const obj = Object.create(SpaceWeatherDefaults.prototype);
13290
+ const obj = Object.create(SpaceWeatherTable.prototype);
12001
13291
  obj.__wbg_ptr = ptr;
12002
- SpaceWeatherDefaultsFinalization.register(obj, obj.__wbg_ptr, obj);
13292
+ SpaceWeatherTableFinalization.register(obj, obj.__wbg_ptr, obj);
12003
13293
  return obj;
12004
13294
  }
12005
13295
  __destroy_into_raw() {
12006
13296
  const ptr = this.__wbg_ptr;
12007
13297
  this.__wbg_ptr = 0;
12008
- SpaceWeatherDefaultsFinalization.unregister(this);
13298
+ SpaceWeatherTableFinalization.unregister(this);
12009
13299
  return ptr;
12010
13300
  }
12011
13301
  free() {
12012
13302
  const ptr = this.__destroy_into_raw();
12013
- wasm.__wbg_spaceweatherdefaults_free(ptr, 0);
13303
+ wasm.__wbg_spaceweathertable_free(ptr, 0);
12014
13304
  }
12015
13305
  /**
12016
- * Daily magnetic Ap index.
12017
- * @returns {number}
13306
+ * @param {number} epoch_j2000_s
13307
+ * @returns {Float64Array}
12018
13308
  */
12019
- get ap() {
12020
- const ret = wasm.spaceweatherdefaults_ap(this.__wbg_ptr);
12021
- return ret;
13309
+ apArrayAt(epoch_j2000_s) {
13310
+ const ret = wasm.spaceweathertable_apArrayAt(this.__wbg_ptr, epoch_j2000_s);
13311
+ if (ret[3]) {
13312
+ throw takeFromExternrefTable0(ret[2]);
13313
+ }
13314
+ var v1 = getArrayF64FromWasm0(ret[0], ret[1]).slice();
13315
+ wasm.__wbindgen_free(ret[0], ret[1] * 8, 8);
13316
+ return v1;
13317
+ }
13318
+ /**
13319
+ * @returns {any}
13320
+ */
13321
+ get coverage() {
13322
+ const ret = wasm.spaceweathertable_coverage(this.__wbg_ptr);
13323
+ if (ret[2]) {
13324
+ throw takeFromExternrefTable0(ret[1]);
13325
+ }
13326
+ return takeFromExternrefTable0(ret[0]);
13327
+ }
13328
+ /**
13329
+ * @param {number} year
13330
+ * @param {number} month
13331
+ * @param {number} day
13332
+ * @returns {any}
13333
+ */
13334
+ day(year, month, day) {
13335
+ const ret = wasm.spaceweathertable_day(this.__wbg_ptr, year, month, day);
13336
+ if (ret[2]) {
13337
+ throw takeFromExternrefTable0(ret[1]);
13338
+ }
13339
+ return takeFromExternrefTable0(ret[0]);
12022
13340
  }
12023
13341
  /**
12024
- * Daily F10.7 solar radio flux.
12025
13342
  * @returns {number}
12026
13343
  */
12027
- get f107() {
12028
- const ret = wasm.spaceweatherdefaults_f107(this.__wbg_ptr);
12029
- return ret;
13344
+ get dayCount() {
13345
+ const ret = wasm.spaceweathertable_dayCount(this.__wbg_ptr);
13346
+ return ret >>> 0;
13347
+ }
13348
+ /**
13349
+ * @returns {any}
13350
+ */
13351
+ days() {
13352
+ const ret = wasm.spaceweathertable_days(this.__wbg_ptr);
13353
+ if (ret[2]) {
13354
+ throw takeFromExternrefTable0(ret[1]);
13355
+ }
13356
+ return takeFromExternrefTable0(ret[0]);
13357
+ }
13358
+ /**
13359
+ * @returns {any}
13360
+ */
13361
+ get diagnostics() {
13362
+ const ret = wasm.spaceweathertable_diagnostics(this.__wbg_ptr);
13363
+ if (ret[2]) {
13364
+ throw takeFromExternrefTable0(ret[1]);
13365
+ }
13366
+ return takeFromExternrefTable0(ret[0]);
13367
+ }
13368
+ /**
13369
+ * @returns {any}
13370
+ */
13371
+ monthly() {
13372
+ const ret = wasm.spaceweathertable_monthly(this.__wbg_ptr);
13373
+ if (ret[2]) {
13374
+ throw takeFromExternrefTable0(ret[1]);
13375
+ }
13376
+ return takeFromExternrefTable0(ret[0]);
12030
13377
  }
12031
13378
  /**
12032
- * 81-day centred F10.7 average.
12033
13379
  * @returns {number}
12034
13380
  */
12035
- get f107a() {
12036
- const ret = wasm.spaceweatherdefaults_f107a(this.__wbg_ptr);
12037
- return ret;
13381
+ get monthlyCount() {
13382
+ const ret = wasm.spaceweathertable_monthlyCount(this.__wbg_ptr);
13383
+ return ret >>> 0;
13384
+ }
13385
+ /**
13386
+ * @param {number} epoch_j2000_s
13387
+ * @param {any} policy
13388
+ * @returns {any}
13389
+ */
13390
+ sampleAt(epoch_j2000_s, policy) {
13391
+ const ret = wasm.spaceweathertable_sampleAt(this.__wbg_ptr, epoch_j2000_s, policy);
13392
+ if (ret[2]) {
13393
+ throw takeFromExternrefTable0(ret[1]);
13394
+ }
13395
+ return takeFromExternrefTable0(ret[0]);
13396
+ }
13397
+ /**
13398
+ * @param {number} epoch_j2000_s
13399
+ * @returns {any}
13400
+ */
13401
+ spaceWeatherAt(epoch_j2000_s) {
13402
+ const ret = wasm.spaceweathertable_spaceWeatherAt(this.__wbg_ptr, epoch_j2000_s);
13403
+ if (ret[2]) {
13404
+ throw takeFromExternrefTable0(ret[1]);
13405
+ }
13406
+ return takeFromExternrefTable0(ret[0]);
13407
+ }
13408
+ /**
13409
+ * @returns {string}
13410
+ */
13411
+ toCsv() {
13412
+ let deferred1_0;
13413
+ let deferred1_1;
13414
+ try {
13415
+ const ret = wasm.spaceweathertable_toCsv(this.__wbg_ptr);
13416
+ deferred1_0 = ret[0];
13417
+ deferred1_1 = ret[1];
13418
+ return getStringFromWasm0(ret[0], ret[1]);
13419
+ } finally {
13420
+ wasm.__wbindgen_free(deferred1_0, deferred1_1, 1);
13421
+ }
13422
+ }
13423
+ /**
13424
+ * @returns {string}
13425
+ */
13426
+ toTxt() {
13427
+ let deferred1_0;
13428
+ let deferred1_1;
13429
+ try {
13430
+ const ret = wasm.spaceweathertable_toTxt(this.__wbg_ptr);
13431
+ deferred1_0 = ret[0];
13432
+ deferred1_1 = ret[1];
13433
+ return getStringFromWasm0(ret[0], ret[1]);
13434
+ } finally {
13435
+ wasm.__wbindgen_free(deferred1_0, deferred1_1, 1);
13436
+ }
12038
13437
  }
12039
13438
  }
12040
- if (Symbol.dispose) SpaceWeatherDefaults.prototype[Symbol.dispose] = SpaceWeatherDefaults.prototype.free;
12041
- exports.SpaceWeatherDefaults = SpaceWeatherDefaults;
13439
+ if (Symbol.dispose) SpaceWeatherTable.prototype[Symbol.dispose] = SpaceWeatherTable.prototype.free;
13440
+ exports.SpaceWeatherTable = SpaceWeatherTable;
12042
13441
 
12043
13442
  /**
12044
13443
  * A parsed in-memory JPL/NAIF SPK kernel.
@@ -13033,6 +14432,96 @@ class Tle {
13033
14432
  if (Symbol.dispose) Tle.prototype[Symbol.dispose] = Tle.prototype.free;
13034
14433
  exports.Tle = Tle;
13035
14434
 
14435
+ /**
14436
+ * Result of fitting a TLE to TEME samples.
14437
+ */
14438
+ class TleFit {
14439
+ static __wrap(ptr) {
14440
+ const obj = Object.create(TleFit.prototype);
14441
+ obj.__wbg_ptr = ptr;
14442
+ TleFitFinalization.register(obj, obj.__wbg_ptr, obj);
14443
+ return obj;
14444
+ }
14445
+ __destroy_into_raw() {
14446
+ const ptr = this.__wbg_ptr;
14447
+ this.__wbg_ptr = 0;
14448
+ TleFitFinalization.unregister(this);
14449
+ return ptr;
14450
+ }
14451
+ free() {
14452
+ const ptr = this.__destroy_into_raw();
14453
+ wasm.__wbg_tlefit_free(ptr, 0);
14454
+ }
14455
+ /**
14456
+ * @returns {any}
14457
+ */
14458
+ get elements() {
14459
+ const ret = wasm.tlefit_elements(this.__wbg_ptr);
14460
+ if (ret[2]) {
14461
+ throw takeFromExternrefTable0(ret[1]);
14462
+ }
14463
+ return takeFromExternrefTable0(ret[0]);
14464
+ }
14465
+ /**
14466
+ * @returns {string}
14467
+ */
14468
+ get line1() {
14469
+ let deferred1_0;
14470
+ let deferred1_1;
14471
+ try {
14472
+ const ret = wasm.tlefit_line1(this.__wbg_ptr);
14473
+ deferred1_0 = ret[0];
14474
+ deferred1_1 = ret[1];
14475
+ return getStringFromWasm0(ret[0], ret[1]);
14476
+ } finally {
14477
+ wasm.__wbindgen_free(deferred1_0, deferred1_1, 1);
14478
+ }
14479
+ }
14480
+ /**
14481
+ * @returns {string}
14482
+ */
14483
+ get line2() {
14484
+ let deferred1_0;
14485
+ let deferred1_1;
14486
+ try {
14487
+ const ret = wasm.tlefit_line2(this.__wbg_ptr);
14488
+ deferred1_0 = ret[0];
14489
+ deferred1_1 = ret[1];
14490
+ return getStringFromWasm0(ret[0], ret[1]);
14491
+ } finally {
14492
+ wasm.__wbindgen_free(deferred1_0, deferred1_1, 1);
14493
+ }
14494
+ }
14495
+ /**
14496
+ * @returns {Omm}
14497
+ */
14498
+ get omm() {
14499
+ const ret = wasm.tlefit_omm(this.__wbg_ptr);
14500
+ return Omm.__wrap(ret);
14501
+ }
14502
+ /**
14503
+ * @returns {any}
14504
+ */
14505
+ get stats() {
14506
+ const ret = wasm.tlefit_stats(this.__wbg_ptr);
14507
+ if (ret[2]) {
14508
+ throw takeFromExternrefTable0(ret[1]);
14509
+ }
14510
+ return takeFromExternrefTable0(ret[0]);
14511
+ }
14512
+ /**
14513
+ * @returns {string[]}
14514
+ */
14515
+ toLines() {
14516
+ const ret = wasm.tlefit_toLines(this.__wbg_ptr);
14517
+ var v1 = getArrayJsValueFromWasm0(ret[0], ret[1]).slice();
14518
+ wasm.__wbindgen_free(ret[0], ret[1] * 4, 4);
14519
+ return v1;
14520
+ }
14521
+ }
14522
+ if (Symbol.dispose) TleFit.prototype[Symbol.dispose] = TleFit.prototype.free;
14523
+ exports.TleFit = TleFit;
14524
+
13036
14525
  /**
13037
14526
  * TEME states from a batched SGP4 propagation. Each array is flat row-major,
13038
14527
  * length `3 * epochCount`.
@@ -13789,6 +15278,17 @@ function cn0(eirp_dbw, fspl_db, receiver_gt_dbk, other_losses_db) {
13789
15278
  }
13790
15279
  exports.cn0 = cn0;
13791
15280
 
15281
+ /**
15282
+ * Nominal GPS/QZSS CNAV URA meters for an ED/NED0 index.
15283
+ * @param {number} index
15284
+ * @returns {number | undefined}
15285
+ */
15286
+ function cnavUraNominalM(index) {
15287
+ const ret = wasm.cnavUraNominalM(index);
15288
+ return ret[0] === 0 ? undefined : ret[1];
15289
+ }
15290
+ exports.cnavUraNominalM = cnavUraNominalM;
15291
+
13792
15292
  /**
13793
15293
  * @param {any} coe
13794
15294
  * @param {RetrogradeFactor | null} [factor]
@@ -14140,6 +15640,27 @@ function decodeRtcmMessage(body) {
14140
15640
  }
14141
15641
  exports.decodeRtcmMessage = decodeRtcmMessage;
14142
15642
 
15643
+ /**
15644
+ * Decode an RTCM 3 byte stream into messages plus stream diagnostics.
15645
+ *
15646
+ * The `messages` array has the same object form as [`decodeRtcm`].
15647
+ * `diagnostics.resyncBytes` counts skipped bytes while finding valid frames,
15648
+ * and `diagnostics.skippedFrames` reports CRC-valid frames whose bodies could
15649
+ * not be decoded.
15650
+ * @param {Uint8Array} bytes
15651
+ * @returns {any}
15652
+ */
15653
+ function decodeRtcmStream(bytes) {
15654
+ const ptr0 = passArray8ToWasm0(bytes, wasm.__wbindgen_malloc);
15655
+ const len0 = WASM_VECTOR_LEN;
15656
+ const ret = wasm.decodeRtcmStream(ptr0, len0);
15657
+ if (ret[2]) {
15658
+ throw takeFromExternrefTable0(ret[1]);
15659
+ }
15660
+ return takeFromExternrefTable0(ret[0]);
15661
+ }
15662
+ exports.decodeRtcmStream = decodeRtcmStream;
15663
+
14143
15664
  /**
14144
15665
  * @param {Uint8Array} bytes
14145
15666
  * @param {string | null} [form]
@@ -14526,6 +16047,42 @@ function egm96Undulation(lat_rad, lon_rad) {
14526
16047
  }
14527
16048
  exports.egm96Undulation = egm96Undulation;
14528
16049
 
16050
+ /**
16051
+ * Batch EGM96 undulation lookup for flat `[latDeg, lonDeg, ...]` pairs.
16052
+ * @param {Float64Array} points_deg
16053
+ * @returns {Float64Array}
16054
+ */
16055
+ function egm96UndulationsDeg(points_deg) {
16056
+ const ptr0 = passArrayF64ToWasm0(points_deg, wasm.__wbindgen_malloc);
16057
+ const len0 = WASM_VECTOR_LEN;
16058
+ const ret = wasm.egm96UndulationsDeg(ptr0, len0);
16059
+ if (ret[3]) {
16060
+ throw takeFromExternrefTable0(ret[2]);
16061
+ }
16062
+ var v2 = getArrayF64FromWasm0(ret[0], ret[1]).slice();
16063
+ wasm.__wbindgen_free(ret[0], ret[1] * 8, 8);
16064
+ return v2;
16065
+ }
16066
+ exports.egm96UndulationsDeg = egm96UndulationsDeg;
16067
+
16068
+ /**
16069
+ * Batch EGM96 undulation lookup for flat `[latRad, lonRad, ...]` pairs.
16070
+ * @param {Float64Array} points_rad
16071
+ * @returns {Float64Array}
16072
+ */
16073
+ function egm96UndulationsRad(points_rad) {
16074
+ const ptr0 = passArrayF64ToWasm0(points_rad, wasm.__wbindgen_malloc);
16075
+ const len0 = WASM_VECTOR_LEN;
16076
+ const ret = wasm.egm96UndulationsRad(ptr0, len0);
16077
+ if (ret[3]) {
16078
+ throw takeFromExternrefTable0(ret[2]);
16079
+ }
16080
+ var v2 = getArrayF64FromWasm0(ret[0], ret[1]).slice();
16081
+ wasm.__wbindgen_free(ret[0], ret[1] * 8, 8);
16082
+ return v2;
16083
+ }
16084
+ exports.egm96UndulationsRad = egm96UndulationsRad;
16085
+
14529
16086
  /**
14530
16087
  * Effective isotropic radiated power, dBW.
14531
16088
  * @param {number} tx_power_dbm
@@ -14749,6 +16306,24 @@ function estimateDecay(drag, request) {
14749
16306
  }
14750
16307
  exports.estimateDecay = estimateDecay;
14751
16308
 
16309
+ /**
16310
+ * Estimate decay using per-epoch values from a parsed space-weather table.
16311
+ * @param {DragForce} drag
16312
+ * @param {SpaceWeatherTable} table
16313
+ * @param {any} request
16314
+ * @returns {any}
16315
+ */
16316
+ function estimateDecayWithSpaceWeather(drag, table, request) {
16317
+ _assertClass(drag, DragForce);
16318
+ _assertClass(table, SpaceWeatherTable);
16319
+ const ret = wasm.estimateDecayWithSpaceWeather(drag.__wbg_ptr, table.__wbg_ptr, request);
16320
+ if (ret[2]) {
16321
+ throw takeFromExternrefTable0(ret[1]);
16322
+ }
16323
+ return takeFromExternrefTable0(ret[0]);
16324
+ }
16325
+ exports.estimateDecayWithSpaceWeather = estimateDecayWithSpaceWeather;
16326
+
14752
16327
  /**
14753
16328
  * Find Moon elevation threshold crossings (moonrise / moonset) over a UTC
14754
16329
  * window.
@@ -15004,9 +16579,24 @@ function fitReducedOrbitTle(tle, options) {
15004
16579
  if (ret[2]) {
15005
16580
  throw takeFromExternrefTable0(ret[1]);
15006
16581
  }
15007
- return ReducedOrbitSourceFit.__wrap(ret[0]);
16582
+ return ReducedOrbitSourceFit.__wrap(ret[0]);
16583
+ }
16584
+ exports.fitReducedOrbitTle = fitReducedOrbitTle;
16585
+
16586
+ /**
16587
+ * Fit SGP4 mean elements and optional B* to TEME state samples.
16588
+ * @param {any} samples
16589
+ * @param {any} config
16590
+ * @returns {TleFit}
16591
+ */
16592
+ function fitTle(samples, config) {
16593
+ const ret = wasm.fitTle(samples, config);
16594
+ if (ret[2]) {
16595
+ throw takeFromExternrefTable0(ret[1]);
16596
+ }
16597
+ return TleFit.__wrap(ret[0]);
15008
16598
  }
15009
- exports.fitReducedOrbitTle = fitReducedOrbitTle;
16599
+ exports.fitTle = fitTle;
15010
16600
 
15011
16601
  /**
15012
16602
  * Fix Melbourne-Wubbena wide-lane ambiguities over a dual-frequency RTK arc.
@@ -15263,6 +16853,44 @@ function geoidUndulation(lat_rad, lon_rad) {
15263
16853
  }
15264
16854
  exports.geoidUndulation = geoidUndulation;
15265
16855
 
16856
+ /**
16857
+ * Batch coarse built-in undulation lookup for flat `[latDeg, lonDeg, ...]`
16858
+ * pairs.
16859
+ * @param {Float64Array} points_deg
16860
+ * @returns {Float64Array}
16861
+ */
16862
+ function geoidUndulationsDeg(points_deg) {
16863
+ const ptr0 = passArrayF64ToWasm0(points_deg, wasm.__wbindgen_malloc);
16864
+ const len0 = WASM_VECTOR_LEN;
16865
+ const ret = wasm.geoidUndulationsDeg(ptr0, len0);
16866
+ if (ret[3]) {
16867
+ throw takeFromExternrefTable0(ret[2]);
16868
+ }
16869
+ var v2 = getArrayF64FromWasm0(ret[0], ret[1]).slice();
16870
+ wasm.__wbindgen_free(ret[0], ret[1] * 8, 8);
16871
+ return v2;
16872
+ }
16873
+ exports.geoidUndulationsDeg = geoidUndulationsDeg;
16874
+
16875
+ /**
16876
+ * Batch coarse built-in undulation lookup for flat `[latRad, lonRad, ...]`
16877
+ * pairs.
16878
+ * @param {Float64Array} points_rad
16879
+ * @returns {Float64Array}
16880
+ */
16881
+ function geoidUndulationsRad(points_rad) {
16882
+ const ptr0 = passArrayF64ToWasm0(points_rad, wasm.__wbindgen_malloc);
16883
+ const len0 = WASM_VECTOR_LEN;
16884
+ const ret = wasm.geoidUndulationsRad(ptr0, len0);
16885
+ if (ret[3]) {
16886
+ throw takeFromExternrefTable0(ret[2]);
16887
+ }
16888
+ var v2 = getArrayF64FromWasm0(ret[0], ret[1]).slice();
16889
+ wasm.__wbindgen_free(ret[0], ret[1] * 8, 8);
16890
+ return v2;
16891
+ }
16892
+ exports.geoidUndulationsRad = geoidUndulationsRad;
16893
+
15266
16894
  /**
15267
16895
  * Geometry-free phase combination `L_GF = L1 - L2`, metres.
15268
16896
  * @param {number} l1_m
@@ -16025,6 +17653,38 @@ function leastSquaresDropOne(request) {
16025
17653
  }
16026
17654
  exports.leastSquaresDropOne = leastSquaresDropOne;
16027
17655
 
17656
+ /**
17657
+ * Lint RINEX navigation text.
17658
+ * @param {Uint8Array} bytes
17659
+ * @returns {any}
17660
+ */
17661
+ function lintRinexNav(bytes) {
17662
+ const ptr0 = passArray8ToWasm0(bytes, wasm.__wbindgen_malloc);
17663
+ const len0 = WASM_VECTOR_LEN;
17664
+ const ret = wasm.lintRinexNav(ptr0, len0);
17665
+ if (ret[2]) {
17666
+ throw takeFromExternrefTable0(ret[1]);
17667
+ }
17668
+ return takeFromExternrefTable0(ret[0]);
17669
+ }
17670
+ exports.lintRinexNav = lintRinexNav;
17671
+
17672
+ /**
17673
+ * Lint RINEX observation text.
17674
+ * @param {Uint8Array} bytes
17675
+ * @returns {any}
17676
+ */
17677
+ function lintRinexObs(bytes) {
17678
+ const ptr0 = passArray8ToWasm0(bytes, wasm.__wbindgen_malloc);
17679
+ const len0 = WASM_VECTOR_LEN;
17680
+ const ret = wasm.lintRinexObs(ptr0, len0);
17681
+ if (ret[2]) {
17682
+ throw takeFromExternrefTable0(ret[1]);
17683
+ }
17684
+ return takeFromExternrefTable0(ret[0]);
17685
+ }
17686
+ exports.lintRinexObs = lintRinexObs;
17687
+
16028
17688
  /**
16029
17689
  * Decode LNAV subframes 1-3 back into engineering-unit parameters.
16030
17690
  *
@@ -16819,6 +18479,47 @@ function nequickGStecTecu(_eval) {
16819
18479
  }
16820
18480
  exports.nequickGStecTecu = nequickGStecTecu;
16821
18481
 
18482
+ /**
18483
+ * Parse bytes and return grouped epoch snapshots directly.
18484
+ * @param {Uint8Array} bytes
18485
+ * @returns {any}
18486
+ */
18487
+ function nmeaEpochs(bytes) {
18488
+ const ptr0 = passArray8ToWasm0(bytes, wasm.__wbindgen_malloc);
18489
+ const len0 = WASM_VECTOR_LEN;
18490
+ const ret = wasm.nmeaEpochs(ptr0, len0);
18491
+ if (ret[2]) {
18492
+ throw takeFromExternrefTable0(ret[1]);
18493
+ }
18494
+ return takeFromExternrefTable0(ret[0]);
18495
+ }
18496
+ exports.nmeaEpochs = nmeaEpochs;
18497
+
18498
+ /**
18499
+ * Write a GGA sentence from a JS object.
18500
+ * @param {any} request
18501
+ * @returns {string}
18502
+ */
18503
+ function nmeaWriteGga(request) {
18504
+ let deferred2_0;
18505
+ let deferred2_1;
18506
+ try {
18507
+ const ret = wasm.nmeaWriteGga(request);
18508
+ var ptr1 = ret[0];
18509
+ var len1 = ret[1];
18510
+ if (ret[3]) {
18511
+ ptr1 = 0; len1 = 0;
18512
+ throw takeFromExternrefTable0(ret[2]);
18513
+ }
18514
+ deferred2_0 = ptr1;
18515
+ deferred2_1 = len1;
18516
+ return getStringFromWasm0(ptr1, len1);
18517
+ } finally {
18518
+ wasm.__wbindgen_free(deferred2_0, deferred2_1, 1);
18519
+ }
18520
+ }
18521
+ exports.nmeaWriteGga = nmeaWriteGga;
18522
+
16822
18523
  /**
16823
18524
  * Equal-variance noise amplification of the ionosphere-free combination.
16824
18525
  * @param {number} f1_hz
@@ -16865,6 +18566,22 @@ function normalCovariance(jacobian, m, n, variance_scale) {
16865
18566
  }
16866
18567
  exports.normalCovariance = normalCovariance;
16867
18568
 
18569
+ /**
18570
+ * Build the NTRIP connection request bytes for a config object.
18571
+ * @param {any} config
18572
+ * @returns {Uint8Array}
18573
+ */
18574
+ function ntripRequestBytes(config) {
18575
+ const ret = wasm.ntripRequestBytes(config);
18576
+ if (ret[3]) {
18577
+ throw takeFromExternrefTable0(ret[2]);
18578
+ }
18579
+ var v1 = getArrayU8FromWasm0(ret[0], ret[1]).slice();
18580
+ wasm.__wbindgen_free(ret[0], ret[1] * 1, 1);
18581
+ return v1;
18582
+ }
18583
+ exports.ntripRequestBytes = ntripRequestBytes;
18584
+
16868
18585
  /**
16869
18586
  * Predict observables for one satellite from a broadcast ephemeris store.
16870
18587
  * Delegates to `sidereon_core::observables::predict`.
@@ -16933,6 +18650,22 @@ function observationKindLabel(kind) {
16933
18650
  }
16934
18651
  exports.observationKindLabel = observationKindLabel;
16935
18652
 
18653
+ /**
18654
+ * Aggregate observation QC for a parsed RINEX OBS product.
18655
+ * @param {RinexObs} obs
18656
+ * @param {any} options
18657
+ * @returns {ObservationQcReport}
18658
+ */
18659
+ function observationQc(obs, options) {
18660
+ _assertClass(obs, RinexObs);
18661
+ const ret = wasm.observationQc(obs.__wbg_ptr, options);
18662
+ if (ret[2]) {
18663
+ throw takeFromExternrefTable0(ret[1]);
18664
+ }
18665
+ return ObservationQcReport.__wrap(ret[0]);
18666
+ }
18667
+ exports.observationQc = observationQc;
18668
+
16936
18669
  /**
16937
18670
  * Observe `"sun"` or `"moon"` from a geodetic station at a UTC unix microsecond epoch.
16938
18671
  * @param {any} station
@@ -17117,6 +18850,35 @@ function parseNavcen(html) {
17117
18850
  }
17118
18851
  exports.parseNavcen = parseNavcen;
17119
18852
 
18853
+ /**
18854
+ * Parse NMEA sentences from bytes.
18855
+ * @param {Uint8Array} bytes
18856
+ * @returns {NmeaParseResult}
18857
+ */
18858
+ function parseNmea(bytes) {
18859
+ const ptr0 = passArray8ToWasm0(bytes, wasm.__wbindgen_malloc);
18860
+ const len0 = WASM_VECTOR_LEN;
18861
+ const ret = wasm.parseNmea(ptr0, len0);
18862
+ return NmeaParseResult.__wrap(ret);
18863
+ }
18864
+ exports.parseNmea = parseNmea;
18865
+
18866
+ /**
18867
+ * Parse NTRIP sourcetable text from UTF-8 bytes.
18868
+ * @param {Uint8Array} bytes
18869
+ * @returns {any}
18870
+ */
18871
+ function parseNtripSourcetable(bytes) {
18872
+ const ptr0 = passArray8ToWasm0(bytes, wasm.__wbindgen_malloc);
18873
+ const len0 = WASM_VECTOR_LEN;
18874
+ const ret = wasm.parseNtripSourcetable(ptr0, len0);
18875
+ if (ret[2]) {
18876
+ throw takeFromExternrefTable0(ret[1]);
18877
+ }
18878
+ return takeFromExternrefTable0(ret[0]);
18879
+ }
18880
+ exports.parseNtripSourcetable = parseNtripSourcetable;
18881
+
17120
18882
  /**
17121
18883
  * Parse CCSDS OEM KVN text. The KVN reader is forgiving: malformed ephemeris
17122
18884
  * lines are skipped and counted in `skippedStates`. Throws an `Error` on a
@@ -17368,6 +19130,54 @@ function parseRinexObs(bytes) {
17368
19130
  }
17369
19131
  exports.parseRinexObs = parseRinexObs;
17370
19132
 
19133
+ /**
19134
+ * Parse either CSV or fixed-width TXT space-weather bytes.
19135
+ * @param {Uint8Array} bytes
19136
+ * @returns {SpaceWeatherTable}
19137
+ */
19138
+ function parseSpaceWeather(bytes) {
19139
+ const ptr0 = passArray8ToWasm0(bytes, wasm.__wbindgen_malloc);
19140
+ const len0 = WASM_VECTOR_LEN;
19141
+ const ret = wasm.parseSpaceWeather(ptr0, len0);
19142
+ if (ret[2]) {
19143
+ throw takeFromExternrefTable0(ret[1]);
19144
+ }
19145
+ return SpaceWeatherTable.__wrap(ret[0]);
19146
+ }
19147
+ exports.parseSpaceWeather = parseSpaceWeather;
19148
+
19149
+ /**
19150
+ * Parse CelesTrak CSSI CSV space-weather text.
19151
+ * @param {string} text
19152
+ * @returns {SpaceWeatherTable}
19153
+ */
19154
+ function parseSpaceWeatherCsv(text) {
19155
+ const ptr0 = passStringToWasm0(text, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
19156
+ const len0 = WASM_VECTOR_LEN;
19157
+ const ret = wasm.parseSpaceWeatherCsv(ptr0, len0);
19158
+ if (ret[2]) {
19159
+ throw takeFromExternrefTable0(ret[1]);
19160
+ }
19161
+ return SpaceWeatherTable.__wrap(ret[0]);
19162
+ }
19163
+ exports.parseSpaceWeatherCsv = parseSpaceWeatherCsv;
19164
+
19165
+ /**
19166
+ * Parse CelesTrak CSSI fixed-width TXT space-weather text.
19167
+ * @param {string} text
19168
+ * @returns {SpaceWeatherTable}
19169
+ */
19170
+ function parseSpaceWeatherTxt(text) {
19171
+ const ptr0 = passStringToWasm0(text, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
19172
+ const len0 = WASM_VECTOR_LEN;
19173
+ const ret = wasm.parseSpaceWeatherTxt(ptr0, len0);
19174
+ if (ret[2]) {
19175
+ throw takeFromExternrefTable0(ret[1]);
19176
+ }
19177
+ return SpaceWeatherTable.__wrap(ret[0]);
19178
+ }
19179
+ exports.parseSpaceWeatherTxt = parseSpaceWeatherTxt;
19180
+
17371
19181
  /**
17372
19182
  * Parse a multi-record TLE file (CelesTrak / Space-Track style) into named,
17373
19183
  * initialized [`Tle`] instances. Handles bare 2-line sets, 3-line name+line1+line2
@@ -17663,6 +19473,20 @@ function propagateBatch(satellites, epochs_unix_us) {
17663
19473
  }
17664
19474
  exports.propagateBatch = propagateBatch;
17665
19475
 
19476
+ /**
19477
+ * Propagate an ECI Cartesian state and 6x6 covariance to requested epochs.
19478
+ * @param {any} request
19479
+ * @returns {CovarianceEphemeris}
19480
+ */
19481
+ function propagateCovariance(request) {
19482
+ const ret = wasm.propagateCovariance(request);
19483
+ if (ret[2]) {
19484
+ throw takeFromExternrefTable0(ret[1]);
19485
+ }
19486
+ return CovarianceEphemeris.__wrap(ret[0]);
19487
+ }
19488
+ exports.propagateCovariance = propagateCovariance;
19489
+
17666
19490
  /**
17667
19491
  * @param {any} coe
17668
19492
  * @param {number} mu_km3_s2
@@ -17785,6 +19609,40 @@ function relativeState(chief, deputy) {
17785
19609
  }
17786
19610
  exports.relativeState = relativeState;
17787
19611
 
19612
+ /**
19613
+ * Repair RINEX navigation text.
19614
+ * @param {Uint8Array} bytes
19615
+ * @param {any} options
19616
+ * @returns {RinexNavRepair}
19617
+ */
19618
+ function repairRinexNav(bytes, options) {
19619
+ const ptr0 = passArray8ToWasm0(bytes, wasm.__wbindgen_malloc);
19620
+ const len0 = WASM_VECTOR_LEN;
19621
+ const ret = wasm.repairRinexNav(ptr0, len0, options);
19622
+ if (ret[2]) {
19623
+ throw takeFromExternrefTable0(ret[1]);
19624
+ }
19625
+ return RinexNavRepair.__wrap(ret[0]);
19626
+ }
19627
+ exports.repairRinexNav = repairRinexNav;
19628
+
19629
+ /**
19630
+ * Repair RINEX observation text.
19631
+ * @param {Uint8Array} bytes
19632
+ * @param {any} options
19633
+ * @returns {RinexObsRepair}
19634
+ */
19635
+ function repairRinexObs(bytes, options) {
19636
+ const ptr0 = passArray8ToWasm0(bytes, wasm.__wbindgen_malloc);
19637
+ const len0 = WASM_VECTOR_LEN;
19638
+ const ret = wasm.repairRinexObs(ptr0, len0, options);
19639
+ if (ret[2]) {
19640
+ throw takeFromExternrefTable0(ret[1]);
19641
+ }
19642
+ return RinexObsRepair.__wrap(ret[0]);
19643
+ }
19644
+ exports.repairRinexObs = repairRinexObs;
19645
+
17788
19646
  /**
17789
19647
  * Build a sampled GPS C/A code replica, an `Int8Array`.
17790
19648
  * @param {bigint} prn
@@ -17878,6 +19736,39 @@ function rswRotation(position_km, velocity_km_s) {
17878
19736
  }
17879
19737
  exports.rswRotation = rswRotation;
17880
19738
 
19739
+ /**
19740
+ * Derive a RINEX LLI value for one MSM signal cell.
19741
+ *
19742
+ * `previous` is `null`/`undefined` or `{ elapsedMs, minLockTimeMs? }`.
19743
+ * `currentMinLockTimeMs` is a number or `null`/`undefined` for reserved current
19744
+ * indicators.
19745
+ * @param {any} previous
19746
+ * @param {any} current_min_lock_time_ms
19747
+ * @param {boolean} half_cycle_ambiguity
19748
+ * @returns {number}
19749
+ */
19750
+ function rtcmDeriveLli(previous, current_min_lock_time_ms, half_cycle_ambiguity) {
19751
+ const ret = wasm.rtcmDeriveLli(previous, current_min_lock_time_ms, half_cycle_ambiguity);
19752
+ if (ret[2]) {
19753
+ throw takeFromExternrefTable0(ret[1]);
19754
+ }
19755
+ return ret[0];
19756
+ }
19757
+ exports.rtcmDeriveLli = rtcmDeriveLli;
19758
+
19759
+ /**
19760
+ * RINEX LLI bit constants used by the RTCM MSM LLI helpers.
19761
+ * @returns {any}
19762
+ */
19763
+ function rtcmLliBits() {
19764
+ const ret = wasm.rtcmLliBits();
19765
+ if (ret[2]) {
19766
+ throw takeFromExternrefTable0(ret[1]);
19767
+ }
19768
+ return takeFromExternrefTable0(ret[0]);
19769
+ }
19770
+ exports.rtcmLliBits = rtcmLliBits;
19771
+
17881
19772
  /**
17882
19773
  * Read the 12-bit RTCM message number from a message body.
17883
19774
  *
@@ -17897,6 +19788,62 @@ function rtcmMessageNumber(body) {
17897
19788
  }
17898
19789
  exports.rtcmMessageNumber = rtcmMessageNumber;
17899
19790
 
19791
+ /**
19792
+ * Minimum continuous-lock time encoded by an MSM4/7 lock-time indicator.
19793
+ *
19794
+ * `kind` is `"msm4"` or `"msm7"`. Reserved or out-of-range indicators return
19795
+ * `undefined`.
19796
+ * @param {string} kind
19797
+ * @param {number} indicator
19798
+ * @returns {any}
19799
+ */
19800
+ function rtcmMinimumLockTimeMs(kind, indicator) {
19801
+ const ptr0 = passStringToWasm0(kind, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
19802
+ const len0 = WASM_VECTOR_LEN;
19803
+ const ret = wasm.rtcmMinimumLockTimeMs(ptr0, len0, indicator);
19804
+ if (ret[2]) {
19805
+ throw takeFromExternrefTable0(ret[1]);
19806
+ }
19807
+ return takeFromExternrefTable0(ret[0]);
19808
+ }
19809
+ exports.rtcmMinimumLockTimeMs = rtcmMinimumLockTimeMs;
19810
+
19811
+ /**
19812
+ * Elapsed milliseconds between two raw MSM epoch-time fields.
19813
+ * @param {string} system
19814
+ * @param {number} previous_epoch_time
19815
+ * @param {number} current_epoch_time
19816
+ * @returns {number}
19817
+ */
19818
+ function rtcmMsmEpochDtMs(system, previous_epoch_time, current_epoch_time) {
19819
+ const ptr0 = passStringToWasm0(system, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
19820
+ const len0 = WASM_VECTOR_LEN;
19821
+ const ret = wasm.rtcmMsmEpochDtMs(ptr0, len0, previous_epoch_time, current_epoch_time);
19822
+ if (ret[2]) {
19823
+ throw takeFromExternrefTable0(ret[1]);
19824
+ }
19825
+ return ret[0];
19826
+ }
19827
+ exports.rtcmMsmEpochDtMs = rtcmMsmEpochDtMs;
19828
+
19829
+ /**
19830
+ * RINEX 3 observation-code suffix for an MSM signal id, or `undefined` for
19831
+ * reserved ids.
19832
+ * @param {string} system
19833
+ * @param {number} signal_id
19834
+ * @returns {any}
19835
+ */
19836
+ function rtcmMsmSignalRinexCode(system, signal_id) {
19837
+ const ptr0 = passStringToWasm0(system, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
19838
+ const len0 = WASM_VECTOR_LEN;
19839
+ const ret = wasm.rtcmMsmSignalRinexCode(ptr0, len0, signal_id);
19840
+ if (ret[2]) {
19841
+ throw takeFromExternrefTable0(ret[1]);
19842
+ }
19843
+ return takeFromExternrefTable0(ret[0]);
19844
+ }
19845
+ exports.rtcmMsmSignalRinexCode = rtcmMsmSignalRinexCode;
19846
+
17900
19847
  /**
17901
19848
  * @param {Float64Array} position_km
17902
19849
  * @param {Float64Array} velocity_km_s
@@ -19180,6 +21127,24 @@ function toCsv(records, booleans) {
19180
21127
  }
19181
21128
  exports.toCsv = toCsv;
19182
21129
 
21130
+ /**
21131
+ * Transport a 6x6 covariance through caller-supplied STM segments.
21132
+ * @param {Float64Array} covariance
21133
+ * @param {any} segments
21134
+ * @param {any} options
21135
+ * @returns {CovarianceTransportResult}
21136
+ */
21137
+ function transportCovariance(covariance, segments, options) {
21138
+ const ptr0 = passArrayF64ToWasm0(covariance, wasm.__wbindgen_malloc);
21139
+ const len0 = WASM_VECTOR_LEN;
21140
+ const ret = wasm.transportCovariance(ptr0, len0, segments, options);
21141
+ if (ret[2]) {
21142
+ throw takeFromExternrefTable0(ret[1]);
21143
+ }
21144
+ return CovarianceTransportResult.__wrap(ret[0]);
21145
+ }
21146
+ exports.transportCovariance = transportCovariance;
21147
+
19183
21148
  /**
19184
21149
  * Niell hydrostatic and wet mapping factors at an elevation.
19185
21150
  *
@@ -19557,6 +21522,10 @@ function __wbg_get_imports() {
19557
21522
  const ret = FleetPass.__wrap(arg0);
19558
21523
  return ret;
19559
21524
  },
21525
+ __wbg_fromCodePoint_a952b701bbb83fa4: function() { return handleError(function (arg0) {
21526
+ const ret = String.fromCodePoint(arg0 >>> 0);
21527
+ return ret;
21528
+ }, arguments); },
19560
21529
  __wbg_get_507a50627bffa49b: function(arg0, arg1) {
19561
21530
  const ret = arg0[arg1 >>> 0];
19562
21531
  return ret;
@@ -19889,9 +21858,15 @@ const BroadcastEphemerisFinalization = (typeof FinalizationRegistry === 'undefin
19889
21858
  const BroadcastEvaluationFinalization = (typeof FinalizationRegistry === 'undefined')
19890
21859
  ? { register: () => {}, unregister: () => {} }
19891
21860
  : new FinalizationRegistry(ptr => wasm.__wbg_broadcastevaluation_free(ptr, 1));
21861
+ const BroadcastGroupDelaysJsFinalization = (typeof FinalizationRegistry === 'undefined')
21862
+ ? { register: () => {}, unregister: () => {} }
21863
+ : new FinalizationRegistry(ptr => wasm.__wbg_broadcastgroupdelaysjs_free(ptr, 1));
19892
21864
  const BroadcastRecordJsFinalization = (typeof FinalizationRegistry === 'undefined')
19893
21865
  ? { register: () => {}, unregister: () => {} }
19894
21866
  : new FinalizationRegistry(ptr => wasm.__wbg_broadcastrecordjs_free(ptr, 1));
21867
+ const BroadcastStoreEvaluationFinalization = (typeof FinalizationRegistry === 'undefined')
21868
+ ? { register: () => {}, unregister: () => {} }
21869
+ : new FinalizationRegistry(ptr => wasm.__wbg_broadcaststoreevaluation_free(ptr, 1));
19895
21870
  const CarrierPairFinalization = (typeof FinalizationRegistry === 'undefined')
19896
21871
  ? { register: () => {}, unregister: () => {} }
19897
21872
  : new FinalizationRegistry(ptr => wasm.__wbg_carrierpair_free(ptr, 1));
@@ -19919,6 +21894,9 @@ const ClockPolynomialJsFinalization = (typeof FinalizationRegistry === 'undefine
19919
21894
  const ClockSeriesFinalization = (typeof FinalizationRegistry === 'undefined')
19920
21895
  ? { register: () => {}, unregister: () => {} }
19921
21896
  : new FinalizationRegistry(ptr => wasm.__wbg_clockseries_free(ptr, 1));
21897
+ const CnavParametersJsFinalization = (typeof FinalizationRegistry === 'undefined')
21898
+ ? { register: () => {}, unregister: () => {} }
21899
+ : new FinalizationRegistry(ptr => wasm.__wbg_cnavparametersjs_free(ptr, 1));
19922
21900
  const CollisionProbabilityFinalization = (typeof FinalizationRegistry === 'undefined')
19923
21901
  ? { register: () => {}, unregister: () => {} }
19924
21902
  : new FinalizationRegistry(ptr => wasm.__wbg_collisionprobability_free(ptr, 1));
@@ -19931,6 +21909,12 @@ const ConstellationFinalization = (typeof FinalizationRegistry === 'undefined')
19931
21909
  const CorrelationResultFinalization = (typeof FinalizationRegistry === 'undefined')
19932
21910
  ? { register: () => {}, unregister: () => {} }
19933
21911
  : new FinalizationRegistry(ptr => wasm.__wbg_correlationresult_free(ptr, 1));
21912
+ const CovarianceEphemerisFinalization = (typeof FinalizationRegistry === 'undefined')
21913
+ ? { register: () => {}, unregister: () => {} }
21914
+ : new FinalizationRegistry(ptr => wasm.__wbg_covarianceephemeris_free(ptr, 1));
21915
+ const CovarianceTransportResultFinalization = (typeof FinalizationRegistry === 'undefined')
21916
+ ? { register: () => {}, unregister: () => {} }
21917
+ : new FinalizationRegistry(ptr => wasm.__wbg_covariancetransportresult_free(ptr, 1));
19934
21918
  const CoverageGridFinalization = (typeof FinalizationRegistry === 'undefined')
19935
21919
  ? { register: () => {}, unregister: () => {} }
19936
21920
  : new FinalizationRegistry(ptr => wasm.__wbg_coveragegrid_free(ptr, 1));
@@ -20078,6 +22062,15 @@ const MovingBaselineSolutionFinalization = (typeof FinalizationRegistry === 'und
20078
22062
  const NamedTleFinalization = (typeof FinalizationRegistry === 'undefined')
20079
22063
  ? { register: () => {}, unregister: () => {} }
20080
22064
  : new FinalizationRegistry(ptr => wasm.__wbg_namedtle_free(ptr, 1));
22065
+ const NmeaAccumulatorFinalization = (typeof FinalizationRegistry === 'undefined')
22066
+ ? { register: () => {}, unregister: () => {} }
22067
+ : new FinalizationRegistry(ptr => wasm.__wbg_nmeaaccumulator_free(ptr, 1));
22068
+ const NmeaParseResultFinalization = (typeof FinalizationRegistry === 'undefined')
22069
+ ? { register: () => {}, unregister: () => {} }
22070
+ : new FinalizationRegistry(ptr => wasm.__wbg_nmeaparseresult_free(ptr, 1));
22071
+ const NtripClientMachineFinalization = (typeof FinalizationRegistry === 'undefined')
22072
+ ? { register: () => {}, unregister: () => {} }
22073
+ : new FinalizationRegistry(ptr => wasm.__wbg_ntripclientmachine_free(ptr, 1));
20081
22074
  const ObsEpochFinalization = (typeof FinalizationRegistry === 'undefined')
20082
22075
  ? { register: () => {}, unregister: () => {} }
20083
22076
  : new FinalizationRegistry(ptr => wasm.__wbg_obsepoch_free(ptr, 1));
@@ -20093,6 +22086,9 @@ const ObsPhaseShiftFinalization = (typeof FinalizationRegistry === 'undefined')
20093
22086
  const ObservationFilterFinalization = (typeof FinalizationRegistry === 'undefined')
20094
22087
  ? { register: () => {}, unregister: () => {} }
20095
22088
  : new FinalizationRegistry(ptr => wasm.__wbg_observationfilter_free(ptr, 1));
22089
+ const ObservationQcReportFinalization = (typeof FinalizationRegistry === 'undefined')
22090
+ ? { register: () => {}, unregister: () => {} }
22091
+ : new FinalizationRegistry(ptr => wasm.__wbg_observationqcreport_free(ptr, 1));
20096
22092
  const ObservationValueSeriesFinalization = (typeof FinalizationRegistry === 'undefined')
20097
22093
  ? { register: () => {}, unregister: () => {} }
20098
22094
  : new FinalizationRegistry(ptr => wasm.__wbg_observationvalueseries_free(ptr, 1));
@@ -20183,9 +22179,18 @@ const ReducedOrbitStateFinalization = (typeof FinalizationRegistry === 'undefine
20183
22179
  const RinexClockFinalization = (typeof FinalizationRegistry === 'undefined')
20184
22180
  ? { register: () => {}, unregister: () => {} }
20185
22181
  : new FinalizationRegistry(ptr => wasm.__wbg_rinexclock_free(ptr, 1));
22182
+ const RinexNavRepairFinalization = (typeof FinalizationRegistry === 'undefined')
22183
+ ? { register: () => {}, unregister: () => {} }
22184
+ : new FinalizationRegistry(ptr => wasm.__wbg_rinexnavrepair_free(ptr, 1));
20186
22185
  const RinexObsFinalization = (typeof FinalizationRegistry === 'undefined')
20187
22186
  ? { register: () => {}, unregister: () => {} }
20188
22187
  : new FinalizationRegistry(ptr => wasm.__wbg_rinexobs_free(ptr, 1));
22188
+ const RinexObsRepairFinalization = (typeof FinalizationRegistry === 'undefined')
22189
+ ? { register: () => {}, unregister: () => {} }
22190
+ : new FinalizationRegistry(ptr => wasm.__wbg_rinexobsrepair_free(ptr, 1));
22191
+ const RtcmLockTimeTrackerFinalization = (typeof FinalizationRegistry === 'undefined')
22192
+ ? { register: () => {}, unregister: () => {} }
22193
+ : new FinalizationRegistry(ptr => wasm.__wbg_rtcmlocktimetracker_free(ptr, 1));
20189
22194
  const RtkFixedSolutionFinalization = (typeof FinalizationRegistry === 'undefined')
20190
22195
  ? { register: () => {}, unregister: () => {} }
20191
22196
  : new FinalizationRegistry(ptr => wasm.__wbg_rtkfixedsolution_free(ptr, 1));
@@ -20246,6 +22251,9 @@ const SpaceWeatherFinalization = (typeof FinalizationRegistry === 'undefined')
20246
22251
  const SpaceWeatherDefaultsFinalization = (typeof FinalizationRegistry === 'undefined')
20247
22252
  ? { register: () => {}, unregister: () => {} }
20248
22253
  : new FinalizationRegistry(ptr => wasm.__wbg_spaceweatherdefaults_free(ptr, 1));
22254
+ const SpaceWeatherTableFinalization = (typeof FinalizationRegistry === 'undefined')
22255
+ ? { register: () => {}, unregister: () => {} }
22256
+ : new FinalizationRegistry(ptr => wasm.__wbg_spaceweathertable_free(ptr, 1));
20249
22257
  const SpkFinalization = (typeof FinalizationRegistry === 'undefined')
20250
22258
  ? { register: () => {}, unregister: () => {} }
20251
22259
  : new FinalizationRegistry(ptr => wasm.__wbg_spk_free(ptr, 1));
@@ -20270,6 +22278,9 @@ const SunMoonFinalization = (typeof FinalizationRegistry === 'undefined')
20270
22278
  const TleFinalization = (typeof FinalizationRegistry === 'undefined')
20271
22279
  ? { register: () => {}, unregister: () => {} }
20272
22280
  : new FinalizationRegistry(ptr => wasm.__wbg_tle_free(ptr, 1));
22281
+ const TleFitFinalization = (typeof FinalizationRegistry === 'undefined')
22282
+ ? { register: () => {}, unregister: () => {} }
22283
+ : new FinalizationRegistry(ptr => wasm.__wbg_tlefit_free(ptr, 1));
20273
22284
  const TlePropagationFinalization = (typeof FinalizationRegistry === 'undefined')
20274
22285
  ? { register: () => {}, unregister: () => {} }
20275
22286
  : new FinalizationRegistry(ptr => wasm.__wbg_tlepropagation_free(ptr, 1));