import { Grammar, SyntaxToken } from './types'; /** * Core tokenizer that converts source code into syntax tokens based on a grammar definition. * This is a local replacement for Prism tokenize. * * The tokenizer works by: * 1. Pre-processing greedy patterns to claim their matched regions first * 2. Iterating through all grammar rules in order * 3. Finding regex matches in the source text * 4. Splitting the text into matched (typed) and unmatched (plain) segments * 5. Recursively tokenizing nested content when an `inside` grammar is specified * * @param {string} code - The source code string to tokenize. * @param {Grammar} grammar - The grammar rules to apply for tokenization. * @returns {(string | SyntaxToken)[]} An array of plain strings and syntax tokens. */ export declare function tokenize(code: string, grammar: Grammar): (string | SyntaxToken)[];