{"version":3,"file":"typography.types.mjs","sourceRoot":"","sources":["../src/typography.types.ts"],"names":[],"mappings":"","sourcesContent":["/**\n * Different Typography variants to be used as twrnc classNames\n */\nexport type TypographyVariant =\n  | 'display-lg'\n  | 'display-md'\n  | 'heading-lg'\n  | 'heading-md'\n  | 'heading-sm'\n  | 'body-lg'\n  | 'body-md'\n  | 'body-sm'\n  | 'body-xs'\n  | 'page-heading'\n  | 'section-heading'\n  | 'button-label-md'\n  | 'button-label-lg'\n  | 'amount-display-lg';\n\n/**\n * Different FontWeight and FontStyle to be used to calculate the FontFamily\n * in getFontFamilyFromWeightAndStyle\n */\nexport type FontWeight =\n  | '100'\n  | '200'\n  | '300'\n  | '400'\n  | '500'\n  | '600'\n  | '700'\n  | '800'\n  | '900'\n  | 'normal'\n  | 'bold';\nexport type FontStyle = 'normal' | 'italic';\n\n/**\n * Props for TypographyTailwindConfig\n *\n * @example\n * {\n *   fontSize: {\n *     'display-md': {\n *       fontFamily: 'Geist-SemiBold',\n *       fontSize: '32',\n *       letterSpacing: '0',\n *       lineHeight: '40px',\n *     },\n *   },\n *   fontFamily: {\n *     sans: [\n *       'Geist',\n *       'Helvetica Neue',\n *       'Helvetica',\n *       'Arial',\n *       'sans-serif',\n *     ],\n *     'display-md': 'Geist',\n *   },\n *   letterSpacing: {\n *     'display-md': '0',\n *   },\n *   lineHeight: {\n *     'display-md': '40px',\n *   },\n * }\n */\nexport type TypographyTailwindConfigProps = {\n  fontSize: Record<\n    TypographyVariant,\n    [\n      string,\n      {\n        lineHeight: string; // Make sure to include units - \"40px\" instead of \"40\"\n        letterSpacing: string;\n      },\n    ]\n  >;\n  fontFamily: {\n    'default-regular': string;\n    'default-regular-italic': string;\n    'default-medium': string;\n    'default-medium-italic': string;\n    'default-bold': string;\n    'default-bold-italic': string;\n    'accent-regular': string;\n    'accent-medium': string;\n    'accent-bold': string;\n    'hero-regular': string;\n  };\n  letterSpacing: Record<TypographyVariant, string>;\n  lineHeight: Record<TypographyVariant, string>; // Make sure to include units - \"40px\" instead of \"40\"\n};\n"]}