package com.suno.android.common_ui.theme import androidx.compose.ui.text.TextStyle import androidx.compose.ui.text.font.FontWeight import androidx.compose.ui.unit.sp data class SunoTypography( val largeHeadline: TextStyle, val mediumHeadline: TextStyle, val styleCardTitle: TextStyle, val categoryHeadline: TextStyle, val smallTrackName: TextStyle, val lyricsMode: TextStyle, val promptLarge: TextStyle, val promptMedium: TextStyle, val introCopy: TextStyle, val playlistCards: TextStyle, val smallPlayerTitle: TextStyle, val cardTitle: TextStyle, val userTitle: TextStyle, val body: TextStyle, val smallBody: TextStyle, val largeBody: TextStyle, val smallSubtitle: TextStyle, val largeSubtitle: TextStyle, val cardMeta: TextStyle, val button: TextStyle, val buttonSmallCta: TextStyle, val socialText: TextStyle, val mediumTitle: TextStyle, val extraLargeTitle: TextStyle, ) val largeHeadline = TextStyle( fontFamily = EditorialFontFamily, fontSize = 40.sp, lineHeight = 48.sp, fontWeight = FontWeight.Light, letterSpacing = 0.sp, ) val mediumHeadline = TextStyle( fontFamily = EditorialFontFamily, fontSize = 32.sp, lineHeight = 40.sp, fontWeight = FontWeight.Light, letterSpacing = 0.sp, ) val styleCardTitle = TextStyle( fontFamily = EditorialFontFamily, fontSize = 28.sp, fontWeight = FontWeight.Light, letterSpacing = 0.5.sp, ) val categoryHeadline = TextStyle( fontFamily = EditorialFontFamily, fontSize = 24.sp, lineHeight = 32.sp, fontWeight = FontWeight.Medium, letterSpacing = 0.sp, ) val smallTrackName = TextStyle( fontFamily = EditorialFontFamily, fontSize = 24.sp, lineHeight = 32.sp, fontWeight = FontWeight.Light, letterSpacing = 0.sp, ) val lyricsMode = TextStyle( fontFamily = NeueMontrealFontFamily, fontSize = 40.sp, lineHeight = 48.sp, fontWeight = FontWeight.Bold, letterSpacing = 0.sp, ) val promptLarge = TextStyle( fontFamily = NeueMontrealFontFamily, fontSize = 32.sp, lineHeight = 40.sp, fontWeight = FontWeight.Medium, letterSpacing = 0.5.sp, ) val promptMedium = TextStyle( fontFamily = NeueMontrealFontFamily, fontSize = 24.sp, lineHeight = 32.sp, fontWeight = FontWeight.Medium, letterSpacing = 0.5.sp, ) val introCopy = TextStyle( fontFamily = NeueMontrealFontFamily, fontSize = 20.sp, lineHeight = 24.sp, fontWeight = FontWeight.Medium, letterSpacing = 0.5.sp, ) val playlistCards = TextStyle( fontFamily = NeueMontrealFontFamily, fontSize = 18.sp, lineHeight = 20.sp, fontWeight = FontWeight.Medium, letterSpacing = 0.5.sp, ) val smallPlayerTitle = TextStyle( fontFamily = NeueMontrealFontFamily, fontSize = 16.sp, lineHeight = 16.sp, fontWeight = FontWeight.Medium, letterSpacing = 0.5.sp, ) val cardTitle = TextStyle( fontFamily = NeueMontrealFontFamily, fontSize = 16.sp, lineHeight = 24.sp, fontWeight = FontWeight.Medium, letterSpacing = 0.5.sp, ) val userTitle = TextStyle( fontFamily = NeueMontrealFontFamily, fontSize = 14.sp, lineHeight = 16.sp, fontWeight = FontWeight.Medium, letterSpacing = 0.5.sp, ) val body = TextStyle( fontFamily = NeueMontrealFontFamily, fontSize = 16.sp, lineHeight = 24.sp, fontWeight = FontWeight.Normal, letterSpacing = 0.5.sp, ) val smallBody = TextStyle( fontFamily = NeueMontrealFontFamily, fontSize = 14.sp, lineHeight = 18.sp, fontWeight = FontWeight.Normal, letterSpacing = 0.5.sp, ) val largeBody = TextStyle( fontFamily = NeueMontrealFontFamily, fontSize = 24.sp, lineHeight = 32.sp, fontWeight = FontWeight.Normal, letterSpacing = 0.5.sp, ) val smallSubtitle = TextStyle( fontFamily = NeueMontrealFontFamily, fontSize = 12.sp, lineHeight = 16.sp, fontWeight = FontWeight.Medium, letterSpacing = 0.5.sp, ) val largeSubtitle = TextStyle( fontFamily = NeueMontrealFontFamily, fontSize = 18.sp, lineHeight = 24.sp, fontWeight = FontWeight.Medium, letterSpacing = 0.5.sp, ) val cardMeta = TextStyle( fontFamily = InputSansFontFamily, fontSize = 10.sp, lineHeight = 16.sp, fontWeight = FontWeight.Medium, letterSpacing = 0.5.sp, ) val buttonSmall = TextStyle( fontFamily = NeueMontrealFontFamily, fontSize = 14.sp, lineHeight = 20.sp, fontWeight = FontWeight.Medium, letterSpacing = 0.5.sp, ) val buttonMedium = TextStyle( fontFamily = NeueMontrealFontFamily, fontSize = 16.sp, lineHeight = 24.sp, fontWeight = FontWeight.Medium, letterSpacing = 0.5.sp, ) val buttonLarge = TextStyle( fontFamily = NeueMontrealFontFamily, fontSize = 24.sp, lineHeight = 32.sp, fontWeight = FontWeight.Normal, letterSpacing = 0.5.sp, ) val buttonSmallCta = TextStyle( fontFamily = NeueMontrealFontFamily, fontSize = 16.sp, lineHeight = 16.sp, fontWeight = FontWeight.Medium, letterSpacing = 0.5.sp, ) val socialText = TextStyle( fontFamily = NeueMontrealFontFamily, fontSize = 12.sp, lineHeight = 24.sp, fontWeight = FontWeight.Medium, letterSpacing = 0.5.sp, )