diff --git a/packages/theme/src/index.ts b/packages/theme/src/index.ts
index cfdb333ae..53fe3cabe 100644
--- a/packages/theme/src/index.ts
+++ b/packages/theme/src/index.ts
@@ -18,7 +18,8 @@ along with this program. If not, see .
*/
import {
SchemeColors,
- SchemeColorsAsCSSVariables
+ SchemeColorsAsCSSVariables,
+ ThemeDefinition
} from "./theme-engine/types.js";
export * from "./theme/index.js";
@@ -26,6 +27,11 @@ export * from "./theme-engine/index.js";
export * from "./theme-engine/types.js";
export * from "./emotion/index.js";
+declare global {
+ // eslint-disable-next-line no-var
+ var DEFAULT_THEME: ThemeDefinition | undefined;
+}
+
declare module "csstype" {
interface Properties {
backgroundColor?:
diff --git a/packages/theme/src/theme-engine/index.ts b/packages/theme/src/theme-engine/index.ts
index c7c13cc8b..4e8892847 100644
--- a/packages/theme/src/theme-engine/index.ts
+++ b/packages/theme/src/theme-engine/index.ts
@@ -43,7 +43,7 @@ type ThemeEngineState = {
setTheme: (theme: ThemeDefinition) => void;
};
const useThemeEngineStore = create((set) => ({
- theme: ThemeLight,
+ theme: globalThis.DEFAULT_THEME || ThemeLight,
setTheme: (theme) => set({ theme })
}));