import type { Token } from '../types/core';
export type { Token } from '../types/core';
export declare enum TokenKind {
    IDENTIFIER = "identifier",
    STRING = "string",
    NUMBER = "number",
    SELECTOR = "selector",
    OPERATOR = "operator",
    TIME = "time",
    TEMPLATE = "template",
    COMMENT = "comment",
    SYMBOL = "symbol",
    UNKNOWN = "unknown"
}
export declare function getTokenKind(tokenType: TokenType): TokenKind;
export declare enum TokenType {
    KEYWORD = "keyword",
    COMMAND = "command",
    EXPRESSION = "expression",
    STRING = "string",
    NUMBER = "number",
    BOOLEAN = "boolean",
    TEMPLATE_LITERAL = "template_literal",
    CSS_SELECTOR = "css_selector",
    ID_SELECTOR = "id_selector",
    CLASS_SELECTOR = "class_selector",
    QUERY_REFERENCE = "query_reference",
    CONTEXT_VAR = "context_var",
    GLOBAL_VAR = "global_var",
    EVENT = "event",
    OPERATOR = "operator",
    LOGICAL_OPERATOR = "logical_operator",
    COMPARISON_OPERATOR = "comparison_operator",
    TIME_EXPRESSION = "time_expression",
    OBJECT_LITERAL = "object_literal",
    ARRAY_LITERAL = "array_literal",
    SYMBOL = "symbol",
    COMMENT = "comment",
    IDENTIFIER = "identifier",
    UNKNOWN = "unknown"
}
export declare function enableDeferredClassification(): void;
export declare function disableDeferredClassification(): void;
export declare function isDeferredClassificationEnabled(): boolean;
export declare function enableDualOutput(): void;
export declare function disableDualOutput(): void;
export declare function isDualOutputEnabled(): boolean;
export interface Tokenizer {
    input: string;
    position: number;
    line: number;
    column: number;
    tokens: Token[];
}
export declare function createTokenizer(): Tokenizer;
export declare function tokenize(input: string): Token[];
//# sourceMappingURL=tokenizer.d.ts.map