org.designtxt.resolver

bomberstudios.com

Documentation

A resolver document that declares token sets and contextual modifiers, with a resolution order that determines how they compose. Given an input (e.g. {theme: 'dark', size: 'compact'}), a resolver produces a flat, contextually-appropriate token set.

main record

A resolver document that declares token sets and contextual modifiers, with a resolution order that determines how they compose. Given an input (e.g. {theme: 'dark', size: 'compact'}), a resolver produces a flat, contextually-appropriate token set.

Record Key any Any valid record key

Properties

defs object Optional

JSON Schema $defs for bundling inline token references. Maps to the DTCG $defs field. Tools may ignore this key.

description string Optional

Human-readable description of this resolver's purpose.

maxLength: 4096 bytes
extensions object Optional

Vendor-specific extension data. Maps to the DTCG $extensions field. Keys should use reverse-domain notation.

modifiers object Optional

Named modifiers for contextual token overrides. Keys are modifier names; values have a 'contexts' map (string to token sources array), optional 'description', optional 'default', and optional 'extensions'.

name string Optional

Short human-readable name for this resolver document.

maxLength: 256 bytes
resolutionOrder array of unknown Required

Ordered list of sets and modifiers that determines the resolution cascade. Later items override earlier ones on conflict. Each entry is a reference object ({$ref: string}) or an inline definition ({name, type: 'set'|'modifier', ...}).

schema string Optional

Optional URL of a JSON Schema for this resolver document. Maps to the DTCG $schema field.

maxLength: 2048 bytes
sets object Optional

Named sets of design token sources. Keys are set names; values are set definitions with a 'sources' array and optional 'description' and 'extensions'.

version string Required

Resolver format version. Must be '2025.10' per DTCG Resolver spec.

maxLength: 16 bytes
View raw schema
{
  "key": "any",
  "type": "record",
  "record": {
    "type": "object",
    "required": [
      "version",
      "resolutionOrder"
    ],
    "properties": {
      "defs": {
        "type": "object",
        "description": "JSON Schema $defs for bundling inline token references. Maps to the DTCG $defs field. Tools may ignore this key."
      },
      "name": {
        "type": "string",
        "maxLength": 256,
        "description": "Short human-readable name for this resolver document."
      },
      "sets": {
        "type": "object",
        "properties": {},
        "description": "Named sets of design token sources. Keys are set names; values are set definitions with a 'sources' array and optional 'description' and 'extensions'."
      },
      "schema": {
        "type": "string",
        "maxLength": 2048,
        "description": "Optional URL of a JSON Schema for this resolver document. Maps to the DTCG $schema field."
      },
      "version": {
        "type": "string",
        "const": "2025.10",
        "maxLength": 16,
        "description": "Resolver format version. Must be '2025.10' per DTCG Resolver spec."
      },
      "modifiers": {
        "type": "object",
        "properties": {},
        "description": "Named modifiers for contextual token overrides. Keys are modifier names; values have a 'contexts' map (string to token sources array), optional 'description', optional 'default', and optional 'extensions'."
      },
      "extensions": {
        "type": "object",
        "description": "Vendor-specific extension data. Maps to the DTCG $extensions field. Keys should use reverse-domain notation."
      },
      "description": {
        "type": "string",
        "maxLength": 4096,
        "description": "Human-readable description of this resolver's purpose."
      },
      "resolutionOrder": {
        "type": "array",
        "items": {
          "type": "unknown"
        },
        "description": "Ordered list of sets and modifiers that determines the resolution cascade. Later items override earlier ones on conflict. Each entry is a reference object ({$ref: string}) or an inline definition ({name, type: 'set'|'modifier', ...})."
      }
    },
    "description": "Root of a resolver document."
  },
  "description": "A resolver document that declares token sets and contextual modifiers, with a resolution order that determines how they compose. Given an input (e.g. {theme: 'dark', size: 'compact'}), a resolver produces a flat, contextually-appropriate token set."
}

Lexicon Garden

@