core/core/api/src/commonMain/kotlin/dev/inmo/postssystem/core/content/api/business/content_adapters/binary/BinaryContent.kt

20 lines
684 B
Kotlin

package dev.inmo.postssystem.core.content.api.business.content_adapters.binary
import dev.inmo.micro_utils.common.ByteArrayAllocator
import dev.inmo.micro_utils.common.ByteArrayAllocatorSerializer
import dev.inmo.micro_utils.mime_types.KnownMimeTypes
import dev.inmo.micro_utils.mime_types.MimeType
import dev.inmo.postssystem.core.content.Content
import kotlinx.serialization.Serializable
@Serializable
data class BinaryContent(
val mimeType: MimeType,
val originalFileName: String,
@Serializable(ByteArrayAllocatorSerializer::class)
val dataAllocator: ByteArrayAllocator
) : Content
val BinaryContent.isImage: Boolean
get() = mimeType is KnownMimeTypes.Image