import { ObjectOrArray, Theme } from "styled-system"; import { Animations, Keyframes } from "./animations"; import { BreakPoints } from "./breakpoints"; import { Colors } from "./colors"; import { Components } from "./components"; import { Fonts, FontWeights, LetterSpacings, LineHeights } from "./fonts"; import { Gradients } from "./gradients"; import { MediaQueries } from "./mediaQueries"; import { Radii } from "./radii"; import { ShadowObject, Shadows } from "./shadows"; import { Sizes } from "./sizes"; import { Spaces } from "./spaces"; export declare type ThemeAdapter = ObjectOrArray; export interface ThemeType { radii: Radii; space: Spaces; sizes: Sizes; colors: Colors; fonts: Fonts; shadows: Shadows | ShadowObject; fontSizes: Omit; fontWeights: FontWeights; borderWidths: Omit; lineHeights: LineHeights; letterSpacings: LetterSpacings; breakpoints: ThemeAdapter; mediaQueries: MediaQueries; gradients: Gradients; keyframes: Keyframes; animations: Animations; components: Components; } export interface CustomTheme extends Partial { radii?: ThemeAdapter; space?: ThemeAdapter; shadows?: ThemeAdapter; colors: ThemeAdapter; fontSizes?: ThemeAdapter>; borderWidths?: ThemeAdapter>; lineHeights?: ThemeAdapter; letterSpacings?: ThemeAdapter; breakpoints?: ThemeAdapter; mediaQueries?: MediaQueries; gradients?: Gradients; keyframes?: Keyframes; animations?: Animations; components?: Components; }