import type { ElementSymbol } from '../element/types'; import * as math from '../math'; import type { AnyStructure } from '../structure/index'; import type { Pbc } from '../structure/pbc'; import type { TrajectoryFrame } from './index'; export declare function validate_3x3_matrix(data: unknown): math.Matrix3x3; export declare const convert_atomic_numbers: (numbers: number[]) => ElementSymbol[]; export declare const create_structure: (positions: number[][], elements: ElementSymbol[], lattice_matrix?: math.Matrix3x3, pbc?: Pbc, force_data?: number[][]) => AnyStructure; export declare const create_trajectory_frame: (positions: number[][], elements: ElementSymbol[], lattice_matrix: math.Matrix3x3 | undefined, pbc: Pbc | undefined, step: number, metadata?: Record) => TrajectoryFrame; export declare const read_ndarray_from_view: (view: DataView, ref: { ndarray: unknown[]; }) => number[][]; 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 function iter_xyz_frames(lines: string[]): Generator<{ start: number; num_atoms: number; comment: string; }>; export declare function count_xyz_frames(data: string): number;