Options
All
  • Public
  • Public/Protected
  • All
Menu

Interface with elements common to various Oracle-related interfaces and classes.

If you're trying to crawl the tree for a specific ID, I'd recommend using some flavour of JSONpath (I like jsonpath-plus) - it's purpose-made for this sort of nested data structure.

But if for some reason you can't, you can use this interface to type both IOracle and IOracleCategory as you recurse the oracle hierarchy. Objects with Categories and Oracles are "branches", and objects with Table are "leaves".

Hierarchy

Index

Properties

$id: string

The item's unique string ID.

pattern

^(Starforged|Ironsworn)/[0-9A-z_/-]+$

Aliases?: string[]

Alternate names for this item, including: names it had earlier in development that have since changed, alternate spellings/punctuation, common misspellings, and so on.

Categories?: IOracleCategory[]

Subcategories contained by this oracle category.

This key appears only on IOracleCategory, and thus only on 'branch' nodes of the oracle hierarchy 'tree.

Category?: string

The ID of the most recent OracleCategory ancestor of this item, if any.

pattern

^(Ironsworn|Starforged)/Oracles/[A-z_-/]+$

Content?: IOracleContent

Metadata that describes an oracle's semantic or lexical content.

Description?: string

A user-facing markdown description of the item, consisting of one or more paragraphs.

markdown

Data relevant to this item's display/rendering.

Member of?: string

The ID of the most recent Oracle ancestor of this item, if any.

pattern

^(Ironsworn|Starforged)/Oracles/[A-z_-]+/[A-z_-]+$

Name: string

The item's internal name. Should be unique among its sibling elements, as this key is often used (along with the object's ancestors) to generate its $id.

If the item has Display.Title, that should be preferred for most user-facing labels.

On a Match?: IOracleMatch

Describes the match behaviour of this oracle's table, if any, and provides a Text string describing it. Only appears on a handful of move oracles like Ask the Oracle and Advance a Threat.

This key appears only on IOracles that have a Table.

Oracles?: IOracle[]

Oracle objects contained by this object.

This key appears only on 'branch' nodes of the oracle hierarchy 'tree': IOracleCategory, and IOracle (when it contains multiple closely-related tables).

Source: ISource

Information on this item's source.

Table?: IRow[]

Represents a single oracle table, where 'table' is defined as being something with a single roll range.

This key appears only on 'leaf' nodes of the oracle hierarchy 'tree' - in other words, many (but not all) IOracle objects.

Usage?: IOracleUsage

Information on the usage of this oracle: recommended number of rolls, etc.

Generated using TypeDoc