namespace NeonSprawl.Server.Game.Skills;
/// Configuration for loading authoring content from disk (NEO-34).
public sealed class ContentPathsOptions
{
public const string SectionName = "Content";
///
/// Optional. Absolute path, or path relative to .
/// When unset, the host walks ancestors of for a content/skills directory.
///
public string? SkillsDirectory { get; set; }
///
/// Optional override for skill-def.schema.json.
/// When unset, resolved as {parent of skills directory}/schemas/skill-def.schema.json (same layout as the repo).
///
public string? SkillDefSchemaPath { get; set; }
///
/// Optional. Absolute path, or path relative to .
/// When unset, the host walks ancestors of for a content/mastery directory.
///
public string? MasteryDirectory { get; set; }
///
/// Optional override for mastery-catalog.schema.json.
/// When unset, resolved as {parent of mastery directory}/schemas/mastery-catalog.schema.json.
///
public string? MasteryCatalogSchemaPath { get; set; }
///
/// Optional. Absolute path, or path relative to .
/// When unset, the host walks ancestors of for a content/items directory.
///
public string? ItemsDirectory { get; set; }
///
/// Optional override for item-def.schema.json.
/// When unset, resolved as {parent of items directory}/schemas/item-def.schema.json.
///
public string? ItemDefSchemaPath { get; set; }
///
/// Optional. Absolute path, or path relative to .
/// When unset, the host walks ancestors of for a content/resource-nodes directory.
///
public string? ResourceNodesDirectory { get; set; }
///
/// Optional override for resource-node-def.schema.json.
/// When unset, resolved as {parent of resource-nodes directory}/schemas/resource-node-def.schema.json.
///
public string? ResourceNodeDefSchemaPath { get; set; }
///
/// Optional override for resource-yield-row.schema.json.
/// When unset, resolved as {parent of resource-nodes directory}/schemas/resource-yield-row.schema.json.
///
public string? ResourceYieldRowSchemaPath { get; set; }
}