var a = Object.defineProperty;
var n = (m, e) => a(m, "name", { value: e, configurable: !0 });
import { getEnumType as s, makeEnumType as p, makeEnum as k } from "./enum.js";
import { makeMessageType as u } from "./message-type.js";
import { makeExtension as f } from "./extensions.js";
import { makeJsonFormat as g } from "./json-format.js";
import { makeBinaryFormat as y } from "./binary-format.js";
import { makeUtilCommon as E } from "./util-common.js";
function F(m, e, i) {
  return {
    syntax: m,
    json: g(),
    bin: y(),
    util: Object.assign(Object.assign({}, E()), {
      newFieldList: e,
      initFields: i
    }),
    makeMessageType(o, t, r) {
      return u(this, o, t, r);
    },
    makeEnum: k,
    makeEnumType: p,
    getEnumType: s,
    makeExtension(o, t, r) {
      return f(this, o, t, r);
    }
  };
}
n(F, "makeProtoRuntime");
export {
  F as makeProtoRuntime
};
