import {
  a as i,
  c as l
} from "./chunk-IO47FP3U.js";

// ../node_modules/refractor/lang/javadoclike.js
var j = l((g, f) => {
  f.exports = c;
  c.displayName = "javadoclike";
  c.aliases = [];
  function c(u) {
    (function(p) {
      var s = p.languages.javadoclike = {
        parameter: {
          pattern: /(^[\t ]*(?:\/{3}|\*|\/\*\*)\s*@(?:arg|arguments|param)\s+)\w+/m,
          lookbehind: !0
        },
        keyword: {
          // keywords are the first word in a line preceded be an `@` or surrounded by curly braces.
          // @word, {@word}
          pattern: /(^[\t ]*(?:\/{3}|\*|\/\*\*)\s*|\{)@[a-z][a-zA-Z-]+\b/m,
          lookbehind: !0
        },
        punctuation: /[{}]/
      };
      function m(t, n) {
        var r = "doc-comment", a = p.languages[t];
        if (a) {
          var e = a[r];
          if (!e) {
            var d = {};
            d[r] = {
              pattern: /(^|[^\\])\/\*\*[^/][\s\S]*?(?:\*\/|$)/,
              lookbehind: !0,
              alias: "comment"
            }, a = p.languages.insertBefore(t, "comment", d), e = a[r];
          }
          if (e instanceof RegExp && (e = a[r] = {
            pattern: e
          }), Array.isArray(e))
            for (var o = 0, k = e.length; o < k; o++)
              e[o] instanceof RegExp && (e[o] = {
                pattern: e[o]
              }), n(e[o]);
          else
            n(e);
        }
      }
      i(m, "docCommentSupport");
      function v(t, n) {
        typeof t == "string" && (t = [t]), t.forEach(function(r) {
          m(r, function(a) {
            a.inside || (a.inside = {}), a.inside.rest = n;
          });
        });
      }
      i(v, "addSupport"), Object.defineProperty(s, "addSupport", {
        value: v
      }), s.addSupport(["java", "javascript", "php"], s);
    })(u);
  }
  i(c, "javadoclike");
});

export {
  j as a
};
