import { type ElementSymbol } from '../element/types'; import type * as math from '../math'; import type { AnyStructure } from '../structure/index'; import type { Pbc } from '../structure/pbc'; import type { TrajectoryFrame, TrajectoryPositionStream } from './index'; import type { WarnFn } from './parse/shared'; export declare const values_per_sample: (shape: number[]) => number; export declare const is_supported_trajectory_signal_shape: (sample_shape: number[], n_atoms: number) => boolean; export declare const convert_atomic_numbers: (numbers: number[]) => ElementSymbol[]; export declare const elem_symbol_from_token: (token: string) => ElementSymbol | undefined; export declare const expand_ion_types: (ion_types: readonly string[], ion_counts: readonly number[]) => ElementSymbol[]; export declare const create_structure: (positions: number[][], elements: ElementSymbol[], lattice_matrix?: math.Matrix3x3, pbc?: Pbc, site_properties?: Record[], warn?: WarnFn) => AnyStructure; export declare const create_trajectory_frame: (positions: number[][], elements: ElementSymbol[], lattice_matrix: math.Matrix3x3 | undefined, pbc: Pbc | undefined, step: number, metadata?: Record, site_properties?: Record[], warn?: WarnFn) => TrajectoryFrame; export declare const position_stream_transferables: (data: TrajectoryPositionStream) => ArrayBuffer[]; export declare const copy_numeric_fields: (target: Record, source: Record, fields: readonly string[]) => void; export declare function calc_force_stats(forces: number[][]): { force_max: number; force_norm: number; } | null; export declare const split_lines: (content: string) => string[]; export declare const line_end: (text: string, from: number, to?: number) => number; export declare const is_xyz_atom_line: (text: string, from?: number, to?: number) => boolean; export type XyzFrameSpec = { start: number; line: number; num_atoms: number; comment: string; atoms_start: number; end: number; }; export declare function iter_xyz_frames(text: string): Generator; export declare function count_xyz_frames(data: string, limit?: number): number; export declare function has_multiple_xyz_frames(data: string): boolean;