commonMain.io.komune.im.f2.space.domain.model.Space.kt Maven / Gradle / Ivy
package io.komune.im.f2.space.domain.model
import io.komune.im.commons.model.SpaceIdentifier
import kotlin.js.JsExport
import kotlin.js.JsName
import kotlinx.serialization.Serializable
/**
* Representation of a space.
* @D2 model
* @parent [io.komune.im.f2.space.domain.D2SpacePage]
* @order 10
*/
@JsExport
@JsName("SpaceDTO")
interface SpaceDTO {
/**
* Identifier of the space.
* @example "sb-dev"
*/
val identifier: SpaceIdentifier?
val smtp: Map?
/**
* Theme used by the space.
* @example "im"
*/
val theme: String?
/**
* Locales supported by the space.
* @example [["en", "fr"]]
*/
val locales: List?
}
@Serializable
data class Space(
override val identifier: SpaceIdentifier,
override val theme: String?,
override val smtp: Map?,
override val locales: List?
): SpaceDTO