using System.Collections.Generic; namespace FluidSim.Interfaces { /// /// Minimal interface for all simulation components that have ports. /// public interface IComponent { /// All ports exposed by this component. IReadOnlyList Ports { get; } /// /// Called once per global time step to update the component's internal state /// using the port flow data accumulated during sub‑steps. /// void UpdateState(double dt); } }