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[];
