tree-sitter-wasm
Version:
Pre-built WebAssembly binaries and queries for tree-sitter grammars.
128 lines (123 loc) • 8.53 kB
TypeScript
/** Standard Tree-sitter query categories mapped per language */
export type QueryMap = {
"ada": "folds" | "highlights" | "injections" | "locals" | "textobjects";
"angular": "folds" | "highlights" | "indents" | "injections" | "locals";
"arduino": "folds" | "highlights" | "indents" | "injections" | "locals" | "tags";
"asm": "highlights" | "injections";
"astro": "folds" | "highlights" | "indents" | "injections" | "locals";
"awk": "highlights" | "injections";
"bash": "folds" | "highlights" | "indents" | "injections" | "locals";
"bibtex": "folds" | "highlights" | "indents" | "injections" | "locals" | "tags";
"c": "folds" | "highlights" | "indents" | "injections" | "locals" | "tags";
"c_sharp": "folds" | "highlights" | "injections" | "locals" | "tags";
"cairo": "folds" | "highlights" | "indents" | "injections" | "locals" | "textobjects";
"clojure": "folds" | "highlights" | "injections" | "locals";
"cmake": "folds" | "highlights" | "indents" | "injections";
"comment": "highlights";
"commonlisp": "folds" | "highlights" | "injections" | "locals" | "tags";
"cpp": "folds" | "highlights" | "indents" | "injections" | "locals" | "tags";
"css": "folds" | "highlights" | "indents" | "injections";
"csv": "highlights";
"cuda": "folds" | "highlights" | "indents" | "injections" | "locals";
"d": "folds" | "helix-highlights" | "helix-indents" | "helix-injections" | "helix-textobjects" | "highlights" | "indents" | "injections" | "locals" | "nova-folds" | "nova-highlights" | "nova-symbols" | "tags" | "textobjects";
"dart": "folds" | "highlights" | "indents" | "injections" | "locals" | "tags" | "test";
"desktop": "folds" | "highlights" | "injections";
"devicetree": "folds" | "highlights" | "indents" | "injections" | "locals";
"diff": "folds" | "highlights" | "injections";
"dockerfile": "highlights" | "injections";
"dtd": "folds" | "highlights" | "injections" | "locals";
"editorconfig": "folds" | "highlights" | "injections";
"elisp": "highlights" | "tags";
"elixir": "folds" | "highlights" | "indents" | "injections" | "locals" | "tags";
"elm": "folds" | "highlights" | "injections" | "locals" | "tags";
"embedded_template": "highlights" | "injections" | "injections-ejs" | "injections-erb" | "injections-etlua";
"erlang": "folds" | "highlights" | "injections";
"fish": "folds" | "highlights" | "indents" | "injections" | "locals";
"fortran": "folds" | "highlights" | "indents" | "injections" | "locals" | "tags";
"gdscript": "folds" | "highlights" | "indents" | "injections" | "locals";
"gdshader": "highlights" | "injections" | "locals" | "tags";
"git_config": "folds" | "highlights" | "injections";
"git_rebase": "highlights" | "injections";
"gitattributes": "highlights" | "injections" | "locals";
"gitignore": "highlights" | "injections";
"gleam": "folds" | "highlights" | "indents" | "injections" | "locals" | "tags";
"glsl": "folds" | "highlights" | "indents" | "injections" | "locals";
"go": "folds" | "highlights" | "indents" | "injections" | "locals" | "tags";
"godot_resource": "folds" | "highlights" | "injections" | "locals";
"graphql": "highlights" | "indents" | "injections";
"groovy": "folds" | "highlights" | "indents" | "injections" | "locals";
"haskell": "folds" | "highlights" | "injections" | "locals";
"hcl": "folds" | "highlights" | "indents" | "injections";
"html": "folds" | "highlights" | "indents" | "injections" | "locals";
"ini": "folds" | "highlights" | "injections";
"java": "folds" | "highlights" | "indents" | "injections" | "locals" | "tags";
"javascript": "folds" | "highlights" | "highlights-jsx" | "highlights-params" | "indents" | "injections" | "locals" | "tags";
"jq": "highlights" | "injections" | "locals";
"json": "folds" | "highlights" | "indents" | "injections" | "locals";
"julia": "folds" | "highlights" | "indents" | "injections" | "locals";
"just": "folds" | "highlights" | "indents" | "injections" | "locals";
"kdl": "folds" | "highlights" | "indents" | "injections" | "locals";
"kotlin": "folds" | "highlights" | "injections" | "locals";
"latex": "folds" | "highlights" | "injections";
"liquid": "highlights" | "injections";
"lua": "folds" | "highlights" | "indents" | "injections" | "locals" | "tags";
"make": "folds" | "highlights" | "injections";
"markdown": "folds" | "highlights" | "indents" | "injections";
"markdown_inline": "highlights" | "injections";
"matlab": "folds" | "highlights" | "indents" | "injections" | "locals";
"nginx": "folds" | "highlights" | "injections";
"nim": "folds" | "highlights" | "injections" | "locals";
"nix": "folds" | "highlights" | "indents" | "injections" | "locals" | "tags";
"objc": "folds" | "highlights" | "indents" | "injections" | "locals";
"ocaml": "folds" | "highlights" | "indents" | "injections" | "locals" | "tags";
"ocaml_interface": "folds" | "highlights" | "indents" | "injections" | "locals" | "tags";
"ocaml_type": "highlights" | "locals" | "tags";
"perl": "folds" | "highlights" | "injections" | "matchup";
"php": "folds" | "highlights" | "indents" | "injections" | "injections-text" | "locals" | "tags";
"php_only": "folds" | "highlights" | "indents" | "injections" | "injections-text" | "locals" | "tags";
"powershell": "folds" | "highlights" | "indents" | "injections" | "locals";
"prisma": "folds" | "highlights" | "injections";
"proto": "folds" | "highlights" | "indents" | "injections";
"psv": "highlights";
"python": "folds" | "highlights" | "indents" | "injections" | "locals" | "tags";
"qmljs": "folds" | "highlights" | "injections" | "locals";
"query": "folds" | "highlights" | "indents" | "injections" | "locals";
"r": "highlights" | "indents" | "injections" | "locals" | "tags";
"racket": "folds" | "highlights" | "injections" | "locals" | "tags";
"razor": "folds" | "highlights" | "injections";
"regex": "highlights";
"requirements": "highlights" | "injections";
"ruby": "folds" | "highlights" | "indents" | "injections" | "locals" | "tags";
"rust": "folds" | "highlights" | "indents" | "injections" | "locals" | "tags";
"scala": "folds" | "highlights" | "indents" | "injections" | "locals" | "tags";
"scheme": "folds" | "highlights" | "injections";
"scss": "folds" | "highlights" | "indents" | "injections";
"sln": "folds" | "highlights" | "tags" | "textobjects";
"solidity": "folds" | "highlights" | "highlights-nvim" | "injections" | "locals" | "tags";
"sql": "folds" | "highlights" | "indents" | "injections";
"ssh_config": "folds" | "highlights" | "indents" | "injections" | "locals";
"svelte": "folds" | "highlights" | "indents" | "injections" | "locals" | "tags";
"swift": "folds" | "highlights" | "indents" | "injections" | "locals" | "outline" | "tags" | "textobjects";
"systemverilog": "folds" | "highlights" | "injections";
"templ": "folds" | "highlights" | "injections";
"terraform": "folds" | "highlights" | "indents" | "injections";
"toml": "folds" | "highlights" | "indents" | "injections" | "locals";
"tsv": "highlights";
"tsx": "folds" | "highlights" | "indents" | "injections" | "locals" | "tags";
"typescript": "folds" | "highlights" | "indents" | "injections" | "locals" | "tags";
"typst": "folds" | "highlights" | "indents" | "injections";
"vim": "folds" | "highlights" | "injections" | "locals";
"vimdoc": "highlights" | "injections";
"vue": "folds" | "highlights" | "indents" | "injections";
"xml": "folds" | "highlights" | "indents" | "injections" | "locals";
"yaml": "folds" | "highlights" | "indents" | "injections" | "locals";
"zig": "folds" | "highlights" | "indents" | "injections" | "locals";
};
/** Supported language identifiers compiled during build step */
export type SupportedLanguage = keyof QueryMap;
/** Resolves the absolute path to a specific language's WASM file. */
export declare function getWasmPath(lang: SupportedLanguage): string;
/** Resolves the absolute path to a specific language's query file. */
export declare function getQueryPath<L extends SupportedLanguage>(lang: L, query: QueryMap[L]): string;
/** Returns an object mapping available query types to their absolute file paths. */
export declare function getAvailableQueries<L extends SupportedLanguage>(lang: L): Record<QueryMap[L], string>;