@neilberkman/sidereon 0.15.0 → 0.16.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.
@@ -3269,6 +3269,52 @@ class CoverageGrid {
3269
3269
  if (Symbol.dispose) CoverageGrid.prototype[Symbol.dispose] = CoverageGrid.prototype.free;
3270
3270
  exports.CoverageGrid = CoverageGrid;
3271
3271
 
3272
+ /**
3273
+ * Stateful opt-in latch for SGP4 decay-like failures.
3274
+ *
3275
+ * Pass one latch per satellite to [`Tle.propagateWithDecayLatch`]. The first
3276
+ * decay-like SGP4 failure records the requested epoch in minutes since the TLE
3277
+ * epoch; later requests at the same or a later epoch throw immediately through
3278
+ * the core latch instead of returning a raw post-decay state.
3279
+ */
3280
+ class DecayLatch {
3281
+ __destroy_into_raw() {
3282
+ const ptr = this.__wbg_ptr;
3283
+ this.__wbg_ptr = 0;
3284
+ DecayLatchFinalization.unregister(this);
3285
+ return ptr;
3286
+ }
3287
+ free() {
3288
+ const ptr = this.__destroy_into_raw();
3289
+ wasm.__wbg_decaylatch_free(ptr, 0);
3290
+ }
3291
+ /**
3292
+ * Clear the recorded decay state.
3293
+ */
3294
+ clear() {
3295
+ wasm.decaylatch_clear(this.__wbg_ptr);
3296
+ }
3297
+ /**
3298
+ * First observed decay-like epoch, in minutes since the TLE epoch.
3299
+ * @returns {number | undefined}
3300
+ */
3301
+ get firstFailingEpochMinutes() {
3302
+ const ret = wasm.decaylatch_firstFailingEpochMinutes(this.__wbg_ptr);
3303
+ return ret[0] === 0 ? undefined : ret[1];
3304
+ }
3305
+ /**
3306
+ * Construct an empty decay latch.
3307
+ */
3308
+ constructor() {
3309
+ const ret = wasm.decaylatch_new();
3310
+ this.__wbg_ptr = ret;
3311
+ DecayLatchFinalization.register(this, this.__wbg_ptr, this);
3312
+ return this;
3313
+ }
3314
+ }
3315
+ if (Symbol.dispose) DecayLatch.prototype[Symbol.dispose] = DecayLatch.prototype.free;
3316
+ exports.DecayLatch = DecayLatch;
3317
+
3272
3318
  /**
3273
3319
  * SBAS degradation terms used when deriving an error model from a store.
3274
3320
  */
@@ -4155,6 +4201,38 @@ class DtedTerrain {
4155
4201
  if (Symbol.dispose) DtedTerrain.prototype[Symbol.dispose] = DtedTerrain.prototype.free;
4156
4202
  exports.DtedTerrain = DtedTerrain;
4157
4203
 
4204
+ /**
4205
+ * Earth figure used for conical eclipse shadow geometry.
4206
+ * @enum {0 | 1}
4207
+ */
4208
+ const EarthShadowModel = Object.freeze({
4209
+ /**
4210
+ * Spherical Earth using the core mean Earth radius.
4211
+ */
4212
+ Spherical: 0, "0": "Spherical",
4213
+ /**
4214
+ * WGS84 oblate Earth approximation by polar-axis scaling.
4215
+ */
4216
+ Wgs84Oblate: 1, "1": "Wgs84Oblate",
4217
+ });
4218
+ exports.EarthShadowModel = EarthShadowModel;
4219
+
4220
+ /**
4221
+ * EGM2008 raster spacing for NGA row-framed interpolation grids.
4222
+ * @enum {0 | 1}
4223
+ */
4224
+ const Egm2008GridSpacing = Object.freeze({
4225
+ /**
4226
+ * The 1-arcminute EGM2008 grid.
4227
+ */
4228
+ OneMinute: 0, "0": "OneMinute",
4229
+ /**
4230
+ * The 2.5-arcminute EGM2008 grid.
4231
+ */
4232
+ TwoPointFiveMinute: 1, "1": "TwoPointFiveMinute",
4233
+ });
4234
+ exports.Egm2008GridSpacing = Egm2008GridSpacing;
4235
+
4158
4236
  /**
4159
4237
  * Loaded EGM96 15-arcminute geoid grid for explicit terrain datum conversion.
4160
4238
  */
@@ -4862,6 +4940,19 @@ class FrameStates {
4862
4940
  if (Symbol.dispose) FrameStates.prototype[Symbol.dispose] = FrameStates.prototype.free;
4863
4941
  exports.FrameStates = FrameStates;
4864
4942
 
4943
+ /**
4944
+ * WGS84 geodesic input failure class exposed as a stable enum symbol.
4945
+ * @enum {0}
4946
+ */
4947
+ const GeodesicError = Object.freeze({
4948
+ /**
4949
+ * A latitude, longitude, azimuth, or distance was outside the accepted
4950
+ * numeric domain.
4951
+ */
4952
+ InvalidInput: 0, "0": "InvalidInput",
4953
+ });
4954
+ exports.GeodesicError = GeodesicError;
4955
+
4865
4956
  /**
4866
4957
  * A regular latitude/longitude grid of geoid undulation samples with bilinear
4867
4958
  * interpolation, wrapping a real (loaded) geoid model.
@@ -4905,6 +4996,49 @@ class GeoidGrid {
4905
4996
  const ret = wasm.geoidgrid_ellipsoidalHeightRad(this.__wbg_ptr, orthometric_height_m, lat_rad, lon_rad);
4906
4997
  return ret;
4907
4998
  }
4999
+ /**
5000
+ * Parse a full NGA EGM2008 row-framed interpolation raster.
5001
+ *
5002
+ * The byte stream must contain one north-to-south Fortran sequential record
5003
+ * per latitude row at the requested spacing. Use
5004
+ * [`fromEgm2008RasterWindow`] for small cropped fixtures or partial loads.
5005
+ * @param {Uint8Array} bytes
5006
+ * @param {Egm2008GridSpacing} spacing
5007
+ * @returns {GeoidGrid}
5008
+ */
5009
+ static fromEgm2008Raster(bytes, spacing) {
5010
+ const ptr0 = passArray8ToWasm0(bytes, wasm.__wbindgen_malloc);
5011
+ const len0 = WASM_VECTOR_LEN;
5012
+ const ret = wasm.geoidgrid_fromEgm2008Raster(ptr0, len0, spacing);
5013
+ if (ret[2]) {
5014
+ throw takeFromExternrefTable0(ret[1]);
5015
+ }
5016
+ return GeoidGrid.__wrap(ret[0]);
5017
+ }
5018
+ /**
5019
+ * Parse a cropped NGA EGM2008 row-framed interpolation raster window.
5020
+ *
5021
+ * `latMinDeg` and `lonMinDeg` are the southwest node of the loaded grid.
5022
+ * `nLat` and `nLon` are the latitude and longitude node counts in the byte
5023
+ * stream. Queries use the same undulation methods as every other
5024
+ * [`GeoidGrid`].
5025
+ * @param {Uint8Array} bytes
5026
+ * @param {Egm2008GridSpacing} spacing
5027
+ * @param {number} lat_min_deg
5028
+ * @param {number} lon_min_deg
5029
+ * @param {number} n_lat
5030
+ * @param {number} n_lon
5031
+ * @returns {GeoidGrid}
5032
+ */
5033
+ static fromEgm2008RasterWindow(bytes, spacing, lat_min_deg, lon_min_deg, n_lat, n_lon) {
5034
+ const ptr0 = passArray8ToWasm0(bytes, wasm.__wbindgen_malloc);
5035
+ const len0 = WASM_VECTOR_LEN;
5036
+ const ret = wasm.geoidgrid_fromEgm2008RasterWindow(ptr0, len0, spacing, lat_min_deg, lon_min_deg, n_lat, n_lon);
5037
+ if (ret[2]) {
5038
+ throw takeFromExternrefTable0(ret[1]);
5039
+ }
5040
+ return GeoidGrid.__wrap(ret[0]);
5041
+ }
4908
5042
  /**
4909
5043
  * Parse an EGM96 `WW15MGH.DAC` byte buffer into a full-resolution grid.
4910
5044
  * @param {Uint8Array} bytes
@@ -5648,6 +5782,242 @@ class GroundTrack {
5648
5782
  if (Symbol.dispose) GroundTrack.prototype[Symbol.dispose] = GroundTrack.prototype.free;
5649
5783
  exports.GroundTrack = GroundTrack;
5650
5784
 
5785
+ /**
5786
+ * Helmert parameters in the units used by the published catalog tables.
5787
+ */
5788
+ class HelmertParameters {
5789
+ static __wrap(ptr) {
5790
+ const obj = Object.create(HelmertParameters.prototype);
5791
+ obj.__wbg_ptr = ptr;
5792
+ HelmertParametersFinalization.register(obj, obj.__wbg_ptr, obj);
5793
+ return obj;
5794
+ }
5795
+ __destroy_into_raw() {
5796
+ const ptr = this.__wbg_ptr;
5797
+ this.__wbg_ptr = 0;
5798
+ HelmertParametersFinalization.unregister(this);
5799
+ return ptr;
5800
+ }
5801
+ free() {
5802
+ const ptr = this.__destroy_into_raw();
5803
+ wasm.__wbg_helmertparameters_free(ptr, 0);
5804
+ }
5805
+ /**
5806
+ * Construct Helmert parameters from translation millimetres, scale parts
5807
+ * per billion, and rotation milliarcseconds.
5808
+ * @param {Float64Array} translation_mm
5809
+ * @param {number} scale_ppb
5810
+ * @param {Float64Array} rotation_mas
5811
+ */
5812
+ constructor(translation_mm, scale_ppb, rotation_mas) {
5813
+ const ptr0 = passArrayF64ToWasm0(translation_mm, wasm.__wbindgen_malloc);
5814
+ const len0 = WASM_VECTOR_LEN;
5815
+ const ptr1 = passArrayF64ToWasm0(rotation_mas, wasm.__wbindgen_malloc);
5816
+ const len1 = WASM_VECTOR_LEN;
5817
+ const ret = wasm.helmertparameters_new(ptr0, len0, scale_ppb, ptr1, len1);
5818
+ if (ret[2]) {
5819
+ throw takeFromExternrefTable0(ret[1]);
5820
+ }
5821
+ this.__wbg_ptr = ret[0];
5822
+ HelmertParametersFinalization.register(this, this.__wbg_ptr, this);
5823
+ return this;
5824
+ }
5825
+ /**
5826
+ * Rotation components `[Rx, Ry, Rz]`, in milliarcseconds.
5827
+ * @returns {Float64Array}
5828
+ */
5829
+ get rotationMas() {
5830
+ const ret = wasm.helmertparameters_rotationMas(this.__wbg_ptr);
5831
+ var v1 = getArrayF64FromWasm0(ret[0], ret[1]).slice();
5832
+ wasm.__wbindgen_free(ret[0], ret[1] * 8, 8);
5833
+ return v1;
5834
+ }
5835
+ /**
5836
+ * Scale difference, in parts per billion.
5837
+ * @returns {number}
5838
+ */
5839
+ get scalePpb() {
5840
+ const ret = wasm.helmertparameters_scalePpb(this.__wbg_ptr);
5841
+ return ret;
5842
+ }
5843
+ /**
5844
+ * Translation components `[Tx, Ty, Tz]`, in millimetres.
5845
+ * @returns {Float64Array}
5846
+ */
5847
+ get translationMm() {
5848
+ const ret = wasm.helmertparameters_translationMm(this.__wbg_ptr);
5849
+ var v1 = getArrayF64FromWasm0(ret[0], ret[1]).slice();
5850
+ wasm.__wbindgen_free(ret[0], ret[1] * 8, 8);
5851
+ return v1;
5852
+ }
5853
+ }
5854
+ if (Symbol.dispose) HelmertParameters.prototype[Symbol.dispose] = HelmertParameters.prototype.free;
5855
+ exports.HelmertParameters = HelmertParameters;
5856
+
5857
+ /**
5858
+ * Helmert parameter rates in the units used by the published catalog tables.
5859
+ */
5860
+ class HelmertRates {
5861
+ static __wrap(ptr) {
5862
+ const obj = Object.create(HelmertRates.prototype);
5863
+ obj.__wbg_ptr = ptr;
5864
+ HelmertRatesFinalization.register(obj, obj.__wbg_ptr, obj);
5865
+ return obj;
5866
+ }
5867
+ __destroy_into_raw() {
5868
+ const ptr = this.__wbg_ptr;
5869
+ this.__wbg_ptr = 0;
5870
+ HelmertRatesFinalization.unregister(this);
5871
+ return ptr;
5872
+ }
5873
+ free() {
5874
+ const ptr = this.__destroy_into_raw();
5875
+ wasm.__wbg_helmertrates_free(ptr, 0);
5876
+ }
5877
+ /**
5878
+ * Construct Helmert parameter rates from translation millimetres per year,
5879
+ * scale parts per billion per year, and rotation milliarcseconds per year.
5880
+ * @param {Float64Array} translation_mm_per_year
5881
+ * @param {number} scale_ppb_per_year
5882
+ * @param {Float64Array} rotation_mas_per_year
5883
+ */
5884
+ constructor(translation_mm_per_year, scale_ppb_per_year, rotation_mas_per_year) {
5885
+ const ptr0 = passArrayF64ToWasm0(translation_mm_per_year, wasm.__wbindgen_malloc);
5886
+ const len0 = WASM_VECTOR_LEN;
5887
+ const ptr1 = passArrayF64ToWasm0(rotation_mas_per_year, wasm.__wbindgen_malloc);
5888
+ const len1 = WASM_VECTOR_LEN;
5889
+ const ret = wasm.helmertrates_new(ptr0, len0, scale_ppb_per_year, ptr1, len1);
5890
+ if (ret[2]) {
5891
+ throw takeFromExternrefTable0(ret[1]);
5892
+ }
5893
+ this.__wbg_ptr = ret[0];
5894
+ HelmertRatesFinalization.register(this, this.__wbg_ptr, this);
5895
+ return this;
5896
+ }
5897
+ /**
5898
+ * Rotation rates `[Rx, Ry, Rz]`, in milliarcseconds per year.
5899
+ * @returns {Float64Array}
5900
+ */
5901
+ get rotationMasPerYear() {
5902
+ const ret = wasm.helmertrates_rotationMasPerYear(this.__wbg_ptr);
5903
+ var v1 = getArrayF64FromWasm0(ret[0], ret[1]).slice();
5904
+ wasm.__wbindgen_free(ret[0], ret[1] * 8, 8);
5905
+ return v1;
5906
+ }
5907
+ /**
5908
+ * Scale rate, in parts per billion per year.
5909
+ * @returns {number}
5910
+ */
5911
+ get scalePpbPerYear() {
5912
+ const ret = wasm.helmertrates_scalePpbPerYear(this.__wbg_ptr);
5913
+ return ret;
5914
+ }
5915
+ /**
5916
+ * Translation rates `[Tx, Ty, Tz]`, in millimetres per year.
5917
+ * @returns {Float64Array}
5918
+ */
5919
+ get translationMmPerYear() {
5920
+ const ret = wasm.helmertrates_translationMmPerYear(this.__wbg_ptr);
5921
+ var v1 = getArrayF64FromWasm0(ret[0], ret[1]).slice();
5922
+ wasm.__wbindgen_free(ret[0], ret[1] * 8, 8);
5923
+ return v1;
5924
+ }
5925
+ }
5926
+ if (Symbol.dispose) HelmertRates.prototype[Symbol.dispose] = HelmertRates.prototype.free;
5927
+ exports.HelmertRates = HelmertRates;
5928
+
5929
+ /**
5930
+ * One published 14-parameter Helmert catalog entry.
5931
+ */
5932
+ class HelmertTransform {
5933
+ static __wrap(ptr) {
5934
+ const obj = Object.create(HelmertTransform.prototype);
5935
+ obj.__wbg_ptr = ptr;
5936
+ HelmertTransformFinalization.register(obj, obj.__wbg_ptr, obj);
5937
+ return obj;
5938
+ }
5939
+ __destroy_into_raw() {
5940
+ const ptr = this.__wbg_ptr;
5941
+ this.__wbg_ptr = 0;
5942
+ HelmertTransformFinalization.unregister(this);
5943
+ return ptr;
5944
+ }
5945
+ free() {
5946
+ const ptr = this.__destroy_into_raw();
5947
+ wasm.__wbg_helmerttransform_free(ptr, 0);
5948
+ }
5949
+ /**
5950
+ * Published source frame for the forward transform.
5951
+ * @returns {TerrestrialFrame}
5952
+ */
5953
+ get from() {
5954
+ const ret = wasm.helmerttransform_from(this.__wbg_ptr);
5955
+ return ret;
5956
+ }
5957
+ /**
5958
+ * Parameters at `referenceEpochYear`.
5959
+ * @returns {HelmertParameters}
5960
+ */
5961
+ get parameters() {
5962
+ const ret = wasm.helmerttransform_parameters(this.__wbg_ptr);
5963
+ return HelmertParameters.__wrap(ret);
5964
+ }
5965
+ /**
5966
+ * Evaluate the seven Helmert parameters at a decimal year.
5967
+ * @param {number} epoch_year
5968
+ * @returns {HelmertParameters}
5969
+ */
5970
+ parametersAt(epoch_year) {
5971
+ const ret = wasm.helmerttransform_parametersAt(this.__wbg_ptr, epoch_year);
5972
+ if (ret[2]) {
5973
+ throw takeFromExternrefTable0(ret[1]);
5974
+ }
5975
+ return HelmertParameters.__wrap(ret[0]);
5976
+ }
5977
+ /**
5978
+ * Published table or memo that supplied this entry.
5979
+ * @returns {string}
5980
+ */
5981
+ get provenance() {
5982
+ let deferred1_0;
5983
+ let deferred1_1;
5984
+ try {
5985
+ const ret = wasm.helmerttransform_provenance(this.__wbg_ptr);
5986
+ deferred1_0 = ret[0];
5987
+ deferred1_1 = ret[1];
5988
+ return getStringFromWasm0(ret[0], ret[1]);
5989
+ } finally {
5990
+ wasm.__wbindgen_free(deferred1_0, deferred1_1, 1);
5991
+ }
5992
+ }
5993
+ /**
5994
+ * Linear rates of the seven Helmert parameters.
5995
+ * @returns {HelmertRates}
5996
+ */
5997
+ get rates() {
5998
+ const ret = wasm.helmerttransform_rates(this.__wbg_ptr);
5999
+ return HelmertRates.__wrap(ret);
6000
+ }
6001
+ /**
6002
+ * Parameter reference epoch, expressed as a decimal year.
6003
+ * @returns {number}
6004
+ */
6005
+ get referenceEpochYear() {
6006
+ const ret = wasm.helmerttransform_referenceEpochYear(this.__wbg_ptr);
6007
+ return ret;
6008
+ }
6009
+ /**
6010
+ * Published target frame for the forward transform.
6011
+ * @returns {TerrestrialFrame}
6012
+ */
6013
+ get to() {
6014
+ const ret = wasm.helmerttransform_to(this.__wbg_ptr);
6015
+ return ret;
6016
+ }
6017
+ }
6018
+ if (Symbol.dispose) HelmertTransform.prototype[Symbol.dispose] = HelmertTransform.prototype.free;
6019
+ exports.HelmertTransform = HelmertTransform;
6020
+
5651
6021
  /**
5652
6022
  * A point in time, tagged UTC, with the precise time scales resolved.
5653
6023
  *
@@ -8502,7 +8872,7 @@ class ObsHeader {
8502
8872
  */
8503
8873
  get timeOfFirstObsScale() {
8504
8874
  const ret = wasm.obsheader_timeOfFirstObsScale(this.__wbg_ptr);
8505
- return ret === 9 ? undefined : ret;
8875
+ return ret === 11 ? undefined : ret;
8506
8876
  }
8507
8877
  /**
8508
8878
  * RINEX version, for example `3.05`.
@@ -12687,15 +13057,21 @@ class RinexClock {
12687
13057
  * @returns {string}
12688
13058
  */
12689
13059
  toRinexString() {
12690
- let deferred1_0;
12691
- let deferred1_1;
13060
+ let deferred2_0;
13061
+ let deferred2_1;
12692
13062
  try {
12693
13063
  const ret = wasm.rinexclock_toRinexString(this.__wbg_ptr);
12694
- deferred1_0 = ret[0];
12695
- deferred1_1 = ret[1];
12696
- return getStringFromWasm0(ret[0], ret[1]);
13064
+ var ptr1 = ret[0];
13065
+ var len1 = ret[1];
13066
+ if (ret[3]) {
13067
+ ptr1 = 0; len1 = 0;
13068
+ throw takeFromExternrefTable0(ret[2]);
13069
+ }
13070
+ deferred2_0 = ptr1;
13071
+ deferred2_1 = len1;
13072
+ return getStringFromWasm0(ptr1, len1);
12697
13073
  } finally {
12698
- wasm.__wbindgen_free(deferred1_0, deferred1_1, 1);
13074
+ wasm.__wbindgen_free(deferred2_0, deferred2_1, 1);
12699
13075
  }
12700
13076
  }
12701
13077
  }
@@ -15992,21 +16368,730 @@ if (Symbol.dispose) SunMoon.prototype[Symbol.dispose] = SunMoon.prototype.free;
15992
16368
  exports.SunMoon = SunMoon;
15993
16369
 
15994
16370
  /**
15995
- * Terrain datum conversion and optional geoid-grid loading error variants.
15996
- * @enum {0 | 1 | 2 | 3}
16371
+ * A parsed CCSDS Tracking Data Message.
15997
16372
  */
15998
- const TerrainDatumError = Object.freeze({
15999
- /**
16000
- * Terrain lookup failed before datum conversion.
16001
- */
16002
- Terrain: 0, "0": "Terrain",
16003
- /**
16004
- * A geoid grid could not be parsed.
16005
- */
16006
- Geoid: 1, "1": "Geoid",
16007
- /**
16008
- * Reading a geoid grid failed for a reason other than absence.
16009
- */
16373
+ class Tdm {
16374
+ static __wrap(ptr) {
16375
+ const obj = Object.create(Tdm.prototype);
16376
+ obj.__wbg_ptr = ptr;
16377
+ TdmFinalization.register(obj, obj.__wbg_ptr, obj);
16378
+ return obj;
16379
+ }
16380
+ __destroy_into_raw() {
16381
+ const ptr = this.__wbg_ptr;
16382
+ this.__wbg_ptr = 0;
16383
+ TdmFinalization.unregister(this);
16384
+ return ptr;
16385
+ }
16386
+ free() {
16387
+ const ptr = this.__destroy_into_raw();
16388
+ wasm.__wbg_tdm_free(ptr, 0);
16389
+ }
16390
+ /**
16391
+ * Header comments in parse order.
16392
+ * @returns {string[]}
16393
+ */
16394
+ get comments() {
16395
+ const ret = wasm.tdm_comments(this.__wbg_ptr);
16396
+ var v1 = getArrayJsValueFromWasm0(ret[0], ret[1]).slice();
16397
+ wasm.__wbindgen_free(ret[0], ret[1] * 4, 4);
16398
+ return v1;
16399
+ }
16400
+ /**
16401
+ * Optional `CREATION_DATE` header value.
16402
+ * @returns {string | undefined}
16403
+ */
16404
+ get creationDate() {
16405
+ const ret = wasm.tdm_creationDate(this.__wbg_ptr);
16406
+ let v1;
16407
+ if (ret[0] !== 0) {
16408
+ v1 = getStringFromWasm0(ret[0], ret[1]).slice();
16409
+ wasm.__wbindgen_free(ret[0], ret[1] * 1, 1);
16410
+ }
16411
+ return v1;
16412
+ }
16413
+ /**
16414
+ * Header fields not part of the common modeled header.
16415
+ * @returns {TdmField[]}
16416
+ */
16417
+ get headerFields() {
16418
+ const ret = wasm.tdm_headerFields(this.__wbg_ptr);
16419
+ var v1 = getArrayJsValueFromWasm0(ret[0], ret[1]).slice();
16420
+ wasm.__wbindgen_free(ret[0], ret[1] * 4, 4);
16421
+ return v1;
16422
+ }
16423
+ /**
16424
+ * Optional `MESSAGE_ID` header value.
16425
+ * @returns {string | undefined}
16426
+ */
16427
+ get messageId() {
16428
+ const ret = wasm.tdm_messageId(this.__wbg_ptr);
16429
+ let v1;
16430
+ if (ret[0] !== 0) {
16431
+ v1 = getStringFromWasm0(ret[0], ret[1]).slice();
16432
+ wasm.__wbindgen_free(ret[0], ret[1] * 1, 1);
16433
+ }
16434
+ return v1;
16435
+ }
16436
+ /**
16437
+ * Optional `ORIGINATOR` header value.
16438
+ * @returns {string | undefined}
16439
+ */
16440
+ get originator() {
16441
+ const ret = wasm.tdm_originator(this.__wbg_ptr);
16442
+ let v1;
16443
+ if (ret[0] !== 0) {
16444
+ v1 = getStringFromWasm0(ret[0], ret[1]).slice();
16445
+ wasm.__wbindgen_free(ret[0], ret[1] * 1, 1);
16446
+ }
16447
+ return v1;
16448
+ }
16449
+ /**
16450
+ * Number of segments in the message.
16451
+ * @returns {number}
16452
+ */
16453
+ get segmentCount() {
16454
+ const ret = wasm.tdm_segmentCount(this.__wbg_ptr);
16455
+ return ret >>> 0;
16456
+ }
16457
+ /**
16458
+ * Metadata/data segments in message order.
16459
+ * @returns {TdmSegment[]}
16460
+ */
16461
+ get segments() {
16462
+ const ret = wasm.tdm_segments(this.__wbg_ptr);
16463
+ var v1 = getArrayJsValueFromWasm0(ret[0], ret[1]).slice();
16464
+ wasm.__wbindgen_free(ret[0], ret[1] * 4, 4);
16465
+ return v1;
16466
+ }
16467
+ /**
16468
+ * Encode this TDM as canonical CCSDS KVN text.
16469
+ * @returns {string}
16470
+ */
16471
+ toKvnString() {
16472
+ let deferred2_0;
16473
+ let deferred2_1;
16474
+ try {
16475
+ const ret = wasm.tdm_toKvnString(this.__wbg_ptr);
16476
+ var ptr1 = ret[0];
16477
+ var len1 = ret[1];
16478
+ if (ret[3]) {
16479
+ ptr1 = 0; len1 = 0;
16480
+ throw takeFromExternrefTable0(ret[2]);
16481
+ }
16482
+ deferred2_0 = ptr1;
16483
+ deferred2_1 = len1;
16484
+ return getStringFromWasm0(ptr1, len1);
16485
+ } finally {
16486
+ wasm.__wbindgen_free(deferred2_0, deferred2_1, 1);
16487
+ }
16488
+ }
16489
+ /**
16490
+ * The `CCSDS_TDM_VERS` header value.
16491
+ * @returns {string}
16492
+ */
16493
+ get version() {
16494
+ let deferred1_0;
16495
+ let deferred1_1;
16496
+ try {
16497
+ const ret = wasm.tdm_version(this.__wbg_ptr);
16498
+ deferred1_0 = ret[0];
16499
+ deferred1_1 = ret[1];
16500
+ return getStringFromWasm0(ret[0], ret[1]);
16501
+ } finally {
16502
+ wasm.__wbindgen_free(deferred1_0, deferred1_1, 1);
16503
+ }
16504
+ }
16505
+ }
16506
+ if (Symbol.dispose) Tdm.prototype[Symbol.dispose] = Tdm.prototype.free;
16507
+ exports.Tdm = Tdm;
16508
+
16509
+ /**
16510
+ * One time-tagged TDM tracking data record.
16511
+ */
16512
+ class TdmDataRecord {
16513
+ static __wrap(ptr) {
16514
+ const obj = Object.create(TdmDataRecord.prototype);
16515
+ obj.__wbg_ptr = ptr;
16516
+ TdmDataRecordFinalization.register(obj, obj.__wbg_ptr, obj);
16517
+ return obj;
16518
+ }
16519
+ __destroy_into_raw() {
16520
+ const ptr = this.__wbg_ptr;
16521
+ this.__wbg_ptr = 0;
16522
+ TdmDataRecordFinalization.unregister(this);
16523
+ return ptr;
16524
+ }
16525
+ free() {
16526
+ const ptr = this.__destroy_into_raw();
16527
+ wasm.__wbg_tdmdatarecord_free(ptr, 0);
16528
+ }
16529
+ /**
16530
+ * Raw epoch string.
16531
+ * @returns {string}
16532
+ */
16533
+ get epoch() {
16534
+ let deferred1_0;
16535
+ let deferred1_1;
16536
+ try {
16537
+ const ret = wasm.tdmdatarecord_epoch(this.__wbg_ptr);
16538
+ deferred1_0 = ret[0];
16539
+ deferred1_1 = ret[1];
16540
+ return getStringFromWasm0(ret[0], ret[1]);
16541
+ } finally {
16542
+ wasm.__wbindgen_free(deferred1_0, deferred1_1, 1);
16543
+ }
16544
+ }
16545
+ /**
16546
+ * Original data keyword.
16547
+ * @returns {string}
16548
+ */
16549
+ get keyword() {
16550
+ let deferred1_0;
16551
+ let deferred1_1;
16552
+ try {
16553
+ const ret = wasm.tdmdatarecord_keyword(this.__wbg_ptr);
16554
+ deferred1_0 = ret[0];
16555
+ deferred1_1 = ret[1];
16556
+ return getStringFromWasm0(ret[0], ret[1]);
16557
+ } finally {
16558
+ wasm.__wbindgen_free(deferred1_0, deferred1_1, 1);
16559
+ }
16560
+ }
16561
+ /**
16562
+ * Observable family label such as `"range"` or `"receiveFreq"`.
16563
+ * @returns {string}
16564
+ */
16565
+ get observableKind() {
16566
+ let deferred1_0;
16567
+ let deferred1_1;
16568
+ try {
16569
+ const ret = wasm.tdmdatarecord_observableKind(this.__wbg_ptr);
16570
+ deferred1_0 = ret[0];
16571
+ deferred1_1 = ret[1];
16572
+ return getStringFromWasm0(ret[0], ret[1]);
16573
+ } finally {
16574
+ wasm.__wbindgen_free(deferred1_0, deferred1_1, 1);
16575
+ }
16576
+ }
16577
+ /**
16578
+ * Participant suffix for frequency records, or `undefined`.
16579
+ * @returns {number | undefined}
16580
+ */
16581
+ get observableParticipant() {
16582
+ const ret = wasm.tdmdatarecord_observableParticipant(this.__wbg_ptr);
16583
+ return ret === 0xFFFFFF ? undefined : ret;
16584
+ }
16585
+ /**
16586
+ * Original name for a table-defined keyword modeled as `other`.
16587
+ * @returns {string | undefined}
16588
+ */
16589
+ get otherObservable() {
16590
+ const ret = wasm.tdmdatarecord_otherObservable(this.__wbg_ptr);
16591
+ let v1;
16592
+ if (ret[0] !== 0) {
16593
+ v1 = getStringFromWasm0(ret[0], ret[1]).slice();
16594
+ wasm.__wbindgen_free(ret[0], ret[1] * 1, 1);
16595
+ }
16596
+ return v1;
16597
+ }
16598
+ /**
16599
+ * Numeric value plus exact decimal token.
16600
+ * @returns {TdmScalar}
16601
+ */
16602
+ get scalar() {
16603
+ const ret = wasm.tdmdatarecord_scalar(this.__wbg_ptr);
16604
+ return TdmScalar.__wrap(ret);
16605
+ }
16606
+ /**
16607
+ * Canonical unit label assigned by CCSDS 503.0-B-2.
16608
+ * @returns {string}
16609
+ */
16610
+ get unit() {
16611
+ let deferred1_0;
16612
+ let deferred1_1;
16613
+ try {
16614
+ const ret = wasm.tdmdatarecord_unit(this.__wbg_ptr);
16615
+ deferred1_0 = ret[0];
16616
+ deferred1_1 = ret[1];
16617
+ return getStringFromWasm0(ret[0], ret[1]);
16618
+ } finally {
16619
+ wasm.__wbindgen_free(deferred1_0, deferred1_1, 1);
16620
+ }
16621
+ }
16622
+ /**
16623
+ * Parsed numeric observable value.
16624
+ * @returns {number}
16625
+ */
16626
+ get value() {
16627
+ const ret = wasm.tdmdatarecord_value(this.__wbg_ptr);
16628
+ return ret;
16629
+ }
16630
+ /**
16631
+ * Exact decimal token used for KVN encoding.
16632
+ * @returns {string}
16633
+ */
16634
+ get valueText() {
16635
+ let deferred1_0;
16636
+ let deferred1_1;
16637
+ try {
16638
+ const ret = wasm.tdmdatarecord_valueText(this.__wbg_ptr);
16639
+ deferred1_0 = ret[0];
16640
+ deferred1_1 = ret[1];
16641
+ return getStringFromWasm0(ret[0], ret[1]);
16642
+ } finally {
16643
+ wasm.__wbindgen_free(deferred1_0, deferred1_1, 1);
16644
+ }
16645
+ }
16646
+ }
16647
+ if (Symbol.dispose) TdmDataRecord.prototype[Symbol.dispose] = TdmDataRecord.prototype.free;
16648
+ exports.TdmDataRecord = TdmDataRecord;
16649
+
16650
+ /**
16651
+ * A TDM data block.
16652
+ */
16653
+ class TdmDataSection {
16654
+ static __wrap(ptr) {
16655
+ const obj = Object.create(TdmDataSection.prototype);
16656
+ obj.__wbg_ptr = ptr;
16657
+ TdmDataSectionFinalization.register(obj, obj.__wbg_ptr, obj);
16658
+ return obj;
16659
+ }
16660
+ __destroy_into_raw() {
16661
+ const ptr = this.__wbg_ptr;
16662
+ this.__wbg_ptr = 0;
16663
+ TdmDataSectionFinalization.unregister(this);
16664
+ return ptr;
16665
+ }
16666
+ free() {
16667
+ const ptr = this.__destroy_into_raw();
16668
+ wasm.__wbg_tdmdatasection_free(ptr, 0);
16669
+ }
16670
+ /**
16671
+ * Data-section comments in parse order.
16672
+ * @returns {string[]}
16673
+ */
16674
+ get comments() {
16675
+ const ret = wasm.tdmdatasection_comments(this.__wbg_ptr);
16676
+ var v1 = getArrayJsValueFromWasm0(ret[0], ret[1]).slice();
16677
+ wasm.__wbindgen_free(ret[0], ret[1] * 4, 4);
16678
+ return v1;
16679
+ }
16680
+ /**
16681
+ * Data records in parse order.
16682
+ * @returns {TdmDataRecord[]}
16683
+ */
16684
+ get records() {
16685
+ const ret = wasm.tdmdatasection_records(this.__wbg_ptr);
16686
+ var v1 = getArrayJsValueFromWasm0(ret[0], ret[1]).slice();
16687
+ wasm.__wbindgen_free(ret[0], ret[1] * 4, 4);
16688
+ return v1;
16689
+ }
16690
+ }
16691
+ if (Symbol.dispose) TdmDataSection.prototype[Symbol.dispose] = TdmDataSection.prototype.free;
16692
+ exports.TdmDataSection = TdmDataSection;
16693
+
16694
+ /**
16695
+ * A KVN key/value field preserved in parse order.
16696
+ */
16697
+ class TdmField {
16698
+ static __wrap(ptr) {
16699
+ const obj = Object.create(TdmField.prototype);
16700
+ obj.__wbg_ptr = ptr;
16701
+ TdmFieldFinalization.register(obj, obj.__wbg_ptr, obj);
16702
+ return obj;
16703
+ }
16704
+ __destroy_into_raw() {
16705
+ const ptr = this.__wbg_ptr;
16706
+ this.__wbg_ptr = 0;
16707
+ TdmFieldFinalization.unregister(this);
16708
+ return ptr;
16709
+ }
16710
+ free() {
16711
+ const ptr = this.__destroy_into_raw();
16712
+ wasm.__wbg_tdmfield_free(ptr, 0);
16713
+ }
16714
+ /**
16715
+ * The KVN keyword.
16716
+ * @returns {string}
16717
+ */
16718
+ get key() {
16719
+ let deferred1_0;
16720
+ let deferred1_1;
16721
+ try {
16722
+ const ret = wasm.tdmfield_key(this.__wbg_ptr);
16723
+ deferred1_0 = ret[0];
16724
+ deferred1_1 = ret[1];
16725
+ return getStringFromWasm0(ret[0], ret[1]);
16726
+ } finally {
16727
+ wasm.__wbindgen_free(deferred1_0, deferred1_1, 1);
16728
+ }
16729
+ }
16730
+ /**
16731
+ * The trimmed KVN value.
16732
+ * @returns {string}
16733
+ */
16734
+ get value() {
16735
+ let deferred1_0;
16736
+ let deferred1_1;
16737
+ try {
16738
+ const ret = wasm.tdmfield_value(this.__wbg_ptr);
16739
+ deferred1_0 = ret[0];
16740
+ deferred1_1 = ret[1];
16741
+ return getStringFromWasm0(ret[0], ret[1]);
16742
+ } finally {
16743
+ wasm.__wbindgen_free(deferred1_0, deferred1_1, 1);
16744
+ }
16745
+ }
16746
+ }
16747
+ if (Symbol.dispose) TdmField.prototype[Symbol.dispose] = TdmField.prototype.free;
16748
+ exports.TdmField = TdmField;
16749
+
16750
+ /**
16751
+ * Metadata extracted from a TDM `META_START` / `META_STOP` block.
16752
+ */
16753
+ class TdmMetadata {
16754
+ static __wrap(ptr) {
16755
+ const obj = Object.create(TdmMetadata.prototype);
16756
+ obj.__wbg_ptr = ptr;
16757
+ TdmMetadataFinalization.register(obj, obj.__wbg_ptr, obj);
16758
+ return obj;
16759
+ }
16760
+ __destroy_into_raw() {
16761
+ const ptr = this.__wbg_ptr;
16762
+ this.__wbg_ptr = 0;
16763
+ TdmMetadataFinalization.unregister(this);
16764
+ return ptr;
16765
+ }
16766
+ free() {
16767
+ const ptr = this.__destroy_into_raw();
16768
+ wasm.__wbg_tdmmetadata_free(ptr, 0);
16769
+ }
16770
+ /**
16771
+ * Metadata comments in parse order.
16772
+ * @returns {string[]}
16773
+ */
16774
+ get comments() {
16775
+ const ret = wasm.tdmmetadata_comments(this.__wbg_ptr);
16776
+ var v1 = getArrayJsValueFromWasm0(ret[0], ret[1]).slice();
16777
+ wasm.__wbindgen_free(ret[0], ret[1] * 4, 4);
16778
+ return v1;
16779
+ }
16780
+ /**
16781
+ * Raw metadata fields in parse order.
16782
+ * @returns {TdmField[]}
16783
+ */
16784
+ get fields() {
16785
+ const ret = wasm.tdmmetadata_fields(this.__wbg_ptr);
16786
+ var v1 = getArrayJsValueFromWasm0(ret[0], ret[1]).slice();
16787
+ wasm.__wbindgen_free(ret[0], ret[1] * 4, 4);
16788
+ return v1;
16789
+ }
16790
+ /**
16791
+ * Return the last metadata value for `key`, or `undefined`.
16792
+ * @param {string} key
16793
+ * @returns {string | undefined}
16794
+ */
16795
+ getLast(key) {
16796
+ const ptr0 = passStringToWasm0(key, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
16797
+ const len0 = WASM_VECTOR_LEN;
16798
+ const ret = wasm.tdmmetadata_getLast(this.__wbg_ptr, ptr0, len0);
16799
+ let v2;
16800
+ if (ret[0] !== 0) {
16801
+ v2 = getStringFromWasm0(ret[0], ret[1]).slice();
16802
+ wasm.__wbindgen_free(ret[0], ret[1] * 1, 1);
16803
+ }
16804
+ return v2;
16805
+ }
16806
+ /**
16807
+ * Optional `MODE` value.
16808
+ * @returns {string | undefined}
16809
+ */
16810
+ get mode() {
16811
+ const ret = wasm.tdmmetadata_mode(this.__wbg_ptr);
16812
+ let v1;
16813
+ if (ret[0] !== 0) {
16814
+ v1 = getStringFromWasm0(ret[0], ret[1]).slice();
16815
+ wasm.__wbindgen_free(ret[0], ret[1] * 1, 1);
16816
+ }
16817
+ return v1;
16818
+ }
16819
+ /**
16820
+ * Parsed `PARTICIPANT_n` entries.
16821
+ * @returns {TdmParticipant[]}
16822
+ */
16823
+ get participants() {
16824
+ const ret = wasm.tdmmetadata_participants(this.__wbg_ptr);
16825
+ var v1 = getArrayJsValueFromWasm0(ret[0], ret[1]).slice();
16826
+ wasm.__wbindgen_free(ret[0], ret[1] * 4, 4);
16827
+ return v1;
16828
+ }
16829
+ /**
16830
+ * Parsed `PATH`, `PATH_1`, and `PATH_2` entries.
16831
+ * @returns {TdmPath[]}
16832
+ */
16833
+ get paths() {
16834
+ const ret = wasm.tdmmetadata_paths(this.__wbg_ptr);
16835
+ var v1 = getArrayJsValueFromWasm0(ret[0], ret[1]).slice();
16836
+ wasm.__wbindgen_free(ret[0], ret[1] * 4, 4);
16837
+ return v1;
16838
+ }
16839
+ /**
16840
+ * Range unit label used by `RANGE` records.
16841
+ * @returns {string}
16842
+ */
16843
+ get rangeUnits() {
16844
+ let deferred1_0;
16845
+ let deferred1_1;
16846
+ try {
16847
+ const ret = wasm.tdmmetadata_rangeUnits(this.__wbg_ptr);
16848
+ deferred1_0 = ret[0];
16849
+ deferred1_1 = ret[1];
16850
+ return getStringFromWasm0(ret[0], ret[1]);
16851
+ } finally {
16852
+ wasm.__wbindgen_free(deferred1_0, deferred1_1, 1);
16853
+ }
16854
+ }
16855
+ /**
16856
+ * Optional `TIME_SYSTEM` value.
16857
+ * @returns {string | undefined}
16858
+ */
16859
+ get timeSystem() {
16860
+ const ret = wasm.tdmmetadata_timeSystem(this.__wbg_ptr);
16861
+ let v1;
16862
+ if (ret[0] !== 0) {
16863
+ v1 = getStringFromWasm0(ret[0], ret[1]).slice();
16864
+ wasm.__wbindgen_free(ret[0], ret[1] * 1, 1);
16865
+ }
16866
+ return v1;
16867
+ }
16868
+ /**
16869
+ * Optional `TIMETAG_REF` value.
16870
+ * @returns {string | undefined}
16871
+ */
16872
+ get timetagRef() {
16873
+ const ret = wasm.tdmmetadata_timetagRef(this.__wbg_ptr);
16874
+ let v1;
16875
+ if (ret[0] !== 0) {
16876
+ v1 = getStringFromWasm0(ret[0], ret[1]).slice();
16877
+ wasm.__wbindgen_free(ret[0], ret[1] * 1, 1);
16878
+ }
16879
+ return v1;
16880
+ }
16881
+ }
16882
+ if (Symbol.dispose) TdmMetadata.prototype[Symbol.dispose] = TdmMetadata.prototype.free;
16883
+ exports.TdmMetadata = TdmMetadata;
16884
+
16885
+ /**
16886
+ * One named TDM tracking participant.
16887
+ */
16888
+ class TdmParticipant {
16889
+ static __wrap(ptr) {
16890
+ const obj = Object.create(TdmParticipant.prototype);
16891
+ obj.__wbg_ptr = ptr;
16892
+ TdmParticipantFinalization.register(obj, obj.__wbg_ptr, obj);
16893
+ return obj;
16894
+ }
16895
+ __destroy_into_raw() {
16896
+ const ptr = this.__wbg_ptr;
16897
+ this.__wbg_ptr = 0;
16898
+ TdmParticipantFinalization.unregister(this);
16899
+ return ptr;
16900
+ }
16901
+ free() {
16902
+ const ptr = this.__destroy_into_raw();
16903
+ wasm.__wbg_tdmparticipant_free(ptr, 0);
16904
+ }
16905
+ /**
16906
+ * Numeric suffix from `PARTICIPANT_n`.
16907
+ * @returns {number}
16908
+ */
16909
+ get index() {
16910
+ const ret = wasm.tdmparticipant_index(this.__wbg_ptr);
16911
+ return ret;
16912
+ }
16913
+ /**
16914
+ * Participant name.
16915
+ * @returns {string}
16916
+ */
16917
+ get name() {
16918
+ let deferred1_0;
16919
+ let deferred1_1;
16920
+ try {
16921
+ const ret = wasm.tdmparticipant_name(this.__wbg_ptr);
16922
+ deferred1_0 = ret[0];
16923
+ deferred1_1 = ret[1];
16924
+ return getStringFromWasm0(ret[0], ret[1]);
16925
+ } finally {
16926
+ wasm.__wbindgen_free(deferred1_0, deferred1_1, 1);
16927
+ }
16928
+ }
16929
+ }
16930
+ if (Symbol.dispose) TdmParticipant.prototype[Symbol.dispose] = TdmParticipant.prototype.free;
16931
+ exports.TdmParticipant = TdmParticipant;
16932
+
16933
+ /**
16934
+ * A parsed TDM signal path from `PATH`, `PATH_1`, or `PATH_2`.
16935
+ */
16936
+ class TdmPath {
16937
+ static __wrap(ptr) {
16938
+ const obj = Object.create(TdmPath.prototype);
16939
+ obj.__wbg_ptr = ptr;
16940
+ TdmPathFinalization.register(obj, obj.__wbg_ptr, obj);
16941
+ return obj;
16942
+ }
16943
+ __destroy_into_raw() {
16944
+ const ptr = this.__wbg_ptr;
16945
+ this.__wbg_ptr = 0;
16946
+ TdmPathFinalization.unregister(this);
16947
+ return ptr;
16948
+ }
16949
+ free() {
16950
+ const ptr = this.__destroy_into_raw();
16951
+ wasm.__wbg_tdmpath_free(ptr, 0);
16952
+ }
16953
+ /**
16954
+ * Path suffix for `PATH_n`, or `undefined` for unindexed `PATH`.
16955
+ * @returns {number | undefined}
16956
+ */
16957
+ get index() {
16958
+ const ret = wasm.tdmpath_index(this.__wbg_ptr);
16959
+ return ret === 0xFFFFFF ? undefined : ret;
16960
+ }
16961
+ /**
16962
+ * Original path keyword.
16963
+ * @returns {string}
16964
+ */
16965
+ get key() {
16966
+ let deferred1_0;
16967
+ let deferred1_1;
16968
+ try {
16969
+ const ret = wasm.tdmpath_key(this.__wbg_ptr);
16970
+ deferred1_0 = ret[0];
16971
+ deferred1_1 = ret[1];
16972
+ return getStringFromWasm0(ret[0], ret[1]);
16973
+ } finally {
16974
+ wasm.__wbindgen_free(deferred1_0, deferred1_1, 1);
16975
+ }
16976
+ }
16977
+ /**
16978
+ * Participant indices listed in path order.
16979
+ * @returns {Uint8Array}
16980
+ */
16981
+ get participants() {
16982
+ const ret = wasm.tdmpath_participants(this.__wbg_ptr);
16983
+ var v1 = getArrayU8FromWasm0(ret[0], ret[1]).slice();
16984
+ wasm.__wbindgen_free(ret[0], ret[1] * 1, 1);
16985
+ return v1;
16986
+ }
16987
+ }
16988
+ if (Symbol.dispose) TdmPath.prototype[Symbol.dispose] = TdmPath.prototype.free;
16989
+ exports.TdmPath = TdmPath;
16990
+
16991
+ /**
16992
+ * A numeric TDM record value plus its exact decimal token.
16993
+ */
16994
+ class TdmScalar {
16995
+ static __wrap(ptr) {
16996
+ const obj = Object.create(TdmScalar.prototype);
16997
+ obj.__wbg_ptr = ptr;
16998
+ TdmScalarFinalization.register(obj, obj.__wbg_ptr, obj);
16999
+ return obj;
17000
+ }
17001
+ __destroy_into_raw() {
17002
+ const ptr = this.__wbg_ptr;
17003
+ this.__wbg_ptr = 0;
17004
+ TdmScalarFinalization.unregister(this);
17005
+ return ptr;
17006
+ }
17007
+ free() {
17008
+ const ptr = this.__destroy_into_raw();
17009
+ wasm.__wbg_tdmscalar_free(ptr, 0);
17010
+ }
17011
+ /**
17012
+ * Exact decimal or scientific-notation token read from the message.
17013
+ * @returns {string}
17014
+ */
17015
+ get text() {
17016
+ let deferred1_0;
17017
+ let deferred1_1;
17018
+ try {
17019
+ const ret = wasm.tdmscalar_text(this.__wbg_ptr);
17020
+ deferred1_0 = ret[0];
17021
+ deferred1_1 = ret[1];
17022
+ return getStringFromWasm0(ret[0], ret[1]);
17023
+ } finally {
17024
+ wasm.__wbindgen_free(deferred1_0, deferred1_1, 1);
17025
+ }
17026
+ }
17027
+ /**
17028
+ * Parsed finite `f64` value.
17029
+ * @returns {number}
17030
+ */
17031
+ get value() {
17032
+ const ret = wasm.tdmscalar_value(this.__wbg_ptr);
17033
+ return ret;
17034
+ }
17035
+ }
17036
+ if (Symbol.dispose) TdmScalar.prototype[Symbol.dispose] = TdmScalar.prototype.free;
17037
+ exports.TdmScalar = TdmScalar;
17038
+
17039
+ /**
17040
+ * One TDM segment, consisting of metadata and data blocks.
17041
+ */
17042
+ class TdmSegment {
17043
+ static __wrap(ptr) {
17044
+ const obj = Object.create(TdmSegment.prototype);
17045
+ obj.__wbg_ptr = ptr;
17046
+ TdmSegmentFinalization.register(obj, obj.__wbg_ptr, obj);
17047
+ return obj;
17048
+ }
17049
+ __destroy_into_raw() {
17050
+ const ptr = this.__wbg_ptr;
17051
+ this.__wbg_ptr = 0;
17052
+ TdmSegmentFinalization.unregister(this);
17053
+ return ptr;
17054
+ }
17055
+ free() {
17056
+ const ptr = this.__destroy_into_raw();
17057
+ wasm.__wbg_tdmsegment_free(ptr, 0);
17058
+ }
17059
+ /**
17060
+ * Tracking data records for this segment.
17061
+ * @returns {TdmDataSection}
17062
+ */
17063
+ get data() {
17064
+ const ret = wasm.tdmsegment_data(this.__wbg_ptr);
17065
+ return TdmDataSection.__wrap(ret);
17066
+ }
17067
+ /**
17068
+ * Metadata describing this segment's records.
17069
+ * @returns {TdmMetadata}
17070
+ */
17071
+ get metadata() {
17072
+ const ret = wasm.tdmsegment_metadata(this.__wbg_ptr);
17073
+ return TdmMetadata.__wrap(ret);
17074
+ }
17075
+ }
17076
+ if (Symbol.dispose) TdmSegment.prototype[Symbol.dispose] = TdmSegment.prototype.free;
17077
+ exports.TdmSegment = TdmSegment;
17078
+
17079
+ /**
17080
+ * Terrain datum conversion and optional geoid-grid loading error variants.
17081
+ * @enum {0 | 1 | 2 | 3}
17082
+ */
17083
+ const TerrainDatumError = Object.freeze({
17084
+ /**
17085
+ * Terrain lookup failed before datum conversion.
17086
+ */
17087
+ Terrain: 0, "0": "Terrain",
17088
+ /**
17089
+ * A geoid grid could not be parsed.
17090
+ */
17091
+ Geoid: 1, "1": "Geoid",
17092
+ /**
17093
+ * Reading a geoid grid failed for a reason other than absence.
17094
+ */
16010
17095
  Io: 2, "2": "Io",
16011
17096
  /**
16012
17097
  * The EGM96 15-arcminute `WW15MGH.DAC` grid was requested but is absent.
@@ -16228,9 +17313,33 @@ class TerrainStoreTileIndex {
16228
17313
  if (Symbol.dispose) TerrainStoreTileIndex.prototype[Symbol.dispose] = TerrainStoreTileIndex.prototype.free;
16229
17314
  exports.TerrainStoreTileIndex = TerrainStoreTileIndex;
16230
17315
 
17316
+ /**
17317
+ * A supported terrestrial reference-frame realization.
17318
+ * @enum {0 | 1 | 2 | 3}
17319
+ */
17320
+ const TerrestrialFrame = Object.freeze({
17321
+ /**
17322
+ * International Terrestrial Reference Frame 2020.
17323
+ */
17324
+ Itrf2020: 0, "0": "Itrf2020",
17325
+ /**
17326
+ * International Terrestrial Reference Frame 2014.
17327
+ */
17328
+ Itrf2014: 1, "1": "Itrf2014",
17329
+ /**
17330
+ * International Terrestrial Reference Frame 2008.
17331
+ */
17332
+ Itrf2008: 2, "2": "Itrf2008",
17333
+ /**
17334
+ * European Terrestrial Reference Frame 2020.
17335
+ */
17336
+ Etrf2020: 3, "3": "Etrf2020",
17337
+ });
17338
+ exports.TerrestrialFrame = TerrestrialFrame;
17339
+
16231
17340
  /**
16232
17341
  * A named time scale. The JS value matches the variant order below.
16233
- * @enum {0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8}
17342
+ * @enum {0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10}
16234
17343
  */
16235
17344
  const TimeScale = Object.freeze({
16236
17345
  /**
@@ -16269,6 +17378,14 @@ const TimeScale = Object.freeze({
16269
17378
  * QZSS system time (steered to GPST).
16270
17379
  */
16271
17380
  Qzsst: 8, "8": "Qzsst",
17381
+ /**
17382
+ * Geocentric Coordinate Time.
17383
+ */
17384
+ Tcg: 9, "9": "Tcg",
17385
+ /**
17386
+ * Barycentric Coordinate Time.
17387
+ */
17388
+ Tcb: 10, "10": "Tcb",
16272
17389
  });
16273
17390
  exports.TimeScale = TimeScale;
16274
17391
 
@@ -16533,6 +17650,27 @@ class Tle {
16533
17650
  }
16534
17651
  return TlePropagation.__wrap(ret[0]);
16535
17652
  }
17653
+ /**
17654
+ * Propagate over unix-microsecond epochs with an opt-in decay latch.
17655
+ *
17656
+ * The returned TEME arrays match [`propagate`] until the first decay-like
17657
+ * SGP4 failure. At that point the core latch records the failing epoch and
17658
+ * this method throws. Later calls using the same latch at that epoch or a
17659
+ * later one also throw, while raw [`propagate`] remains stateless.
17660
+ * @param {BigInt64Array} epochs_unix_us
17661
+ * @param {DecayLatch} latch
17662
+ * @returns {TlePropagation}
17663
+ */
17664
+ propagateWithDecayLatch(epochs_unix_us, latch) {
17665
+ const ptr0 = passArray64ToWasm0(epochs_unix_us, wasm.__wbindgen_malloc);
17666
+ const len0 = WASM_VECTOR_LEN;
17667
+ _assertClass(latch, DecayLatch);
17668
+ const ret = wasm.tle_propagateWithDecayLatch(this.__wbg_ptr, ptr0, len0, latch.__wbg_ptr);
17669
+ if (ret[2]) {
17670
+ throw takeFromExternrefTable0(ret[1]);
17671
+ }
17672
+ return TlePropagation.__wrap(ret[0]);
17673
+ }
16536
17674
  /**
16537
17675
  * Right ascension of the ascending node, degrees.
16538
17676
  * @returns {number}
@@ -18991,6 +20129,25 @@ function findTcaConjunctions(primary_line1, primary_line2, secondary_line1, seco
18991
20129
  }
18992
20130
  exports.findTcaConjunctions = findTcaConjunctions;
18993
20131
 
20132
+ /**
20133
+ * Fit every satellite declared in a parsed ECEF SP3 precise product.
20134
+ *
20135
+ * The residual ledger is computed against the original Earth-fixed SP3
20136
+ * observations by the core fit path.
20137
+ * @param {Sp3} sp3
20138
+ * @param {any} options
20139
+ * @returns {any}
20140
+ */
20141
+ function fitAllSp3EcefPreciseOrbits(sp3, options) {
20142
+ _assertClass(sp3, Sp3);
20143
+ const ret = wasm.fitAllSp3EcefPreciseOrbits(sp3.__wbg_ptr, options);
20144
+ if (ret[2]) {
20145
+ throw takeFromExternrefTable0(ret[1]);
20146
+ }
20147
+ return takeFromExternrefTable0(ret[0]);
20148
+ }
20149
+ exports.fitAllSp3EcefPreciseOrbits = fitAllSp3EcefPreciseOrbits;
20150
+
18994
20151
  /**
18995
20152
  * Fit a piecewise reduced-orbit model: tile `[t0, t1]` into segments of
18996
20153
  * `segmentSeconds` and fit each independently.
@@ -19168,6 +20325,49 @@ function fitReducedOrbitTle(tle, options) {
19168
20325
  }
19169
20326
  exports.fitReducedOrbitTle = fitReducedOrbitTle;
19170
20327
 
20328
+ /**
20329
+ * Fit one satellite orbit from a parsed ECEF SP3 precise product.
20330
+ *
20331
+ * `satellite` is an IGS token such as `"G01"`. SP3 position and optional
20332
+ * velocity records are transformed from Earth-fixed coordinates through the
20333
+ * core `TdbEarthOrientationProvider` before fitting.
20334
+ * @param {Sp3} sp3
20335
+ * @param {string} satellite
20336
+ * @param {any} options
20337
+ * @returns {any}
20338
+ */
20339
+ function fitSp3EcefPreciseOrbit(sp3, satellite, options) {
20340
+ _assertClass(sp3, Sp3);
20341
+ const ptr0 = passStringToWasm0(satellite, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
20342
+ const len0 = WASM_VECTOR_LEN;
20343
+ const ret = wasm.fitSp3EcefPreciseOrbit(sp3.__wbg_ptr, ptr0, len0, options);
20344
+ if (ret[2]) {
20345
+ throw takeFromExternrefTable0(ret[1]);
20346
+ }
20347
+ return takeFromExternrefTable0(ret[0]);
20348
+ }
20349
+ exports.fitSp3EcefPreciseOrbit = fitSp3EcefPreciseOrbit;
20350
+
20351
+ /**
20352
+ * Fit selected satellite orbits from a parsed ECEF SP3 precise product.
20353
+ *
20354
+ * `satellites` is a string array of IGS tokens such as `["G01", "G02"]`.
20355
+ * The Earth-fixed to inertial conversion is handled by the core provider.
20356
+ * @param {Sp3} sp3
20357
+ * @param {any} satellites
20358
+ * @param {any} options
20359
+ * @returns {any}
20360
+ */
20361
+ function fitSp3EcefPreciseOrbits(sp3, satellites, options) {
20362
+ _assertClass(sp3, Sp3);
20363
+ const ret = wasm.fitSp3EcefPreciseOrbits(sp3.__wbg_ptr, satellites, options);
20364
+ if (ret[2]) {
20365
+ throw takeFromExternrefTable0(ret[1]);
20366
+ }
20367
+ return takeFromExternrefTable0(ret[0]);
20368
+ }
20369
+ exports.fitSp3EcefPreciseOrbits = fitSp3EcefPreciseOrbits;
20370
+
19171
20371
  /**
19172
20372
  * Fit one satellite orbit from a parsed SP3 precise product.
19173
20373
  *
@@ -19298,6 +20498,110 @@ function forceTwoBodyAcceleration(position_km, velocity_km_s) {
19298
20498
  }
19299
20499
  exports.forceTwoBodyAcceleration = forceTwoBodyAcceleration;
19300
20500
 
20501
+ /**
20502
+ * Return the built-in terrestrial frame catalog entries.
20503
+ * @returns {HelmertTransform[]}
20504
+ */
20505
+ function frameCatalog() {
20506
+ const ret = wasm.frameCatalog();
20507
+ var v1 = getArrayJsValueFromWasm0(ret[0], ret[1]).slice();
20508
+ wasm.__wbindgen_free(ret[0], ret[1] * 4, 4);
20509
+ return v1;
20510
+ }
20511
+ exports.frameCatalog = frameCatalog;
20512
+
20513
+ /**
20514
+ * Return the published catalog entry for the requested forward direction.
20515
+ * @param {TerrestrialFrame} from
20516
+ * @param {TerrestrialFrame} to
20517
+ * @returns {HelmertTransform | undefined}
20518
+ */
20519
+ function frameCatalogEntry(from, to) {
20520
+ const ret = wasm.frameCatalogEntry(from, to);
20521
+ return ret === 0 ? undefined : HelmertTransform.__wrap(ret);
20522
+ }
20523
+ exports.frameCatalogEntry = frameCatalogEntry;
20524
+
20525
+ /**
20526
+ * Propagate a station position from one decimal year to another.
20527
+ *
20528
+ * `positionM` and `velocityMPerYear` are length-3 arrays in metres and metres
20529
+ * per year. Returns a length-3 array in metres. Delegates to
20530
+ * `sidereon_core::frame_catalog::propagate_position`.
20531
+ * @param {Float64Array} position_m
20532
+ * @param {Float64Array} velocity_m_per_year
20533
+ * @param {number} from_epoch_year
20534
+ * @param {number} to_epoch_year
20535
+ * @returns {Float64Array}
20536
+ */
20537
+ function frameCatalogPropagatePosition(position_m, velocity_m_per_year, from_epoch_year, to_epoch_year) {
20538
+ const ptr0 = passArrayF64ToWasm0(position_m, wasm.__wbindgen_malloc);
20539
+ const len0 = WASM_VECTOR_LEN;
20540
+ const ptr1 = passArrayF64ToWasm0(velocity_m_per_year, wasm.__wbindgen_malloc);
20541
+ const len1 = WASM_VECTOR_LEN;
20542
+ const ret = wasm.frameCatalogPropagatePosition(ptr0, len0, ptr1, len1, from_epoch_year, to_epoch_year);
20543
+ if (ret[3]) {
20544
+ throw takeFromExternrefTable0(ret[2]);
20545
+ }
20546
+ var v3 = getArrayF64FromWasm0(ret[0], ret[1]).slice();
20547
+ wasm.__wbindgen_free(ret[0], ret[1] * 8, 8);
20548
+ return v3;
20549
+ }
20550
+ exports.frameCatalogPropagatePosition = frameCatalogPropagatePosition;
20551
+
20552
+ /**
20553
+ * Transform a Cartesian station position and optional velocity between frames.
20554
+ *
20555
+ * `positionM` is a length-3 metre array. `velocityMPerYear` may be `undefined`
20556
+ * or a length-3 metres-per-year array. Returns a plain object with
20557
+ * `positionM` and `velocityMPerYear` (`null` when no velocity was supplied).
20558
+ * @param {Float64Array} position_m
20559
+ * @param {Float64Array | null | undefined} velocity_m_per_year
20560
+ * @param {TerrestrialFrame} from
20561
+ * @param {TerrestrialFrame} to
20562
+ * @param {number} epoch_year
20563
+ * @returns {any}
20564
+ */
20565
+ function frameCatalogTransform(position_m, velocity_m_per_year, from, to, epoch_year) {
20566
+ const ptr0 = passArrayF64ToWasm0(position_m, wasm.__wbindgen_malloc);
20567
+ const len0 = WASM_VECTOR_LEN;
20568
+ var ptr1 = isLikeNone(velocity_m_per_year) ? 0 : passArrayF64ToWasm0(velocity_m_per_year, wasm.__wbindgen_malloc);
20569
+ var len1 = WASM_VECTOR_LEN;
20570
+ const ret = wasm.frameCatalogTransform(ptr0, len0, ptr1, len1, from, to, epoch_year);
20571
+ if (ret[2]) {
20572
+ throw takeFromExternrefTable0(ret[1]);
20573
+ }
20574
+ return takeFromExternrefTable0(ret[0]);
20575
+ }
20576
+ exports.frameCatalogTransform = frameCatalogTransform;
20577
+
20578
+ /**
20579
+ * Propagate a station to a transform epoch, then transform it between frames.
20580
+ *
20581
+ * `positionEpochYear` is the epoch of the input coordinates. The transform is
20582
+ * evaluated at `transformEpochYear`. Returns a plain object with `positionM`
20583
+ * and `velocityMPerYear`.
20584
+ * @param {Float64Array} position_m
20585
+ * @param {Float64Array} velocity_m_per_year
20586
+ * @param {number} position_epoch_year
20587
+ * @param {TerrestrialFrame} from
20588
+ * @param {TerrestrialFrame} to
20589
+ * @param {number} transform_epoch_year
20590
+ * @returns {any}
20591
+ */
20592
+ function frameCatalogTransformFromEpoch(position_m, velocity_m_per_year, position_epoch_year, from, to, transform_epoch_year) {
20593
+ const ptr0 = passArrayF64ToWasm0(position_m, wasm.__wbindgen_malloc);
20594
+ const len0 = WASM_VECTOR_LEN;
20595
+ const ptr1 = passArrayF64ToWasm0(velocity_m_per_year, wasm.__wbindgen_malloc);
20596
+ const len1 = WASM_VECTOR_LEN;
20597
+ const ret = wasm.frameCatalogTransformFromEpoch(ptr0, len0, ptr1, len1, position_epoch_year, from, to, transform_epoch_year);
20598
+ if (ret[2]) {
20599
+ throw takeFromExternrefTable0(ret[1]);
20600
+ }
20601
+ return takeFromExternrefTable0(ret[0]);
20602
+ }
20603
+ exports.frameCatalogTransformFromEpoch = frameCatalogTransformFromEpoch;
20604
+
19301
20605
  /**
19302
20606
  * Build constellation identity records from a CelesTrak OMM JSON-array text.
19303
20607
  *
@@ -19444,6 +20748,70 @@ function gcrsToItrs(position_km, epochs_unix_us, skyfield_compat) {
19444
20748
  }
19445
20749
  exports.gcrsToItrs = gcrsToItrs;
19446
20750
 
20751
+ /**
20752
+ * Solve the WGS84 direct geodesic problem.
20753
+ *
20754
+ * Inputs are point 1 latitude, longitude, forward azimuth, and geodesic
20755
+ * distance. Angles are degrees and `distanceM` is metres. Returns
20756
+ * `{ lat2Deg, lon2Deg, finalAzimuthDeg }`. Delegates to
20757
+ * `sidereon_core::geodesic::geodesic_direct`.
20758
+ * @param {number} lat1_deg
20759
+ * @param {number} lon1_deg
20760
+ * @param {number} initial_azimuth_deg
20761
+ * @param {number} distance_m
20762
+ * @returns {any}
20763
+ */
20764
+ function geodesicDirect(lat1_deg, lon1_deg, initial_azimuth_deg, distance_m) {
20765
+ const ret = wasm.geodesicDirect(lat1_deg, lon1_deg, initial_azimuth_deg, distance_m);
20766
+ if (ret[2]) {
20767
+ throw takeFromExternrefTable0(ret[1]);
20768
+ }
20769
+ return takeFromExternrefTable0(ret[0]);
20770
+ }
20771
+ exports.geodesicDirect = geodesicDirect;
20772
+
20773
+ /**
20774
+ * Stable string label for a [`GeodesicError`] enum value.
20775
+ * @param {GeodesicError} error
20776
+ * @returns {string}
20777
+ */
20778
+ function geodesicErrorLabel(error) {
20779
+ let deferred1_0;
20780
+ let deferred1_1;
20781
+ try {
20782
+ const ret = wasm.geodesicErrorLabel(error);
20783
+ deferred1_0 = ret[0];
20784
+ deferred1_1 = ret[1];
20785
+ return getStringFromWasm0(ret[0], ret[1]);
20786
+ } finally {
20787
+ wasm.__wbindgen_free(deferred1_0, deferred1_1, 1);
20788
+ }
20789
+ }
20790
+ exports.geodesicErrorLabel = geodesicErrorLabel;
20791
+
20792
+ /**
20793
+ * Solve the WGS84 inverse geodesic problem.
20794
+ *
20795
+ * Inputs are point 1 latitude and longitude followed by point 2 latitude and
20796
+ * longitude, all in degrees. Longitudes may be outside `[-180, 180]`. Returns
20797
+ * `{ distanceM, initialAzimuthDeg, finalAzimuthDeg }`, with distance in metres
20798
+ * and azimuths in degrees. Delegates to
20799
+ * `sidereon_core::geodesic::geodesic_inverse`.
20800
+ * @param {number} lat1_deg
20801
+ * @param {number} lon1_deg
20802
+ * @param {number} lat2_deg
20803
+ * @param {number} lon2_deg
20804
+ * @returns {any}
20805
+ */
20806
+ function geodesicInverse(lat1_deg, lon1_deg, lat2_deg, lon2_deg) {
20807
+ const ret = wasm.geodesicInverse(lat1_deg, lon1_deg, lat2_deg, lon2_deg);
20808
+ if (ret[2]) {
20809
+ throw takeFromExternrefTable0(ret[1]);
20810
+ }
20811
+ return takeFromExternrefTable0(ret[0]);
20812
+ }
20813
+ exports.geodesicInverse = geodesicInverse;
20814
+
19447
20815
  /**
19448
20816
  * Convert a batch of geodetic coordinates to ITRS (ECEF).
19449
20817
  *
@@ -22196,6 +23564,22 @@ function parseSpaceWeatherTxt(text) {
22196
23564
  }
22197
23565
  exports.parseSpaceWeatherTxt = parseSpaceWeatherTxt;
22198
23566
 
23567
+ /**
23568
+ * Parse a CCSDS Tracking Data Message in KVN form.
23569
+ * @param {string} text
23570
+ * @returns {Tdm}
23571
+ */
23572
+ function parseTdmKvn(text) {
23573
+ const ptr0 = passStringToWasm0(text, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
23574
+ const len0 = WASM_VECTOR_LEN;
23575
+ const ret = wasm.parseTdmKvn(ptr0, len0);
23576
+ if (ret[2]) {
23577
+ throw takeFromExternrefTable0(ret[1]);
23578
+ }
23579
+ return Tdm.__wrap(ret[0]);
23580
+ }
23581
+ exports.parseTdmKvn = parseTdmKvn;
23582
+
22199
23583
  /**
22200
23584
  * Parse a multi-record TLE file (CelesTrak / Space-Track style) into named,
22201
23585
  * initialized [`Tle`] instances. Handles bare 2-line sets, 3-line name+line1+line2
@@ -23407,6 +24791,33 @@ function shadowFraction(satellite_position_km, sun_position_km) {
23407
24791
  }
23408
24792
  exports.shadowFraction = shadowFraction;
23409
24793
 
24794
+ /**
24795
+ * Shadow fraction in `[0, 1]` for position batches with an explicit Earth
24796
+ * shadow model.
24797
+ *
24798
+ * `satellitePositionKm` and `sunPositionKm` are flat row-major `(n, 3)`
24799
+ * `Float64Array`s. `EarthShadowModel.Spherical` is bit-identical to
24800
+ * [`shadowFraction`].
24801
+ * @param {Float64Array} satellite_position_km
24802
+ * @param {Float64Array} sun_position_km
24803
+ * @param {EarthShadowModel} model
24804
+ * @returns {Float64Array}
24805
+ */
24806
+ function shadowFractionWithModel(satellite_position_km, sun_position_km, model) {
24807
+ const ptr0 = passArrayF64ToWasm0(satellite_position_km, wasm.__wbindgen_malloc);
24808
+ const len0 = WASM_VECTOR_LEN;
24809
+ const ptr1 = passArrayF64ToWasm0(sun_position_km, wasm.__wbindgen_malloc);
24810
+ const len1 = WASM_VECTOR_LEN;
24811
+ const ret = wasm.shadowFractionWithModel(ptr0, len0, ptr1, len1, model);
24812
+ if (ret[3]) {
24813
+ throw takeFromExternrefTable0(ret[2]);
24814
+ }
24815
+ var v3 = getArrayF64FromWasm0(ret[0], ret[1]).slice();
24816
+ wasm.__wbindgen_free(ret[0], ret[1] * 8, 8);
24817
+ return v3;
24818
+ }
24819
+ exports.shadowFractionWithModel = shadowFractionWithModel;
24820
+
23410
24821
  /**
23411
24822
  * Shapiro-Wilk normality test on a residual set.
23412
24823
  *
@@ -24303,6 +25714,25 @@ function terrainStoreChecksum64(bytes) {
24303
25714
  }
24304
25715
  exports.terrainStoreChecksum64 = terrainStoreChecksum64;
24305
25716
 
25717
+ /**
25718
+ * Stable string label for a [`TerrestrialFrame`] enum value.
25719
+ * @param {TerrestrialFrame} frame
25720
+ * @returns {string}
25721
+ */
25722
+ function terrestrialFrameLabel(frame) {
25723
+ let deferred1_0;
25724
+ let deferred1_1;
25725
+ try {
25726
+ const ret = wasm.terrestrialFrameLabel(frame);
25727
+ deferred1_0 = ret[0];
25728
+ deferred1_1 = ret[1];
25729
+ return getStringFromWasm0(ret[0], ret[1]);
25730
+ } finally {
25731
+ wasm.__wbindgen_free(deferred1_0, deferred1_1, 1);
25732
+ }
25733
+ }
25734
+ exports.terrestrialFrameLabel = terrestrialFrameLabel;
25735
+
24306
25736
  /**
24307
25737
  * Time deviation for explicit averaging factors.
24308
25738
  *
@@ -24734,7 +26164,7 @@ exports.writeDtedTreeToMmapStore = writeDtedTreeToMmapStore;
24734
26164
  *
24735
26165
  * `alpha` is the two-sided false-alarm probability. `power` is detection power,
24736
26166
  * so the core missed-detection probability is `1 - power`. The returned object
24737
- * contains `delta0` and `lambda0 = delta0 * delta0`.
26167
+ * contains the core-provided `delta0` and `lambda0` values.
24738
26168
  * @param {number} alpha
24739
26169
  * @param {number} power
24740
26170
  * @returns {any}
@@ -24917,6 +26347,10 @@ function __wbg_get_imports() {
24917
26347
  const ret = GroundTrack.__wrap(arg0);
24918
26348
  return ret;
24919
26349
  },
26350
+ __wbg_helmerttransform_new: function(arg0) {
26351
+ const ret = HelmertTransform.__wrap(arg0);
26352
+ return ret;
26353
+ },
24920
26354
  __wbg_instanceof_ArrayBuffer_4480b9e0068a8adb: function(arg0) {
24921
26355
  let result;
24922
26356
  try {
@@ -25127,6 +26561,26 @@ function __wbg_get_imports() {
25127
26561
  const ret = SpkSegment.__wrap(arg0);
25128
26562
  return ret;
25129
26563
  },
26564
+ __wbg_tdmdatarecord_new: function(arg0) {
26565
+ const ret = TdmDataRecord.__wrap(arg0);
26566
+ return ret;
26567
+ },
26568
+ __wbg_tdmfield_new: function(arg0) {
26569
+ const ret = TdmField.__wrap(arg0);
26570
+ return ret;
26571
+ },
26572
+ __wbg_tdmparticipant_new: function(arg0) {
26573
+ const ret = TdmParticipant.__wrap(arg0);
26574
+ return ret;
26575
+ },
26576
+ __wbg_tdmpath_new: function(arg0) {
26577
+ const ret = TdmPath.__wrap(arg0);
26578
+ return ret;
26579
+ },
26580
+ __wbg_tdmsegment_new: function(arg0) {
26581
+ const ret = TdmSegment.__wrap(arg0);
26582
+ return ret;
26583
+ },
25130
26584
  __wbg_terrainstoretileindex_new: function(arg0) {
25131
26585
  const ret = TerrainStoreTileIndex.__wrap(arg0);
25132
26586
  return ret;
@@ -25272,6 +26726,9 @@ const CovarianceTransportResultFinalization = (typeof FinalizationRegistry === '
25272
26726
  const CoverageGridFinalization = (typeof FinalizationRegistry === 'undefined')
25273
26727
  ? { register: () => {}, unregister: () => {} }
25274
26728
  : new FinalizationRegistry(ptr => wasm.__wbg_coveragegrid_free(ptr, 1));
26729
+ const DecayLatchFinalization = (typeof FinalizationRegistry === 'undefined')
26730
+ ? { register: () => {}, unregister: () => {} }
26731
+ : new FinalizationRegistry(ptr => wasm.__wbg_decaylatch_free(ptr, 1));
25275
26732
  const DegradationParamsFinalization = (typeof FinalizationRegistry === 'undefined')
25276
26733
  ? { register: () => {}, unregister: () => {} }
25277
26734
  : new FinalizationRegistry(ptr => wasm.__wbg_degradationparams_free(ptr, 1));
@@ -25359,6 +26816,15 @@ const GroundStationFinalization = (typeof FinalizationRegistry === 'undefined')
25359
26816
  const GroundTrackFinalization = (typeof FinalizationRegistry === 'undefined')
25360
26817
  ? { register: () => {}, unregister: () => {} }
25361
26818
  : new FinalizationRegistry(ptr => wasm.__wbg_groundtrack_free(ptr, 1));
26819
+ const HelmertParametersFinalization = (typeof FinalizationRegistry === 'undefined')
26820
+ ? { register: () => {}, unregister: () => {} }
26821
+ : new FinalizationRegistry(ptr => wasm.__wbg_helmertparameters_free(ptr, 1));
26822
+ const HelmertRatesFinalization = (typeof FinalizationRegistry === 'undefined')
26823
+ ? { register: () => {}, unregister: () => {} }
26824
+ : new FinalizationRegistry(ptr => wasm.__wbg_helmertrates_free(ptr, 1));
26825
+ const HelmertTransformFinalization = (typeof FinalizationRegistry === 'undefined')
26826
+ ? { register: () => {}, unregister: () => {} }
26827
+ : new FinalizationRegistry(ptr => wasm.__wbg_helmerttransform_free(ptr, 1));
25362
26828
  const InstantFinalization = (typeof FinalizationRegistry === 'undefined')
25363
26829
  ? { register: () => {}, unregister: () => {} }
25364
26830
  : new FinalizationRegistry(ptr => wasm.__wbg_instant_free(ptr, 1));
@@ -25671,6 +27137,33 @@ const SsrCorrectionStoreFinalization = (typeof FinalizationRegistry === 'undefin
25671
27137
  const SunMoonFinalization = (typeof FinalizationRegistry === 'undefined')
25672
27138
  ? { register: () => {}, unregister: () => {} }
25673
27139
  : new FinalizationRegistry(ptr => wasm.__wbg_sunmoon_free(ptr, 1));
27140
+ const TdmFinalization = (typeof FinalizationRegistry === 'undefined')
27141
+ ? { register: () => {}, unregister: () => {} }
27142
+ : new FinalizationRegistry(ptr => wasm.__wbg_tdm_free(ptr, 1));
27143
+ const TdmDataRecordFinalization = (typeof FinalizationRegistry === 'undefined')
27144
+ ? { register: () => {}, unregister: () => {} }
27145
+ : new FinalizationRegistry(ptr => wasm.__wbg_tdmdatarecord_free(ptr, 1));
27146
+ const TdmDataSectionFinalization = (typeof FinalizationRegistry === 'undefined')
27147
+ ? { register: () => {}, unregister: () => {} }
27148
+ : new FinalizationRegistry(ptr => wasm.__wbg_tdmdatasection_free(ptr, 1));
27149
+ const TdmFieldFinalization = (typeof FinalizationRegistry === 'undefined')
27150
+ ? { register: () => {}, unregister: () => {} }
27151
+ : new FinalizationRegistry(ptr => wasm.__wbg_tdmfield_free(ptr, 1));
27152
+ const TdmMetadataFinalization = (typeof FinalizationRegistry === 'undefined')
27153
+ ? { register: () => {}, unregister: () => {} }
27154
+ : new FinalizationRegistry(ptr => wasm.__wbg_tdmmetadata_free(ptr, 1));
27155
+ const TdmParticipantFinalization = (typeof FinalizationRegistry === 'undefined')
27156
+ ? { register: () => {}, unregister: () => {} }
27157
+ : new FinalizationRegistry(ptr => wasm.__wbg_tdmparticipant_free(ptr, 1));
27158
+ const TdmPathFinalization = (typeof FinalizationRegistry === 'undefined')
27159
+ ? { register: () => {}, unregister: () => {} }
27160
+ : new FinalizationRegistry(ptr => wasm.__wbg_tdmpath_free(ptr, 1));
27161
+ const TdmScalarFinalization = (typeof FinalizationRegistry === 'undefined')
27162
+ ? { register: () => {}, unregister: () => {} }
27163
+ : new FinalizationRegistry(ptr => wasm.__wbg_tdmscalar_free(ptr, 1));
27164
+ const TdmSegmentFinalization = (typeof FinalizationRegistry === 'undefined')
27165
+ ? { register: () => {}, unregister: () => {} }
27166
+ : new FinalizationRegistry(ptr => wasm.__wbg_tdmsegment_free(ptr, 1));
25674
27167
  const TerrainGeoidModelFinalization = (typeof FinalizationRegistry === 'undefined')
25675
27168
  ? { register: () => {}, unregister: () => {} }
25676
27169
  : new FinalizationRegistry(ptr => wasm.__wbg_terraingeoidmodel_free(ptr, 1));