import { type MaybeRefOrGetter } from "vue"; import type { HighlightOptions, ShikiHighlighter, UseHighlightOptions } from "./types"; /** * Lazy-load shiki instance. * * You can use this utility both in `server/` and vue app code. * * @example * ```vue * * ``` * * @example * ```ts * // server/api/highlight.ts * export default defineEventHandler(async (event) => { * const highlighter = await getShikiHighlighter() * return highlighter.highlight(`const hello = 'shiki'`, { lang: 'js' }) * }) * ``` */ export declare function getShikiHighlighter(): Promise; /** * Resolve `highlightOptions` with defaults. * * @example * ``` * const shiki = await getShikiHighlighter() * const options = await resolveShikiOptions({ lang: 'js' }) * const hast = shiki.codeToHast(`const hello = 'shiki'`, options) * ``` */ export declare function resolveShikiOptions(options?: Partial): Promise; /** * Return a lazy highlighted code ref (only usable in Vue) * * @example * ```vue * * ``` */ export declare function useShikiHighlighted(code: MaybeRefOrGetter, options?: UseHighlightOptions): Promise>; /** * Dynamically loading languages when `options.dynamic` is true. * * @example * ```vue * * ``` */ export declare function loadShikiLanguages(...langs: string[]): Promise;