text: "use strict";
  Object.defineProperty(exports, "__esModule", { value: true });
  exports.concatArgs = exports.seqEqual = void 0;
  /**
   * Check whether two sequences (e.g. Arrays of numbers) are equal.
   *
   * @param arr1 - One of the arrays to compare.
   * @param arr2 - The other array to compare.
   */
  function seqEqual(arr1, arr2) {
      if (arr1.length !== arr2.length) {
          return false;
      }
      for (let i = 0; i < arr1.length; i++) {
          if (arr1[i] !== arr2[i]) {
              return false;
          }
      }
      return true;
  }
  exports.seqEqual = seqEqual;
  /**
   * Check whether a value is a sequence (e.g. Array of numbers).
   *
   * @param val - The value to check.
   */
  function isSequence(val) {
      return val.length !== undefined;
  }
  /**
   * Concatenate all `arguments` into a single array. Each argument can be either
   * a single element or a sequence, which has a `length` property and supports
   * element retrieval via sequence[ix].
   *
   * > concatArgs(1, [2, 3], Buffer.from([4,5]), new Uint8Array([6, 7]));
   * [1,2,3,4,5,6,7]
   *
   * @returns Array of concatenated arguments
   */
  function concatArgs(...args) {
      const ret = [];
      args.forEach((arg) => {
          if (isSequence(arg)) {
              for (const j of arg) {
                  ret.push(j);
              }
          }
          else {
              ret.push(arg);
          }
      });
      return ret;
  }
  exports.concatArgs = concatArgs;
  //# sourceMappingURL=utils.js.map