import {
  createShikiHighlighterComponent,
  isInlineCode,
  isLoadableLanguage,
  rehypeInlineCodeProperty,
  useShikiHighlighter
} from "./chunk-S5E5K22S.js";

// src/bundles/full.ts
import {
  getSingletonHighlighter,
  bundledLanguages
} from "shiki";
import { createOnigurumaEngine } from "shiki/engine/oniguruma";
async function createFullHighlighter(langsToLoad, themesToLoad, engine) {
  const langs = langsToLoad.filter(
    (lang) => isLoadableLanguage(lang, bundledLanguages)
  );
  return await getSingletonHighlighter({
    langs,
    themes: themesToLoad,
    engine: engine ?? createOnigurumaEngine(import("shiki/wasm"))
  });
}

// src/index.ts
import {
  createJavaScriptRegexEngine,
  createJavaScriptRawEngine
} from "shiki/engine/javascript";
var useShikiHighlighter2 = (code, lang, themeInput, options = {}) => {
  return useShikiHighlighter(
    code,
    lang,
    themeInput,
    options,
    createFullHighlighter
  );
};
var ShikiHighlighter = createShikiHighlighterComponent(
  useShikiHighlighter2
);
var src_default = ShikiHighlighter;
export {
  ShikiHighlighter,
  createJavaScriptRawEngine,
  createJavaScriptRegexEngine,
  src_default as default,
  isInlineCode,
  rehypeInlineCodeProperty,
  useShikiHighlighter2 as useShikiHighlighter
};
//# sourceMappingURL=index.js.map