Skip to content

Token types overview

Reference2026-11-09

Syntope Engine implements the 13 token types of the DTCG 2025.10 specification and adds one extension, string. It refuses any other $type. This page is the matrix. Each type has its own page with the exact value format and its behavior in Figma.

Type $type Composite Authoring in Syntope Tokens Applying to layers Figma variable Status
Color color No Text field and picker fill, stroke, shadow color, gradient stop color COLOR Stable
Dimension dimension No Text field Size, radius, border width, spacing, text metrics, shadow metrics FLOAT, px values only Partial
Font family fontFamily No Text field, commas make a list Font family of text layers STRING, one name only Partial
Font weight fontWeight No Text field and presets Font weight of text layers FLOAT Partial
Duration duration No Text field None None Partial
Cubic bezier cubicBezier No Four number fields None None Partial
Number number No Text field Opacity, rotation, layout grow, every dimension target FLOAT Stable
Stroke style strokeStyle Yes Keyword field or dash pattern Dash pattern and cap, three of eight keywords None Partial
Border border Yes Three fields Stroke paint, weight and dash pattern None Partial
Transition transition Yes Three fields None None Partial
Shadow shadow Yes Layer builder Drop and inner shadows None Partial
Gradient gradient Yes Stop builder None None Partial
Typography typography Yes Field group Font, size, line height, letter spacing, paragraph and case settings None Stable
String string (extension) No Text field None None Partial

Notes

  • Status. Stable means the type works end to end as documented. Partial means it works, but a capability is missing or incorrect: it cannot reach layers, some valid values do not apply or map, or the token dialog gets something wrong. Its page says exactly which. Figma has no variable type for composite values, so a missing variable alone does not make a composite type partial.
  • Composite. DTCG defines stroke style as a composite type. The plugin lists it under basic types.
  • Authoring. Every type can be created in the token dialog and edited in the JSON editor. The dialog converts what you type into the DTCG value. A file must hold that value, not the typed text.
  • Validation. Every save is checked against the DTCG 2025.10 schema. A value that does not fit is not saved.
  • Applying. Choose a target under Apply token in the token’s menu. Apply targets lists each target. Each Apply is one step in Figma’s undo history. A target the layer cannot take is reported, not skipped silently. A property set by a Figma variable stays as it is until you confirm with reapply in Inspect. For a type with no target, Apply token is disabled with “Tokens of this type cannot be applied to layers.”
  • Figma variables. Mapping runs one way, from tokens to variables. Tokens that cannot be mapped are left out of the sync, and show what is left out names each one with the reason. See Figma variables.
  • Calculated tokens. A dimension or number with a formula, or a color with a change such as lighten or mix, keeps its calculation in $extensions and resolves as usual. These usually come from a Tokens Studio import. The token dialog shows the calculated value, and a new value replaces the calculation. To change the calculation itself, use the JSON editor.
  • Changing a type. The value is read again by the new type’s rules, so a value that does not fit is refused. Figma fields, a formula, a color change or a transition property from the old type are removed.