resume
1import { Theme, ThemeKeys } from "../types/theme";2
3export type ThemeInvoker = { [k in Theme]: string };4type CSSModuleClasses = { readonly [key: string]: string };5
6export const createThemeInvoker = (7styles: CSSModuleClasses,8componentName: string9): ThemeInvoker => {10return (Object.keys(Theme) as ThemeKeys[]).reduce(11(acc, key) => ({12...acc,13[Theme[key]]: styles[`${componentName}_theme_${key.toLocaleLowerCase()}`],14}),15{}16) as ThemeInvoker;17};18