import { CSSObject } from 'styled-components' import { InputSizeV2, InputStateV2 } from '../inputV2.types' import { BreakpointType } from '../../../breakpoints/breakPoints' export type TextInputV2TokensType = { gap: CSSObject['gap'] topContainer: { label: { fontSize: { [key in InputSizeV2]: CSSObject['fontSize'] } fontWeight: { [key in InputSizeV2]: CSSObject['fontWeight'] } lineHeight: { [key in InputSizeV2]: CSSObject['lineHeight'] } color: { [key in InputStateV2]: CSSObject['color'] } } subLabel: { fontSize: { [key in InputSizeV2]: CSSObject['fontSize'] } fontWeight: { [key in InputSizeV2]: CSSObject['fontWeight'] } lineHeight: { [key in InputSizeV2]: CSSObject['lineHeight'] } color: { [key in InputStateV2]: CSSObject['color'] } } required: { color: CSSObject['color'] } helpIcon: { width: { [key in InputSizeV2]: CSSObject['width'] } color: { [key in InputStateV2]: CSSObject['color'] } } } inputContainer: { gap: CSSObject['gap'] placeholder: { color: { [key in InputStateV2]: CSSObject['color'] } fontSize: { [key in InputSizeV2]: CSSObject['fontSize'] } fontWeight: { [key in InputSizeV2]: CSSObject['fontWeight'] } lineHeight: { [key in InputSizeV2]: CSSObject['lineHeight'] } } inputText: { fontSize: { [key in InputSizeV2]: CSSObject['fontSize'] } fontWeight: { [key in InputSizeV2]: CSSObject['fontWeight'] } lineHeight: { [key in InputSizeV2]: CSSObject['lineHeight'] } color: { [key in InputStateV2]: CSSObject['color'] } } borderRadius: { [key in InputSizeV2]: CSSObject['borderRadius'] } boxShadow: CSSObject['boxShadow'] padding: { top: { [key in InputSizeV2]: CSSObject['padding'] } right: { [key in InputSizeV2]: CSSObject['padding'] } bottom: { [key in InputSizeV2]: CSSObject['padding'] } left: { [key in InputSizeV2]: CSSObject['padding'] } } border: { [key in InputStateV2]: CSSObject['border'] } backgroundColor: { [key in InputStateV2]: CSSObject['backgroundColor'] } } bottomContainer: { hintText: { fontSize: { [key in InputSizeV2]: CSSObject['fontSize'] } fontWeight: { [key in InputSizeV2]: CSSObject['fontWeight'] } lineHeight: { [key in InputSizeV2]: CSSObject['lineHeight'] } color: { [key in InputStateV2]: CSSObject['color'] } } errorMessage: { fontSize: { [key in InputSizeV2]: CSSObject['fontSize'] } fontWeight: { [key in InputSizeV2]: CSSObject['fontWeight'] } lineHeight: { [key in InputSizeV2]: CSSObject['lineHeight'] } color: CSSObject['color'] } } } export type ResponsiveTextInputV2Tokens = { [key in keyof BreakpointType]: TextInputV2TokensType }