@devlander/styled-components-theme
Version:
Devlander's team utilizes this package during the development of their React Native projects. Its primary purpose is to facilitate code reuse by sharing types across multiple projects that uses the styled-components library.
15 lines (14 loc) • 599 B
TypeScript
import { NativeTheme, WebTheme } from './base-theme-types';
import type { ColorsInterface } from './color.types';
import type { DeviceOnTheme } from './device-on-theme.type';
import type { FontsInterface } from './fonts.interface';
export interface ThemeConfig {
colorPreferences?: Partial<ColorsInterface>;
fontPreferences?: Partial<FontsInterface>;
deviceOnTheme?: Partial<DeviceOnTheme>;
}
export interface CreateThemeFunc<T> {
(config: ThemeConfig): T;
}
export type CreateThemeForNative = CreateThemeFunc<NativeTheme>;
export type CreateThemeForWeb = CreateThemeFunc<WebTheme>;