@kent-tokyo/chematic 0.2.11 → 0.4.28

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.
package/README.md CHANGED
@@ -116,6 +116,12 @@ console.log(ifg); // [{"atoms":[1,2,3],"types":"OC=O"}, ...]
116
116
  - True MHFP (structural fragment hashing)
117
117
  - True ERG (Ertl 2017 functional group detection)
118
118
 
119
+ ## Bundle Size
120
+
121
+ ~500 KB gzip / ~1.3 MB raw (reduced from ~819 KB gzip in v0.4.17, -38.5%).
122
+
123
+ PNG rasterization (`tiny_skia`) is excluded from the WASM build — use SVG output instead. All SVG depiction APIs remain fully available.
124
+
119
125
  ## Building from source
120
126
 
121
127
  ```sh
@@ -106,17 +106,6 @@ export class DepictOptions {
106
106
  set_width(w: number): void;
107
107
  }
108
108
 
109
- /**
110
- * MinHash LSH index: insert MHFP fingerprints and query by approximate similarity.
111
- *
112
- * ```js
113
- * const idx = new MhfpLshHandle(128);
114
- * const i0 = idx.add_smiles("c1ccccc1"); // benzene → index 0
115
- * const i1 = idx.add_smiles("Cc1ccccc1"); // toluene → index 1
116
- * const hits = JSON.parse(idx.query_json("c1ccccc1", 0.5));
117
- * // hits: [{index:0,similarity:1.0}, {index:1,similarity:0.xxx}]
118
- * ```
119
- */
120
109
  export class MhfpLshHandle {
121
110
  free(): void;
122
111
  [Symbol.dispose](): void;
@@ -169,6 +158,15 @@ export class MolHandle {
169
158
  * Number of heavy atoms (explicit atoms in the graph; does not count implicit H).
170
159
  */
171
160
  atom_count(): number;
161
+ /**
162
+ * Returns true when TPSA < 90 Ų, MW < 400, HBD ≤ 3.
163
+ */
164
+ bbb_passes(): boolean;
165
+ /**
166
+ * Clark (2000) blood-brain barrier logBB score.
167
+ * logBB > −1.0 = likely CNS penetrant.
168
+ */
169
+ bbb_score(): number;
172
170
  /**
173
171
  * Bertz complexity index (BertzCT).
174
172
  */
@@ -177,6 +175,11 @@ export class MolHandle {
177
175
  * Number of bonds.
178
176
  */
179
177
  bond_count(): number;
178
+ /**
179
+ * Palm (1997) Caco-2 intestinal permeability (logPCaco2).
180
+ * > −5.5 = high permeability.
181
+ */
182
+ caco2_permeability(): number;
180
183
  /**
181
184
  * Canonical SMILES string.
182
185
  */
@@ -222,8 +225,12 @@ export class MolHandle {
222
225
  */
223
226
  chi4v(): number;
224
227
  /**
225
- * 2D PNG depiction (rasterized from SVG).
226
- * Returns PNG data as base64-encoded string for embedding in HTML/JS.
228
+ * CYP3A4 metabolic inhibition risk score (0.0–1.0).
229
+ */
230
+ cyp3a4_inhibition_risk(): number;
231
+ /**
232
+ * 2D PNG depiction — not available in the WASM build (PNG stack disabled to reduce bundle size).
233
+ * Use `depict_svg()` in browser contexts; rasterize client-side if needed.
227
234
  */
228
235
  depict_png(): Uint8Array;
229
236
  /**
@@ -272,6 +279,10 @@ export class MolHandle {
272
279
  * Number of non-hydrogen heavy atoms.
273
280
  */
274
281
  heavy_atom_count(): number;
282
+ /**
283
+ * hERG cardiac toxicity risk score (0.0–1.0).
284
+ */
285
+ herg_risk_score(): number;
275
286
  /**
276
287
  * Isotope distribution as JSON.
277
288
  *
@@ -390,6 +401,14 @@ export class MolHandle {
390
401
  * Returns `true` if the molecule has no PAINS structural alerts.
391
402
  */
392
403
  pains_passes(): boolean;
404
+ /**
405
+ * Most acidic pKa in the molecule, or NaN if no acidic site.
406
+ */
407
+ pka_acid_value(): number;
408
+ /**
409
+ * Most basic pKa in the molecule, or NaN if no basic site.
410
+ */
411
+ pka_base_value(): number;
393
412
  /**
394
413
  * Quantitative Estimate of Drug-likeness (QED); range [0, 1].
395
414
  */
@@ -448,6 +467,18 @@ export class MolHandle {
448
467
  */
449
468
  export function add_hydrogens(mol: MolHandle): MolHandle;
450
469
 
470
+ /**
471
+ * Compute a full ADMET property profile for a molecule.
472
+ *
473
+ * Returns a JSON object with fields:
474
+ * `bbb_score`, `bbb_passes`, `caco2`, `herg_risk`, `cyp3a4_risk`,
475
+ * `pka_acid` (null if absent), `pka_base` (null if absent),
476
+ * `esol`, `logd74`, `mw`, `logp`, `tpsa`, `hbd`, `hba`, `rotatable_bonds`
477
+ *
478
+ * Returns `{"error":"..."}` on parse failure.
479
+ */
480
+ export function admet_profile_json(smiles: string): string;
481
+
451
482
  /**
452
483
  * AtomPair fingerprint as a bit-packed byte vector (256 bytes = 2048 bits).
453
484
  */
@@ -472,6 +503,37 @@ export function autocorr_3d_json(mol: MolHandle): string;
472
503
  */
473
504
  export function balance_check_json(reaction_smiles: string): string;
474
505
 
506
+ /**
507
+ * MinHash LSH index: insert MHFP fingerprints and query by approximate similarity.
508
+ *
509
+ * ```js
510
+ * const idx = new MhfpLshHandle(128);
511
+ * const i0 = idx.add_smiles("c1ccccc1"); // benzene → index 0
512
+ * const i1 = idx.add_smiles("Cc1ccccc1"); // toluene → index 1
513
+ * const hits = JSON.parse(idx.query_json("c1ccccc1", 0.5));
514
+ * // hits: [{index:0,similarity:1.0}, {index:1,similarity:0.xxx}]
515
+ * ```
516
+ * Generate a self-contained HTML report for a newline-separated list of SMILES.
517
+ *
518
+ * Empty lines and invalid SMILES are silently skipped.
519
+ * Returns the same card-grid HTML as Python's `chematic.report()`.
520
+ *
521
+ * ```js
522
+ * const html = mod.batch_report_html("CCO\nc1ccccc1\nCC(=O)O");
523
+ * const blob = new Blob([html], {type:'text/html'});
524
+ * const url = URL.createObjectURL(blob);
525
+ * ```
526
+ */
527
+ export function batch_report_html(smiles_lines: string): string;
528
+
529
+ /**
530
+ * Predict GI absorption and BBB penetration using the BOILED-Egg method
531
+ * (Daina & Zoete 2016).
532
+ *
533
+ * Returns JSON: `{"gi_absorbed":bool,"bbb_penetrant":bool,"logp":f64,"tpsa":f64}`
534
+ */
535
+ export function boiled_egg_json(smiles: string): string;
536
+
475
537
  /**
476
538
  * Number of BRICS fragments produced by fragmenting the molecule.
477
539
  *
@@ -566,21 +628,10 @@ export function compare_molecules_batch_json(smiles_batch: string, delimiter: st
566
628
  export function compare_molecules_json(smiles1: string, smiles2: string): string;
567
629
 
568
630
  /**
569
- * Compute direct Coulomb energy for a molecule with Gasteiger partial charges.
570
- *
571
- * Returns JSON object: `{ "coulomb_energy": E, "unit": "kcal/mol" }`
572
- *
573
- * # Arguments
574
- * * `mol` - Molecule to evaluate
575
- *
576
- * # Example (JavaScript)
577
- * ```js
578
- * const mol = parse_smiles("CCO");
579
- * const result = coulomb_energy_json(mol);
580
- * // { "coulomb_energy": -12.34, "unit": "kcal/mol" }
581
- * ```
631
+ * Generate multiple conformers with RMSD-based pruning.
632
+ * Returns JSON: `{"conformers": [[[x,y,z],...], ...], "count": int}`.
582
633
  */
583
- export function coulomb_energy_json(mol: MolHandle): string;
634
+ export function conformer_ensemble_json(mol: MolHandle, n: number, rmsd_threshold: number): string;
584
635
 
585
636
  /**
586
637
  * Return the CPK color (CSS hex string) for the given element symbol.
@@ -660,21 +711,6 @@ export function depict_svg_grid_highlighted(smiles_block: string, cols: number,
660
711
  */
661
712
  export function detect_functional_groups(mol: MolHandle): string;
662
713
 
663
- /**
664
- * Infer bond connectivity and bond orders from an XYZ-format string.
665
- *
666
- * Explicit hydrogen atoms must be present in the XYZ for reliable bond-order
667
- * assignment (without H, carbonyl C=O cannot be distinguished from C-O).
668
- *
669
- * Returns JSON on success: `{"smiles":"CCO","atom_count":3,"bond_count":2}`.
670
- * `atom_count` and `bond_count` refer to the heavy-atom skeleton (H removed).
671
- *
672
- * Returns JSON on error: `{"error":"molecule has 450 atoms; maximum is 300"}`.
673
- *
674
- * Safe: never freezes. All internal loops are O(n²). Capped at 300 atoms.
675
- */
676
- export function determine_bonds_from_xyz_json(xyz_str: string): string;
677
-
678
714
  /**
679
715
  * Dice similarity between `a` and `b` using ECFP4 fingerprints.
680
716
  */
@@ -805,6 +841,19 @@ export function find_reaction_center_json(reaction_smiles: string): string;
805
841
  */
806
842
  export function gasteiger_charges_json(mol: MolHandle): string;
807
843
 
844
+ /**
845
+ * Generate 3D coordinates as raw JSON array [[x,y,z], ...].
846
+ *
847
+ * Unlike `generate_3d_pdb`, this returns coordinates that can be passed
848
+ * to descriptor functions like `whim_descriptors_json` or `shape_descriptors_json`.
849
+ */
850
+ export function generate_3d_coords_json(mol: MolHandle): string;
851
+
852
+ /**
853
+ * Generate 3D coordinates using ETKDG as raw JSON array [[x,y,z], ...].
854
+ */
855
+ export function generate_3d_etkdg_coords_json(mol: MolHandle): string;
856
+
808
857
  /**
809
858
  * Generate 3D coordinates using ETKDG and minimize with DREIDING force field.
810
859
  */
@@ -941,13 +990,33 @@ export function get_descriptors_json(mol: MolHandle): string;
941
990
  export function get_dihedral_json(smiles: string, a: number, b: number, c: number, d: number): any;
942
991
 
943
992
  /**
944
- * Compute GETAWAY descriptors (GEometric, Topologic And wAveleT descriptors) from 3D coordinates.
945
- * Returns JSON array of 9 values: [G1, G2, G3, D1, D2, D3, T, V, A]
946
- * where G* = geometric autocorrelations (lag-1,2,3), D* = topologic distances,
947
- * T = total pairwise distance, V = bounding-box volume, A = anisotropy ratio.
993
+ * Compute GETAWAY descriptors (GEometry, Topology and Atom-Weights AssemblY) from 3D coords.
994
+ *
995
+ * Returns a JSON array of **19** values:
996
+ * - `[0..7]` H[1..8] — leverage autocorrelation at topological lags 1–8
997
+ * - `[8..15]` R[1..8] — H[k] normalised by pair count W_k
998
+ * - `[16]` Hmax, `[17]` Hmean, `[18]` Htot — per-atom leverage statistics
999
+ *
1000
+ * Note: requires 3D coordinates (non-planar); for flat/2D structures the hat matrix
1001
+ * is degenerate and descriptors reflect squared centroid distances, not true leverage.
948
1002
  */
949
1003
  export function getaway_descriptors_json(mol: MolHandle): string;
950
1004
 
1005
+ /**
1006
+ * Parse a ChemDraw XML (CDXML) string into a `MolHandle`.
1007
+ *
1008
+ * Compute an HDF fingerprint and return it as a JSON array of float32 values.
1009
+ *
1010
+ * Returns a unit-norm vector of length `dim` as a JSON number array.
1011
+ * Use cosine dot product for similarity: `a · b = sum(a[i]*b[i])`.
1012
+ *
1013
+ * ```js
1014
+ * const fp = JSON.parse(hdf_json(mol)); // float[] of length 1024
1015
+ * const sim = fp.reduce((s, v, i) => s + v * fp2[i], 0); // cosine similarity
1016
+ * ```
1017
+ */
1018
+ export function hdf_json(mol: MolHandle, dim: number, radius: number, seed: bigint): string;
1019
+
951
1020
  /**
952
1021
  * Identify functional groups. Returns a JSON array of objects:
953
1022
  * `[{"atoms":[0,2,3],"type":"C,N,O"}, …]`
@@ -1036,6 +1105,16 @@ export function maxmin_picks_ecfp4_json(smiles_json: string, n: number): string;
1036
1105
  */
1037
1106
  export function mcs_smiles_json(smiles_json: string): string;
1038
1107
 
1108
+ /**
1109
+ * MCS with ring-awareness constraints.
1110
+ *
1111
+ * `smiles_json` — JSON array of at least 2 SMILES strings.
1112
+ * `ring_matches_ring_only` — ring atoms may only match ring atoms.
1113
+ * `complete_rings_only` — partial ring inclusion is removed from the result.
1114
+ * Returns the MCS SMILES, or `"null"` when no common substructure was found.
1115
+ */
1116
+ export function mcs_smiles_json_with_ring_config(smiles_json: string, ring_matches_ring_only: boolean, complete_rings_only: boolean): string;
1117
+
1039
1118
  /**
1040
1119
  * MinHash fingerprint (128 hashes) as JSON.
1041
1120
  *
@@ -1071,6 +1150,17 @@ export function minimize_mmff94_json(mol: MolHandle, max_iter: number): string;
1071
1150
  */
1072
1151
  export function minimize_mmff94_lbfgs_json(mol: MolHandle, max_iter: number): string;
1073
1152
 
1153
+ /**
1154
+ * Minimise a molecule's geometry using the Universal Force Field (UFF).
1155
+ *
1156
+ * `coords_json` — JSON array of `[x,y,z]` arrays (Å), one per atom.
1157
+ * `max_iter` — maximum iterations (0 = default 500).
1158
+ *
1159
+ * Returns JSON: `{"coords":[[x,y,z],...], "energy":float, "iterations":int, "converged":bool}`
1160
+ * or `{"error":"<msg>"}` on failure.
1161
+ */
1162
+ export function minimize_uff_json(smiles: string, coords_json: string, max_iter: number): string;
1163
+
1074
1164
  /**
1075
1165
  * MMFF94 partial charges (BCI table, ±0.1e accuracy) as a JSON array of f64.
1076
1166
  *
@@ -1148,8 +1238,6 @@ export function mol_block_coords_json(mol_block: string): string;
1148
1238
  export function mol_block_from_smiles(smiles: string): string;
1149
1239
 
1150
1240
  /**
1151
- * Parse a ChemDraw XML (CDXML) string into a `MolHandle`.
1152
- *
1153
1241
  * Only the first molecular fragment in the document is returned.
1154
1242
  * Returns a JS error if the document cannot be parsed.
1155
1243
  */
@@ -1162,6 +1250,14 @@ export function mol_from_cdxml(cdxml: string): MolHandle;
1162
1250
  */
1163
1251
  export function mol_from_cml(cml: string): MolHandle;
1164
1252
 
1253
+ /**
1254
+ * Parse a MolJSON string into a `MolHandle`.
1255
+ *
1256
+ * MolJSON is a JSON-based molecular representation designed for LLM
1257
+ * (large language model) compatibility. Returns a JS error on invalid input.
1258
+ */
1259
+ export function mol_from_moljson(json: string): MolHandle;
1260
+
1165
1261
  /**
1166
1262
  * Parse a PDB file and return a `MolHandle` (topology only; coordinates are discarded).
1167
1263
  *
@@ -1357,6 +1453,15 @@ export function pharmacophore_fp_2d_summary(mol: MolHandle): string;
1357
1453
  */
1358
1454
  export function pharmacophore_fp_3d_summary(mol: MolHandle): string;
1359
1455
 
1456
+ /**
1457
+ * Predict pKa for all ionizable sites in a molecule.
1458
+ *
1459
+ * Returns a JSON array: `[{"atom_idx":8,"pka":4.0,"type":"acid","group":"carboxylic_acid"},...]`
1460
+ *
1461
+ * Returns `[]` if no ionizable sites are found, or `{"error":"..."}` on parse failure.
1462
+ */
1463
+ export function predict_pka_json(smiles: string): string;
1464
+
1360
1465
  /**
1361
1466
  * Generate `count` random SMILES from a SMILES string using the given seed.
1362
1467
  * Atoms are permuted based on xorshift64 RNG. Each variant should parse back
@@ -1409,15 +1514,6 @@ export function rgroup_decompose_json(smiles_json: string, core_smarts: string):
1409
1514
  */
1410
1515
  export function ring_families_json(mol: MolHandle): string;
1411
1516
 
1412
- /**
1413
- * Run molecular dynamics simulation and return trajectory as JSON.
1414
- *
1415
- * Returns JSON object with trajectory frames: `{ "frames": [{ "step": N, "potential": E, "kinetic": K, "temp": T }, …] }`
1416
- * Uses NVT ensemble (Berendsen thermostat) at 300 K by default.
1417
- * Note: Limited to molecules with ~50 atoms or fewer for practical WASM performance.
1418
- */
1419
- export function run_md_json(mol: MolHandle, steps: number, temp_k: number): string;
1420
-
1421
1517
  /**
1422
1518
  * Apply a SMIRKS reaction template and return product SMILES as a JSON string.
1423
1519
  *
@@ -1551,6 +1647,17 @@ export function smiles_array_to_sdf(smiles_json: string): string;
1551
1647
  */
1552
1648
  export function smiles_to_mol2(smiles: string): string;
1553
1649
 
1650
+ /**
1651
+ * Write a molecule to AutoDock PDBQT format.
1652
+ *
1653
+ * `coords_json` — JSON array of `[x,y,z]` arrays (Å). Pass `"[]"` for zero coords.
1654
+ * `charges_json` — JSON array of partial charges. Pass `"[]"` to write zeros.
1655
+ * `name` — ligand name for the REMARK header.
1656
+ *
1657
+ * Returns the PDBQT string, or `"error:<msg>"` on failure.
1658
+ */
1659
+ export function smiles_to_pdbqt(smiles: string, coords_json: string, charges_json: string, name: string): string;
1660
+
1554
1661
  /**
1555
1662
  * Render a highlighted SVG from a SMILES string in one call.
1556
1663
  *
@@ -1676,6 +1783,14 @@ export function to_mol_block(mol: MolHandle): string;
1676
1783
  */
1677
1784
  export function to_mol_v3000_block(mol: MolHandle): string;
1678
1785
 
1786
+ /**
1787
+ * Serialise a `MolHandle` to a MolJSON string (pretty-printed).
1788
+ *
1789
+ * Atom IDs are assigned as `"a1"`, `"a2"`, … in molecule atom order.
1790
+ * The `hydrogens` field reflects computed implicit H count.
1791
+ */
1792
+ export function to_moljson(mol: MolHandle): string;
1793
+
1679
1794
  /**
1680
1795
  * Serialize a molecule to XYZ format.
1681
1796
  *
@@ -1688,12 +1803,6 @@ export function to_xyz(mol: MolHandle): string;
1688
1803
  */
1689
1804
  export function torsion_bitvec(mol: MolHandle): Uint8Array;
1690
1805
 
1691
- /**
1692
- * Scan a torsion dihedral i-j-k-l from 0° to 360° in `steps` increments.
1693
- * Returns JSON array: [{"angle":0.0,"energy":E},...] or {"error":"..."}.
1694
- */
1695
- export function torsion_scan_json(mol: MolHandle, i: number, j: number, k: number, l: number, steps: number): string;
1696
-
1697
1806
  /**
1698
1807
  * Virtual screen a query SMILES against a database of SMILES using ECFP4 Tanimoto.
1699
1808
  *
@@ -1707,14 +1816,15 @@ export function virtual_screen_ecfp4_json(query_smi: string, db_smiles_json: str
1707
1816
 
1708
1817
  /**
1709
1818
  * Compute WHIM descriptors (Weighted Holistic Invariant Molecular) from 3D coordinates.
1710
- * Returns JSON array of 10 values: [L1, L2, L3, P1, P2, P3, ALPHA, BETA, GAMMA, DELTA]
1711
- * where L* = inertia tensor eigenvalues, P* = principal moments, ALPHA = sum of moments,
1712
- * BETA = average pairwise interaction, GAMMA = geometric mean, DELTA = anisotropy.
1819
+ * Returns JSON array of 22 values: 11 unit-weight descriptors followed by 11 mass-weight
1820
+ * descriptors. Each 11-element block is [λ₁, λ₂, λ₃, ν₁, ν₂, ν₃, T, A, V, K, D].
1713
1821
  */
1714
1822
  export function whim_descriptors_json(mol: MolHandle): string;
1715
1823
 
1716
1824
  /**
1717
- * Compute combined WHIM + GETAWAY descriptors (19 values total) as JSON array.
1825
+ * Compute combined WHIM + GETAWAY descriptors (**41** values total) as JSON array.
1826
+ *
1827
+ * Returns WHIM[0..21] (22 values) followed by GETAWAY[0..18] (19 values) = 41 total.
1718
1828
  * Useful for ML pipelines requiring both shape and topologic features.
1719
1829
  */
1720
1830
  export function whim_getaway_combined_json(mol: MolHandle): string;
@@ -1728,6 +1838,18 @@ export function whim_getaway_combined_json(mol: MolHandle): string;
1728
1838
  */
1729
1839
  export function write_smiles(mol: MolHandle): string;
1730
1840
 
1841
+ /**
1842
+ * XLogP3 partition coefficient (alternative to Crippen LogP).
1843
+ * Returns JSON: `{"xlogp3": float}`.
1844
+ */
1845
+ export function xlogp3_json(mol: MolHandle): string;
1846
+
1847
+ /**
1848
+ * Per-atom XLogP3 contributions.
1849
+ * Returns JSON array of floats (one per heavy atom).
1850
+ */
1851
+ export function xlogp3_per_atom_json(mol: MolHandle): string;
1852
+
1731
1853
  export type InitInput = RequestInfo | URL | Response | BufferSource | WebAssembly.Module;
1732
1854
 
1733
1855
  export interface InitOutput {
@@ -1737,10 +1859,13 @@ export interface InitOutput {
1737
1859
  readonly __wbg_mhfplshhandle_free: (a: number, b: number) => void;
1738
1860
  readonly __wbg_molhandle_free: (a: number, b: number) => void;
1739
1861
  readonly add_hydrogens: (a: number) => number;
1862
+ readonly admet_profile_json: (a: number, b: number) => [number, number];
1740
1863
  readonly atom_pair_bitvec: (a: number) => [number, number];
1741
1864
  readonly autocorr_2d_json: (a: number) => [number, number];
1742
1865
  readonly autocorr_3d_json: (a: number) => [number, number];
1743
1866
  readonly balance_check_json: (a: number, b: number) => [number, number];
1867
+ readonly batch_report_html: (a: number, b: number) => [number, number];
1868
+ readonly boiled_egg_json: (a: number, b: number) => [number, number];
1744
1869
  readonly brics_fragment_count: (a: number) => number;
1745
1870
  readonly brics_fragments_json: (a: number) => [number, number];
1746
1871
  readonly butina_cluster_ecfp4_json: (a: number, b: number, c: number) => [number, number, number, number];
@@ -1748,6 +1873,9 @@ export interface InitOutput {
1748
1873
  readonly canonical_tautomer_with_blocked_atoms_json: (a: number, b: number, c: number) => [number, number];
1749
1874
  readonly cdxml_to_smiles_json: (a: number, b: number) => [number, number, number, number];
1750
1875
  readonly cip_assignments_json: (a: number) => [number, number];
1876
+ readonly compare_molecules_batch_json: (a: number, b: number, c: number, d: number) => [number, number, number, number];
1877
+ readonly compare_molecules_json: (a: number, b: number, c: number, d: number) => [number, number, number, number];
1878
+ readonly conformer_ensemble_json: (a: number, b: number, c: number) => [number, number];
1751
1879
  readonly conformerhandle_add_generated_conformer: (a: number) => number;
1752
1880
  readonly conformerhandle_add_minimized_conformer: (a: number) => number;
1753
1881
  readonly conformerhandle_cluster_conformers_json: (a: number, b: number) => [number, number];
@@ -1758,7 +1886,6 @@ export interface InitOutput {
1758
1886
  readonly conformerhandle_mol: (a: number) => number;
1759
1887
  readonly conformerhandle_new: (a: number, b: number) => [number, number, number];
1760
1888
  readonly conformerhandle_remove_conformer: (a: number, b: number) => number;
1761
- readonly coulomb_energy_json: (a: number) => [number, number];
1762
1889
  readonly cpk_color: (a: number, b: number) => [number, number];
1763
1890
  readonly depict_data_json: (a: number) => [number, number];
1764
1891
  readonly depict_data_with_coords_json: (a: number, b: number, c: number) => [number, number];
@@ -1779,7 +1906,6 @@ export interface InitOutput {
1779
1906
  readonly depictoptions_set_show_atom_indices: (a: number, b: number) => void;
1780
1907
  readonly depictoptions_set_width: (a: number, b: number) => void;
1781
1908
  readonly detect_functional_groups: (a: number) => [number, number];
1782
- readonly determine_bonds_from_xyz_json: (a: number, b: number) => [number, number];
1783
1909
  readonly dice_ecfp4: (a: number, b: number) => number;
1784
1910
  readonly dice_ecfp6: (a: number, b: number) => number;
1785
1911
  readonly dice_maccs: (a: number, b: number) => number;
@@ -1797,9 +1923,13 @@ export interface InitOutput {
1797
1923
  readonly fcfp6_bitvec: (a: number) => [number, number];
1798
1924
  readonly find_reaction_center_json: (a: number, b: number) => [number, number];
1799
1925
  readonly gasteiger_charges_json: (a: number) => [number, number];
1926
+ readonly generate_3d_coords_json: (a: number) => [number, number];
1927
+ readonly generate_3d_etkdg_coords_json: (a: number) => [number, number];
1800
1928
  readonly generate_3d_etkdg_minimized_pdb: (a: number) => [number, number];
1801
1929
  readonly generate_3d_etkdg_pdb: (a: number) => [number, number];
1930
+ readonly generate_3d_from_smiles: (a: number, b: number) => [number, number, number, number];
1802
1931
  readonly generate_3d_minimized_pdb: (a: number) => [number, number];
1932
+ readonly generate_3d_optimized_pdb: (a: number, b: number) => [number, number, number, number];
1803
1933
  readonly generate_3d_pdb: (a: number) => [number, number];
1804
1934
  readonly generic_murcko_scaffold: (a: number) => number;
1805
1935
  readonly get_atom_info: (a: number, b: number) => [number, number];
@@ -1809,6 +1939,7 @@ export interface InitOutput {
1809
1939
  readonly get_descriptors_json: (a: number) => [number, number];
1810
1940
  readonly get_dihedral_json: (a: number, b: number, c: number, d: number, e: number, f: number) => any;
1811
1941
  readonly getaway_descriptors_json: (a: number) => [number, number];
1942
+ readonly hdf_json: (a: number, b: number, c: number, d: bigint) => [number, number];
1812
1943
  readonly identify_functional_groups: (a: number) => [number, number];
1813
1944
  readonly inchi_from_smiles: (a: number, b: number) => [number, number];
1814
1945
  readonly inchikey_from_smiles: (a: number, b: number) => [number, number];
@@ -1821,6 +1952,7 @@ export interface InitOutput {
1821
1952
  readonly match_smarts_smiles: (a: number, b: number, c: number, d: number) => [number, number, number, number];
1822
1953
  readonly maxmin_picks_ecfp4_json: (a: number, b: number, c: number) => [number, number, number, number];
1823
1954
  readonly mcs_smiles_json: (a: number, b: number) => [number, number, number, number];
1955
+ readonly mcs_smiles_json_with_ring_config: (a: number, b: number, c: number, d: number) => [number, number, number, number];
1824
1956
  readonly mhfp_hashes_json: (a: number) => [number, number];
1825
1957
  readonly mhfplshhandle_add_smiles: (a: number, b: number, c: number) => [number, number, number];
1826
1958
  readonly mhfplshhandle_is_empty: (a: number) => number;
@@ -1830,6 +1962,7 @@ export interface InitOutput {
1830
1962
  readonly minimize_dreiding_json: (a: number) => [number, number];
1831
1963
  readonly minimize_mmff94_json: (a: number, b: number) => [number, number];
1832
1964
  readonly minimize_mmff94_lbfgs_json: (a: number, b: number) => [number, number];
1965
+ readonly minimize_uff_json: (a: number, b: number, c: number, d: number, e: number) => [number, number];
1833
1966
  readonly mmff94_charges_json: (a: number) => [number, number];
1834
1967
  readonly mmff94_charges_typed_json: (a: number) => [number, number];
1835
1968
  readonly mmff94_energy_breakdown_json: (a: number) => [number, number];
@@ -1840,6 +1973,7 @@ export interface InitOutput {
1840
1973
  readonly mol_block_from_smiles: (a: number, b: number) => [number, number, number, number];
1841
1974
  readonly mol_from_cdxml: (a: number, b: number) => [number, number, number];
1842
1975
  readonly mol_from_cml: (a: number, b: number) => [number, number, number];
1976
+ readonly mol_from_moljson: (a: number, b: number) => [number, number, number];
1843
1977
  readonly mol_from_pdb: (a: number, b: number) => number;
1844
1978
  readonly mol_from_sdf_block: (a: number, b: number) => [number, number, number];
1845
1979
  readonly mol_from_v3000_block: (a: number, b: number) => [number, number, number];
@@ -1851,10 +1985,14 @@ export interface InitOutput {
1851
1985
  readonly mol_with_atom_removed: (a: number, b: number) => [number, number, number];
1852
1986
  readonly mol_with_bond_added: (a: number, b: number, c: number, d: number) => [number, number, number];
1853
1987
  readonly mol_with_bond_removed: (a: number, b: number) => [number, number, number];
1988
+ readonly molecule_report_json: (a: number, b: number) => [number, number, number, number];
1854
1989
  readonly molhandle_aromatic_ring_count: (a: number) => number;
1855
1990
  readonly molhandle_assign_cip_json: (a: number) => [number, number];
1991
+ readonly molhandle_bbb_passes: (a: number) => number;
1992
+ readonly molhandle_bbb_score: (a: number) => number;
1856
1993
  readonly molhandle_bertz_ct: (a: number) => number;
1857
1994
  readonly molhandle_bond_count: (a: number) => number;
1995
+ readonly molhandle_caco2_permeability: (a: number) => number;
1858
1996
  readonly molhandle_canonical_smiles: (a: number) => [number, number];
1859
1997
  readonly molhandle_chi0: (a: number) => number;
1860
1998
  readonly molhandle_chi0v: (a: number) => number;
@@ -1866,6 +2004,7 @@ export interface InitOutput {
1866
2004
  readonly molhandle_chi3v: (a: number) => number;
1867
2005
  readonly molhandle_chi4: (a: number) => number;
1868
2006
  readonly molhandle_chi4v: (a: number) => number;
2007
+ readonly molhandle_cyp3a4_inhibition_risk: (a: number) => number;
1869
2008
  readonly molhandle_depict_png: (a: number) => [number, number];
1870
2009
  readonly molhandle_depict_svg: (a: number) => [number, number];
1871
2010
  readonly molhandle_depict_svg_opts: (a: number, b: number) => [number, number];
@@ -1878,6 +2017,7 @@ export interface InitOutput {
1878
2017
  readonly molhandle_hba_count: (a: number) => number;
1879
2018
  readonly molhandle_hbd_count: (a: number) => number;
1880
2019
  readonly molhandle_heavy_atom_count: (a: number) => number;
2020
+ readonly molhandle_herg_risk_score: (a: number) => number;
1881
2021
  readonly molhandle_isotope_distribution_json: (a: number, b: number) => [number, number];
1882
2022
  readonly molhandle_iupac_name: (a: number) => [number, number];
1883
2023
  readonly molhandle_kappa1: (a: number) => number;
@@ -1904,6 +2044,8 @@ export interface InitOutput {
1904
2044
  readonly molhandle_num_stereocenters: (a: number) => number;
1905
2045
  readonly molhandle_num_unspecified_stereocenters: (a: number) => number;
1906
2046
  readonly molhandle_pains_passes: (a: number) => number;
2047
+ readonly molhandle_pka_acid_value: (a: number) => number;
2048
+ readonly molhandle_pka_base_value: (a: number) => number;
1907
2049
  readonly molhandle_qed: (a: number) => number;
1908
2050
  readonly molhandle_randic_index: (a: number) => number;
1909
2051
  readonly molhandle_reos_passes: (a: number) => number;
@@ -1931,13 +2073,14 @@ export interface InitOutput {
1931
2073
  readonly pharmacophore_features_json: (a: number) => [number, number];
1932
2074
  readonly pharmacophore_fp_2d_summary: (a: number) => [number, number];
1933
2075
  readonly pharmacophore_fp_3d_summary: (a: number) => [number, number];
2076
+ readonly predict_pka_json: (a: number, b: number) => [number, number];
1934
2077
  readonly random_smiles_json: (a: number, b: number, c: number, d: bigint) => [number, number, number, number];
1935
2078
  readonly remove_hydrogens: (a: number) => number;
1936
2079
  readonly rgroup_decompose_json: (a: number, b: number, c: number, d: number) => [number, number, number, number];
1937
2080
  readonly ring_families_json: (a: number) => [number, number, number, number];
1938
- readonly run_md_json: (a: number, b: number, c: number) => [number, number];
1939
2081
  readonly run_reactants: (a: number, b: number, c: number, d: number) => [number, number, number, number];
1940
2082
  readonly sa_score: (a: number) => number;
2083
+ readonly screen_smiles_json: (a: number, b: number, c: number, d: number) => [number, number];
1941
2084
  readonly sdf_from_records_json: (a: number, b: number, c: number, d: number, e: number, f: number) => [number, number, number, number];
1942
2085
  readonly sdf_to_records_json: (a: number, b: number) => [number, number];
1943
2086
  readonly sdf_to_smiles_json: (a: number, b: number) => [number, number];
@@ -1948,6 +2091,7 @@ export interface InitOutput {
1948
2091
  readonly smarts_match_atoms_with_chirality: (a: number, b: number, c: number, d: number) => [number, number, number, number];
1949
2092
  readonly smiles_array_to_sdf: (a: number, b: number) => [number, number, number, number];
1950
2093
  readonly smiles_to_mol2: (a: number, b: number) => [number, number];
2094
+ readonly smiles_to_pdbqt: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number) => [number, number];
1951
2095
  readonly smiles_to_svg_highlighted: (a: number, b: number, c: number, d: number, e: number, f: number, g: number, h: number) => [number, number, number, number];
1952
2096
  readonly smr_vsa_json: (a: number) => [number, number];
1953
2097
  readonly sssr_rings_json: (a: number) => [number, number];
@@ -1967,27 +2111,21 @@ export interface InitOutput {
1967
2111
  readonly to_cml: (a: number) => [number, number];
1968
2112
  readonly to_mol_block: (a: number) => [number, number];
1969
2113
  readonly to_mol_v3000_block: (a: number) => [number, number];
2114
+ readonly to_moljson: (a: number) => [number, number];
1970
2115
  readonly to_xyz: (a: number) => [number, number];
1971
2116
  readonly torsion_bitvec: (a: number) => [number, number];
1972
- readonly torsion_scan_json: (a: number, b: number, c: number, d: number, e: number, f: number) => [number, number];
1973
2117
  readonly virtual_screen_ecfp4_json: (a: number, b: number, c: number, d: number, e: number) => [number, number];
1974
2118
  readonly whim_descriptors_json: (a: number) => [number, number];
1975
2119
  readonly whim_getaway_combined_json: (a: number) => [number, number];
1976
2120
  readonly write_smiles: (a: number) => [number, number];
1977
- readonly start: () => void;
2121
+ readonly xlogp3_json: (a: number) => [number, number];
2122
+ readonly xlogp3_per_atom_json: (a: number) => [number, number];
1978
2123
  readonly molhandle_atom_count: (a: number) => number;
1979
- readonly compare_molecules_batch_json: (a: number, b: number, c: number, d: number) => [number, number, number, number];
1980
- readonly compare_molecules_json: (a: number, b: number, c: number, d: number) => [number, number, number, number];
1981
- readonly generate_3d_from_smiles: (a: number, b: number) => [number, number, number, number];
1982
- readonly generate_3d_optimized_pdb: (a: number, b: number) => [number, number, number, number];
1983
- readonly molecule_report_json: (a: number, b: number) => [number, number, number, number];
1984
- readonly screen_smiles_json: (a: number, b: number, c: number, d: number) => [number, number];
2124
+ readonly start: () => void;
1985
2125
  readonly __wbindgen_malloc: (a: number, b: number) => number;
1986
2126
  readonly __wbindgen_realloc: (a: number, b: number, c: number, d: number) => number;
1987
- readonly __wbindgen_free: (a: number, b: number, c: number) => void;
1988
- readonly __wbindgen_exn_store: (a: number) => void;
1989
- readonly __externref_table_alloc: () => number;
1990
2127
  readonly __wbindgen_externrefs: WebAssembly.Table;
2128
+ readonly __wbindgen_free: (a: number, b: number, c: number) => void;
1991
2129
  readonly __externref_table_dealloc: (a: number) => void;
1992
2130
  readonly __wbindgen_start: () => void;
1993
2131
  }