# gds-theme

**Class**: `GdsTheme`

**Tag**: `<gds-theme>`


## Properties

| Name | Type | Default | Description |
|------|------|---------|-------------|
| `colorScheme` | `'light' \| 'dark' \| 'auto'` | `-` | The theme mode. Can be `light`, `dark`, or `auto`. |
| `designVersion` | `'2016' \| '2023'` | `-` | The design version to use. Can be `16` or `23`. |
| `syncFirstRender` | `boolean` | `-` | Force the element to perform a synchronous first render and apply style expression properties in `connectedCallback`.  This guarantees that the child DOM always remains projected in DOM, since the element will attach the shadowRoot and run the first render pass in the same event loop cycle, and that declarative layout will be applied once slotted DOM is projected.  Note: This will cause the first render pass to be blocking. Use sparingly and only when necessary, such as when the element needs to be measured synchronously after being added to the DOM. |


## Events

| Name | Type | Description |
|------|------|-------------|
| `gds-color-scheme-changed` | `CustomEvent<any>` | Fired when the color scheme changes. |
| `gds-design-version-changed` | `CustomEvent<any>` | Fired when the design version changes. |


## Slots

| Name | Description |
|------|-------------|
| `(default)` | The content to apply the theme to. |
