import { A as ASTNode, G as ReferenceRecord, a as Config, H as BinOpNode, K as FunctionCallNode, M as ImplicitListNode, P as ListNode, Q as NoOpNode, V as NumNode, W as ReferenceNode, X as StringNode, Y as UnaryOpNode } from './types-DSZPf9oj.js';
export { B as BaseSymbolType, m as BooleanSymbol, b as ColorManager, d as ColorSpecification, e as ColorSpecificationSchema, n as ColorSymbol, C as ConfigOptions, g as ConstantsSpecification, h as ConstantsSpecificationSchema, D as DEFAULT_LANGUAGE_OPTIONS, o as DictionarySymbol, i as FunctionSpecification, j as FunctionSpecificationSchema, F as FunctionsManager, I as ISymbolType, J as JsValue, L as LanguageOptions, r as ListSymbol, N as NullSymbol, s as NumberSymbol, t as NumberWithUnitSymbol, O as Operations, E as ReferenceRecordValue, R as ReservedKeyword, S as StringSymbol, u as SupportedFormats, y as SymbolMetadata, x as Token, T as TokenSymbol, v as TokenType, z as UNINTERPRETED_KEYWORDS, U as UnitManager, k as UnitSpecification, l as UnitSpecificationSchema, c as collectReferenceNodes, f as filterAST, p as getResultTypeName, q as jsValueToSymbolType, w as walkAST } from './types-DSZPf9oj.js';
import { A as AllErrorCodes, L as LanguageError } from './interpreter-CgnLEVGZ.js';
export { m as ColorErrorCode, C as ColorErrorData, n as ConfigErrorCode, g as ConfigErrorData, E as ErrorOptions, o as FunctionsErrorCode, F as FunctionsErrorData, c as Interpreter, I as InterpreterError, q as InterpreterErrorCode, h as InterpreterErrorData, d as InterpreterResult, e as Lexer, a as LexerError, w as LexerErrorCode, i as LexerErrorData, x as OperationsErrorCode, O as OperationsErrorData, f as Parser, b as ParserError, y as ParserErrorCode, j as ParserErrorData, P as ProcessorError, z as ProcessorErrorCode, k as ProcessorErrorData, S as SerializedError, B as SymbolsErrorCode, l as SymbolsErrorData, G as UnitErrorCode, U as UnitErrorData, r as isInterpreterError, s as isLanguageError, t as isLexerError, u as isParserError, v as isProcessorError, p as parseExpression, D as serializeError } from './interpreter-CgnLEVGZ.js';
import 'arktype/internal/variants/object.ts';

declare const getMessage: (code: AllErrorCodes | string, data?: Record<string, unknown>) => string;

/**
 * Rename references in a token value string using an AST and rename map
 *
 * @param originalValue - The original token value string
 * @param ast - The parsed AST of the token value
 * @param renameMap - Map of old names to new names { "old.name": "new.name" }
 * @returns The updated token value string with renamed references
 *
 * @example
 * const renameMap = { "color.primary": "color.main" };
 * const updated = renameReferences("{color.primary}", ast, renameMap);
 * // Returns: "{color.main}"
 *
 * @example
 * const renameMap = { "a": "x", "b": "y" };
 * const updated = renameReferences("{a} + {b}", ast, renameMap);
 * // Returns: "{x} + {y}"
 */
declare function renameReferences(originalValue: string, ast: ASTNode, renameMap: Record<string, string>): string;

interface EvalOptions {
    references?: ReferenceRecord;
    config?: Config;
    allowStatements?: boolean;
}
interface EvalSuccess {
    success: true;
    result: unknown;
    resultString: string;
    type: string;
    executionTime: number;
}
interface EvalError {
    success: false;
    error: LanguageError;
    executionTime: number;
}
type EvalResult = EvalSuccess | EvalError;
declare function evaluateExpression(expression: string, options?: EvalOptions): EvalResult;

declare const ASTNodes: {
    BinOpNode: typeof BinOpNode;
    FunctionCallNode: typeof FunctionCallNode;
    ImplicitListNode: typeof ImplicitListNode;
    ListNode: typeof ListNode;
    NoOpNode: typeof NoOpNode;
    NumNode: typeof NumNode;
    ReferenceNode: typeof ReferenceNode;
    StringNode: typeof StringNode;
    UnaryOpNode: typeof UnaryOpNode;
};

export { ASTNode, ASTNodes, AllErrorCodes, Config, type EvalError, type EvalOptions, type EvalResult, type EvalSuccess, LanguageError, ReferenceRecord, evaluateExpression, getMessage, renameReferences };
