export type Position = { line: number; column: number; offset: number; }; export type TokenType = "identifier" | "keyword" | "numeric" | "regex" | "string" | "template" | "punctuator" | "eof"; export type Token = { type: TokenType; value: string; start: Position; end: Position; }; export type Comment = { type: "block" | "line"; value: string; start: Position; end: Position; }; export type TokenizeOptions = { allowRegexLiterals?: boolean; comments?: Comment[]; }; export declare function tokenize(source: string, options?: TokenizeOptions): Token[]; export declare function collectComments(source: string): Comment[];