xtalforge-wasm 1.0.0 → 1.2.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.
@@ -109,6 +109,15 @@ export class WasmDocument {
109
109
  readonly history: Array<any>;
110
110
  }
111
111
 
112
+ /**
113
+ * Adsorption sites as JSON.
114
+ *
115
+ * # Errors
116
+ *
117
+ * Returns a JavaScript `Error` for invalid text or tolerance.
118
+ */
119
+ export function adsorption_sites(text: string, format_hint: string, tolerance: number): string;
120
+
112
121
  /**
113
122
  * Runtime capability report as JSON.
114
123
  */
@@ -147,6 +156,24 @@ export function angle(text: string, i: number, j: number, k: number): number;
147
156
  */
148
157
  export function asymmetrize_info(text: string, symprec: number): any;
149
158
 
159
+ /**
160
+ * Detects the symmetry and returns the asymmetric unit as CIF.
161
+ *
162
+ * # Errors
163
+ *
164
+ * Returns a JavaScript `Error` for invalid text or a failed search.
165
+ */
166
+ export function asymmetrize_text(text: string, symprec: number): string;
167
+
168
+ /**
169
+ * Bond-valence sums as JSON.
170
+ *
171
+ * # Errors
172
+ *
173
+ * Returns a JavaScript `Error` for invalid text or cutoff.
174
+ */
175
+ export function bond_valence_sums(text: string, format_hint: string, cutoff: number): string;
176
+
150
177
  /**
151
178
  * Perceives the bonds of a structure.
152
179
  *
@@ -177,6 +204,15 @@ export function brillouin_zone(text: string): any;
177
204
  */
178
205
  export function build_c20_info(): any;
179
206
 
207
+ /**
208
+ * Builds C20 and returns it as CIF.
209
+ *
210
+ * # Errors
211
+ *
212
+ * Returns a JavaScript `Error` when the embedded data is invalid.
213
+ */
214
+ export function build_c20_text(): string;
215
+
180
216
  /**
181
217
  * Builds C60 and returns its summary.
182
218
  *
@@ -186,6 +222,15 @@ export function build_c20_info(): any;
186
222
  */
187
223
  export function build_c60_info(): any;
188
224
 
225
+ /**
226
+ * Builds C60 and returns it as CIF.
227
+ *
228
+ * # Errors
229
+ *
230
+ * Returns a JavaScript `Error` when the embedded data is invalid.
231
+ */
232
+ export function build_c60_text(): string;
233
+
189
234
  /**
190
235
  * Builds a disordered carbon from a recipe.
191
236
  *
@@ -196,6 +241,18 @@ export function build_c60_info(): any;
196
241
  */
197
242
  export function build_carbon_recipe_info(net: string, repeat_x: number, repeat_y: number, repeat_z: number, density: number, radius_ratio: number, coverage: number, seed: number, hydrogen: number, fluorine: number, oxygen: number): any;
198
243
 
244
+ /**
245
+ * Builds a disordered carbon from a net recipe and returns it as CIF.
246
+ *
247
+ * The other recipe fields keep their defaults; `build_carbon_recipe_info`
248
+ * exposes the full recipe and its statistics.
249
+ *
250
+ * # Errors
251
+ *
252
+ * Returns a JavaScript `Error` for an unknown net or invalid options.
253
+ */
254
+ export function build_carbon_text(net: string, repeat: number, density: number, seed: number): string;
255
+
199
256
  /**
200
257
  * Builds a graphene sheet and returns its summary.
201
258
  *
@@ -205,6 +262,15 @@ export function build_carbon_recipe_info(net: string, repeat_x: number, repeat_y
205
262
  */
206
263
  export function build_graphene_info(nx: number, ny: number, layers: number, interlayer: number, vacuum: number): any;
207
264
 
265
+ /**
266
+ * Builds a graphene sheet and returns it as CIF.
267
+ *
268
+ * # Errors
269
+ *
270
+ * Returns a JavaScript `Error` for invalid repeats or spacing.
271
+ */
272
+ export function build_graphene_text(nx: number, ny: number, layers: number, interlayer: number, vacuum: number): string;
273
+
208
274
  /**
209
275
  * Builds a framework and returns its summary and warnings.
210
276
  *
@@ -214,6 +280,15 @@ export function build_graphene_info(nx: number, ny: number, layers: number, inte
214
280
  */
215
281
  export function build_mof_info(topology: string, node: string, linker: string): any;
216
282
 
283
+ /**
284
+ * Builds a MOF and returns it as CIF.
285
+ *
286
+ * # Errors
287
+ *
288
+ * Returns a JavaScript `Error` for an unknown topology or block.
289
+ */
290
+ export function build_mof_text(topology: string, node: string, linker: string): string;
291
+
217
292
  /**
218
293
  * Builds a nanotube and returns its summary.
219
294
  *
@@ -223,6 +298,60 @@ export function build_mof_info(topology: string, node: string, linker: string):
223
298
  */
224
299
  export function build_nanotube_info(n: number, m: number, length: number, vacuum: number): any;
225
300
 
301
+ /**
302
+ * Builds a nanotube and returns it as CIF.
303
+ *
304
+ * # Errors
305
+ *
306
+ * Returns a JavaScript `Error` for a bad chiral vector or length.
307
+ */
308
+ export function build_nanotube_text(n: number, m: number, length: number, vacuum: number): string;
309
+
310
+ /**
311
+ * Builds a polymer chain and returns it as CIF.
312
+ *
313
+ * # Errors
314
+ *
315
+ * Returns a JavaScript `Error` for an invalid SMILES or density.
316
+ */
317
+ export function build_polymer_text(smiles: string, monomers: number, density: number): string;
318
+
319
+ /**
320
+ * Builds a honeycomb nanoribbon and returns it as CIF.
321
+ *
322
+ * # Errors
323
+ *
324
+ * Returns a JavaScript `Error` for invalid dimensions.
325
+ */
326
+ export function build_ribbon_text(width: number, length: number, vacuum: number): string;
327
+
328
+ /**
329
+ * Builds a Schwarz P carbon model and returns it as CIF.
330
+ *
331
+ * # Errors
332
+ *
333
+ * Returns a JavaScript `Error` for invalid options.
334
+ */
335
+ export function build_schwarzite_text(samples: number, cell: number, isovalue: number): string;
336
+
337
+ /**
338
+ * Builds two twisted graphene layers and returns them as CIF.
339
+ *
340
+ * # Errors
341
+ *
342
+ * Returns a JavaScript `Error` for invalid repeats or angle.
343
+ */
344
+ export function build_twist_text(n: number, m: number, theta: number, layers: number): string;
345
+
346
+ /**
347
+ * Builds a gyroid ZTC carbon model and returns it as CIF.
348
+ *
349
+ * # Errors
350
+ *
351
+ * Returns a JavaScript `Error` for invalid options.
352
+ */
353
+ export function build_ztc_text(samples: number, cell: number, isovalue: number): string;
354
+
226
355
  /**
227
356
  * Volume of a cell in cubic Angstrom.
228
357
  *
@@ -242,6 +371,15 @@ export function cell_volume(a: number, b: number, c: number, alpha: number, beta
242
371
  */
243
372
  export function change_setting_info(text: string, hall_number: number): any;
244
373
 
374
+ /**
375
+ * Changes the space-group setting and returns the result as CIF.
376
+ *
377
+ * # Errors
378
+ *
379
+ * Returns a JavaScript `Error` for invalid text or a Hall number out of range.
380
+ */
381
+ export function change_setting_text(text: string, hall_number: number): string;
382
+
245
383
  /**
246
384
  * Converts structure text to another format and returns the file contents.
247
385
  *
@@ -254,6 +392,33 @@ export function change_setting_info(text: string, hall_number: number): any;
254
392
  */
255
393
  export function convert_structure(text: string, format_hint: string, format: string): string;
256
394
 
395
+ /**
396
+ * Convex hull as JSON from a JSON list of phases.
397
+ *
398
+ * # Errors
399
+ *
400
+ * Returns a JavaScript `Error` for an invalid phase list.
401
+ */
402
+ export function convex_hull(entries_json: string): string;
403
+
404
+ /**
405
+ * Coordination shell and shape measures as JSON.
406
+ *
407
+ * # Errors
408
+ *
409
+ * Returns a JavaScript `Error` for invalid text or an out-of-range index.
410
+ */
411
+ export function coordination(text: string, format_hint: string, index: number, strategy: string, cutoff: number, solid_angle: number): string;
412
+
413
+ /**
414
+ * Applies a strain, gradient, volume or density and returns structure JSON.
415
+ *
416
+ * # Errors
417
+ *
418
+ * Returns a JavaScript `Error` for invalid text or deformation options.
419
+ */
420
+ export function deform(text: string, format_hint: string, options_json: string): string;
421
+
257
422
  /**
258
423
  * Detects the space group and returns the dataset as a JS object.
259
424
  *
@@ -287,6 +452,24 @@ export function diagnose_info(text: string, symbol: string): any;
287
452
  */
288
453
  export function distance(text: string, i: number, j: number): number;
289
454
 
455
+ /**
456
+ * Site edits; returns structure JSON.
457
+ *
458
+ * # Errors
459
+ *
460
+ * Returns a JavaScript `Error` for invalid text or edit options.
461
+ */
462
+ export function edit_structure(text: string, format_hint: string, options_json: string): string;
463
+
464
+ /**
465
+ * Elastic tensor from UFF stress finite differences as JSON.
466
+ *
467
+ * # Errors
468
+ *
469
+ * Returns a JavaScript `Error` for invalid text or strain.
470
+ */
471
+ export function elastic_tensor(text: string, format_hint: string, strain: number): string;
472
+
290
473
  /**
291
474
  * Reference data for an element by symbol or atomic number.
292
475
  *
@@ -298,7 +481,16 @@ export function distance(text: string, i: number, j: number): number;
298
481
  export function element_info(input: string): any;
299
482
 
300
483
  /**
301
- * Returns QEq or EQeq charges.
484
+ * Equation-of-state fit as JSON.
485
+ *
486
+ * # Errors
487
+ *
488
+ * Returns a JavaScript `Error` for an unknown model or too few points.
489
+ */
490
+ export function eos_fit(options_json: string): string;
491
+
492
+ /**
493
+ * Returns QEq, EQeq or EEQ2019 charges (`qeq`, `eqeq`, `eeq`).
302
494
  *
303
495
  * # Errors
304
496
  *
@@ -333,6 +525,15 @@ export function ff_ir_info(text: string, fwhm: number): any;
333
525
  */
334
526
  export function ff_optimize_info(text: string, minimizer: string, max_steps: number, force_tolerance: number, cell: boolean): any;
335
527
 
528
+ /**
529
+ * Relaxes a structure and returns the result as CIF.
530
+ *
531
+ * # Errors
532
+ *
533
+ * Returns a JavaScript `Error` for invalid text or an unknown minimizer.
534
+ */
535
+ export function ff_optimize_text(text: string, minimizer: string, max_steps: number, force_tolerance: number, cell: boolean): string;
536
+
336
537
  /**
337
538
  * Runs the preparation pipeline and returns its report.
338
539
  *
@@ -369,6 +570,24 @@ export function ff_types_info(text: string): Array<any>;
369
570
  */
370
571
  export function ff_vibrations_info(text: string, step: number): any;
371
572
 
573
+ /**
574
+ * Similarity of two fingerprints.
575
+ *
576
+ * # Errors
577
+ *
578
+ * Returns a JavaScript `Error` for invalid text.
579
+ */
580
+ export function fingerprint_similarity(first: string, second: string, format_hint: string, r_max: number, bin_width: number): number;
581
+
582
+ /**
583
+ * Equality classes of a list of structure texts.
584
+ *
585
+ * # Errors
586
+ *
587
+ * Returns a JavaScript `Error` for invalid text.
588
+ */
589
+ export function group_structures(structures: string[], format_hint: string, options_json: string): string;
590
+
372
591
  /**
373
592
  * Finds the functional groups of a structure.
374
593
  *
@@ -390,6 +609,43 @@ export function groups(text: string): Array<any>;
390
609
  */
391
610
  export function hydrogens_info(text: string, distance: number): any;
392
611
 
612
+ /**
613
+ * Adds hydrogens at the missing valences and returns the result as CIF.
614
+ *
615
+ * # Errors
616
+ *
617
+ * Returns a JavaScript `Error` for invalid text or a bad distance.
618
+ */
619
+ export function hydrogens_text(text: string, distance: number): string;
620
+
621
+ /**
622
+ * Linear interpolation between matched structures; returns a JSON array of
623
+ * structure documents.
624
+ *
625
+ * # Errors
626
+ *
627
+ * Returns a JavaScript `Error` when the structures do not match.
628
+ */
629
+ export function interpolate(first: string, second: string, images: number, format_hint: string, options_json: string): string;
630
+
631
+ /**
632
+ * Interstitial candidates as JSON.
633
+ *
634
+ * # Errors
635
+ *
636
+ * Returns a JavaScript `Error` for invalid text or options.
637
+ */
638
+ export function interstitials(text: string, format_hint: string, species: string, options_json: string): string;
639
+
640
+ /**
641
+ * Kabsch alignment; points are a flat `xyzxyz...` array.
642
+ *
643
+ * # Errors
644
+ *
645
+ * Returns a JavaScript `Error` for mismatched or non-finite point sets.
646
+ */
647
+ export function kabsch_alignment(points: Float64Array | number[], reference: Float64Array | number[]): string;
648
+
393
649
  /**
394
650
  * Returns the Bravais type and band path of a structure.
395
651
  *
@@ -409,6 +665,15 @@ export function kpath_info(text: string): any;
409
665
  */
410
666
  export function lattice_info(a: number, b: number, c: number, alpha: number, beta: number, gamma: number): any;
411
667
 
668
+ /**
669
+ * Commensurate 2D lattice matches as JSON.
670
+ *
671
+ * # Errors
672
+ *
673
+ * Returns a JavaScript `Error` for invalid text or options.
674
+ */
675
+ export function lattice_matches(film: string, substrate: string, format_hint: string, options_json: string): string;
676
+
412
677
  /**
413
678
  * Minimum-image fractional vector and distance.
414
679
  *
@@ -456,6 +721,15 @@ export function limits_check(profile: string, budget: string, estimate: number):
456
721
  */
457
722
  export function lower_to_subgroup_info(text: string, subgroup: number, tolerance: number): any;
458
723
 
724
+ /**
725
+ * Lowers a structure to a subgroup and returns it as CIF.
726
+ *
727
+ * # Errors
728
+ *
729
+ * Returns a JavaScript `Error` for invalid text or an unknown subgroup.
730
+ */
731
+ export function lower_to_subgroup_text(text: string, subgroup_number: number, tolerance: number): string;
732
+
459
733
  /**
460
734
  * Detects the collinear magnetic space group (experimental).
461
735
  *
@@ -465,6 +739,15 @@ export function lower_to_subgroup_info(text: string, subgroup: number, tolerance
465
739
  */
466
740
  export function magnetic_group_info(text: string, symprec: number): any;
467
741
 
742
+ /**
743
+ * Matches two structures and returns the match record as JSON.
744
+ *
745
+ * # Errors
746
+ *
747
+ * Returns a JavaScript `Error` for invalid text or tolerances.
748
+ */
749
+ export function match_structures(first: string, second: string, format_hint: string, options_json: string): string;
750
+
468
751
  /**
469
752
  * Builds an ASCII STL string.
470
753
  *
@@ -513,6 +796,33 @@ export function neighbors(text: string, cutoff: number): Array<any>;
513
796
  */
514
797
  export function net_invariants_info(text: string, tolerance: number): Array<any>;
515
798
 
799
+ /**
800
+ * Supercell closest to a cube; returns structure JSON.
801
+ *
802
+ * # Errors
803
+ *
804
+ * Returns a JavaScript `Error` for an invalid cell count.
805
+ */
806
+ export function optimal_supercell(text: string, cells: number, format_hint: string): string;
807
+
808
+ /**
809
+ * Orderings of partial occupancies as JSON.
810
+ *
811
+ * # Errors
812
+ *
813
+ * Returns a JavaScript `Error` for a structure without partial occupancy.
814
+ */
815
+ export function orderings(text: string, format_hint: string, options_json: string): string;
816
+
817
+ /**
818
+ * Oxidation states as JSON.
819
+ *
820
+ * # Errors
821
+ *
822
+ * Returns a JavaScript `Error` for invalid text or cutoff.
823
+ */
824
+ export function oxidation_states(text: string, format_hint: string, cutoff: number): string;
825
+
516
826
  /**
517
827
  * Returns the JSON schema of a built-in parameter preset.
518
828
  *
@@ -522,6 +832,24 @@ export function net_invariants_info(text: string, tolerance: number): Array<any>
522
832
  */
523
833
  export function param_schema(name: string): any;
524
834
 
835
+ /**
836
+ * Periodic RMSD for an explicit atom mapping.
837
+ *
838
+ * # Errors
839
+ *
840
+ * Returns a JavaScript `Error` for invalid text or an incomplete mapping.
841
+ */
842
+ export function periodic_rmsd(first: string, second: string, mapping: Uint32Array | number[], format_hint: string): number;
843
+
844
+ /**
845
+ * Places a molecule on an adsorption site and returns structure JSON.
846
+ *
847
+ * # Errors
848
+ *
849
+ * Returns a JavaScript `Error` for invalid text or an out-of-range site.
850
+ */
851
+ export function place_molecule(slab: string, molecule: string, format_hint: string, options_json: string): string;
852
+
525
853
  /**
526
854
  * Detects the molecular point group of a finite structure.
527
855
  *
@@ -579,6 +907,18 @@ export function powder_cells_info(number: number): any;
579
907
  */
580
908
  export function powder_index_info(pattern_text: string, wavelength: number, max_index: number, tolerance: number): any;
581
909
 
910
+ /**
911
+ * Le Bail extraction with the default options.
912
+ *
913
+ * Returns `{ positions, intensities, intensity_esds, r_factor, rwp,
914
+ * chi_squared }`, the same fields as `xtalforge --json powder lebail`.
915
+ *
916
+ * # Errors
917
+ *
918
+ * Returns a JavaScript `Error` for invalid structure or pattern text.
919
+ */
920
+ export function powder_lebail_info(text: string, pattern_text: string): any;
921
+
582
922
  /**
583
923
  * Fits a Pawley model: free intensities, cell, zero shift and width model.
584
924
  *
@@ -588,6 +928,17 @@ export function powder_index_info(pattern_text: string, wavelength: number, max_
588
928
  */
589
929
  export function powder_pawley_info(text: string, pattern_text: string, profile: string): any;
590
930
 
931
+ /**
932
+ * Pawley fit that can also refine the size (constant) and strain
933
+ * (`tan theta`) width terms, like Python `powder_pawley(refine_size=...,
934
+ * refine_strain=...)`.
935
+ *
936
+ * # Errors
937
+ *
938
+ * Returns a JavaScript `Error` for invalid text or a failed fit.
939
+ */
940
+ export function powder_pawley_width_info(text: string, pattern_text: string, profile: string, refine_size: boolean, refine_strain: boolean): any;
941
+
591
942
  /**
592
943
  * Refines a phase with the McCusker stages.
593
944
  *
@@ -609,6 +960,15 @@ export function powder_refine_info(text: string, pattern_text: string, refine_po
609
960
  */
610
961
  export function primitive_info(text: string, symprec: number): any;
611
962
 
963
+ /**
964
+ * Builds the primitive cell and returns it as CIF.
965
+ *
966
+ * # Errors
967
+ *
968
+ * Returns a JavaScript `Error` for invalid text or a failed search.
969
+ */
970
+ export function primitive_text(text: string, symprec: number): string;
971
+
612
972
  /**
613
973
  * Reads `.xtalproj` bytes and returns the structure summary.
614
974
  *
@@ -636,6 +996,24 @@ export function project_pack(text: string): Uint8Array;
636
996
  */
637
997
  export function pxrd_info(text: string, radiation: string, max_two_theta: number, step: number): any;
638
998
 
999
+ /**
1000
+ * Total and partial RDF as JSON.
1001
+ *
1002
+ * # Errors
1003
+ *
1004
+ * Returns a JavaScript `Error` for invalid text or range.
1005
+ */
1006
+ export function radial_distribution(text: string, format_hint: string, r_max: number, bin_width: number, smoothing: number): string;
1007
+
1008
+ /**
1009
+ * Random displacements with a fixed seed; returns structure JSON.
1010
+ *
1011
+ * # Errors
1012
+ *
1013
+ * Returns a JavaScript `Error` for invalid text or options.
1014
+ */
1015
+ export function rattle(text: string, format_hint: string, options_json: string): string;
1016
+
639
1017
  /**
640
1018
  * Reads a CIF and returns its summary object.
641
1019
  *
@@ -673,6 +1051,15 @@ export function read_structure(text: string, format_hint: string): any;
673
1051
  */
674
1052
  export function reduce_info(text: string, algorithm: string): any;
675
1053
 
1054
+ /**
1055
+ * Reduces a structure and returns it as CIF.
1056
+ *
1057
+ * # Errors
1058
+ *
1059
+ * Returns a JavaScript `Error` for invalid text or an unknown algorithm.
1060
+ */
1061
+ export function reduce_text(text: string, algorithm: string): string;
1062
+
676
1063
  /**
677
1064
  * Builds a honeycomb nanoribbon with vacuum.
678
1065
  *
@@ -698,6 +1085,26 @@ export function rietx_inventory_info(): any;
698
1085
  */
699
1086
  export function rings(text: string, max_size: number): Array<any>;
700
1087
 
1088
+ /**
1089
+ * Builds the full scene geometry for a structure.
1090
+ *
1091
+ * The object has three arrays:
1092
+ *
1093
+ * - `atoms`: `element`, `position` (Cartesian Angstrom), `radius`, `color`
1094
+ * (0-255 RGB), `index` in the P1 cell and `hidden`.
1095
+ * - `bonds`: `i`, `j`, `start`, `end`, `radius`, `color` and `order`.
1096
+ * - `cell_edges`: pairs of Cartesian endpoints.
1097
+ *
1098
+ * `settings` repeats the sanitized style, atom scale, bond radius, cell and
1099
+ * axes flags and background colour used to build the frame.
1100
+ *
1101
+ * # Errors
1102
+ *
1103
+ * Returns a JavaScript `Error` with a stable `code` property for invalid
1104
+ * structure text or an unknown draw style.
1105
+ */
1106
+ export function scene_data(text: string, style: string, scale: number): any;
1107
+
701
1108
  /**
702
1109
  * Summarizes a scene for the given draw style.
703
1110
  *
@@ -728,6 +1135,15 @@ export function schwarzite_info(samples: number, cell: number, isovalue: number)
728
1135
  */
729
1136
  export function set_space_group_info(text: string, symbol: string, mode: string): any;
730
1137
 
1138
+ /**
1139
+ * Applies a space group and returns the result as CIF.
1140
+ *
1141
+ * # Errors
1142
+ *
1143
+ * Returns a JavaScript `Error` for invalid text, an unknown symbol or mode.
1144
+ */
1145
+ export function set_space_group_text(text: string, symbol: string, mode: string): string;
1146
+
731
1147
  /**
732
1148
  * Cuts a slab and returns its summary object.
733
1149
  *
@@ -741,6 +1157,15 @@ export function set_space_group_info(text: string, symbol: string, mode: string)
741
1157
  */
742
1158
  export function slab_info(text: string, h: number, k: number, l: number, layers: number, vacuum: number): any;
743
1159
 
1160
+ /**
1161
+ * Every termination of a surface as JSON with structure documents.
1162
+ *
1163
+ * # Errors
1164
+ *
1165
+ * Returns a JavaScript `Error` for invalid text or a degenerate plane.
1166
+ */
1167
+ export function slab_terminations(text: string, format_hint: string, options_json: string): string;
1168
+
744
1169
  /**
745
1170
  * Cuts a slab and returns it as CIF text.
746
1171
  *
@@ -751,6 +1176,24 @@ export function slab_info(text: string, h: number, k: number, l: number, layers:
751
1176
  */
752
1177
  export function slab_text(text: string, h: number, k: number, l: number, layers: number, vacuum: number): string;
753
1178
 
1179
+ /**
1180
+ * SQS generation as JSON.
1181
+ *
1182
+ * # Errors
1183
+ *
1184
+ * Returns a JavaScript `Error` for a structure without binary disorder.
1185
+ */
1186
+ export function special_quasirandom(text: string, format_hint: string, options_json: string): string;
1187
+
1188
+ /**
1189
+ * Stacks a film on a substrate; returns structure JSON.
1190
+ *
1191
+ * # Errors
1192
+ *
1193
+ * Returns a JavaScript `Error` for empty slabs or invalid options.
1194
+ */
1195
+ export function stack_slabs(film: string, substrate: string, format_hint: string, options_json: string): string;
1196
+
754
1197
  /**
755
1198
  * Standardizes a structure to the conventional cell.
756
1199
  *
@@ -760,6 +1203,24 @@ export function slab_text(text: string, h: number, k: number, l: number, layers:
760
1203
  */
761
1204
  export function standardize_info(text: string, symprec: number): any;
762
1205
 
1206
+ /**
1207
+ * Standardizes a structure and returns it as CIF.
1208
+ *
1209
+ * # Errors
1210
+ *
1211
+ * Returns a JavaScript `Error` for invalid text or a failed search.
1212
+ */
1213
+ export function standardize_text(text: string, symprec: number): string;
1214
+
1215
+ /**
1216
+ * Structure fingerprint as JSON.
1217
+ *
1218
+ * # Errors
1219
+ *
1220
+ * Returns a JavaScript `Error` for invalid text or range.
1221
+ */
1222
+ export function structure_fingerprint(text: string, format_hint: string, r_max: number, bin_width: number): string;
1223
+
763
1224
  /**
764
1225
  * Summary of a structure JSON document.
765
1226
  *
@@ -779,6 +1240,15 @@ export function structure_info(text: string): any;
779
1240
  */
780
1241
  export function subgroups_info(hall_number: number, epsilon: number): Array<any>;
781
1242
 
1243
+ /**
1244
+ * Symmetry-unique substitutions as JSON.
1245
+ *
1246
+ * # Errors
1247
+ *
1248
+ * Returns a JavaScript `Error` for invalid text or species.
1249
+ */
1250
+ export function substitutions(text: string, format_hint: string, species: string, min_image: number): string;
1251
+
782
1252
  /**
783
1253
  * Builds a supercell and returns its summary object.
784
1254
  *
@@ -811,6 +1281,15 @@ export function supercell_text(text: string, na: number, nb: number, nc: number)
811
1281
  */
812
1282
  export function to_p1_info(text: string): any;
813
1283
 
1284
+ /**
1285
+ * Expands a structure to P1 and returns it as CIF.
1286
+ *
1287
+ * # Errors
1288
+ *
1289
+ * Returns a JavaScript `Error` for invalid text or an empty structure.
1290
+ */
1291
+ export function to_p1_text(text: string): string;
1292
+
814
1293
  /**
815
1294
  * Detects across the default tolerance ladder.
816
1295
  *
@@ -839,11 +1318,38 @@ export function torsion(text: string, i: number, j: number, k: number, l: number
839
1318
  */
840
1319
  export function twist_info(n: number, m: number, theta: number, layers: number): any;
841
1320
 
1321
+ /**
1322
+ * Symmetry-unique Miller indices as JSON.
1323
+ *
1324
+ * # Errors
1325
+ *
1326
+ * Returns a JavaScript `Error` for invalid text or a bad index bound.
1327
+ */
1328
+ export function unique_miller_indices(text: string, format_hint: string, options_json: string): string;
1329
+
1330
+ /**
1331
+ * Symmetry-unique vacancies as JSON.
1332
+ *
1333
+ * # Errors
1334
+ *
1335
+ * Returns a JavaScript `Error` for invalid text or distance.
1336
+ */
1337
+ export function vacancies(text: string, format_hint: string, min_image: number): string;
1338
+
842
1339
  /**
843
1340
  * Version of the workspace.
844
1341
  */
845
1342
  export function version(): string;
846
1343
 
1344
+ /**
1345
+ * Periodic Voronoi cells as JSON.
1346
+ *
1347
+ * # Errors
1348
+ *
1349
+ * Returns a JavaScript `Error` for invalid text or cutoff.
1350
+ */
1351
+ export function voronoi(text: string, format_hint: string, cutoff: number): string;
1352
+
847
1353
  /**
848
1354
  * Archives run records (a JSON array) into an in-memory ZIP.
849
1355
  *
@@ -862,6 +1368,15 @@ export function workspace_archive(records_json: string): Uint8Array;
862
1368
  */
863
1369
  export function workspace_read_archive(bytes: Uint8Array | number[]): Array<any>;
864
1370
 
1371
+ /**
1372
+ * Wulff construction as JSON.
1373
+ *
1374
+ * # Errors
1375
+ *
1376
+ * Returns a JavaScript `Error` for invalid text or surface energies.
1377
+ */
1378
+ export function wulff(text: string, format_hint: string, options_json: string): string;
1379
+
865
1380
  /**
866
1381
  * Returns Wyckoff assignments.
867
1382
  *