nmr-processing 12.5.0 → 12.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -601,6 +601,12 @@ export declare interface GetAutoAssignmentInput {
601
601
  */
602
602
  export declare function getBaselineZones(data: NmrData1D, options?: BaselineZoneOptions): BaselineCorrectionZone[];
603
603
 
604
+ /**
605
+ * Generate baseline zones by Dietrich method, it uses an iterative thresholding to discard signals zones over a power spectrum.
606
+ * the implementation is based on the publication of Cobas et al (DOI: {@link https://doi.org/10.1016/j.jmr.2006.07.013})
607
+ */
608
+ export declare function getBaselineZonesByDietrich(data: NmrData1D): BaselineCorrectionZone[];
609
+
604
610
  export declare function getDatabase(url?: string, options?: {
605
611
  /**
606
612
  * @default 'tsv'
@@ -649,6 +655,17 @@ export declare interface GetPeakListOptions extends GSDOptions, OptimizePeaksOpt
649
655
  maxAbsDdY?: number;
650
656
  }
651
657
 
658
+ /**
659
+ * Prediction cache function that saves and loads predictions from the file system.
660
+ * @param cacheFolder
661
+ * @returns
662
+ */
663
+ export declare function getPredictionFSCache(cacheFolder: string, options?: GetPredictionFSCacheOptions): PredictionCacheFn;
664
+
665
+ declare interface GetPredictionFSCacheOptions {
666
+ throwIfNotInCache?: boolean;
667
+ }
668
+
652
669
  export declare function getShiftX(spectrum: Entry1D): number;
653
670
 
654
671
  export declare const impurities: SolventImpurities;
@@ -2262,6 +2279,8 @@ export declare interface Jcoupling {
2262
2279
  pathLength?: number;
2263
2280
  }
2264
2281
 
2282
+ declare type JcouplingFromPrediction = MakeMandatory<Jcoupling, 'multiplicity' | 'diaIDs' | 'pathLength'>;
2283
+
2265
2284
  declare interface LabelField extends BaseField {
2266
2285
  type: 'label';
2267
2286
  }
@@ -2929,7 +2948,7 @@ export declare interface PolynomialOptions {
2929
2948
  }
2930
2949
 
2931
2950
  /**
2932
- * Generate the correlation bidimensional nmr peaks based on the number of bonds between a pair of atoms
2951
+ * Generate the 2D correlation nmr peaks based on the number of bonds between a pair of atoms
2933
2952
  * @returns {Promise<object>} - object with molfile, diaIDs, 1D and 2D signals, joined signals, ranges and zones.
2934
2953
  */
2935
2954
  export declare function predict(molecule: Molecule, options?: PredictAllOptions): Promise<Predicted>;
@@ -2971,7 +2990,8 @@ export declare interface PredictCarbonOptions {
2971
2990
  */
2972
2991
  maxSphereSize?: number;
2973
2992
  /**
2974
- * Predictor function.
2993
+ * Predictor function that will use by default: 'https://nmr-prediction.service.zakodium.com/v1/predict/carbon'
2994
+ * @default defaultCarbonPredictor
2975
2995
  */
2976
2996
  predictor?: PredictorFn;
2977
2997
  /**
@@ -3153,7 +3173,8 @@ declare type PredictorFn = (topicMolecule: TopicMolecule) => Promise<PredictionB
3153
3173
 
3154
3174
  export declare interface PredictProtonOptions {
3155
3175
  /**
3156
- * Predictor function.
3176
+ * Predictor function. Will use by default webservice: https://nmr-prediction.service.zakodium.com/v1/predict/proton
3177
+ * @default defaultProtonPredictor
3157
3178
  */
3158
3179
  predictor?: PredictorFn;
3159
3180
  /**
@@ -3380,6 +3401,12 @@ export declare interface Signal1D extends Required<Pick<NMRSignal1D, ObjectKeys>
3380
3401
  originalDelta?: number;
3381
3402
  }
3382
3403
 
3404
+ declare type Signal1DWidthDiaID = MakeMandatory<NMRSignal1D, 'diaIDs'>;
3405
+
3406
+ declare type Signal1DWidthJsAndDiaID = Omit<Signal1DWidthDiaID, 'js'> & {
3407
+ js: JcouplingFromPrediction[];
3408
+ };
3409
+
3383
3410
  export declare interface Signal2D extends Signal_2 {
3384
3411
  sign?: number;
3385
3412
  x: SignalAxis;
@@ -3478,6 +3505,19 @@ declare interface Signals2DToZOptions {
3478
3505
  factor?: number | XYNumber;
3479
3506
  }
3480
3507
 
3508
+ /**
3509
+ * Join signals if all the same diaID
3510
+ */
3511
+ export declare function signalsJoin(signals: NMRSignal1D[], options?: SignalsJoinOptions): Signal1DWidthJsAndDiaID[];
3512
+
3513
+ export declare interface SignalsJoinOptions {
3514
+ /**
3515
+ * options for signalJoinCouplings
3516
+ * @default {}
3517
+ */
3518
+ joinCouplings?: SignalJoinCouplingsOptions;
3519
+ }
3520
+
3481
3521
  /**
3482
3522
  * it use the chemical shifts and the coupling between them in order to generate a FID.
3483
3523
  * It does not propagate the hamiltonian of the spin system, instead it simulate all the