namespace NeonSprawl.Server.Game.Npc;
///
/// Active telegraph row while an NPC is in (NEO-93).
/// is stable id for NEO-94 wire projection.
/// is UTC instant when windup phase began.
///
public readonly record struct ActiveTelegraphSnapshot(string TelegraphId, DateTimeOffset WindupStartedUtc);
///
/// Per-NPC runtime behavior state snapshot (NEO-93).
/// is lowercase prototype NPC instance id.
/// is current behavior state.
/// is UTC instant when the current phase began.
/// is non-null only during .
///
public readonly record struct NpcRuntimeStateSnapshot(
string NpcInstanceId,
NpcBehaviorState BehaviorState,
DateTimeOffset PhaseStartedUtc,
ActiveTelegraphSnapshot? ActiveTelegraph);