Basic classes
Plain class with a single field
@Serializable
class Color(val rgb: Int)
fun main() {
val tsGenerator = KotlinTsGenerator()
println(tsGenerator.generate(Color.serializer()))
}
You can get the full code here.
export interface Color {
rgb: Int;
}
export type Int = number;
Plain class with primitive fields
@Serializable
class SimpleTypes(
val aString: String,
var anInt: Int,
val aDouble: Double,
val bool: Boolean,
private val privateMember: String,
)
fun main() {
val tsGenerator = KotlinTsGenerator()
println(tsGenerator.generate(SimpleTypes.serializer()))
}
You can get the full code here.
export interface SimpleTypes {
aString: string;
anInt: Int;
aDouble: Double;
bool: boolean;
privateMember: string;
}
export type Int = number;
export type Double = number;
Data class with primitive fields
@Serializable
data class SomeDataClass(
val aString: String,
var anInt: Int,
val aDouble: Double,
val bool: Boolean,
private val privateMember: String,
)
fun main() {
val tsGenerator = KotlinTsGenerator()
println(tsGenerator.generate(SomeDataClass.serializer()))
}
You can get the full code here.
export interface SomeDataClass {
aString: string;
anInt: Int;
aDouble: Double;
bool: boolean;
privateMember: string;
}
export type Int = number;
export type Double = number;