Package com.github.reviversmc.themodindex.api.data

Types

Link copied to clipboard
data class IndexJson(    val indexVersion: String,     val identifiers: List<String>,     val eolEpochTime: Long?)

Represents the index.json file found in the mod index.

Link copied to clipboard
data class ManifestJson(    val indexVersion: String,     val genericIdentifier: String,     val fancyName: String,     val author: String,     val license: String?,     val curseForgeId: Int?,     val modrinthId: String?,     val links: ManifestLinks,     val files: List<VersionFile>)

A manifest for a mod. The same mod meant for different mod loaders (e.g. Quilt, Fabric, Forge, etc.) will have different manifests.

Link copied to clipboard
data class ManifestJsonWithOverrides(    val indexVersion: String,     val genericIdentifier: String,     val fancyName: String,     val author: String,     val license: String?,     val curseForgeId: Int?,     val modrinthId: String?,     val links: ManifestLinks,     val files: List<VersionFile>,     val overrides: Overrides?)

A manifest for a mod. The same mod meant for different mod loaders (e.g. Quilt, Fabric, Forge, etc.) will have different manifests.

Link copied to clipboard
data class ManifestLinks(    val issue: String?,     val sourceControl: String?,     val others: List<ManifestLinks.OtherLink>)

A couple of links related to the mod.

Link copied to clipboard
data class ManifestOverrideLinks(    val issue: String?,     val sourceControl: String?,     val others: OverrideSelection<List<ManifestLinks.OtherLink>>?)

Overridden links related to the mod.

Link copied to clipboard
data class Overrides(    val genericIdentifier: String?,     val fancyName: String?,     val author: String?,     val license: String?,     val curseForgeId: Int?,     val modrinthId: String?,     val links: ManifestOverrideLinks?,     val files: OverrideSelection<List<VersionOverrideFile>>?)

The possible overrideable fields in the manifest.

Link copied to clipboard
data class OverrideSelection<T>(    val add: T?,     val remove: List<String>?,     val replace: T?)

Selections for the overrides, intended mainly at Lists to override. replace is valued over remove, and remove is valued over add.

Link copied to clipboard
data class RelationsToOtherMods(val required: List<String>, val incompatible: List<String>)

Relations (i.e. dependencies/conflicts) to other mods, in the form of generic identifiers (i.e. "{mod loader}:{mod name}").

Link copied to clipboard
data class VersionFile(    val fileName: String,     val mcVersions: List<String>,     val shortSha512Hash: String,     val downloadUrls: List<String>,     val curseDownloadAvailable: Boolean,     val relationsToOtherMods: RelationsToOtherMods)

File versions for the mod.

Link copied to clipboard
data class VersionOverrideFile(    val fileName: String,     val mcVersions: OverrideSelection<List<String>>,     val shortSha512Hash: String,     val downloadUrls: OverrideSelection<List<String>>,     val curseDownloadAvailable: Boolean,     val relationsToOtherMods: OverrideSelection<RelationsToOtherMods>)

Overridden file versions for the mod.