All Downloads are FREE. Search and download functionalities are using the official Maven repository.

commonMain.cccev.core.certification.command.CertificationRemoveRequirementsCommand.kt Maven / Gradle / Ivy

The newest version!
package cccev.core.certification.command

import cccev.core.certification.model.CertificationId
import cccev.s2.requirement.domain.RequirementId
import kotlinx.serialization.Serializable
import kotlin.js.JsExport
import kotlin.js.JsName

/**
 * @d2 command
 */
@JsExport
@JsName("CertificationRemoveRequirementsCommandDTO")
interface CertificationRemoveRequirementsCommandDTO {
    /**
     * Id of the request to remove the requirements from.
     */
    val id: CertificationId

    /**
     * Ids of the requirements to remove from the request.
     */
    val requirementIds: List
}

/**
 * @d2 inherit
 */
data class CertificationRemoveRequirementsCommand(
    override val id: CertificationId,
    override val requirementIds: List
): CertificationRemoveRequirementsCommandDTO

/**
 * @d2 event
 */
@JsExport
@JsName("CertificationRemovedRequirementsEventDTO")
interface CertificationRemovedRequirementsEventDTO {
    /**
     * Id of the request the requirements have been removed from.
     */
    val id: CertificationId

    /**
     * Ids of the removed requirements
     */
    val requirementIds: List
}

/**
 * @d2 inherit
 */
@Serializable
data class CertificationRemovedRequirementsEvent(
    override val id: CertificationId,
    override val requirementIds: List = emptyList(),
): CertificationRemovedRequirementsEventDTO




© 2015 - 2025 Weber Informatics LLC | Privacy Policy