"use strict"; const { validateArguments } = require("@validatem/core"); const required = require("@validatem/required"); const either = require("@validatem/either"); const node = require("../ast-node"); module.exports = function (operations) { const isValueExpression = require("../validators/operations/is-value-expression")(operations); const isInternalArrayType = require("../validators/operations/is-internal-array-type")(operations); return function moreThan(_name, _expression) { let [ expression ] = validateArguments(arguments, { expression: [ required, either([ isValueExpression, isInternalArrayType ]) ] }); return node({ type: "condition", conditionType: "moreThan", expression: expression }); }; };