import {HTMLAttributes, ReactNode, DetailedHTMLProps} from 'react';
import {ColorsNameType} from '../../../../types/entities/colors-name';
export type TypographySizesType =
| 'display2XL'
| 'displayXL'
| 'displayLG'
| 'displayMD'
| 'displaySM'
| 'displayXS'
| 'textXL'
| 'textLG'
| 'textMD'
| 'textSM'
| 'textXS'
| 'textXXS';
export type TypographyWeights =
| 100
| 200
| 300
| 400
| 500
| 600
| 700
| 800
| 900;
export interface ITypographyTags {
h1: DetailedHTMLProps<
HTMLAttributes,
HTMLHeadingElement
>;
h2: DetailedHTMLProps<
HTMLAttributes,
HTMLHeadingElement
>;
h3: DetailedHTMLProps<
HTMLAttributes,
HTMLHeadingElement
>;
h4: DetailedHTMLProps<
HTMLAttributes,
HTMLHeadingElement
>;
h5: DetailedHTMLProps<
HTMLAttributes,
HTMLHeadingElement
>;
h6: DetailedHTMLProps<
HTMLAttributes,
HTMLHeadingElement
>;
p: DetailedHTMLProps<
HTMLAttributes,
HTMLParagraphElement
>;
small: DetailedHTMLProps, HTMLElement>;
span: DetailedHTMLProps, HTMLSpanElement>;
strong: DetailedHTMLProps, HTMLElement>;
b: DetailedHTMLProps, HTMLElement>;
}
export interface ITypography extends HTMLAttributes {
tag?: keyof ITypographyTags;
color?: ColorsNameType;
size?: TypographySizesType;
weight?: TypographyWeights;
children?: ReactNode;
ref?: React.LegacyRef | undefined;
contentWrapper?: React.DetailedHTMLProps<
React.HTMLAttributes,
HTMLSpanElement
>;
}