using System.Collections.Generic;
namespace AcDream.App.Streaming;
///
/// Output of for the two-tier model.
/// Five disjoint lists describe what changed since the previous Tick. Per
/// Phase A.5 spec §4.2.
///
public readonly record struct TwoTierDiff(
IReadOnlyList ToLoadFar, // entered far window from null (terrain only)
IReadOnlyList ToLoadNear, // entered near window from null (terrain + entities — first-tick or teleport)
IReadOnlyList ToPromote, // entered near window from far-resident (entities only)
IReadOnlyList ToDemote, // exited near window past hysteresis (drop entities)
IReadOnlyList ToUnload); // exited far window past hysteresis (drop terrain)