Skip to content
This repository was archived by the owner on Sep 20, 2024. It is now read-only.

Commit 81291cf

Browse files
Merge pull request #492 from Pwuts/improve-theme-types
feat(types): add type exports for color mode & theme providers
2 parents 361264b + e16f20e commit 81291cf

File tree

2 files changed

+27
-3
lines changed

2 files changed

+27
-3
lines changed

.changeset/smooth-cups-kiss.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
---
2+
"@chakra-ui/vue": minor
3+
"@chakra-ui/nuxt": minor
4+
---
5+
6+
feat(types): add type exports for color mode & theme providers

packages/chakra-ui-core/types/index.d.ts

Lines changed: 21 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,18 +3,36 @@ import { Theme } from "../../chakra-ui-theme/types"
33
import useToast from "../src/CToast"
44
import { ToastFactory } from '../src/CToast/CToast'
55

6+
type ChakraIcons = { [name: string]: Icon };
7+
68
declare module 'vue/types/vue' {
79
export interface Vue {
810
$toast: ToastFactory
911
$chakra: {
1012
theme: Theme
11-
icons: { [name: string]: Icon }
13+
icons: ChakraIcons
1214
}
13-
chakraColorMode: string
14-
chakraToggleColorMode: string
1515
}
1616
}
1717

18+
declare module '../src/CColorModeProvider' {
19+
export interface Provides {
20+
$chakraColorMode: () => 'light' | 'dark'
21+
$toggleColorMode: () => void
22+
}
23+
}
24+
25+
declare module '../src/CThemeProvider' {
26+
export interface Provides {
27+
$chakraTheme: Theme
28+
$chakraIcons: ChakraIcons
29+
$chakraColorMode: () => 'light'
30+
}
31+
}
32+
33+
export { Provides as CColorModeProvides } from '../src/CColorModeProvider'
34+
export { Provides as CThemeProvides } from '../src/CThemeProvider'
35+
1836
export const useToast: typeof useToast
1937
export const defaultTheme: Theme
2038
export * from './component'

0 commit comments

Comments
 (0)