Package-level declarations

Types

Link copied to clipboard
data class CoinDetail(val id: String, val symbol: String, val name: String, val assetPlatformId: String? = null, val platforms: Map<String, String?>, val categories: List<String>, val description: Localization, val links: Links, val image: Image, val genesisDate: String? = null, val marketCapRank: Int?, val coingeckoRank: Int?, val marketData: MarketData, val lastUpdated: Instant?)

Represents the detailed domain model for a single coin, using precise number types like BigDecimal for financial data.

Link copied to clipboard
data class CoinMarket(val id: String, val symbol: String, val name: String, val imageUrl: String, val currentPrice: Double, val marketCap: Long, val marketCapRank: Int, val fullyDilutedValuation: Long?, val totalVolume: Double, val high24h: Double?, val low24h: Double?, val priceChange24h: Double?, val priceChangePercentage24h: Double?, val marketCapChange24h: Double?, val marketCapChangePercentage24h: Double?, val circulatingSupply: Double, val totalSupply: Double?, val maxSupply: Double?, val ath: Double, val athChangePercentage: Double, val athDate: Instant, val atl: Double, val atlChangePercentage: Double, val atlDate: Instant, val roi: Roi? = null, val lastUpdated: Instant?) : Parcelable
Link copied to clipboard
data class Image(val thumb: String, val small: String, val large: String)

Represents the nested image URLs.

Link copied to clipboard
data class Links(val homepage: List<String?>, val blockchainSite: List<String?>, val officialForumUrl: List<String?>, val reposUrl: ReposUrl, val subredditUrl: String? = null)

Represents the nested links object.

Link copied to clipboard
data class Localization(val en: String?, val de: String?, val es: String?, val fr: String?)

Represents localized string data for descriptions.

Link copied to clipboard
data class MarketData(val currentPrice: Map<String, BigDecimal>, val ath: Map<String, BigDecimal>, val athChangePercentage: Map<String, BigDecimal>, val athDate: Map<String, Instant>, val atl: Map<String, BigDecimal>, val atlChangePercentage: Map<String, BigDecimal>, val atlDate: Map<String, Instant>, val marketCap: Map<String, BigDecimal>, val marketCapRank: Int?, val fullyDilutedValuation: Map<String, BigDecimal?>, val totalVolume: Map<String, BigDecimal>, val high24h: Map<String, BigDecimal?>, val low24h: Map<String, BigDecimal?>, val priceChange24hInCurrency: Map<String, BigDecimal?>, val priceChangePercentage24hInCurrency: Map<String, BigDecimal?>, val marketCapChange24hInCurrency: Map<String, BigDecimal?>, val marketCapChangePercentage24hInCurrency: Map<String, BigDecimal?>, val circulatingSupply: BigDecimal, val totalSupply: BigDecimal?, val maxSupply: BigDecimal?)

Represents the core market data, using BigDecimal for all monetary and high-precision supply values.

Link copied to clipboard
data class ReposUrl(val github: List<String?>, val bitbucket: List<String?>)

Represents repository URLs.

Link copied to clipboard
data class Roi(val times: Double, val currency: String, val percentage: Double) : Parcelable

Represents the ROI (Return on Investment) data, which can be null. The actual fields might be different if the object is present.