UNPKG

@tanstack/highlight

Version:

Tiny class-based syntax highlighting for documentation.

31 lines (30 loc) • 5.78 kB
import { type HighlightOptions, type HighlightResult as CoreHighlightResult, type HighlightTokenResult as CoreHighlightTokenResult, type RenderedCodeBlockData as CoreRenderedCodeBlockData } from './core.js'; export type HighlightLanguage = (typeof allLanguages)[number]['name']; export type HighlightResult = Omit<CoreHighlightResult, 'lang'> & { lang: HighlightLanguage; }; export type HighlightTokenResult = Omit<CoreHighlightTokenResult, 'lang'> & { lang: HighlightLanguage; }; export type RenderedCodeBlockData = Omit<CoreRenderedCodeBlockData, 'lang'> & { lang: HighlightLanguage; }; export type RenderCodeBlockOptions = HighlightOptions & { title?: string; }; export type { Highlighter, HighlightDecoration, HighlightDecorationData, HighlightElementNode, HighlightLineDecoration, HighlightOptions, HighlightRangeDecoration, HighlightRenderNode, HighlightTextNode, HighlightToken, HighlightTokenClass, LanguageDefinition, TokenRange, TokenizerContext, } from './core.js'; export { createHighlighter, defineLanguage, escapeHtml, renderNodesToHtml, renderTokens, } from './core.js'; export declare const allLanguages: readonly [import("./core.js").LanguageDefinition<"ada">, import("./core.js").LanguageDefinition<"apache">, import("./core.js").LanguageDefinition<"applescript">, import("./core.js").LanguageDefinition<"awk">, import("./core.js").LanguageDefinition<"batch">, import("./core.js").LanguageDefinition<"c">, import("./core.js").LanguageDefinition<"clojure">, import("./core.js").LanguageDefinition<"cmake">, import("./core.js").LanguageDefinition<"coffeescript">, import("./core.js").LanguageDefinition<"cpp">, import("./core.js").LanguageDefinition<"crystal">, import("./core.js").LanguageDefinition<"csharp">, import("./core.js").LanguageDefinition<"css">, import("./core.js").LanguageDefinition<"d">, import("./core.js").LanguageDefinition<"dart">, import("./core.js").LanguageDefinition<"diff">, import("./core.js").LanguageDefinition<"dockerfile">, import("./core.js").LanguageDefinition<"ejs">, import("./core.js").LanguageDefinition<"elixir">, import("./core.js").LanguageDefinition<"elm">, import("./core.js").LanguageDefinition<"env">, import("./core.js").LanguageDefinition<"erlang">, import("./core.js").LanguageDefinition<"fortran">, import("./core.js").LanguageDefinition<"fsharp">, import("./core.js").LanguageDefinition<"glsl">, import("./core.js").LanguageDefinition<"go">, import("./core.js").LanguageDefinition<"graphql">, import("./core.js").LanguageDefinition<"groovy">, import("./core.js").LanguageDefinition<"haskell">, import("./core.js").LanguageDefinition<"html">, import("./core.js").LanguageDefinition<"http">, import("./core.js").LanguageDefinition<"ini">, import("./core.js").LanguageDefinition<"java">, import("./core.js").LanguageDefinition<"js">, import("./core.js").LanguageDefinition<"json">, import("./core.js").LanguageDefinition<"jsx">, import("./core.js").LanguageDefinition<"julia">, import("./core.js").LanguageDefinition<"kotlin">, import("./core.js").LanguageDefinition<"latex">, import("./core.js").LanguageDefinition<"less">, import("./core.js").LanguageDefinition<"lisp">, import("./core.js").LanguageDefinition<"lua">, import("./core.js").LanguageDefinition<"makefile">, import("./core.js").LanguageDefinition<"markdown">, import("./core.js").LanguageDefinition<"matlab">, import("./core.js").LanguageDefinition<"mermaid">, import("./core.js").LanguageDefinition<"nginx">, import("./core.js").LanguageDefinition<"nix">, import("./core.js").LanguageDefinition<"objectivec">, import("./core.js").LanguageDefinition<"ocaml">, import("./core.js").LanguageDefinition<"pascal">, import("./core.js").LanguageDefinition<"perl">, import("./core.js").LanguageDefinition<"php">, import("./core.js").LanguageDefinition<"plaintext">, import("./core.js").LanguageDefinition<"powershell">, import("./core.js").LanguageDefinition<"properties">, import("./core.js").LanguageDefinition<"protobuf">, import("./core.js").LanguageDefinition<"python">, import("./core.js").LanguageDefinition<"r">, import("./core.js").LanguageDefinition<"ruby">, import("./core.js").LanguageDefinition<"rust">, import("./core.js").LanguageDefinition<"scala">, import("./core.js").LanguageDefinition<"scheme">, import("./core.js").LanguageDefinition<"scss">, import("./core.js").LanguageDefinition<"shell">, import("./core.js").LanguageDefinition<"sql">, import("./core.js").LanguageDefinition<"svelte">, import("./core.js").LanguageDefinition<"swift">, import("./core.js").LanguageDefinition<"toml">, import("./core.js").LanguageDefinition<"ts">, import("./core.js").LanguageDefinition<"tsrx">, import("./core.js").LanguageDefinition<"tsx">, import("./core.js").LanguageDefinition<"vbnet">, import("./core.js").LanguageDefinition<"verilog">, import("./core.js").LanguageDefinition<"vhdl">, import("./core.js").LanguageDefinition<"vue">, import("./core.js").LanguageDefinition<"wat">, import("./core.js").LanguageDefinition<"x86asm">, import("./core.js").LanguageDefinition<"yaml">]; export declare const defaultHighlighter: import("./core.js").Highlighter; export declare function normalizeLanguage(lang?: string): HighlightLanguage; export declare function listLanguages(): Array<HighlightLanguage>; export declare function tokenize(code: string, options?: HighlightOptions): HighlightTokenResult; export declare function highlight(code: string, options?: HighlightOptions): HighlightResult; export declare function highlightToHtml(code: string, options?: HighlightOptions): string; export declare function renderCodeBlockData({ code, decorations, lang, lineNumbers, title, }: { code: string; decorations?: HighlightOptions['decorations']; lang?: string; lineNumbers?: boolean; title?: string; }): RenderedCodeBlockData;