import {
  has
} from "./chunk-WPJQNT3M.mjs";
import {
  __export
} from "./chunk-QK4PKNB3.mjs";

// src/struct.ts
var struct_exports = {};
__export(struct_exports, {
  evolve: () => evolve,
  getAssignSemigroup: () => getAssignSemigroup
});
var getAssignSemigroup = () => ({
  concat: (first, second) => Object.assign({}, first, second)
});
var evolve = (transformations) => (a) => {
  const out = {};
  for (const k in a) {
    if (has.call(a, k)) {
      out[k] = transformations[k](a[k]);
    }
  }
  return out;
};

export {
  getAssignSemigroup,
  evolve,
  struct_exports
};
