import { Token } from './Token'; import { add as addHook } from './hooks'; export interface TokenObject { pattern: RegExp; inside?: Definition; lookbehind?: boolean; greedy?: boolean; alias?: string; } export declare type Tokens = RegExp | TokenObject | Array; export declare type Definition = Map>; export declare type Plugin = (a: typeof addHook) => void; export declare const languages: Map>>; export declare function tokenize(text: string, grammar: Definition): Array; export interface HighlightEnv { code: string; highlightedCode: string; grammar: Definition; language: string; } export declare function highlight(text: string, language: string): string; export declare function addPlugin(plugin: Plugin): void; export declare function resetPlugins(): void; export declare function addLanguage(name: string, def: Definition): void; export declare function getLanguage(name: string): Definition | undefined;