It seems like references to inner classes are just replaced by references to the outermost class instead, which of course breaks the code. ```kotlin @KustomExport data class A(val b: B) { data class B(val x: Int) } ``` generates ```kotlin @JsExport public class A( b: CommonA, ) { internal lateinit var common: CommonA init { if (b != dynamicNull) { common = CommonA( b = b, ) } } public val b: CommonA get() = common.b @Suppress("UNNECESSARY_SAFE_CALL") internal constructor(common: CommonA) : this(b = dynamicNull.unsafeCast<CommonA>()) { this.common = common } } public fun CommonA.exportA(): A = A(this) public fun A.importA(): CommonA = this.common ``` Workaround: Extract the inner classes to top level classes
It seems like references to inner classes are just replaced by references to the outermost class instead, which of course breaks the code.
generates
Workaround: Extract the inner classes to top level classes