import { CSSProperties } from 'react'; import { space } from '../../theme/global/space'; import { borderWidths, radii } from '../../theme/global/borders'; import { fontSizes, lineHeights } from '../../theme/global/typography'; declare type BorderWidths = typeof borderWidths; declare type Radii = typeof radii; declare type Space = typeof space; declare type FontSizes = typeof fontSizes; declare type LineHeights = typeof lineHeights; declare type KebabColors = 'black' | 'blue' | 'blue-dark-30' | 'blue-dark-75' | 'blue-light-30' | 'blue-light-75' | 'blue-light-90' | 'dodger-blue' | 'green' | 'green-dark-15' | 'green-dark-30' | 'green-dark-75' | 'green-light-30' | 'green-light-90' | 'grey' | 'grey-dark-30' | 'grey-dark-45' | 'grey-dark-60' | 'grey-dark-75' | 'grey-light-45' | 'grey-light-60' | 'grey-light-75' | 'grey-light-85' | 'grey-light-90' | 'grotesque-green' | 'grotesque-green-dark-45' | 'grotesque-green-light-60' | 'grotesque-green-light-75' | 'grotesque-green-light-90' | 'orange' | 'orange-dark-15' | 'orange-dark-30' | 'orange-dark-75' | 'orange-light-30' | 'orange-light-75' | 'orange-light-90' | 'pink' | 'pink-dark-15' | 'pink-dark-30' | 'pink-dark-45' | 'pink-dark-75' | 'pink-light-30' | 'pink-light-45' | 'pink-light-75' | 'pink-light-90' | 'purple' | 'red' | 'red-dark-15' | 'red-dark-30' | 'red-dark-75' | 'red-light-30' | 'red-light-75' | 'red-light-90' | 'smalt' | 'smalt-dark-75' | 'smalt-light-30' | 'smalt-light-45' | 'smalt-light-90' | 'violet' | 'violet-dark-30' | 'violet-dark-45' | 'violet-dark-75' | 'violet-light-30' | 'violet-light-60' | 'violet-light-75' | 'violet-light-90' | 'white' | 'yellow' | 'yellow-dark-75' | 'yellow-light-60' | 'yellow-light-90'; interface ThemeScales { borderStyles: 'dotted' | 'dashed' | 'solid'; borderWidths: keyof BorderWidths; colors: KebabColors; fontSizes: keyof FontSizes; fontWeights: 'light' | 'regular' | 'semi-bold' | 'bold'; lineHeights: keyof LineHeights; radii: keyof Radii; space: keyof Space; } interface SystemProperties { /** * Background color. */ bgColor?: ThemeScales['colors']; /** * Border color. */ borderColor?: ThemeScales['colors']; /** * Border radius. */ borderRadius?: ThemeScales['radii']; /** * Border style. */ borderStyle?: ThemeScales['borderStyles']; /** * Border width. */ borderWidth?: ThemeScales['borderWidths']; /** * Text color. */ color?: ThemeScales['colors']; /** * Font size. */ fontSize?: ThemeScales['fontSizes']; /** * Font weight. */ fontWeight?: ThemeScales['fontWeights']; /** * Line height. */ lineHeight?: ThemeScales['lineHeights']; /** * Margin. */ m?: ThemeScales['space']; /** * Margin-bottom. */ mb?: ThemeScales['space']; /** * Margin-left. */ ml?: ThemeScales['space']; /** * Margin-right. */ mr?: ThemeScales['space']; /** * Margin-top. */ mt?: ThemeScales['space']; /** * Padding. */ p?: ThemeScales['space']; /** * Padding-bottom. */ pb?: ThemeScales['space']; /** * Padding-left. */ pl?: ThemeScales['space']; /** * Padding-right. */ pr?: ThemeScales['space']; /** * Padding-top. */ pt?: ThemeScales['space']; } declare type SxKeys = keyof SystemProperties | keyof CSSProperties; declare type SxValues = string | number; declare type SxObject = Partial>; export { KebabColors, ThemeScales, SystemProperties, SxKeys, SxValues, SxObject, };