namespace NeonSprawl.Server.Game.Quests;
/// Load-time quest row (NEO-113, NEO-134).
public sealed class QuestDefRow(
string id,
string displayName,
IReadOnlyList prerequisiteQuestIds,
IReadOnlyList steps,
QuestRewardBundleRow? completionRewardBundle = null,
IReadOnlyList? factionGateRules = null)
{
public string Id { get; } = id;
public string DisplayName { get; } = displayName;
public IReadOnlyList PrerequisiteQuestIds { get; } = prerequisiteQuestIds;
public IReadOnlyList Steps { get; } = steps;
public QuestRewardBundleRow? CompletionRewardBundle { get; } = completionRewardBundle;
public IReadOnlyList FactionGateRules { get; } = factionGateRules ?? [];
}