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

com.freya02.botcommands.internal.components.builder.ConstrainableComponentImpl.kt Maven / Gradle / Ivy

package com.freya02.botcommands.internal.components.builder

import com.freya02.botcommands.api.ReceiverConsumer
import com.freya02.botcommands.api.apply
import com.freya02.botcommands.api.components.builder.IConstrainableComponent
import com.freya02.botcommands.api.components.data.InteractionConstraints
import net.dv8tion.jda.api.Permission

internal class ConstrainableComponentImpl : IConstrainableComponent {
    override var constraints: InteractionConstraints = InteractionConstraints.empty()

    override fun constraints(block: ReceiverConsumer) {
        constraints.apply(block)
    }

    override fun addUserIds(userIds: Collection) {
        constraints.addUserIds(userIds)
    }

    override fun addRoleIds(roleIds: Collection) {
        constraints.addRoleIds(roleIds)
    }

    override fun addPermissions(permissions: Collection) {
        constraints.addPermissions(permissions)
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy