import type { Vec2 } from '../math'; export declare const TDB_TEMP_DEFAULTS: { readonly min: 298.15; readonly max_fallback: 3000; readonly max_range: 5000; }; export interface TdbElement { symbol: string; reference_phase: string; mass: number; enthalpy: number; entropy: number; } export interface TdbPhase { name: string; model_hints: string; sublattice_count: number; sublattice_sites: number[]; constituents?: string[][]; } export interface TdbFunction { name: string; expression: string; temperature_ranges: { min: number; max: number; expr: string; }[]; } export interface TdbParameter { type: string; phase: string; constituents: string[]; order: number; expression: string; } export interface TdbData { elements: TdbElement[]; phases: TdbPhase[]; functions: TdbFunction[]; parameters: TdbParameter[]; comments: string[]; raw_content: string; } export interface TdbParseResult { success: boolean; data: TdbData | null; error?: string; binary_system?: [string, string]; available_phases?: string[]; temperature_range?: Vec2; } export declare function parse_tdb(content: string): TdbParseResult; export declare const get_system_name: (elements: string[]) => string; export declare const is_binary_system: (tdb_data: TdbData) => boolean; export declare function normalize_system_name(input: string): string;