import React, { AllHTMLAttributes, ReactNode } from 'react'; type TypographySize = 'small' | 'medium' | 'large' | 'lead'; type TypographyColor = 'default' | 'info' | 'warning' | 'error' | 'success'; type TypographyDecoration = 'underline' | 'overline' | 'linethrough'; type TypographyElement = 'h2' | 'h3' | 'h4' | 'h5' | 'h6'; interface BaseTypographyProps extends Omit, 'size'> { color?: TypographyColor; decoration?: TypographyDecoration; italic?: boolean; bold?: boolean; gradient?: boolean; children: ReactNode; className?: string; } interface TitleProps extends BaseTypographyProps { size?: TypographySize; } interface SubtitleProps extends BaseTypographyProps { elementType?: TypographyElement; } interface ParagraphProps extends BaseTypographyProps { size?: TypographySize; } interface MutedProps extends BaseTypographyProps { size?: TypographySize; } interface QuoteProps extends BaseTypographyProps { size?: TypographySize; } type CombinedTypographyProps = TitleProps & SubtitleProps & ParagraphProps & MutedProps & QuoteProps; type TypographyVariant = 'title' | 'subtitle' | 'paragraph' | 'muted' | 'quote'; interface TypographyProps extends CombinedTypographyProps { variant: TypographyVariant; } declare const Typography: React.ForwardRefExoticComponent>; export { type TypographyProps, Typography as default };