import type { CompositionType } from '../composition'; import type { PhaseData } from '../convex-hull/types'; import type { ElementSymbol } from '../element/types'; import type { PhaseRef, SynthesisConditions } from './types'; export interface PlannerPhase extends PhaseRef { fractions: number[]; e_above_hull_0K: number; } export interface PhaseSet { elements: ElementSymbol[]; phases: PlannerPhase[]; by_id: Map; warnings: string[]; } export declare const ENERGY_TOL = 1e-9; export declare const formula_of: (composition: CompositionType) => string; export declare function prepare_phase_set(entries: PhaseData[], conditions?: SynthesisConditions): PhaseSet; export interface HullPoint { energy: number; decomposition: { phase: PlannerPhase; atom_fraction: number; }[]; } export declare function hull_at(fractions: number[], phases: PlannerPhase[]): HullPoint | null; export declare function assign_e_above_hull(phases: PlannerPhase[]): void; export declare function resolve_phase(phase_set: PhaseSet, query: string): PlannerPhase | null; export declare const to_phase_ref: (phase: PlannerPhase) => PhaseRef;