import type { BodyFontSizeToken, BodyFontStackToken, BodyFontWeightToken, BodyLetterSpacingToken, BodyLineHeightToken, DataBodyFontSizeToken, DataBodyFontStackToken, DataBodyFontWeightToken, DataBodyFontWidthToken, DataBodyLetterSpacingToken, DataBodyLineHeightToken, DataDisplayFontSizeToken, DataDisplayFontStackToken, DataDisplayFontWeightToken, DataDisplayFontWidthToken, DataDisplayLetterSpacingToken, DataDisplayLineHeightToken, DataHeadingFontSizeToken, DataHeadingFontStackToken, DataHeadingFontWeightToken, DataHeadingFontWidthToken, DataHeadingLetterSpacingToken, DataHeadingLineHeightToken, DisplayFontSizeToken, DisplayFontStackToken, DisplayFontWeightToken, DisplayLetterSpacingToken, DisplayLineHeightToken, FontSizeToken, FontStackToken, FontWeightToken, FontWidthToken, HeadingFontSizeToken, HeadingFontStackToken, HeadingFontWeightToken, HeadingLetterSpacingToken, HeadingLineHeightToken, LetterSpacingToken, LineHeightToken } from '~/types/tokens';
interface ConfigurableTypographyBundle<FontStack extends FontStackToken, FontSizes extends FontSizeToken, FontWeights extends FontWeightToken, LetterSpacing extends LetterSpacingToken, LineHeight extends LineHeightToken, FontWidth extends FontWidthToken | never> {
    fontStack: FontStack;
    fontSize: FontSizes | string;
    fontWeight: FontWeights | string;
    letterSpacing: LetterSpacing | string;
    lineHeight: LineHeight | string;
    fontWidth?: FontWidth;
}
type BodyTypographyBundle = ConfigurableTypographyBundle<BodyFontStackToken, BodyFontSizeToken, BodyFontWeightToken, BodyLetterSpacingToken, BodyLineHeightToken, never>;
type HeadingTypographyBundle = ConfigurableTypographyBundle<HeadingFontStackToken, HeadingFontSizeToken, HeadingFontWeightToken, HeadingLetterSpacingToken, HeadingLineHeightToken, never>;
type DisplayTypographyBundle = ConfigurableTypographyBundle<DisplayFontStackToken, DisplayFontSizeToken, DisplayFontWeightToken, DisplayLetterSpacingToken, DisplayLineHeightToken, never>;
type DataBodyTypographyBundle = ConfigurableTypographyBundle<DataBodyFontStackToken, DataBodyFontSizeToken, DataBodyFontWeightToken, DataBodyLetterSpacingToken, DataBodyLineHeightToken, DataBodyFontWidthToken>;
type DataHeadingTypographyBundle = ConfigurableTypographyBundle<DataHeadingFontStackToken, DataHeadingFontSizeToken, DataHeadingFontWeightToken, DataHeadingLetterSpacingToken, DataHeadingLineHeightToken, DataHeadingFontWidthToken>;
type DataDisplayTypographyBundle = ConfigurableTypographyBundle<DataDisplayFontStackToken, DataDisplayFontSizeToken, DataDisplayFontWeightToken, DataDisplayLetterSpacingToken, DataDisplayLineHeightToken, DataDisplayFontWidthToken>;
export type CustomTypographyBundle = BodyTypographyBundle | HeadingTypographyBundle | DisplayTypographyBundle | DataBodyTypographyBundle | DataHeadingTypographyBundle | DataDisplayTypographyBundle;
export {};
