interface
Core TypeScript interfaces shared across the codebase.
To add a new configuration option:
- Add the property to
package.jsonundercontributes.configuration.properties - Add the property to the Configuration interface below
- Add a
config.get<T>()call inextensionUtils.getVscodeConfiguration - Add the property to
PKG_DEFAULTSinsettings.ts
Interfaces
Section titled “Interfaces”Configuration
Section titled “Configuration”Defined in: interface.ts:36
User-facing configuration options for the theme extension.
Settings are organised along two independent axes:
Temperature (cool | neutral | warm): controls the hue character of
the neutral scale. Separate settings for dark and light mode allow mixing —
e.g. warm dark with cool light.
Contrast (soft | balanced | crisp): controls how far apart
background surface steps are, and the distance between background and
foreground. Separate settings for dark and light mode.
All properties are optional — missing values fall back to defaults defined in
the extension settings (settings.ts / PKG_DEFAULTS).
Properties
Section titled “Properties”darkContrast?
Section titled “darkContrast?”
optionaldarkContrast?:"balanced"|"crisp"|"soft"
Defined in: interface.ts:46
Contrast level in dark mode. Controls surface separation and
background-to-foreground distance. "soft" has the most air between
surfaces; "crisp" is the tightest and most ink-rich.
Default
Section titled “Default”balanceddarkCursor?
Section titled “darkCursor?”
optionaldarkCursor?:string
Defined in: interface.ts:49
Cursor color in dark mode.
darkSelection?
Section titled “darkSelection?”
optionaldarkSelection?:string
Defined in: interface.ts:52
Background color of selected text in dark mode.
darkTemperature?
Section titled “darkTemperature?”
optionaldarkTemperature?:"cool"|"neutral"|"warm"
Defined in: interface.ts:61
Color temperature of the neutral scale in dark mode. Controls hue
character: "cool" shifts toward blue-grey, "neutral" is the Anthropic
warm-brown baseline, "warm" pushes further into amber/ochre.
Default
Section titled “Default”neutraldiagnosticTextBackgroundOpacity?
Section titled “diagnosticTextBackgroundOpacity?”
optionaldiagnosticTextBackgroundOpacity?:string
Defined in: interface.ts:66
Opacity of the background wash applied to diagnostic text.
italicComments?
Section titled “italicComments?”
optionalitalicComments?:boolean
Defined in: interface.ts:69
Whether to render comments in italic.
italicKeywords?
Section titled “italicKeywords?”
optionalitalicKeywords?:boolean
Defined in: interface.ts:72
Whether to render language keywords in italic.
lightContrast?
Section titled “lightContrast?”
optionallightContrast?:"balanced"|"crisp"|"soft"
Defined in: interface.ts:79
Contrast level in light mode.
Default
Section titled “Default”balancedlightCursor?
Section titled “lightCursor?”
optionallightCursor?:string
Defined in: interface.ts:84
Cursor color in light mode.
lightSelection?
Section titled “lightSelection?”
optionallightSelection?:string
Defined in: interface.ts:87
Background color of selected text in light mode.
lightTemperature?
Section titled “lightTemperature?”
optionallightTemperature?:"cool"|"neutral"|"warm"
Defined in: interface.ts:94
Color temperature of the neutral scale in light mode.
Default
Section titled “Default”neutralPkgTheme
Section titled “PkgTheme”Defined in: interface.ts:114
Describes a VS Code color theme as declared in package.json.
Used for managing theme registration in the contributes.themes section.
Properties
Section titled “Properties”label:
string
Defined in: interface.ts:116
Display name shown in the theme picker.
path:
string
Defined in: interface.ts:118
Relative path to the generated theme JSON file.
uiTheme
Section titled “uiTheme”uiTheme:
string
Defined in: interface.ts:120
VS Code UI theme base — "vs-dark" or "vs".
Type Aliases
Section titled “Type Aliases”Palette
Section titled “Palette”Palette = typeof
palette
Defined in: interface.ts:105
Palette type derived directly from the palette object.
No manual maintenance needed — adding a color to palette.new.ts
automatically extends this type.