diff --git a/.github/workflows/api-check.yml b/.github/workflows/api-check.yml new file mode 100644 index 00000000..7316af8d --- /dev/null +++ b/.github/workflows/api-check.yml @@ -0,0 +1,26 @@ +name: 'API Check' + +on: + pull_request: + branches: [ 'main' ] + +jobs: + api-check: + name: 'API Check' + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v4 + + - name: Set up Java + uses: actions/setup-java@v5 + with: + java-version: '21' + distribution: 'zulu' + + - name: Binary Compatibility + run: ./gradlew checkLegacyAbi + + - name: Documentation + if: success() || failure() + run: ./gradlew dokkaGenerate diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index b4a90d15..9abe723b 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -6,7 +6,6 @@ on: branches: [ 'main', '[0-9]+.[0-9]+', '[0-9]+.[0-9]+.[0-9]+' ] env: - GIT_REF: ${{ github.ref }} ORG_GRADLE_PROJECT_signingInMemoryKey: ${{ secrets.SIGNING_KEY }} ORG_GRADLE_PROJECT_signingInMemoryKeyId: ${{ secrets.SIGNING_KEY_ID }} ORG_GRADLE_PROJECT_signingInMemoryKeyPassword: ${{ secrets.SIGNING_PASSWORD }} @@ -17,16 +16,25 @@ jobs: windows: name: "Publish: multiplatform, jvm, js, linux, mingw" runs-on: windows-latest + steps: - uses: actions/checkout@v4 + + - name: 'Set Gradle project version' + if: ${{ startsWith(github.ref, 'refs/tags/v') }} + shell: bash + run: echo "ORG_GRADLE_PROJECT_version=${GITHUB_REF_NAME#v}" >> $GITHUB_ENV + - name: Set up Java uses: actions/setup-java@v5 with: java-version: '21' distribution: 'zulu' + - name: Clean if: ${{ false }} # Skip, since it fails on Windows: https://youtrack.jetbrains.com/issue/KT-50545/ run: .\gradlew.bat clean + - name: Publish to Maven run: >- .\gradlew.bat @@ -40,15 +48,24 @@ jobs: macos: name: "Publish: macos, ios, watchos" runs-on: macos-latest + steps: - uses: actions/checkout@v4 + + - name: 'Set Gradle project version' + if: ${{ startsWith(github.ref, 'refs/tags/v') }} + shell: bash + run: echo "ORG_GRADLE_PROJECT_version=${GITHUB_REF_NAME#v}" >> $GITHUB_ENV + - name: Set up Java uses: actions/setup-java@v5 with: java-version: '21' distribution: 'zulu' + - name: Clean run: ./gradlew clean + - name: Publish to Maven run: >- ./gradlew @@ -65,3 +82,45 @@ jobs: publishTvosArm64PublicationToMavenCentralRepository publishIosArm64PublicationToMavenCentralRepository publishWatchosDeviceArm64PublicationToMavenCentralRepository + + publish-kdoc: + name: 'Publish KDoc' + needs: [windows, macos] + + # Only publish KDoc for tagged versions + if: ${{ startsWith(github.ref, 'refs/tags/v') }} + + permissions: + pages: write + id-token: write + + environment: + name: github-pages + url: ${{ steps.deployment.outputs.page_url }} + + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + + - name: 'Set Gradle project version' + if: ${{ startsWith(github.ref, 'refs/tags/v') }} + shell: bash + run: echo "ORG_GRADLE_PROJECT_version=${GITHUB_REF_NAME#v}" >> $GITHUB_ENV + + - name: Set up Java + uses: actions/setup-java@v5 + with: + java-version: '21' + distribution: 'zulu' + + - name: Build KDoc + run: ./gradlew dokkaGenerate + + - name: Upload artifact + uses: actions/upload-pages-artifact@v3 + with: + path: './build/dokka/html' + + - name: Deploy to GitHub Pages + id: deployment + uses: actions/deploy-pages@v4 diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 0dc43210..f4389bea 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -6,46 +6,58 @@ jobs: ubuntu: name: "Test: jvm, js, linux" runs-on: ubuntu-latest + steps: - uses: actions/checkout@v4 + - name: Set up Java uses: actions/setup-java@v5 with: java-version: '21' distribution: 'zulu' + - name: Clean run: ./gradlew clean + - name: Test run: ./gradlew jvmTest jsTest linuxX64Test windows: name: "Test: mingw" runs-on: windows-latest + steps: - uses: actions/checkout@v4 + - name: Set up Java uses: actions/setup-java@v5 with: java-version: '21' distribution: 'zulu' + - name: Clean if: ${{ false }} # Skip, since it fails on Windows: https://youtrack.jetbrains.com/issue/KT-50545/ run: .\gradlew.bat clean + - name: Test run: .\gradlew.bat mingwX64Test macos: name: "Test: macos, ios, watchos, tvos" runs-on: macos-latest + steps: - uses: actions/checkout@v4 + - name: Set up Java uses: actions/setup-java@v5 with: java-version: '21' distribution: 'zulu' + - name: Clean run: ./gradlew clean + - name: Test run: > ./gradlew diff --git a/api/knbt.api b/api/knbt.api index 254ef5ce..80920f5a 100644 --- a/api/knbt.api +++ b/api/knbt.api @@ -95,6 +95,10 @@ public final class net/benwoodworth/knbt/NbtByteArray : java/util/List, kotlin/j public synthetic fun add (Ljava/lang/Object;)Z public fun addAll (ILjava/util/Collection;)Z public fun addAll (Ljava/util/Collection;)Z + public fun addFirst (Ljava/lang/Byte;)V + public synthetic fun addFirst (Ljava/lang/Object;)V + public fun addLast (Ljava/lang/Byte;)V + public synthetic fun addLast (Ljava/lang/Object;)V public fun clear ()V public fun contains (B)Z public final fun contains (Ljava/lang/Object;)Z @@ -118,6 +122,10 @@ public final class net/benwoodworth/knbt/NbtByteArray : java/util/List, kotlin/j public synthetic fun remove (I)Ljava/lang/Object; public fun remove (Ljava/lang/Object;)Z public fun removeAll (Ljava/util/Collection;)Z + public fun removeFirst ()Ljava/lang/Byte; + public synthetic fun removeFirst ()Ljava/lang/Object; + public fun removeLast ()Ljava/lang/Byte; + public synthetic fun removeLast ()Ljava/lang/Object; public fun replaceAll (Ljava/util/function/UnaryOperator;)V public fun retainAll (Ljava/util/Collection;)Z public fun set (IB)Ljava/lang/Byte; @@ -396,6 +404,10 @@ public final class net/benwoodworth/knbt/NbtIntArray : java/util/List, kotlin/jv public synthetic fun add (Ljava/lang/Object;)Z public fun addAll (ILjava/util/Collection;)Z public fun addAll (Ljava/util/Collection;)Z + public fun addFirst (Ljava/lang/Integer;)V + public synthetic fun addFirst (Ljava/lang/Object;)V + public fun addLast (Ljava/lang/Integer;)V + public synthetic fun addLast (Ljava/lang/Object;)V public fun clear ()V public fun contains (I)Z public final fun contains (Ljava/lang/Object;)Z @@ -419,6 +431,10 @@ public final class net/benwoodworth/knbt/NbtIntArray : java/util/List, kotlin/jv public synthetic fun remove (I)Ljava/lang/Object; public fun remove (Ljava/lang/Object;)Z public fun removeAll (Ljava/util/Collection;)Z + public fun removeFirst ()Ljava/lang/Integer; + public synthetic fun removeFirst ()Ljava/lang/Object; + public fun removeLast ()Ljava/lang/Integer; + public synthetic fun removeLast ()Ljava/lang/Object; public fun replaceAll (Ljava/util/function/UnaryOperator;)V public fun retainAll (Ljava/util/Collection;)Z public fun set (II)Ljava/lang/Integer; @@ -449,6 +465,10 @@ public final class net/benwoodworth/knbt/NbtList : java/util/List, kotlin/jvm/in public fun add (Lnet/benwoodworth/knbt/NbtTag;)Z public fun addAll (ILjava/util/Collection;)Z public fun addAll (Ljava/util/Collection;)Z + public synthetic fun addFirst (Ljava/lang/Object;)V + public fun addFirst (Lnet/benwoodworth/knbt/NbtTag;)V + public synthetic fun addLast (Ljava/lang/Object;)V + public fun addLast (Lnet/benwoodworth/knbt/NbtTag;)V public fun clear ()V public final fun contains (Ljava/lang/Object;)Z public fun contains (Lnet/benwoodworth/knbt/NbtTag;)Z @@ -471,6 +491,10 @@ public final class net/benwoodworth/knbt/NbtList : java/util/List, kotlin/jvm/in public fun remove (I)Lnet/benwoodworth/knbt/NbtTag; public fun remove (Ljava/lang/Object;)Z public fun removeAll (Ljava/util/Collection;)Z + public synthetic fun removeFirst ()Ljava/lang/Object; + public fun removeFirst ()Lnet/benwoodworth/knbt/NbtTag; + public synthetic fun removeLast ()Ljava/lang/Object; + public fun removeLast ()Lnet/benwoodworth/knbt/NbtTag; public fun replaceAll (Ljava/util/function/UnaryOperator;)V public fun retainAll (Ljava/util/Collection;)Z public synthetic fun set (ILjava/lang/Object;)Ljava/lang/Object; @@ -538,6 +562,10 @@ public final class net/benwoodworth/knbt/NbtLongArray : java/util/List, kotlin/j public synthetic fun add (Ljava/lang/Object;)Z public fun addAll (ILjava/util/Collection;)Z public fun addAll (Ljava/util/Collection;)Z + public fun addFirst (Ljava/lang/Long;)V + public synthetic fun addFirst (Ljava/lang/Object;)V + public fun addLast (Ljava/lang/Long;)V + public synthetic fun addLast (Ljava/lang/Object;)V public fun clear ()V public fun contains (J)Z public final fun contains (Ljava/lang/Object;)Z @@ -561,6 +589,10 @@ public final class net/benwoodworth/knbt/NbtLongArray : java/util/List, kotlin/j public synthetic fun remove (I)Ljava/lang/Object; public fun remove (Ljava/lang/Object;)Z public fun removeAll (Ljava/util/Collection;)Z + public fun removeFirst ()Ljava/lang/Long; + public synthetic fun removeFirst ()Ljava/lang/Object; + public fun removeLast ()Ljava/lang/Long; + public synthetic fun removeLast ()Ljava/lang/Object; public fun replaceAll (Ljava/util/function/UnaryOperator;)V public fun retainAll (Ljava/util/Collection;)Z public fun set (IJ)Ljava/lang/Long; diff --git a/api/knbt.klib.api b/api/knbt.klib.api new file mode 100644 index 00000000..355b4244 --- /dev/null +++ b/api/knbt.klib.api @@ -0,0 +1,689 @@ +// Klib ABI Dump +// Targets: [iosArm64, iosSimulatorArm64, iosX64, js, linuxArm64, linuxX64, macosArm64, macosX64, mingwX64, tvosArm64, tvosSimulatorArm64, tvosX64, watchosArm32, watchosArm64, watchosDeviceArm64, watchosSimulatorArm64, watchosX64] +// Rendering settings: +// - Signature version: 2 +// - Show manifest properties: true +// - Show declarations: true + +// Library unique name: +open annotation class net.benwoodworth.knbt/ExperimentalNbtApi : kotlin/Annotation { // net.benwoodworth.knbt/ExperimentalNbtApi|null[0] + constructor () // net.benwoodworth.knbt/ExperimentalNbtApi.|(){}[0] +} + +open annotation class net.benwoodworth.knbt/OkioApi : kotlin/Annotation { // net.benwoodworth.knbt/OkioApi|null[0] + constructor () // net.benwoodworth.knbt/OkioApi.|(){}[0] +} + +final enum class net.benwoodworth.knbt.internal/NbtTagType : kotlin/Enum { // net.benwoodworth.knbt.internal/NbtTagType|null[0] + enum entry TAG_Byte // net.benwoodworth.knbt.internal/NbtTagType.TAG_Byte|null[0] + enum entry TAG_Byte_Array // net.benwoodworth.knbt.internal/NbtTagType.TAG_Byte_Array|null[0] + enum entry TAG_Compound // net.benwoodworth.knbt.internal/NbtTagType.TAG_Compound|null[0] + enum entry TAG_Double // net.benwoodworth.knbt.internal/NbtTagType.TAG_Double|null[0] + enum entry TAG_End // net.benwoodworth.knbt.internal/NbtTagType.TAG_End|null[0] + enum entry TAG_Float // net.benwoodworth.knbt.internal/NbtTagType.TAG_Float|null[0] + enum entry TAG_Int // net.benwoodworth.knbt.internal/NbtTagType.TAG_Int|null[0] + enum entry TAG_Int_Array // net.benwoodworth.knbt.internal/NbtTagType.TAG_Int_Array|null[0] + enum entry TAG_List // net.benwoodworth.knbt.internal/NbtTagType.TAG_List|null[0] + enum entry TAG_Long // net.benwoodworth.knbt.internal/NbtTagType.TAG_Long|null[0] + enum entry TAG_Long_Array // net.benwoodworth.knbt.internal/NbtTagType.TAG_Long_Array|null[0] + enum entry TAG_Short // net.benwoodworth.knbt.internal/NbtTagType.TAG_Short|null[0] + enum entry TAG_String // net.benwoodworth.knbt.internal/NbtTagType.TAG_String|null[0] + + final val entries // net.benwoodworth.knbt.internal/NbtTagType.entries|#static{}entries[0] + final fun (): kotlin.enums/EnumEntries // net.benwoodworth.knbt.internal/NbtTagType.entries.|#static(){}[0] + + final fun valueOf(kotlin/String): net.benwoodworth.knbt.internal/NbtTagType // net.benwoodworth.knbt.internal/NbtTagType.valueOf|valueOf#static(kotlin.String){}[0] + final fun values(): kotlin/Array // net.benwoodworth.knbt.internal/NbtTagType.values|values#static(){}[0] +} + +sealed interface net.benwoodworth.knbt/CompositeNbtDecoder : kotlinx.serialization.encoding/CompositeDecoder { // net.benwoodworth.knbt/CompositeNbtDecoder|null[0] + abstract val nbt // net.benwoodworth.knbt/CompositeNbtDecoder.nbt|{}nbt[0] + abstract fun (): net.benwoodworth.knbt/NbtFormat // net.benwoodworth.knbt/CompositeNbtDecoder.nbt.|(){}[0] + + abstract fun decodeByteArrayElement(kotlinx.serialization.descriptors/SerialDescriptor, kotlin/Int): kotlin/ByteArray // net.benwoodworth.knbt/CompositeNbtDecoder.decodeByteArrayElement|decodeByteArrayElement(kotlinx.serialization.descriptors.SerialDescriptor;kotlin.Int){}[0] + abstract fun decodeIntArrayElement(kotlinx.serialization.descriptors/SerialDescriptor, kotlin/Int): kotlin/IntArray // net.benwoodworth.knbt/CompositeNbtDecoder.decodeIntArrayElement|decodeIntArrayElement(kotlinx.serialization.descriptors.SerialDescriptor;kotlin.Int){}[0] + abstract fun decodeLongArrayElement(kotlinx.serialization.descriptors/SerialDescriptor, kotlin/Int): kotlin/LongArray // net.benwoodworth.knbt/CompositeNbtDecoder.decodeLongArrayElement|decodeLongArrayElement(kotlinx.serialization.descriptors.SerialDescriptor;kotlin.Int){}[0] + abstract fun decodeNbtTagElement(kotlinx.serialization.descriptors/SerialDescriptor, kotlin/Int): net.benwoodworth.knbt/NbtTag // net.benwoodworth.knbt/CompositeNbtDecoder.decodeNbtTagElement|decodeNbtTagElement(kotlinx.serialization.descriptors.SerialDescriptor;kotlin.Int){}[0] +} + +sealed interface net.benwoodworth.knbt/CompositeNbtEncoder : kotlinx.serialization.encoding/CompositeEncoder { // net.benwoodworth.knbt/CompositeNbtEncoder|null[0] + abstract val nbt // net.benwoodworth.knbt/CompositeNbtEncoder.nbt|{}nbt[0] + abstract fun (): net.benwoodworth.knbt/NbtFormat // net.benwoodworth.knbt/CompositeNbtEncoder.nbt.|(){}[0] + + abstract fun encodeByteArrayElement(kotlinx.serialization.descriptors/SerialDescriptor, kotlin/Int, kotlin/ByteArray) // net.benwoodworth.knbt/CompositeNbtEncoder.encodeByteArrayElement|encodeByteArrayElement(kotlinx.serialization.descriptors.SerialDescriptor;kotlin.Int;kotlin.ByteArray){}[0] + abstract fun encodeIntArrayElement(kotlinx.serialization.descriptors/SerialDescriptor, kotlin/Int, kotlin/IntArray) // net.benwoodworth.knbt/CompositeNbtEncoder.encodeIntArrayElement|encodeIntArrayElement(kotlinx.serialization.descriptors.SerialDescriptor;kotlin.Int;kotlin.IntArray){}[0] + abstract fun encodeLongArrayElement(kotlinx.serialization.descriptors/SerialDescriptor, kotlin/Int, kotlin/LongArray) // net.benwoodworth.knbt/CompositeNbtEncoder.encodeLongArrayElement|encodeLongArrayElement(kotlinx.serialization.descriptors.SerialDescriptor;kotlin.Int;kotlin.LongArray){}[0] + abstract fun encodeNbtTagElement(kotlinx.serialization.descriptors/SerialDescriptor, kotlin/Int, net.benwoodworth.knbt/NbtTag) // net.benwoodworth.knbt/CompositeNbtEncoder.encodeNbtTagElement|encodeNbtTagElement(kotlinx.serialization.descriptors.SerialDescriptor;kotlin.Int;net.benwoodworth.knbt.NbtTag){}[0] +} + +sealed interface net.benwoodworth.knbt/NbtDecoder : kotlinx.serialization.encoding/Decoder { // net.benwoodworth.knbt/NbtDecoder|null[0] + abstract val nbt // net.benwoodworth.knbt/NbtDecoder.nbt|{}nbt[0] + abstract fun (): net.benwoodworth.knbt/NbtFormat // net.benwoodworth.knbt/NbtDecoder.nbt.|(){}[0] + + abstract fun beginByteArray(kotlinx.serialization.descriptors/SerialDescriptor): net.benwoodworth.knbt/CompositeNbtDecoder // net.benwoodworth.knbt/NbtDecoder.beginByteArray|beginByteArray(kotlinx.serialization.descriptors.SerialDescriptor){}[0] + abstract fun beginCompound(kotlinx.serialization.descriptors/SerialDescriptor): net.benwoodworth.knbt/CompositeNbtDecoder // net.benwoodworth.knbt/NbtDecoder.beginCompound|beginCompound(kotlinx.serialization.descriptors.SerialDescriptor){}[0] + abstract fun beginIntArray(kotlinx.serialization.descriptors/SerialDescriptor): net.benwoodworth.knbt/CompositeNbtDecoder // net.benwoodworth.knbt/NbtDecoder.beginIntArray|beginIntArray(kotlinx.serialization.descriptors.SerialDescriptor){}[0] + abstract fun beginList(kotlinx.serialization.descriptors/SerialDescriptor): net.benwoodworth.knbt/CompositeNbtDecoder // net.benwoodworth.knbt/NbtDecoder.beginList|beginList(kotlinx.serialization.descriptors.SerialDescriptor){}[0] + abstract fun beginLongArray(kotlinx.serialization.descriptors/SerialDescriptor): net.benwoodworth.knbt/CompositeNbtDecoder // net.benwoodworth.knbt/NbtDecoder.beginLongArray|beginLongArray(kotlinx.serialization.descriptors.SerialDescriptor){}[0] + abstract fun decodeByteArray(): kotlin/ByteArray // net.benwoodworth.knbt/NbtDecoder.decodeByteArray|decodeByteArray(){}[0] + abstract fun decodeIntArray(): kotlin/IntArray // net.benwoodworth.knbt/NbtDecoder.decodeIntArray|decodeIntArray(){}[0] + abstract fun decodeLongArray(): kotlin/LongArray // net.benwoodworth.knbt/NbtDecoder.decodeLongArray|decodeLongArray(){}[0] + abstract fun decodeNbtTag(): net.benwoodworth.knbt/NbtTag // net.benwoodworth.knbt/NbtDecoder.decodeNbtTag|decodeNbtTag(){}[0] +} + +sealed interface net.benwoodworth.knbt/NbtEncoder : kotlinx.serialization.encoding/Encoder { // net.benwoodworth.knbt/NbtEncoder|null[0] + abstract val nbt // net.benwoodworth.knbt/NbtEncoder.nbt|{}nbt[0] + abstract fun (): net.benwoodworth.knbt/NbtFormat // net.benwoodworth.knbt/NbtEncoder.nbt.|(){}[0] + + abstract fun beginByteArray(kotlinx.serialization.descriptors/SerialDescriptor, kotlin/Int): net.benwoodworth.knbt/CompositeNbtEncoder // net.benwoodworth.knbt/NbtEncoder.beginByteArray|beginByteArray(kotlinx.serialization.descriptors.SerialDescriptor;kotlin.Int){}[0] + abstract fun beginCompound(kotlinx.serialization.descriptors/SerialDescriptor): net.benwoodworth.knbt/CompositeNbtEncoder // net.benwoodworth.knbt/NbtEncoder.beginCompound|beginCompound(kotlinx.serialization.descriptors.SerialDescriptor){}[0] + abstract fun beginIntArray(kotlinx.serialization.descriptors/SerialDescriptor, kotlin/Int): net.benwoodworth.knbt/CompositeNbtEncoder // net.benwoodworth.knbt/NbtEncoder.beginIntArray|beginIntArray(kotlinx.serialization.descriptors.SerialDescriptor;kotlin.Int){}[0] + abstract fun beginList(kotlinx.serialization.descriptors/SerialDescriptor, kotlin/Int): net.benwoodworth.knbt/CompositeNbtEncoder // net.benwoodworth.knbt/NbtEncoder.beginList|beginList(kotlinx.serialization.descriptors.SerialDescriptor;kotlin.Int){}[0] + abstract fun beginLongArray(kotlinx.serialization.descriptors/SerialDescriptor, kotlin/Int): net.benwoodworth.knbt/CompositeNbtEncoder // net.benwoodworth.knbt/NbtEncoder.beginLongArray|beginLongArray(kotlinx.serialization.descriptors.SerialDescriptor;kotlin.Int){}[0] + abstract fun encodeByteArray(kotlin/ByteArray) // net.benwoodworth.knbt/NbtEncoder.encodeByteArray|encodeByteArray(kotlin.ByteArray){}[0] + abstract fun encodeIntArray(kotlin/IntArray) // net.benwoodworth.knbt/NbtEncoder.encodeIntArray|encodeIntArray(kotlin.IntArray){}[0] + abstract fun encodeLongArray(kotlin/LongArray) // net.benwoodworth.knbt/NbtEncoder.encodeLongArray|encodeLongArray(kotlin.LongArray){}[0] + abstract fun encodeNbtTag(net.benwoodworth.knbt/NbtTag) // net.benwoodworth.knbt/NbtEncoder.encodeNbtTag|encodeNbtTag(net.benwoodworth.knbt.NbtTag){}[0] +} + +sealed interface net.benwoodworth.knbt/NbtFormat : kotlinx.serialization/SerialFormat { // net.benwoodworth.knbt/NbtFormat|null[0] + abstract val configuration // net.benwoodworth.knbt/NbtFormat.configuration|{}configuration[0] + abstract fun (): net.benwoodworth.knbt/NbtFormatConfiguration // net.benwoodworth.knbt/NbtFormat.configuration.|(){}[0] + + open fun <#A1: kotlin/Any?> decodeFromNbtTag(kotlinx.serialization/DeserializationStrategy<#A1>, net.benwoodworth.knbt/NbtTag): #A1 // net.benwoodworth.knbt/NbtFormat.decodeFromNbtTag|decodeFromNbtTag(kotlinx.serialization.DeserializationStrategy<0:0>;net.benwoodworth.knbt.NbtTag){0§}[0] + open fun <#A1: kotlin/Any?> encodeToNbtTag(kotlinx.serialization/SerializationStrategy<#A1>, #A1): net.benwoodworth.knbt/NbtTag // net.benwoodworth.knbt/NbtFormat.encodeToNbtTag|encodeToNbtTag(kotlinx.serialization.SerializationStrategy<0:0>;0:0){0§}[0] +} + +sealed interface net.benwoodworth.knbt/NbtFormatBuilder { // net.benwoodworth.knbt/NbtFormatBuilder|null[0] + abstract var classDiscriminator // net.benwoodworth.knbt/NbtFormatBuilder.classDiscriminator|{}classDiscriminator[0] + abstract fun (): kotlin/String // net.benwoodworth.knbt/NbtFormatBuilder.classDiscriminator.|(){}[0] + abstract fun (kotlin/String) // net.benwoodworth.knbt/NbtFormatBuilder.classDiscriminator.|(kotlin.String){}[0] + abstract var encodeDefaults // net.benwoodworth.knbt/NbtFormatBuilder.encodeDefaults|{}encodeDefaults[0] + abstract fun (): kotlin/Boolean // net.benwoodworth.knbt/NbtFormatBuilder.encodeDefaults.|(){}[0] + abstract fun (kotlin/Boolean) // net.benwoodworth.knbt/NbtFormatBuilder.encodeDefaults.|(kotlin.Boolean){}[0] + abstract var ignoreUnknownKeys // net.benwoodworth.knbt/NbtFormatBuilder.ignoreUnknownKeys|{}ignoreUnknownKeys[0] + abstract fun (): kotlin/Boolean // net.benwoodworth.knbt/NbtFormatBuilder.ignoreUnknownKeys.|(){}[0] + abstract fun (kotlin/Boolean) // net.benwoodworth.knbt/NbtFormatBuilder.ignoreUnknownKeys.|(kotlin.Boolean){}[0] + abstract var nameRootClasses // net.benwoodworth.knbt/NbtFormatBuilder.nameRootClasses|{}nameRootClasses[0] + abstract fun (): kotlin/Boolean // net.benwoodworth.knbt/NbtFormatBuilder.nameRootClasses.|(){}[0] + abstract fun (kotlin/Boolean) // net.benwoodworth.knbt/NbtFormatBuilder.nameRootClasses.|(kotlin.Boolean){}[0] + abstract var serializersModule // net.benwoodworth.knbt/NbtFormatBuilder.serializersModule|{}serializersModule[0] + abstract fun (): kotlinx.serialization.modules/SerializersModule // net.benwoodworth.knbt/NbtFormatBuilder.serializersModule.|(){}[0] + abstract fun (kotlinx.serialization.modules/SerializersModule) // net.benwoodworth.knbt/NbtFormatBuilder.serializersModule.|(kotlinx.serialization.modules.SerializersModule){}[0] +} + +sealed interface net.benwoodworth.knbt/NbtFormatConfiguration { // net.benwoodworth.knbt/NbtFormatConfiguration|null[0] + abstract val classDiscriminator // net.benwoodworth.knbt/NbtFormatConfiguration.classDiscriminator|{}classDiscriminator[0] + abstract fun (): kotlin/String // net.benwoodworth.knbt/NbtFormatConfiguration.classDiscriminator.|(){}[0] + abstract val encodeDefaults // net.benwoodworth.knbt/NbtFormatConfiguration.encodeDefaults|{}encodeDefaults[0] + abstract fun (): kotlin/Boolean // net.benwoodworth.knbt/NbtFormatConfiguration.encodeDefaults.|(){}[0] + abstract val ignoreUnknownKeys // net.benwoodworth.knbt/NbtFormatConfiguration.ignoreUnknownKeys|{}ignoreUnknownKeys[0] + abstract fun (): kotlin/Boolean // net.benwoodworth.knbt/NbtFormatConfiguration.ignoreUnknownKeys.|(){}[0] + abstract val nameRootClasses // net.benwoodworth.knbt/NbtFormatConfiguration.nameRootClasses|{}nameRootClasses[0] + abstract fun (): kotlin/Boolean // net.benwoodworth.knbt/NbtFormatConfiguration.nameRootClasses.|(){}[0] +} + +sealed interface net.benwoodworth.knbt/NbtTag { // net.benwoodworth.knbt/NbtTag|null[0] + abstract val type // net.benwoodworth.knbt/NbtTag.type|{}type[0] + abstract fun (): net.benwoodworth.knbt.internal/NbtTagType // net.benwoodworth.knbt/NbtTag.type.|(){}[0] + + final object Companion : kotlinx.serialization.internal/SerializerFactory { // net.benwoodworth.knbt/NbtTag.Companion|null[0] + final fun serializer(): kotlinx.serialization/KSerializer // net.benwoodworth.knbt/NbtTag.Companion.serializer|serializer(){}[0] + final fun serializer(kotlin/Array>...): kotlinx.serialization/KSerializer<*> // net.benwoodworth.knbt/NbtTag.Companion.serializer|serializer(kotlin.Array>...){}[0] + } +} + +abstract class <#A: kotlin/Any> net.benwoodworth.knbt/NbtContentPolymorphicSerializer : kotlinx.serialization/KSerializer<#A> { // net.benwoodworth.knbt/NbtContentPolymorphicSerializer|null[0] + constructor (kotlin.reflect/KClass<#A>) // net.benwoodworth.knbt/NbtContentPolymorphicSerializer.|(kotlin.reflect.KClass<1:0>){}[0] + + open val descriptor // net.benwoodworth.knbt/NbtContentPolymorphicSerializer.descriptor|{}descriptor[0] + open fun (): kotlinx.serialization.descriptors/SerialDescriptor // net.benwoodworth.knbt/NbtContentPolymorphicSerializer.descriptor.|(){}[0] + + abstract fun selectDeserializer(net.benwoodworth.knbt/NbtTag): kotlinx.serialization/DeserializationStrategy<#A> // net.benwoodworth.knbt/NbtContentPolymorphicSerializer.selectDeserializer|selectDeserializer(net.benwoodworth.knbt.NbtTag){}[0] + final fun deserialize(kotlinx.serialization.encoding/Decoder): #A // net.benwoodworth.knbt/NbtContentPolymorphicSerializer.deserialize|deserialize(kotlinx.serialization.encoding.Decoder){}[0] + final fun serialize(kotlinx.serialization.encoding/Encoder, #A) // net.benwoodworth.knbt/NbtContentPolymorphicSerializer.serialize|serialize(kotlinx.serialization.encoding.Encoder;1:0){}[0] +} + +abstract class <#A: kotlin/Any> net.benwoodworth.knbt/NbtTransformingSerializer : kotlinx.serialization/KSerializer<#A> { // net.benwoodworth.knbt/NbtTransformingSerializer|null[0] + constructor (kotlinx.serialization/KSerializer<#A>) // net.benwoodworth.knbt/NbtTransformingSerializer.|(kotlinx.serialization.KSerializer<1:0>){}[0] + + open val descriptor // net.benwoodworth.knbt/NbtTransformingSerializer.descriptor|{}descriptor[0] + open fun (): kotlinx.serialization.descriptors/SerialDescriptor // net.benwoodworth.knbt/NbtTransformingSerializer.descriptor.|(){}[0] + + final fun deserialize(kotlinx.serialization.encoding/Decoder): #A // net.benwoodworth.knbt/NbtTransformingSerializer.deserialize|deserialize(kotlinx.serialization.encoding.Decoder){}[0] + final fun serialize(kotlinx.serialization.encoding/Encoder, #A) // net.benwoodworth.knbt/NbtTransformingSerializer.serialize|serialize(kotlinx.serialization.encoding.Encoder;1:0){}[0] + open fun transformDeserialize(net.benwoodworth.knbt/NbtTag): net.benwoodworth.knbt/NbtTag // net.benwoodworth.knbt/NbtTransformingSerializer.transformDeserialize|transformDeserialize(net.benwoodworth.knbt.NbtTag){}[0] + open fun transformSerialize(net.benwoodworth.knbt/NbtTag): net.benwoodworth.knbt/NbtTag // net.benwoodworth.knbt/NbtTransformingSerializer.transformSerialize|transformSerialize(net.benwoodworth.knbt.NbtTag){}[0] +} + +abstract class net.benwoodworth.knbt/NbtCompression { // net.benwoodworth.knbt/NbtCompression|null[0] + final object Companion // net.benwoodworth.knbt/NbtCompression.Companion|null[0] + + final object Gzip : net.benwoodworth.knbt/NbtCompression { // net.benwoodworth.knbt/NbtCompression.Gzip|null[0] + final fun equals(kotlin/Any?): kotlin/Boolean // net.benwoodworth.knbt/NbtCompression.Gzip.equals|equals(kotlin.Any?){}[0] + final fun hashCode(): kotlin/Int // net.benwoodworth.knbt/NbtCompression.Gzip.hashCode|hashCode(){}[0] + final fun toString(): kotlin/String // net.benwoodworth.knbt/NbtCompression.Gzip.toString|toString(){}[0] + } + + final object None : net.benwoodworth.knbt/NbtCompression { // net.benwoodworth.knbt/NbtCompression.None|null[0] + final fun equals(kotlin/Any?): kotlin/Boolean // net.benwoodworth.knbt/NbtCompression.None.equals|equals(kotlin.Any?){}[0] + final fun hashCode(): kotlin/Int // net.benwoodworth.knbt/NbtCompression.None.hashCode|hashCode(){}[0] + final fun toString(): kotlin/String // net.benwoodworth.knbt/NbtCompression.None.toString|toString(){}[0] + } + + final object Zlib : net.benwoodworth.knbt/NbtCompression { // net.benwoodworth.knbt/NbtCompression.Zlib|null[0] + final fun equals(kotlin/Any?): kotlin/Boolean // net.benwoodworth.knbt/NbtCompression.Zlib.equals|equals(kotlin.Any?){}[0] + final fun hashCode(): kotlin/Int // net.benwoodworth.knbt/NbtCompression.Zlib.hashCode|hashCode(){}[0] + final fun toString(): kotlin/String // net.benwoodworth.knbt/NbtCompression.Zlib.toString|toString(){}[0] + } +} + +abstract class net.benwoodworth.knbt/NbtVariant { // net.benwoodworth.knbt/NbtVariant|null[0] + final object Bedrock : net.benwoodworth.knbt/NbtVariant { // net.benwoodworth.knbt/NbtVariant.Bedrock|null[0] + final fun equals(kotlin/Any?): kotlin/Boolean // net.benwoodworth.knbt/NbtVariant.Bedrock.equals|equals(kotlin.Any?){}[0] + final fun hashCode(): kotlin/Int // net.benwoodworth.knbt/NbtVariant.Bedrock.hashCode|hashCode(){}[0] + final fun toString(): kotlin/String // net.benwoodworth.knbt/NbtVariant.Bedrock.toString|toString(){}[0] + } + + final object BedrockNetwork : net.benwoodworth.knbt/NbtVariant { // net.benwoodworth.knbt/NbtVariant.BedrockNetwork|null[0] + final fun equals(kotlin/Any?): kotlin/Boolean // net.benwoodworth.knbt/NbtVariant.BedrockNetwork.equals|equals(kotlin.Any?){}[0] + final fun hashCode(): kotlin/Int // net.benwoodworth.knbt/NbtVariant.BedrockNetwork.hashCode|hashCode(){}[0] + final fun toString(): kotlin/String // net.benwoodworth.knbt/NbtVariant.BedrockNetwork.toString|toString(){}[0] + } + + final object Java : net.benwoodworth.knbt/NbtVariant { // net.benwoodworth.knbt/NbtVariant.Java|null[0] + final fun equals(kotlin/Any?): kotlin/Boolean // net.benwoodworth.knbt/NbtVariant.Java.equals|equals(kotlin.Any?){}[0] + final fun hashCode(): kotlin/Int // net.benwoodworth.knbt/NbtVariant.Java.hashCode|hashCode(){}[0] + final fun toString(): kotlin/String // net.benwoodworth.knbt/NbtVariant.Java.toString|toString(){}[0] + } +} + +final class <#A: net.benwoodworth.knbt/NbtTag> net.benwoodworth.knbt/NbtListBuilder { // net.benwoodworth.knbt/NbtListBuilder|null[0] + constructor (kotlin/Int = ...) // net.benwoodworth.knbt/NbtListBuilder.|(kotlin.Int){}[0] + + final fun add(#A): kotlin/Boolean // net.benwoodworth.knbt/NbtListBuilder.add|add(1:0){}[0] + final fun build(): net.benwoodworth.knbt/NbtList<#A> // net.benwoodworth.knbt/NbtListBuilder.build|build(){}[0] +} + +final class <#A: out net.benwoodworth.knbt/NbtTag> net.benwoodworth.knbt/NbtList : kotlin.collections/List<#A>, net.benwoodworth.knbt/NbtTag { // net.benwoodworth.knbt/NbtList|null[0] + final val size // net.benwoodworth.knbt/NbtList.size|{}size[0] + final fun (): kotlin/Int // net.benwoodworth.knbt/NbtList.size.|(){}[0] + final val type // net.benwoodworth.knbt/NbtList.type|{}type[0] + final fun (): net.benwoodworth.knbt.internal/NbtTagType // net.benwoodworth.knbt/NbtList.type.|(){}[0] + + final fun contains(#A): kotlin/Boolean // net.benwoodworth.knbt/NbtList.contains|contains(1:0){}[0] + final fun containsAll(kotlin.collections/Collection<#A>): kotlin/Boolean // net.benwoodworth.knbt/NbtList.containsAll|containsAll(kotlin.collections.Collection<1:0>){}[0] + final fun equals(kotlin/Any?): kotlin/Boolean // net.benwoodworth.knbt/NbtList.equals|equals(kotlin.Any?){}[0] + final fun get(kotlin/Int): #A // net.benwoodworth.knbt/NbtList.get|get(kotlin.Int){}[0] + final fun hashCode(): kotlin/Int // net.benwoodworth.knbt/NbtList.hashCode|hashCode(){}[0] + final fun indexOf(#A): kotlin/Int // net.benwoodworth.knbt/NbtList.indexOf|indexOf(1:0){}[0] + final fun isEmpty(): kotlin/Boolean // net.benwoodworth.knbt/NbtList.isEmpty|isEmpty(){}[0] + final fun iterator(): kotlin.collections/Iterator<#A> // net.benwoodworth.knbt/NbtList.iterator|iterator(){}[0] + final fun lastIndexOf(#A): kotlin/Int // net.benwoodworth.knbt/NbtList.lastIndexOf|lastIndexOf(1:0){}[0] + final fun listIterator(): kotlin.collections/ListIterator<#A> // net.benwoodworth.knbt/NbtList.listIterator|listIterator(){}[0] + final fun listIterator(kotlin/Int): kotlin.collections/ListIterator<#A> // net.benwoodworth.knbt/NbtList.listIterator|listIterator(kotlin.Int){}[0] + final fun subList(kotlin/Int, kotlin/Int): kotlin.collections/List<#A> // net.benwoodworth.knbt/NbtList.subList|subList(kotlin.Int;kotlin.Int){}[0] + final fun toString(): kotlin/String // net.benwoodworth.knbt/NbtList.toString|toString(){}[0] + + final object Companion : kotlinx.serialization.internal/SerializerFactory { // net.benwoodworth.knbt/NbtList.Companion|null[0] + final fun <#A2: kotlin/Any?> serializer(kotlinx.serialization/KSerializer<#A2>): kotlinx.serialization/KSerializer> // net.benwoodworth.knbt/NbtList.Companion.serializer|serializer(kotlinx.serialization.KSerializer<0:0>){0§}[0] + final fun <#A2: net.benwoodworth.knbt/NbtTag> of(kotlin/Array...): net.benwoodworth.knbt/NbtList<#A2> // net.benwoodworth.knbt/NbtList.Companion.of|of(kotlin.Array...){0§}[0] + final fun invoke(kotlin.collections/List): net.benwoodworth.knbt/NbtList // net.benwoodworth.knbt/NbtList.Companion.invoke|invoke(kotlin.collections.List){}[0] + final fun invoke(kotlin.collections/List): net.benwoodworth.knbt/NbtList // net.benwoodworth.knbt/NbtList.Companion.invoke|invoke(kotlin.collections.List){}[0] + final fun invoke(kotlin.collections/List): net.benwoodworth.knbt/NbtList // net.benwoodworth.knbt/NbtList.Companion.invoke|invoke(kotlin.collections.List){}[0] + final fun invoke(kotlin.collections/List): net.benwoodworth.knbt/NbtList // net.benwoodworth.knbt/NbtList.Companion.invoke|invoke(kotlin.collections.List){}[0] + final fun invoke(kotlin.collections/List): net.benwoodworth.knbt/NbtList // net.benwoodworth.knbt/NbtList.Companion.invoke|invoke(kotlin.collections.List){}[0] + final fun invoke(kotlin.collections/List): net.benwoodworth.knbt/NbtList // net.benwoodworth.knbt/NbtList.Companion.invoke|invoke(kotlin.collections.List){}[0] + final fun invoke(kotlin.collections/List): net.benwoodworth.knbt/NbtList // net.benwoodworth.knbt/NbtList.Companion.invoke|invoke(kotlin.collections.List){}[0] + final fun invoke(kotlin.collections/List>): net.benwoodworth.knbt/NbtList> // net.benwoodworth.knbt/NbtList.Companion.invoke|invoke(kotlin.collections.List>){}[0] + final fun invoke(kotlin.collections/List): net.benwoodworth.knbt/NbtList // net.benwoodworth.knbt/NbtList.Companion.invoke|invoke(kotlin.collections.List){}[0] + final fun invoke(kotlin.collections/List): net.benwoodworth.knbt/NbtList // net.benwoodworth.knbt/NbtList.Companion.invoke|invoke(kotlin.collections.List){}[0] + final fun invoke(kotlin.collections/List): net.benwoodworth.knbt/NbtList // net.benwoodworth.knbt/NbtList.Companion.invoke|invoke(kotlin.collections.List){}[0] + final fun invoke(kotlin.collections/List): net.benwoodworth.knbt/NbtList // net.benwoodworth.knbt/NbtList.Companion.invoke|invoke(kotlin.collections.List){}[0] + final fun serializer(kotlin/Array>...): kotlinx.serialization/KSerializer<*> // net.benwoodworth.knbt/NbtList.Companion.serializer|serializer(kotlin.Array>...){}[0] + } + + // Targets: [js] + final fun asJsReadonlyArrayView(): kotlin.js.collections/JsReadonlyArray<#A> // net.benwoodworth.knbt/NbtList.asJsReadonlyArrayView|asJsReadonlyArrayView(){}[0] +} + +final class net.benwoodworth.knbt/NbtBuilder : net.benwoodworth.knbt/NbtFormatBuilder { // net.benwoodworth.knbt/NbtBuilder|null[0] + final var classDiscriminator // net.benwoodworth.knbt/NbtBuilder.classDiscriminator|{}classDiscriminator[0] + final fun (): kotlin/String // net.benwoodworth.knbt/NbtBuilder.classDiscriminator.|(){}[0] + final fun (kotlin/String) // net.benwoodworth.knbt/NbtBuilder.classDiscriminator.|(kotlin.String){}[0] + final var compression // net.benwoodworth.knbt/NbtBuilder.compression|{}compression[0] + final fun (): net.benwoodworth.knbt/NbtCompression? // net.benwoodworth.knbt/NbtBuilder.compression.|(){}[0] + final fun (net.benwoodworth.knbt/NbtCompression?) // net.benwoodworth.knbt/NbtBuilder.compression.|(net.benwoodworth.knbt.NbtCompression?){}[0] + final var compressionLevel // net.benwoodworth.knbt/NbtBuilder.compressionLevel|{}compressionLevel[0] + final fun (): kotlin/Int? // net.benwoodworth.knbt/NbtBuilder.compressionLevel.|(){}[0] + final fun (kotlin/Int?) // net.benwoodworth.knbt/NbtBuilder.compressionLevel.|(kotlin.Int?){}[0] + final var encodeDefaults // net.benwoodworth.knbt/NbtBuilder.encodeDefaults|{}encodeDefaults[0] + final fun (): kotlin/Boolean // net.benwoodworth.knbt/NbtBuilder.encodeDefaults.|(){}[0] + final fun (kotlin/Boolean) // net.benwoodworth.knbt/NbtBuilder.encodeDefaults.|(kotlin.Boolean){}[0] + final var ignoreUnknownKeys // net.benwoodworth.knbt/NbtBuilder.ignoreUnknownKeys|{}ignoreUnknownKeys[0] + final fun (): kotlin/Boolean // net.benwoodworth.knbt/NbtBuilder.ignoreUnknownKeys.|(){}[0] + final fun (kotlin/Boolean) // net.benwoodworth.knbt/NbtBuilder.ignoreUnknownKeys.|(kotlin.Boolean){}[0] + final var nameRootClasses // net.benwoodworth.knbt/NbtBuilder.nameRootClasses|{}nameRootClasses[0] + final fun (): kotlin/Boolean // net.benwoodworth.knbt/NbtBuilder.nameRootClasses.|(){}[0] + final fun (kotlin/Boolean) // net.benwoodworth.knbt/NbtBuilder.nameRootClasses.|(kotlin.Boolean){}[0] + final var serializersModule // net.benwoodworth.knbt/NbtBuilder.serializersModule|{}serializersModule[0] + final fun (): kotlinx.serialization.modules/SerializersModule // net.benwoodworth.knbt/NbtBuilder.serializersModule.|(){}[0] + final fun (kotlinx.serialization.modules/SerializersModule) // net.benwoodworth.knbt/NbtBuilder.serializersModule.|(kotlinx.serialization.modules.SerializersModule){}[0] + final var variant // net.benwoodworth.knbt/NbtBuilder.variant|{}variant[0] + final fun (): net.benwoodworth.knbt/NbtVariant? // net.benwoodworth.knbt/NbtBuilder.variant.|(){}[0] + final fun (net.benwoodworth.knbt/NbtVariant?) // net.benwoodworth.knbt/NbtBuilder.variant.|(net.benwoodworth.knbt.NbtVariant?){}[0] +} + +final class net.benwoodworth.knbt/NbtByteArray : kotlin.collections/List, net.benwoodworth.knbt/NbtTag { // net.benwoodworth.knbt/NbtByteArray|null[0] + constructor (kotlin/ByteArray) // net.benwoodworth.knbt/NbtByteArray.|(kotlin.ByteArray){}[0] + + final val size // net.benwoodworth.knbt/NbtByteArray.size|{}size[0] + final fun (): kotlin/Int // net.benwoodworth.knbt/NbtByteArray.size.|(){}[0] + final val type // net.benwoodworth.knbt/NbtByteArray.type|{}type[0] + final fun (): net.benwoodworth.knbt.internal/NbtTagType // net.benwoodworth.knbt/NbtByteArray.type.|(){}[0] + + final fun contains(kotlin/Byte): kotlin/Boolean // net.benwoodworth.knbt/NbtByteArray.contains|contains(kotlin.Byte){}[0] + final fun containsAll(kotlin.collections/Collection): kotlin/Boolean // net.benwoodworth.knbt/NbtByteArray.containsAll|containsAll(kotlin.collections.Collection){}[0] + final fun equals(kotlin/Any?): kotlin/Boolean // net.benwoodworth.knbt/NbtByteArray.equals|equals(kotlin.Any?){}[0] + final fun get(kotlin/Int): kotlin/Byte // net.benwoodworth.knbt/NbtByteArray.get|get(kotlin.Int){}[0] + final fun hashCode(): kotlin/Int // net.benwoodworth.knbt/NbtByteArray.hashCode|hashCode(){}[0] + final fun indexOf(kotlin/Byte): kotlin/Int // net.benwoodworth.knbt/NbtByteArray.indexOf|indexOf(kotlin.Byte){}[0] + final fun isEmpty(): kotlin/Boolean // net.benwoodworth.knbt/NbtByteArray.isEmpty|isEmpty(){}[0] + final fun iterator(): kotlin.collections/ByteIterator // net.benwoodworth.knbt/NbtByteArray.iterator|iterator(){}[0] + final fun lastIndexOf(kotlin/Byte): kotlin/Int // net.benwoodworth.knbt/NbtByteArray.lastIndexOf|lastIndexOf(kotlin.Byte){}[0] + final fun listIterator(): kotlin.collections/ListIterator // net.benwoodworth.knbt/NbtByteArray.listIterator|listIterator(){}[0] + final fun listIterator(kotlin/Int): kotlin.collections/ListIterator // net.benwoodworth.knbt/NbtByteArray.listIterator|listIterator(kotlin.Int){}[0] + final fun subList(kotlin/Int, kotlin/Int): kotlin.collections/List // net.benwoodworth.knbt/NbtByteArray.subList|subList(kotlin.Int;kotlin.Int){}[0] + final fun toString(): kotlin/String // net.benwoodworth.knbt/NbtByteArray.toString|toString(){}[0] + + final object Companion { // net.benwoodworth.knbt/NbtByteArray.Companion|null[0] + final fun serializer(): kotlinx.serialization/KSerializer // net.benwoodworth.knbt/NbtByteArray.Companion.serializer|serializer(){}[0] + } + + // Targets: [js] + final fun asJsReadonlyArrayView(): kotlin.js.collections/JsReadonlyArray // net.benwoodworth.knbt/NbtByteArray.asJsReadonlyArrayView|asJsReadonlyArrayView(){}[0] +} + +final class net.benwoodworth.knbt/NbtCompound : kotlin.collections/Map, net.benwoodworth.knbt/NbtTag { // net.benwoodworth.knbt/NbtCompound|null[0] + constructor (kotlin.collections/Map) // net.benwoodworth.knbt/NbtCompound.|(kotlin.collections.Map){}[0] + + final val entries // net.benwoodworth.knbt/NbtCompound.entries|{}entries[0] + final fun (): kotlin.collections/Set> // net.benwoodworth.knbt/NbtCompound.entries.|(){}[0] + final val keys // net.benwoodworth.knbt/NbtCompound.keys|{}keys[0] + final fun (): kotlin.collections/Set // net.benwoodworth.knbt/NbtCompound.keys.|(){}[0] + final val size // net.benwoodworth.knbt/NbtCompound.size|{}size[0] + final fun (): kotlin/Int // net.benwoodworth.knbt/NbtCompound.size.|(){}[0] + final val type // net.benwoodworth.knbt/NbtCompound.type|{}type[0] + final fun (): net.benwoodworth.knbt.internal/NbtTagType // net.benwoodworth.knbt/NbtCompound.type.|(){}[0] + final val values // net.benwoodworth.knbt/NbtCompound.values|{}values[0] + final fun (): kotlin.collections/Collection // net.benwoodworth.knbt/NbtCompound.values.|(){}[0] + + final fun containsKey(kotlin/String): kotlin/Boolean // net.benwoodworth.knbt/NbtCompound.containsKey|containsKey(kotlin.String){}[0] + final fun containsValue(net.benwoodworth.knbt/NbtTag): kotlin/Boolean // net.benwoodworth.knbt/NbtCompound.containsValue|containsValue(net.benwoodworth.knbt.NbtTag){}[0] + final fun equals(kotlin/Any?): kotlin/Boolean // net.benwoodworth.knbt/NbtCompound.equals|equals(kotlin.Any?){}[0] + final fun get(kotlin/String): net.benwoodworth.knbt/NbtTag? // net.benwoodworth.knbt/NbtCompound.get|get(kotlin.String){}[0] + final fun hashCode(): kotlin/Int // net.benwoodworth.knbt/NbtCompound.hashCode|hashCode(){}[0] + final fun isEmpty(): kotlin/Boolean // net.benwoodworth.knbt/NbtCompound.isEmpty|isEmpty(){}[0] + final fun toString(): kotlin/String // net.benwoodworth.knbt/NbtCompound.toString|toString(){}[0] + + final object Companion { // net.benwoodworth.knbt/NbtCompound.Companion|null[0] + final fun serializer(): kotlinx.serialization/KSerializer // net.benwoodworth.knbt/NbtCompound.Companion.serializer|serializer(){}[0] + } + + // Targets: [js] + final fun asJsReadonlyMapView(): kotlin.js.collections/JsReadonlyMap // net.benwoodworth.knbt/NbtCompound.asJsReadonlyMapView|asJsReadonlyMapView(){}[0] +} + +final class net.benwoodworth.knbt/NbtCompoundBuilder { // net.benwoodworth.knbt/NbtCompoundBuilder|null[0] + constructor () // net.benwoodworth.knbt/NbtCompoundBuilder.|(){}[0] + + final fun build(): net.benwoodworth.knbt/NbtCompound // net.benwoodworth.knbt/NbtCompoundBuilder.build|build(){}[0] + final fun put(kotlin/String, net.benwoodworth.knbt/NbtTag): net.benwoodworth.knbt/NbtTag? // net.benwoodworth.knbt/NbtCompoundBuilder.put|put(kotlin.String;net.benwoodworth.knbt.NbtTag){}[0] +} + +final class net.benwoodworth.knbt/NbtConfiguration : net.benwoodworth.knbt/NbtFormatConfiguration { // net.benwoodworth.knbt/NbtConfiguration|null[0] + final val classDiscriminator // net.benwoodworth.knbt/NbtConfiguration.classDiscriminator|{}classDiscriminator[0] + final fun (): kotlin/String // net.benwoodworth.knbt/NbtConfiguration.classDiscriminator.|(){}[0] + final val compression // net.benwoodworth.knbt/NbtConfiguration.compression|{}compression[0] + final fun (): net.benwoodworth.knbt/NbtCompression // net.benwoodworth.knbt/NbtConfiguration.compression.|(){}[0] + final val compressionLevel // net.benwoodworth.knbt/NbtConfiguration.compressionLevel|{}compressionLevel[0] + final fun (): kotlin/Int? // net.benwoodworth.knbt/NbtConfiguration.compressionLevel.|(){}[0] + final val encodeDefaults // net.benwoodworth.knbt/NbtConfiguration.encodeDefaults|{}encodeDefaults[0] + final fun (): kotlin/Boolean // net.benwoodworth.knbt/NbtConfiguration.encodeDefaults.|(){}[0] + final val ignoreUnknownKeys // net.benwoodworth.knbt/NbtConfiguration.ignoreUnknownKeys|{}ignoreUnknownKeys[0] + final fun (): kotlin/Boolean // net.benwoodworth.knbt/NbtConfiguration.ignoreUnknownKeys.|(){}[0] + final val nameRootClasses // net.benwoodworth.knbt/NbtConfiguration.nameRootClasses|{}nameRootClasses[0] + final fun (): kotlin/Boolean // net.benwoodworth.knbt/NbtConfiguration.nameRootClasses.|(){}[0] + final val variant // net.benwoodworth.knbt/NbtConfiguration.variant|{}variant[0] + final fun (): net.benwoodworth.knbt/NbtVariant // net.benwoodworth.knbt/NbtConfiguration.variant.|(){}[0] + + final fun toString(): kotlin/String // net.benwoodworth.knbt/NbtConfiguration.toString|toString(){}[0] +} + +final class net.benwoodworth.knbt/NbtIntArray : kotlin.collections/List, net.benwoodworth.knbt/NbtTag { // net.benwoodworth.knbt/NbtIntArray|null[0] + constructor (kotlin/IntArray) // net.benwoodworth.knbt/NbtIntArray.|(kotlin.IntArray){}[0] + + final val size // net.benwoodworth.knbt/NbtIntArray.size|{}size[0] + final fun (): kotlin/Int // net.benwoodworth.knbt/NbtIntArray.size.|(){}[0] + final val type // net.benwoodworth.knbt/NbtIntArray.type|{}type[0] + final fun (): net.benwoodworth.knbt.internal/NbtTagType // net.benwoodworth.knbt/NbtIntArray.type.|(){}[0] + + final fun contains(kotlin/Int): kotlin/Boolean // net.benwoodworth.knbt/NbtIntArray.contains|contains(kotlin.Int){}[0] + final fun containsAll(kotlin.collections/Collection): kotlin/Boolean // net.benwoodworth.knbt/NbtIntArray.containsAll|containsAll(kotlin.collections.Collection){}[0] + final fun equals(kotlin/Any?): kotlin/Boolean // net.benwoodworth.knbt/NbtIntArray.equals|equals(kotlin.Any?){}[0] + final fun get(kotlin/Int): kotlin/Int // net.benwoodworth.knbt/NbtIntArray.get|get(kotlin.Int){}[0] + final fun hashCode(): kotlin/Int // net.benwoodworth.knbt/NbtIntArray.hashCode|hashCode(){}[0] + final fun indexOf(kotlin/Int): kotlin/Int // net.benwoodworth.knbt/NbtIntArray.indexOf|indexOf(kotlin.Int){}[0] + final fun isEmpty(): kotlin/Boolean // net.benwoodworth.knbt/NbtIntArray.isEmpty|isEmpty(){}[0] + final fun iterator(): kotlin.collections/IntIterator // net.benwoodworth.knbt/NbtIntArray.iterator|iterator(){}[0] + final fun lastIndexOf(kotlin/Int): kotlin/Int // net.benwoodworth.knbt/NbtIntArray.lastIndexOf|lastIndexOf(kotlin.Int){}[0] + final fun listIterator(): kotlin.collections/ListIterator // net.benwoodworth.knbt/NbtIntArray.listIterator|listIterator(){}[0] + final fun listIterator(kotlin/Int): kotlin.collections/ListIterator // net.benwoodworth.knbt/NbtIntArray.listIterator|listIterator(kotlin.Int){}[0] + final fun subList(kotlin/Int, kotlin/Int): kotlin.collections/List // net.benwoodworth.knbt/NbtIntArray.subList|subList(kotlin.Int;kotlin.Int){}[0] + final fun toString(): kotlin/String // net.benwoodworth.knbt/NbtIntArray.toString|toString(){}[0] + + final object Companion { // net.benwoodworth.knbt/NbtIntArray.Companion|null[0] + final fun serializer(): kotlinx.serialization/KSerializer // net.benwoodworth.knbt/NbtIntArray.Companion.serializer|serializer(){}[0] + } + + // Targets: [js] + final fun asJsReadonlyArrayView(): kotlin.js.collections/JsReadonlyArray // net.benwoodworth.knbt/NbtIntArray.asJsReadonlyArrayView|asJsReadonlyArrayView(){}[0] +} + +final class net.benwoodworth.knbt/NbtLongArray : kotlin.collections/List, net.benwoodworth.knbt/NbtTag { // net.benwoodworth.knbt/NbtLongArray|null[0] + constructor (kotlin/LongArray) // net.benwoodworth.knbt/NbtLongArray.|(kotlin.LongArray){}[0] + + final val size // net.benwoodworth.knbt/NbtLongArray.size|{}size[0] + final fun (): kotlin/Int // net.benwoodworth.knbt/NbtLongArray.size.|(){}[0] + final val type // net.benwoodworth.knbt/NbtLongArray.type|{}type[0] + final fun (): net.benwoodworth.knbt.internal/NbtTagType // net.benwoodworth.knbt/NbtLongArray.type.|(){}[0] + + final fun contains(kotlin/Long): kotlin/Boolean // net.benwoodworth.knbt/NbtLongArray.contains|contains(kotlin.Long){}[0] + final fun containsAll(kotlin.collections/Collection): kotlin/Boolean // net.benwoodworth.knbt/NbtLongArray.containsAll|containsAll(kotlin.collections.Collection){}[0] + final fun equals(kotlin/Any?): kotlin/Boolean // net.benwoodworth.knbt/NbtLongArray.equals|equals(kotlin.Any?){}[0] + final fun get(kotlin/Int): kotlin/Long // net.benwoodworth.knbt/NbtLongArray.get|get(kotlin.Int){}[0] + final fun hashCode(): kotlin/Int // net.benwoodworth.knbt/NbtLongArray.hashCode|hashCode(){}[0] + final fun indexOf(kotlin/Long): kotlin/Int // net.benwoodworth.knbt/NbtLongArray.indexOf|indexOf(kotlin.Long){}[0] + final fun isEmpty(): kotlin/Boolean // net.benwoodworth.knbt/NbtLongArray.isEmpty|isEmpty(){}[0] + final fun iterator(): kotlin.collections/LongIterator // net.benwoodworth.knbt/NbtLongArray.iterator|iterator(){}[0] + final fun lastIndexOf(kotlin/Long): kotlin/Int // net.benwoodworth.knbt/NbtLongArray.lastIndexOf|lastIndexOf(kotlin.Long){}[0] + final fun listIterator(): kotlin.collections/ListIterator // net.benwoodworth.knbt/NbtLongArray.listIterator|listIterator(){}[0] + final fun listIterator(kotlin/Int): kotlin.collections/ListIterator // net.benwoodworth.knbt/NbtLongArray.listIterator|listIterator(kotlin.Int){}[0] + final fun subList(kotlin/Int, kotlin/Int): kotlin.collections/List // net.benwoodworth.knbt/NbtLongArray.subList|subList(kotlin.Int;kotlin.Int){}[0] + final fun toString(): kotlin/String // net.benwoodworth.knbt/NbtLongArray.toString|toString(){}[0] + + final object Companion { // net.benwoodworth.knbt/NbtLongArray.Companion|null[0] + final fun serializer(): kotlinx.serialization/KSerializer // net.benwoodworth.knbt/NbtLongArray.Companion.serializer|serializer(){}[0] + } + + // Targets: [js] + final fun asJsReadonlyArrayView(): kotlin.js.collections/JsReadonlyArray // net.benwoodworth.knbt/NbtLongArray.asJsReadonlyArrayView|asJsReadonlyArrayView(){}[0] +} + +final class net.benwoodworth.knbt/StringifiedNbtBuilder : net.benwoodworth.knbt/NbtFormatBuilder { // net.benwoodworth.knbt/StringifiedNbtBuilder|null[0] + final var classDiscriminator // net.benwoodworth.knbt/StringifiedNbtBuilder.classDiscriminator|{}classDiscriminator[0] + final fun (): kotlin/String // net.benwoodworth.knbt/StringifiedNbtBuilder.classDiscriminator.|(){}[0] + final fun (kotlin/String) // net.benwoodworth.knbt/StringifiedNbtBuilder.classDiscriminator.|(kotlin.String){}[0] + final var encodeDefaults // net.benwoodworth.knbt/StringifiedNbtBuilder.encodeDefaults|{}encodeDefaults[0] + final fun (): kotlin/Boolean // net.benwoodworth.knbt/StringifiedNbtBuilder.encodeDefaults.|(){}[0] + final fun (kotlin/Boolean) // net.benwoodworth.knbt/StringifiedNbtBuilder.encodeDefaults.|(kotlin.Boolean){}[0] + final var ignoreUnknownKeys // net.benwoodworth.knbt/StringifiedNbtBuilder.ignoreUnknownKeys|{}ignoreUnknownKeys[0] + final fun (): kotlin/Boolean // net.benwoodworth.knbt/StringifiedNbtBuilder.ignoreUnknownKeys.|(){}[0] + final fun (kotlin/Boolean) // net.benwoodworth.knbt/StringifiedNbtBuilder.ignoreUnknownKeys.|(kotlin.Boolean){}[0] + final var nameRootClasses // net.benwoodworth.knbt/StringifiedNbtBuilder.nameRootClasses|{}nameRootClasses[0] + final fun (): kotlin/Boolean // net.benwoodworth.knbt/StringifiedNbtBuilder.nameRootClasses.|(){}[0] + final fun (kotlin/Boolean) // net.benwoodworth.knbt/StringifiedNbtBuilder.nameRootClasses.|(kotlin.Boolean){}[0] + final var prettyPrint // net.benwoodworth.knbt/StringifiedNbtBuilder.prettyPrint|{}prettyPrint[0] + final fun (): kotlin/Boolean // net.benwoodworth.knbt/StringifiedNbtBuilder.prettyPrint.|(){}[0] + final fun (kotlin/Boolean) // net.benwoodworth.knbt/StringifiedNbtBuilder.prettyPrint.|(kotlin.Boolean){}[0] + final var prettyPrintIndent // net.benwoodworth.knbt/StringifiedNbtBuilder.prettyPrintIndent|{}prettyPrintIndent[0] + final fun (): kotlin/String // net.benwoodworth.knbt/StringifiedNbtBuilder.prettyPrintIndent.|(){}[0] + final fun (kotlin/String) // net.benwoodworth.knbt/StringifiedNbtBuilder.prettyPrintIndent.|(kotlin.String){}[0] + final var serializersModule // net.benwoodworth.knbt/StringifiedNbtBuilder.serializersModule|{}serializersModule[0] + final fun (): kotlinx.serialization.modules/SerializersModule // net.benwoodworth.knbt/StringifiedNbtBuilder.serializersModule.|(){}[0] + final fun (kotlinx.serialization.modules/SerializersModule) // net.benwoodworth.knbt/StringifiedNbtBuilder.serializersModule.|(kotlinx.serialization.modules.SerializersModule){}[0] +} + +final class net.benwoodworth.knbt/StringifiedNbtConfiguration : net.benwoodworth.knbt/NbtFormatConfiguration { // net.benwoodworth.knbt/StringifiedNbtConfiguration|null[0] + final val classDiscriminator // net.benwoodworth.knbt/StringifiedNbtConfiguration.classDiscriminator|{}classDiscriminator[0] + final fun (): kotlin/String // net.benwoodworth.knbt/StringifiedNbtConfiguration.classDiscriminator.|(){}[0] + final val encodeDefaults // net.benwoodworth.knbt/StringifiedNbtConfiguration.encodeDefaults|{}encodeDefaults[0] + final fun (): kotlin/Boolean // net.benwoodworth.knbt/StringifiedNbtConfiguration.encodeDefaults.|(){}[0] + final val ignoreUnknownKeys // net.benwoodworth.knbt/StringifiedNbtConfiguration.ignoreUnknownKeys|{}ignoreUnknownKeys[0] + final fun (): kotlin/Boolean // net.benwoodworth.knbt/StringifiedNbtConfiguration.ignoreUnknownKeys.|(){}[0] + final val nameRootClasses // net.benwoodworth.knbt/StringifiedNbtConfiguration.nameRootClasses|{}nameRootClasses[0] + final fun (): kotlin/Boolean // net.benwoodworth.knbt/StringifiedNbtConfiguration.nameRootClasses.|(){}[0] + final val prettyPrint // net.benwoodworth.knbt/StringifiedNbtConfiguration.prettyPrint|{}prettyPrint[0] + final fun (): kotlin/Boolean // net.benwoodworth.knbt/StringifiedNbtConfiguration.prettyPrint.|(){}[0] + final val prettyPrintIndent // net.benwoodworth.knbt/StringifiedNbtConfiguration.prettyPrintIndent|{}prettyPrintIndent[0] + final fun (): kotlin/String // net.benwoodworth.knbt/StringifiedNbtConfiguration.prettyPrintIndent.|(){}[0] + + final fun toString(): kotlin/String // net.benwoodworth.knbt/StringifiedNbtConfiguration.toString|toString(){}[0] +} + +final value class net.benwoodworth.knbt/NbtByte : net.benwoodworth.knbt/NbtTag { // net.benwoodworth.knbt/NbtByte|null[0] + constructor (kotlin/Boolean) // net.benwoodworth.knbt/NbtByte.|(kotlin.Boolean){}[0] + constructor (kotlin/Byte) // net.benwoodworth.knbt/NbtByte.|(kotlin.Byte){}[0] + + final val booleanValue // net.benwoodworth.knbt/NbtByte.booleanValue|{}booleanValue[0] + final fun (): kotlin/Boolean // net.benwoodworth.knbt/NbtByte.booleanValue.|(){}[0] + final val type // net.benwoodworth.knbt/NbtByte.type|{}type[0] + final fun (): net.benwoodworth.knbt.internal/NbtTagType // net.benwoodworth.knbt/NbtByte.type.|(){}[0] + final val value // net.benwoodworth.knbt/NbtByte.value|{}value[0] + final fun (): kotlin/Byte // net.benwoodworth.knbt/NbtByte.value.|(){}[0] + + final fun equals(kotlin/Any?): kotlin/Boolean // net.benwoodworth.knbt/NbtByte.equals|equals(kotlin.Any?){}[0] + final fun hashCode(): kotlin/Int // net.benwoodworth.knbt/NbtByte.hashCode|hashCode(){}[0] + final fun toString(): kotlin/String // net.benwoodworth.knbt/NbtByte.toString|toString(){}[0] + + final object Companion { // net.benwoodworth.knbt/NbtByte.Companion|null[0] + final fun serializer(): kotlinx.serialization/KSerializer // net.benwoodworth.knbt/NbtByte.Companion.serializer|serializer(){}[0] + } +} + +final value class net.benwoodworth.knbt/NbtDouble : net.benwoodworth.knbt/NbtTag { // net.benwoodworth.knbt/NbtDouble|null[0] + constructor (kotlin/Double) // net.benwoodworth.knbt/NbtDouble.|(kotlin.Double){}[0] + + final val type // net.benwoodworth.knbt/NbtDouble.type|{}type[0] + final fun (): net.benwoodworth.knbt.internal/NbtTagType // net.benwoodworth.knbt/NbtDouble.type.|(){}[0] + final val value // net.benwoodworth.knbt/NbtDouble.value|{}value[0] + final fun (): kotlin/Double // net.benwoodworth.knbt/NbtDouble.value.|(){}[0] + + final fun equals(kotlin/Any?): kotlin/Boolean // net.benwoodworth.knbt/NbtDouble.equals|equals(kotlin.Any?){}[0] + final fun hashCode(): kotlin/Int // net.benwoodworth.knbt/NbtDouble.hashCode|hashCode(){}[0] + final fun toString(): kotlin/String // net.benwoodworth.knbt/NbtDouble.toString|toString(){}[0] + + final object Companion { // net.benwoodworth.knbt/NbtDouble.Companion|null[0] + final fun serializer(): kotlinx.serialization/KSerializer // net.benwoodworth.knbt/NbtDouble.Companion.serializer|serializer(){}[0] + } +} + +final value class net.benwoodworth.knbt/NbtFloat : net.benwoodworth.knbt/NbtTag { // net.benwoodworth.knbt/NbtFloat|null[0] + constructor (kotlin/Float) // net.benwoodworth.knbt/NbtFloat.|(kotlin.Float){}[0] + + final val type // net.benwoodworth.knbt/NbtFloat.type|{}type[0] + final fun (): net.benwoodworth.knbt.internal/NbtTagType // net.benwoodworth.knbt/NbtFloat.type.|(){}[0] + final val value // net.benwoodworth.knbt/NbtFloat.value|{}value[0] + final fun (): kotlin/Float // net.benwoodworth.knbt/NbtFloat.value.|(){}[0] + + final fun equals(kotlin/Any?): kotlin/Boolean // net.benwoodworth.knbt/NbtFloat.equals|equals(kotlin.Any?){}[0] + final fun hashCode(): kotlin/Int // net.benwoodworth.knbt/NbtFloat.hashCode|hashCode(){}[0] + final fun toString(): kotlin/String // net.benwoodworth.knbt/NbtFloat.toString|toString(){}[0] + + final object Companion { // net.benwoodworth.knbt/NbtFloat.Companion|null[0] + final fun serializer(): kotlinx.serialization/KSerializer // net.benwoodworth.knbt/NbtFloat.Companion.serializer|serializer(){}[0] + } +} + +final value class net.benwoodworth.knbt/NbtInt : net.benwoodworth.knbt/NbtTag { // net.benwoodworth.knbt/NbtInt|null[0] + constructor (kotlin/Int) // net.benwoodworth.knbt/NbtInt.|(kotlin.Int){}[0] + + final val type // net.benwoodworth.knbt/NbtInt.type|{}type[0] + final fun (): net.benwoodworth.knbt.internal/NbtTagType // net.benwoodworth.knbt/NbtInt.type.|(){}[0] + final val value // net.benwoodworth.knbt/NbtInt.value|{}value[0] + final fun (): kotlin/Int // net.benwoodworth.knbt/NbtInt.value.|(){}[0] + + final fun equals(kotlin/Any?): kotlin/Boolean // net.benwoodworth.knbt/NbtInt.equals|equals(kotlin.Any?){}[0] + final fun hashCode(): kotlin/Int // net.benwoodworth.knbt/NbtInt.hashCode|hashCode(){}[0] + final fun toString(): kotlin/String // net.benwoodworth.knbt/NbtInt.toString|toString(){}[0] + + final object Companion { // net.benwoodworth.knbt/NbtInt.Companion|null[0] + final fun serializer(): kotlinx.serialization/KSerializer // net.benwoodworth.knbt/NbtInt.Companion.serializer|serializer(){}[0] + } +} + +final value class net.benwoodworth.knbt/NbtLong : net.benwoodworth.knbt/NbtTag { // net.benwoodworth.knbt/NbtLong|null[0] + constructor (kotlin/Long) // net.benwoodworth.knbt/NbtLong.|(kotlin.Long){}[0] + + final val type // net.benwoodworth.knbt/NbtLong.type|{}type[0] + final fun (): net.benwoodworth.knbt.internal/NbtTagType // net.benwoodworth.knbt/NbtLong.type.|(){}[0] + final val value // net.benwoodworth.knbt/NbtLong.value|{}value[0] + final fun (): kotlin/Long // net.benwoodworth.knbt/NbtLong.value.|(){}[0] + + final fun equals(kotlin/Any?): kotlin/Boolean // net.benwoodworth.knbt/NbtLong.equals|equals(kotlin.Any?){}[0] + final fun hashCode(): kotlin/Int // net.benwoodworth.knbt/NbtLong.hashCode|hashCode(){}[0] + final fun toString(): kotlin/String // net.benwoodworth.knbt/NbtLong.toString|toString(){}[0] + + final object Companion { // net.benwoodworth.knbt/NbtLong.Companion|null[0] + final fun serializer(): kotlinx.serialization/KSerializer // net.benwoodworth.knbt/NbtLong.Companion.serializer|serializer(){}[0] + } +} + +final value class net.benwoodworth.knbt/NbtShort : net.benwoodworth.knbt/NbtTag { // net.benwoodworth.knbt/NbtShort|null[0] + constructor (kotlin/Short) // net.benwoodworth.knbt/NbtShort.|(kotlin.Short){}[0] + + final val type // net.benwoodworth.knbt/NbtShort.type|{}type[0] + final fun (): net.benwoodworth.knbt.internal/NbtTagType // net.benwoodworth.knbt/NbtShort.type.|(){}[0] + final val value // net.benwoodworth.knbt/NbtShort.value|{}value[0] + final fun (): kotlin/Short // net.benwoodworth.knbt/NbtShort.value.|(){}[0] + + final fun equals(kotlin/Any?): kotlin/Boolean // net.benwoodworth.knbt/NbtShort.equals|equals(kotlin.Any?){}[0] + final fun hashCode(): kotlin/Int // net.benwoodworth.knbt/NbtShort.hashCode|hashCode(){}[0] + final fun toString(): kotlin/String // net.benwoodworth.knbt/NbtShort.toString|toString(){}[0] + + final object Companion { // net.benwoodworth.knbt/NbtShort.Companion|null[0] + final fun serializer(): kotlinx.serialization/KSerializer // net.benwoodworth.knbt/NbtShort.Companion.serializer|serializer(){}[0] + } +} + +final value class net.benwoodworth.knbt/NbtString : net.benwoodworth.knbt/NbtTag { // net.benwoodworth.knbt/NbtString|null[0] + constructor (kotlin/String) // net.benwoodworth.knbt/NbtString.|(kotlin.String){}[0] + + final val type // net.benwoodworth.knbt/NbtString.type|{}type[0] + final fun (): net.benwoodworth.knbt.internal/NbtTagType // net.benwoodworth.knbt/NbtString.type.|(){}[0] + final val value // net.benwoodworth.knbt/NbtString.value|{}value[0] + final fun (): kotlin/String // net.benwoodworth.knbt/NbtString.value.|(){}[0] + + final fun equals(kotlin/Any?): kotlin/Boolean // net.benwoodworth.knbt/NbtString.equals|equals(kotlin.Any?){}[0] + final fun hashCode(): kotlin/Int // net.benwoodworth.knbt/NbtString.hashCode|hashCode(){}[0] + final fun toString(): kotlin/String // net.benwoodworth.knbt/NbtString.toString|toString(){}[0] + + final object Companion { // net.benwoodworth.knbt/NbtString.Companion|null[0] + final fun serializer(): kotlinx.serialization/KSerializer // net.benwoodworth.knbt/NbtString.Companion.serializer|serializer(){}[0] + } +} + +sealed class net.benwoodworth.knbt/Nbt : kotlinx.serialization/BinaryFormat, net.benwoodworth.knbt/NbtFormat { // net.benwoodworth.knbt/Nbt|null[0] + open val configuration // net.benwoodworth.knbt/Nbt.configuration|{}configuration[0] + open fun (): net.benwoodworth.knbt/NbtConfiguration // net.benwoodworth.knbt/Nbt.configuration.|(){}[0] + open val serializersModule // net.benwoodworth.knbt/Nbt.serializersModule|{}serializersModule[0] + open fun (): kotlinx.serialization.modules/SerializersModule // net.benwoodworth.knbt/Nbt.serializersModule.|(){}[0] + + final fun <#A1: kotlin/Any?> decodeFromSource(kotlinx.serialization/DeserializationStrategy<#A1>, okio/Source): #A1 // net.benwoodworth.knbt/Nbt.decodeFromSource|decodeFromSource(kotlinx.serialization.DeserializationStrategy<0:0>;okio.Source){0§}[0] + final fun <#A1: kotlin/Any?> encodeToSink(kotlinx.serialization/SerializationStrategy<#A1>, #A1, okio/Sink) // net.benwoodworth.knbt/Nbt.encodeToSink|encodeToSink(kotlinx.serialization.SerializationStrategy<0:0>;0:0;okio.Sink){0§}[0] + open fun <#A1: kotlin/Any?> decodeFromByteArray(kotlinx.serialization/DeserializationStrategy<#A1>, kotlin/ByteArray): #A1 // net.benwoodworth.knbt/Nbt.decodeFromByteArray|decodeFromByteArray(kotlinx.serialization.DeserializationStrategy<0:0>;kotlin.ByteArray){0§}[0] + open fun <#A1: kotlin/Any?> encodeToByteArray(kotlinx.serialization/SerializationStrategy<#A1>, #A1): kotlin/ByteArray // net.benwoodworth.knbt/Nbt.encodeToByteArray|encodeToByteArray(kotlinx.serialization.SerializationStrategy<0:0>;0:0){0§}[0] +} + +sealed class net.benwoodworth.knbt/StringifiedNbt : kotlinx.serialization/StringFormat, net.benwoodworth.knbt/NbtFormat { // net.benwoodworth.knbt/StringifiedNbt|null[0] + open val configuration // net.benwoodworth.knbt/StringifiedNbt.configuration|{}configuration[0] + open fun (): net.benwoodworth.knbt/StringifiedNbtConfiguration // net.benwoodworth.knbt/StringifiedNbt.configuration.|(){}[0] + open val serializersModule // net.benwoodworth.knbt/StringifiedNbt.serializersModule|{}serializersModule[0] + open fun (): kotlinx.serialization.modules/SerializersModule // net.benwoodworth.knbt/StringifiedNbt.serializersModule.|(){}[0] + + open fun <#A1: kotlin/Any?> decodeFromString(kotlinx.serialization/DeserializationStrategy<#A1>, kotlin/String): #A1 // net.benwoodworth.knbt/StringifiedNbt.decodeFromString|decodeFromString(kotlinx.serialization.DeserializationStrategy<0:0>;kotlin.String){0§}[0] + open fun <#A1: kotlin/Any?> encodeToString(kotlinx.serialization/SerializationStrategy<#A1>, #A1): kotlin/String // net.benwoodworth.knbt/StringifiedNbt.encodeToString|encodeToString(kotlinx.serialization.SerializationStrategy<0:0>;0:0){0§}[0] + + final object Default : net.benwoodworth.knbt/StringifiedNbt // net.benwoodworth.knbt/StringifiedNbt.Default|null[0] +} + +final val net.benwoodworth.knbt/nbtByte // net.benwoodworth.knbt/nbtByte|@net.benwoodworth.knbt.NbtTag{}nbtByte[0] + final fun (net.benwoodworth.knbt/NbtTag).(): net.benwoodworth.knbt/NbtByte // net.benwoodworth.knbt/nbtByte.|@net.benwoodworth.knbt.NbtTag(){}[0] +final val net.benwoodworth.knbt/nbtByteArray // net.benwoodworth.knbt/nbtByteArray|@net.benwoodworth.knbt.NbtTag{}nbtByteArray[0] + final fun (net.benwoodworth.knbt/NbtTag).(): net.benwoodworth.knbt/NbtByteArray // net.benwoodworth.knbt/nbtByteArray.|@net.benwoodworth.knbt.NbtTag(){}[0] +final val net.benwoodworth.knbt/nbtCompound // net.benwoodworth.knbt/nbtCompound|@net.benwoodworth.knbt.NbtTag{}nbtCompound[0] + final fun (net.benwoodworth.knbt/NbtTag).(): net.benwoodworth.knbt/NbtCompound // net.benwoodworth.knbt/nbtCompound.|@net.benwoodworth.knbt.NbtTag(){}[0] +final val net.benwoodworth.knbt/nbtDouble // net.benwoodworth.knbt/nbtDouble|@net.benwoodworth.knbt.NbtTag{}nbtDouble[0] + final fun (net.benwoodworth.knbt/NbtTag).(): net.benwoodworth.knbt/NbtDouble // net.benwoodworth.knbt/nbtDouble.|@net.benwoodworth.knbt.NbtTag(){}[0] +final val net.benwoodworth.knbt/nbtFloat // net.benwoodworth.knbt/nbtFloat|@net.benwoodworth.knbt.NbtTag{}nbtFloat[0] + final fun (net.benwoodworth.knbt/NbtTag).(): net.benwoodworth.knbt/NbtFloat // net.benwoodworth.knbt/nbtFloat.|@net.benwoodworth.knbt.NbtTag(){}[0] +final val net.benwoodworth.knbt/nbtInt // net.benwoodworth.knbt/nbtInt|@net.benwoodworth.knbt.NbtTag{}nbtInt[0] + final fun (net.benwoodworth.knbt/NbtTag).(): net.benwoodworth.knbt/NbtInt // net.benwoodworth.knbt/nbtInt.|@net.benwoodworth.knbt.NbtTag(){}[0] +final val net.benwoodworth.knbt/nbtIntArray // net.benwoodworth.knbt/nbtIntArray|@net.benwoodworth.knbt.NbtTag{}nbtIntArray[0] + final fun (net.benwoodworth.knbt/NbtTag).(): net.benwoodworth.knbt/NbtIntArray // net.benwoodworth.knbt/nbtIntArray.|@net.benwoodworth.knbt.NbtTag(){}[0] +final val net.benwoodworth.knbt/nbtList // net.benwoodworth.knbt/nbtList|@net.benwoodworth.knbt.NbtTag{}nbtList[0] + final fun (net.benwoodworth.knbt/NbtTag).(): net.benwoodworth.knbt/NbtList<*> // net.benwoodworth.knbt/nbtList.|@net.benwoodworth.knbt.NbtTag(){}[0] +final val net.benwoodworth.knbt/nbtLong // net.benwoodworth.knbt/nbtLong|@net.benwoodworth.knbt.NbtTag{}nbtLong[0] + final fun (net.benwoodworth.knbt/NbtTag).(): net.benwoodworth.knbt/NbtLong // net.benwoodworth.knbt/nbtLong.|@net.benwoodworth.knbt.NbtTag(){}[0] +final val net.benwoodworth.knbt/nbtLongArray // net.benwoodworth.knbt/nbtLongArray|@net.benwoodworth.knbt.NbtTag{}nbtLongArray[0] + final fun (net.benwoodworth.knbt/NbtTag).(): net.benwoodworth.knbt/NbtLongArray // net.benwoodworth.knbt/nbtLongArray.|@net.benwoodworth.knbt.NbtTag(){}[0] +final val net.benwoodworth.knbt/nbtShort // net.benwoodworth.knbt/nbtShort|@net.benwoodworth.knbt.NbtTag{}nbtShort[0] + final fun (net.benwoodworth.knbt/NbtTag).(): net.benwoodworth.knbt/NbtShort // net.benwoodworth.knbt/nbtShort.|@net.benwoodworth.knbt.NbtTag(){}[0] +final val net.benwoodworth.knbt/nbtString // net.benwoodworth.knbt/nbtString|@net.benwoodworth.knbt.NbtTag{}nbtString[0] + final fun (net.benwoodworth.knbt/NbtTag).(): net.benwoodworth.knbt/NbtString // net.benwoodworth.knbt/nbtString.|@net.benwoodworth.knbt.NbtTag(){}[0] + +final fun (kotlinx.serialization.encoding/Decoder).net.benwoodworth.knbt/asNbtDecoder(): net.benwoodworth.knbt/NbtDecoder // net.benwoodworth.knbt/asNbtDecoder|asNbtDecoder@kotlinx.serialization.encoding.Decoder(){}[0] +final fun (kotlinx.serialization.encoding/Encoder).net.benwoodworth.knbt/asNbtEncoder(): net.benwoodworth.knbt/NbtEncoder // net.benwoodworth.knbt/asNbtEncoder|asNbtEncoder@kotlinx.serialization.encoding.Encoder(){}[0] +final fun (net.benwoodworth.knbt/NbtCompoundBuilder).net.benwoodworth.knbt/put(kotlin/String, kotlin/Boolean): net.benwoodworth.knbt/NbtTag? // net.benwoodworth.knbt/put|put@net.benwoodworth.knbt.NbtCompoundBuilder(kotlin.String;kotlin.Boolean){}[0] +final fun (net.benwoodworth.knbt/NbtCompoundBuilder).net.benwoodworth.knbt/put(kotlin/String, kotlin/Byte): net.benwoodworth.knbt/NbtTag? // net.benwoodworth.knbt/put|put@net.benwoodworth.knbt.NbtCompoundBuilder(kotlin.String;kotlin.Byte){}[0] +final fun (net.benwoodworth.knbt/NbtCompoundBuilder).net.benwoodworth.knbt/put(kotlin/String, kotlin/ByteArray): net.benwoodworth.knbt/NbtTag? // net.benwoodworth.knbt/put|put@net.benwoodworth.knbt.NbtCompoundBuilder(kotlin.String;kotlin.ByteArray){}[0] +final fun (net.benwoodworth.knbt/NbtCompoundBuilder).net.benwoodworth.knbt/put(kotlin/String, kotlin/Double): net.benwoodworth.knbt/NbtTag? // net.benwoodworth.knbt/put|put@net.benwoodworth.knbt.NbtCompoundBuilder(kotlin.String;kotlin.Double){}[0] +final fun (net.benwoodworth.knbt/NbtCompoundBuilder).net.benwoodworth.knbt/put(kotlin/String, kotlin/Float): net.benwoodworth.knbt/NbtTag? // net.benwoodworth.knbt/put|put@net.benwoodworth.knbt.NbtCompoundBuilder(kotlin.String;kotlin.Float){}[0] +final fun (net.benwoodworth.knbt/NbtCompoundBuilder).net.benwoodworth.knbt/put(kotlin/String, kotlin/Int): net.benwoodworth.knbt/NbtTag? // net.benwoodworth.knbt/put|put@net.benwoodworth.knbt.NbtCompoundBuilder(kotlin.String;kotlin.Int){}[0] +final fun (net.benwoodworth.knbt/NbtCompoundBuilder).net.benwoodworth.knbt/put(kotlin/String, kotlin/IntArray): net.benwoodworth.knbt/NbtTag? // net.benwoodworth.knbt/put|put@net.benwoodworth.knbt.NbtCompoundBuilder(kotlin.String;kotlin.IntArray){}[0] +final fun (net.benwoodworth.knbt/NbtCompoundBuilder).net.benwoodworth.knbt/put(kotlin/String, kotlin/Long): net.benwoodworth.knbt/NbtTag? // net.benwoodworth.knbt/put|put@net.benwoodworth.knbt.NbtCompoundBuilder(kotlin.String;kotlin.Long){}[0] +final fun (net.benwoodworth.knbt/NbtCompoundBuilder).net.benwoodworth.knbt/put(kotlin/String, kotlin/LongArray): net.benwoodworth.knbt/NbtTag? // net.benwoodworth.knbt/put|put@net.benwoodworth.knbt.NbtCompoundBuilder(kotlin.String;kotlin.LongArray){}[0] +final fun (net.benwoodworth.knbt/NbtCompoundBuilder).net.benwoodworth.knbt/put(kotlin/String, kotlin/Short): net.benwoodworth.knbt/NbtTag? // net.benwoodworth.knbt/put|put@net.benwoodworth.knbt.NbtCompoundBuilder(kotlin.String;kotlin.Short){}[0] +final fun (net.benwoodworth.knbt/NbtCompoundBuilder).net.benwoodworth.knbt/put(kotlin/String, kotlin/String): net.benwoodworth.knbt/NbtTag? // net.benwoodworth.knbt/put|put@net.benwoodworth.knbt.NbtCompoundBuilder(kotlin.String;kotlin.String){}[0] +final fun (net.benwoodworth.knbt/NbtCompression.Companion).net.benwoodworth.knbt/detect(kotlin/ByteArray): net.benwoodworth.knbt/NbtCompression // net.benwoodworth.knbt/detect|detect@net.benwoodworth.knbt.NbtCompression.Companion(kotlin.ByteArray){}[0] +final fun (net.benwoodworth.knbt/NbtCompression.Companion).net.benwoodworth.knbt/detect(okio/BufferedSource): net.benwoodworth.knbt/NbtCompression // net.benwoodworth.knbt/detect|detect@net.benwoodworth.knbt.NbtCompression.Companion(okio.BufferedSource){}[0] +final fun (net.benwoodworth.knbt/NbtListBuilder).net.benwoodworth.knbt/add(kotlin/Boolean): kotlin/Boolean // net.benwoodworth.knbt/add|add@net.benwoodworth.knbt.NbtListBuilder(kotlin.Boolean){}[0] +final fun (net.benwoodworth.knbt/NbtListBuilder).net.benwoodworth.knbt/add(kotlin/Byte): kotlin/Boolean // net.benwoodworth.knbt/add|add@net.benwoodworth.knbt.NbtListBuilder(kotlin.Byte){}[0] +final fun (net.benwoodworth.knbt/NbtListBuilder).net.benwoodworth.knbt/add(net.benwoodworth.knbt/NbtByte): kotlin/Boolean // net.benwoodworth.knbt/add|add@net.benwoodworth.knbt.NbtListBuilder(net.benwoodworth.knbt.NbtByte){}[0] +final fun (net.benwoodworth.knbt/NbtListBuilder).net.benwoodworth.knbt/add(kotlin/ByteArray): kotlin/Boolean // net.benwoodworth.knbt/add|add@net.benwoodworth.knbt.NbtListBuilder(kotlin.ByteArray){}[0] +final fun (net.benwoodworth.knbt/NbtListBuilder).net.benwoodworth.knbt/add(net.benwoodworth.knbt/NbtByteArray): kotlin/Boolean // net.benwoodworth.knbt/add|add@net.benwoodworth.knbt.NbtListBuilder(net.benwoodworth.knbt.NbtByteArray){}[0] +final fun (net.benwoodworth.knbt/NbtListBuilder).net.benwoodworth.knbt/add(net.benwoodworth.knbt/NbtCompound): kotlin/Boolean // net.benwoodworth.knbt/add|add@net.benwoodworth.knbt.NbtListBuilder(net.benwoodworth.knbt.NbtCompound){}[0] +final fun (net.benwoodworth.knbt/NbtListBuilder).net.benwoodworth.knbt/add(kotlin/Double): kotlin/Boolean // net.benwoodworth.knbt/add|add@net.benwoodworth.knbt.NbtListBuilder(kotlin.Double){}[0] +final fun (net.benwoodworth.knbt/NbtListBuilder).net.benwoodworth.knbt/add(net.benwoodworth.knbt/NbtDouble): kotlin/Boolean // net.benwoodworth.knbt/add|add@net.benwoodworth.knbt.NbtListBuilder(net.benwoodworth.knbt.NbtDouble){}[0] +final fun (net.benwoodworth.knbt/NbtListBuilder).net.benwoodworth.knbt/add(kotlin/Float): kotlin/Boolean // net.benwoodworth.knbt/add|add@net.benwoodworth.knbt.NbtListBuilder(kotlin.Float){}[0] +final fun (net.benwoodworth.knbt/NbtListBuilder).net.benwoodworth.knbt/add(net.benwoodworth.knbt/NbtFloat): kotlin/Boolean // net.benwoodworth.knbt/add|add@net.benwoodworth.knbt.NbtListBuilder(net.benwoodworth.knbt.NbtFloat){}[0] +final fun (net.benwoodworth.knbt/NbtListBuilder).net.benwoodworth.knbt/add(kotlin/Int): kotlin/Boolean // net.benwoodworth.knbt/add|add@net.benwoodworth.knbt.NbtListBuilder(kotlin.Int){}[0] +final fun (net.benwoodworth.knbt/NbtListBuilder).net.benwoodworth.knbt/add(net.benwoodworth.knbt/NbtInt): kotlin/Boolean // net.benwoodworth.knbt/add|add@net.benwoodworth.knbt.NbtListBuilder(net.benwoodworth.knbt.NbtInt){}[0] +final fun (net.benwoodworth.knbt/NbtListBuilder).net.benwoodworth.knbt/add(kotlin/IntArray): kotlin/Boolean // net.benwoodworth.knbt/add|add@net.benwoodworth.knbt.NbtListBuilder(kotlin.IntArray){}[0] +final fun (net.benwoodworth.knbt/NbtListBuilder).net.benwoodworth.knbt/add(net.benwoodworth.knbt/NbtIntArray): kotlin/Boolean // net.benwoodworth.knbt/add|add@net.benwoodworth.knbt.NbtListBuilder(net.benwoodworth.knbt.NbtIntArray){}[0] +final fun (net.benwoodworth.knbt/NbtListBuilder).net.benwoodworth.knbt/add(kotlin/Long): kotlin/Boolean // net.benwoodworth.knbt/add|add@net.benwoodworth.knbt.NbtListBuilder(kotlin.Long){}[0] +final fun (net.benwoodworth.knbt/NbtListBuilder).net.benwoodworth.knbt/add(net.benwoodworth.knbt/NbtLong): kotlin/Boolean // net.benwoodworth.knbt/add|add@net.benwoodworth.knbt.NbtListBuilder(net.benwoodworth.knbt.NbtLong){}[0] +final fun (net.benwoodworth.knbt/NbtListBuilder).net.benwoodworth.knbt/add(kotlin/LongArray): kotlin/Boolean // net.benwoodworth.knbt/add|add@net.benwoodworth.knbt.NbtListBuilder(kotlin.LongArray){}[0] +final fun (net.benwoodworth.knbt/NbtListBuilder).net.benwoodworth.knbt/add(net.benwoodworth.knbt/NbtLongArray): kotlin/Boolean // net.benwoodworth.knbt/add|add@net.benwoodworth.knbt.NbtListBuilder(net.benwoodworth.knbt.NbtLongArray){}[0] +final fun (net.benwoodworth.knbt/NbtListBuilder).net.benwoodworth.knbt/add(kotlin/Short): kotlin/Boolean // net.benwoodworth.knbt/add|add@net.benwoodworth.knbt.NbtListBuilder(kotlin.Short){}[0] +final fun (net.benwoodworth.knbt/NbtListBuilder).net.benwoodworth.knbt/add(net.benwoodworth.knbt/NbtShort): kotlin/Boolean // net.benwoodworth.knbt/add|add@net.benwoodworth.knbt.NbtListBuilder(net.benwoodworth.knbt.NbtShort){}[0] +final fun (net.benwoodworth.knbt/NbtListBuilder).net.benwoodworth.knbt/add(kotlin/String): kotlin/Boolean // net.benwoodworth.knbt/add|add@net.benwoodworth.knbt.NbtListBuilder(kotlin.String){}[0] +final fun (net.benwoodworth.knbt/NbtListBuilder).net.benwoodworth.knbt/add(net.benwoodworth.knbt/NbtString): kotlin/Boolean // net.benwoodworth.knbt/add|add@net.benwoodworth.knbt.NbtListBuilder(net.benwoodworth.knbt.NbtString){}[0] +final fun <#A: net.benwoodworth.knbt/NbtTag> (net.benwoodworth.knbt/NbtListBuilder>).net.benwoodworth.knbt/add(net.benwoodworth.knbt/NbtList<#A>): kotlin/Boolean // net.benwoodworth.knbt/add|add@net.benwoodworth.knbt.NbtListBuilder>(net.benwoodworth.knbt.NbtList<0:0>){0§}[0] +final fun <#A: net.benwoodworth.knbt/NbtTag> (net.benwoodworth.knbt/NbtTag).net.benwoodworth.knbt/nbtList(kotlin.reflect/KClass<#A>): net.benwoodworth.knbt/NbtList<#A> // net.benwoodworth.knbt/nbtList|nbtList@net.benwoodworth.knbt.NbtTag(kotlin.reflect.KClass<0:0>){0§}[0] +final fun net.benwoodworth.knbt/Nbt(net.benwoodworth.knbt/Nbt = ..., kotlin/Function1): net.benwoodworth.knbt/Nbt // net.benwoodworth.knbt/Nbt|Nbt(net.benwoodworth.knbt.Nbt;kotlin.Function1){}[0] +final fun net.benwoodworth.knbt/StringifiedNbt(net.benwoodworth.knbt/StringifiedNbt = ..., kotlin/Function1): net.benwoodworth.knbt/StringifiedNbt // net.benwoodworth.knbt/StringifiedNbt|StringifiedNbt(net.benwoodworth.knbt.StringifiedNbt;kotlin.Function1){}[0] +final inline fun (net.benwoodworth.knbt/NbtCompoundBuilder).net.benwoodworth.knbt/putNbtCompound(kotlin/String, kotlin/Function1): net.benwoodworth.knbt/NbtTag? // net.benwoodworth.knbt/putNbtCompound|putNbtCompound@net.benwoodworth.knbt.NbtCompoundBuilder(kotlin.String;kotlin.Function1){}[0] +final inline fun (net.benwoodworth.knbt/NbtListBuilder).net.benwoodworth.knbt/addNbtCompound(kotlin/Function1): kotlin/Boolean // net.benwoodworth.knbt/addNbtCompound|addNbtCompound@net.benwoodworth.knbt.NbtListBuilder(kotlin.Function1){}[0] +final inline fun <#A: net.benwoodworth.knbt/NbtTag> (net.benwoodworth.knbt/NbtCompoundBuilder).net.benwoodworth.knbt/putNbtList(kotlin/String, kotlin/Function1, kotlin/Unit>): net.benwoodworth.knbt/NbtTag? // net.benwoodworth.knbt/putNbtList|putNbtList@net.benwoodworth.knbt.NbtCompoundBuilder(kotlin.String;kotlin.Function1,kotlin.Unit>){0§}[0] +final inline fun <#A: net.benwoodworth.knbt/NbtTag> (net.benwoodworth.knbt/NbtListBuilder>).net.benwoodworth.knbt/addNbtList(kotlin/Function1, kotlin/Unit>): kotlin/Boolean // net.benwoodworth.knbt/addNbtList|addNbtList@net.benwoodworth.knbt.NbtListBuilder>(kotlin.Function1,kotlin.Unit>){0§}[0] +final inline fun <#A: net.benwoodworth.knbt/NbtTag> (net.benwoodworth.knbt/NbtListBuilder>).net.benwoodworth.knbt/addNbtList(kotlin/Function1, kotlin/Unit>): kotlin/Boolean // net.benwoodworth.knbt/addNbtList|addNbtList@net.benwoodworth.knbt.NbtListBuilder>(kotlin.Function1,kotlin.Unit>){0§}[0] +final inline fun <#A: net.benwoodworth.knbt/NbtTag> net.benwoodworth.knbt/buildNbtList(kotlin/Function1, kotlin/Unit>): net.benwoodworth.knbt/NbtList<#A> // net.benwoodworth.knbt/buildNbtList|buildNbtList(kotlin.Function1,kotlin.Unit>){0§}[0] +final inline fun <#A: net.benwoodworth.knbt/NbtTag> net.benwoodworth.knbt/buildNbtList(kotlin/String, kotlin/Function1, kotlin/Unit>): net.benwoodworth.knbt/NbtCompound // net.benwoodworth.knbt/buildNbtList|buildNbtList(kotlin.String;kotlin.Function1,kotlin.Unit>){0§}[0] +final inline fun <#A: reified kotlin/Any?> (net.benwoodworth.knbt/Nbt).net.benwoodworth.knbt/decodeFromSource(okio/Source): #A // net.benwoodworth.knbt/decodeFromSource|decodeFromSource@net.benwoodworth.knbt.Nbt(okio.Source){0§}[0] +final inline fun <#A: reified kotlin/Any?> (net.benwoodworth.knbt/Nbt).net.benwoodworth.knbt/encodeToSink(#A, okio/Sink) // net.benwoodworth.knbt/encodeToSink|encodeToSink@net.benwoodworth.knbt.Nbt(0:0;okio.Sink){0§}[0] +final inline fun <#A: reified kotlin/Any?> (net.benwoodworth.knbt/NbtFormat).net.benwoodworth.knbt/decodeFromNbtTag(net.benwoodworth.knbt/NbtTag): #A // net.benwoodworth.knbt/decodeFromNbtTag|decodeFromNbtTag@net.benwoodworth.knbt.NbtFormat(net.benwoodworth.knbt.NbtTag){0§}[0] +final inline fun <#A: reified kotlin/Any?> (net.benwoodworth.knbt/NbtFormat).net.benwoodworth.knbt/encodeToNbtTag(#A): net.benwoodworth.knbt/NbtTag // net.benwoodworth.knbt/encodeToNbtTag|encodeToNbtTag@net.benwoodworth.knbt.NbtFormat(0:0){0§}[0] +final inline fun <#A: reified net.benwoodworth.knbt/NbtTag> (net.benwoodworth.knbt/NbtTag).net.benwoodworth.knbt/nbtList(): net.benwoodworth.knbt/NbtList<#A> // net.benwoodworth.knbt/nbtList|nbtList@net.benwoodworth.knbt.NbtTag(){0§}[0] +final inline fun net.benwoodworth.knbt/buildNbtCompound(kotlin/Function1): net.benwoodworth.knbt/NbtCompound // net.benwoodworth.knbt/buildNbtCompound|buildNbtCompound(kotlin.Function1){}[0] +final inline fun net.benwoodworth.knbt/buildNbtCompound(kotlin/String, kotlin/Function1): net.benwoodworth.knbt/NbtCompound // net.benwoodworth.knbt/buildNbtCompound|buildNbtCompound(kotlin.String;kotlin.Function1){}[0] diff --git a/build.gradle.kts b/build.gradle.kts index e97c439f..3385a14f 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -1,21 +1,13 @@ import org.jetbrains.dokka.gradle.engine.parameters.VisibilityModifier import org.jetbrains.kotlin.gradle.dsl.JvmTarget +import org.jetbrains.kotlin.gradle.dsl.abi.ExperimentalAbiValidation val kotlinx_serialization_version: String by extra val okio_version: String by extra -System.getenv("GIT_REF")?.let { gitRef -> - Regex("refs/tags/v(.*)").matchEntire(gitRef)?.let { gitVersionMatch -> - version = gitVersionMatch.groupValues[1] - } -} - -val isSnapshot = version.toString().contains("SNAPSHOT", true) - plugins { kotlin("multiplatform") version "2.2.21" kotlin("plugin.serialization") version "2.2.21" - id("org.jetbrains.kotlinx.binary-compatibility-validator") version "0.18.1" id("org.jetbrains.dokka") version "2.1.0" id("com.vanniktech.maven.publish") version "0.34.0" } @@ -104,9 +96,18 @@ kotlin { } } } + + @OptIn(ExperimentalAbiValidation::class) + abiValidation { + enabled = true + } } dokka { + dokkaPublications.configureEach { + failOnWarning = true + } + dokkaSourceSets.all { documentedVisibilities = setOf(VisibilityModifier.Public) skipDeprecated = true