override fun sealedUnionBody()

in build-logic/generatorlegacybuild/src/main/kotlin/karakum/common/UnionConverter.kt [70:91]


    override fun sealedUnionBody(
        name: String,
        parentType: String,
        values: List<String>,
    ): String {
        val constants = values.map(::unionConstant)

        val bodyMembers = constants.joinToString("\n") {
            """
        ${it.jsValueAnnotation}
        val ${it.name}: $parentType.${it.name.replaceFirstChar(Char::uppercase)}
        """.trimIndent()
        }

        return """
                sealed external interface $name: $parentType {
            companion object {
                $bodyMembers
            }
        }
    """.trimIndent()
    }