import type { ElementSymbol } from '../element'; import type { FileLoadData } from '../io'; import type { Matrix3x3 } from '../math'; import type { AnyStructure, Pbc } from '../structure/index'; import type { TrajectoryRun } from './run'; export * from './analysis'; export * from './positions'; export { Hdf5GroupSelectionRequiredError, open_trajectory, type OpenTrajectoryOptions, source_byte_size, trajectory_from_frame_source, trajectory_from_frames, trajectory_from_json, VaspoutElectronicOnlyError, } from './open'; export * from './run'; export type { MemoryRunExtras } from './runs/memory'; export { default as Trajectory } from './Trajectory.svelte'; export { default as TrajectoryFileViewer } from './TrajectoryFileViewer.svelte'; export { default as TrajectoryAnalysisPane } from './TrajectoryAnalysisPane.svelte'; export { default as TrajectoryDataInspectorPane } from './TrajectoryDataInspectorPane.svelte'; export { default as TrajectoryError } from './TrajectoryError.svelte'; export { default as TrajectoryExportPane } from './TrajectoryExportPane.svelte'; export { default as TrajectoryInfoPane } from './TrajectoryInfoPane.svelte'; export { energy_data_extractor, force_stress_data_extractor, full_data_extractor, structural_data_extractor, } from './extract'; export type { TrajectoryFrameResolver, TrajectoryPropertyRow, TrajectoryPropertyTable, } from './file-export'; export type { FrameStepSamples, PlotSeriesOptions, TrajectoryXMap, TrajectoryXQuantity, } from './plotting'; export type AtomTypeMapping = Record; export declare function pick_pane_orientation(width: number, height: number): `horizontal` | `vertical`; export interface ParseProgress { current: number; total: number; stage: string; } export interface TrajectoryFrame { structure: AnyStructure; step: number; metadata?: Record; } export interface TrajectoryMetadata { frame_number: number; step: number; properties: Record; } export interface TrajectorySignal { values: Float64Array; sample_shape: number[]; steps: number[]; unit?: string; } export interface TrajectorySignalDescriptor { sample_shape: number[]; sample_count: number; unit?: string; frame_aligned?: boolean; } export type TrajectoryRunSignal = TrajectorySignal | TrajectorySignalDescriptor; export type TrajectorySource = string | ArrayBuffer | Blob; export interface TrajHandlerData extends FileLoadData { trajectory?: TrajectoryRun; step_idx?: number; frame_count?: number; frame?: TrajectoryFrame; error_msg?: string; file_size?: number; total_atoms?: number; } export interface TrajectoryController { set_step: (step_idx: number) => number; state: () => { current_step_idx: number; total_frames: number; }; play: () => void; pause: () => void; } export type TrajectoryDataExtractor = (frame: TrajectoryFrame) => Record; export interface TrajectoryPositionStream { positions: Float64Array; n_frames: number; n_atoms: number; elements: ElementSymbol[]; lattice_matrices: (Matrix3x3 | null)[] | null; pbc: Pbc | null; coords_unwrapped: boolean; frame_stride: number; steps: number[]; vectors?: Record; signals?: Record; } export interface PositionStreamOptions { frame_stride?: number; max_bytes?: number; vector_keys?: string[]; signal_keys?: string[]; } export interface CollectPositionsOptions extends PositionStreamOptions { on_progress?: (progress: ParseProgress) => void; signal?: AbortSignal; }