import * as v from "@zwave-js/core/validation";
export function validateArgs_BarrierOperatorCCAPI_set() {
    return (__decoratedMethod, { kind }) => {
        if (kind === "method") {
            return function set(targetState) {
                v.assert(v.oneOf({ kind: "parameter", name: "targetState" }, undefined, v.literal({ kind: "parameter", name: "targetState" }, 0), v.literal({ kind: "parameter", name: "targetState" }, 255))(targetState));
                return __decoratedMethod.call(this, targetState);
            };
        }
    };
}
export function validateArgs_BarrierOperatorCCAPI_getSignalingCapabilities() {
    return (__decoratedMethod, { kind }) => {
        if (kind === "method") {
            return function getSignalingCapabilities() {
                v.assert();
                return __decoratedMethod.call(this);
            };
        }
    };
}
export function validateArgs_BarrierOperatorCCAPI_getEventSignaling() {
    return (__decoratedMethod, { kind }) => {
        if (kind === "method") {
            return function getEventSignaling(subsystemType) {
                v.assert(v.enum({ kind: "parameter", name: "subsystemType" }, "SubsystemType", [1, 2])(subsystemType));
                return __decoratedMethod.call(this, subsystemType);
            };
        }
    };
}
export function validateArgs_BarrierOperatorCCAPI_setEventSignaling() {
    return (__decoratedMethod, { kind }) => {
        if (kind === "method") {
            return function setEventSignaling(subsystemType, subsystemState) {
                v.assert(v.enum({ kind: "parameter", name: "subsystemType" }, "SubsystemType", [1, 2])(subsystemType), v.enum({ kind: "parameter", name: "subsystemState" }, "SubsystemState", [0, 255])(subsystemState));
                return __decoratedMethod.call(this, subsystemType, subsystemState);
            };
        }
    };
}
//# sourceMappingURL=BarrierOperatorCC._validateArgs.js.map