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

// ../node_modules/highlight.js/lib/languages/actionscript.js
var d = s((E, i) => {
  function r(e) {
    return e ? typeof e == "string" ? e : e.source : null;
  }
  n(r, "source");
  function o(...e) {
    return e.map((t) => r(t)).join("");
  }
  n(o, "concat");
  function _(e) {
    let a = /[a-zA-Z_$][a-zA-Z0-9_$]*/, t = /([*]|[a-zA-Z_$][a-zA-Z0-9_$]*)/, c = {
      className: "rest_arg",
      begin: /[.]{3}/,
      end: a,
      relevance: 10
    };
    return {
      name: "ActionScript",
      aliases: ["as"],
      keywords: {
        keyword: "as break case catch class const continue default delete do dynamic each else extends final finally for function get if implements import in include instanceof interface internal is namespace native new override package private protected public return set static super switch this throw try typeof use var void while with",
        literal: "true false null undefined"
      },
      contains: [
        e.APOS_STRING_MODE,
        e.QUOTE_STRING_MODE,
        e.C_LINE_COMMENT_MODE,
        e.C_BLOCK_COMMENT_MODE,
        e.C_NUMBER_MODE,
        {
          className: "class",
          beginKeywords: "package",
          end: /\{/,
          contains: [e.TITLE_MODE]
        },
        {
          className: "class",
          beginKeywords: "class interface",
          end: /\{/,
          excludeEnd: !0,
          contains: [
            { beginKeywords: "extends implements" },
            e.TITLE_MODE
          ]
        },
        {
          className: "meta",
          beginKeywords: "import include",
          end: /;/,
          keywords: { "meta-keyword": "import include" }
        },
        {
          className: "function",
          beginKeywords: "function",
          end: /[{;]/,
          excludeEnd: !0,
          illegal: /\S/,
          contains: [
            e.TITLE_MODE,
            {
              className: "params",
              begin: /\(/,
              end: /\)/,
              contains: [
                e.APOS_STRING_MODE,
                e.QUOTE_STRING_MODE,
                e.C_LINE_COMMENT_MODE,
                e.C_BLOCK_COMMENT_MODE,
                c
              ]
            },
            { begin: o(/:\s*/, t) }
          ]
        },
        e.METHOD_GUARD
      ],
      illegal: /#/
    };
  }
  n(_, "actionscript");
  i.exports = _;
});

export {
  d as a
};
