/** * Public surface of the formula engine. * * Nothing in `./` imports Vue, the DOM or any spreadsheet library. See * ./README.md for the grammar (EBNF), the evaluation model and the error model. */ export { tokenize, LexError, type Token, type TokenType } from './lexer'; export { parseFormula, parseFunctionBlock, collectRefs, ParseError, type Node, type CellNode, type RangeNode, type BlockNode, } from './parser'; export { evaluate } from './evaluator'; export { DependencyGraph } from './graph'; export { FUNCTIONS, getFunction, hasFunction } from './functions'; export { colToNumber, numberToCol, parseA1, toA1, looksLikeCell, expandRange, cycleReferenceLocks, } from './refs'; export { Workbook, literalValue, type TableModel, } from './workbook'; export { buildFunctionIndex, expandUserFunctions, collectCalledFunctionNames, collectCalledFunctionNamesInBlock, declaredBlockNames, findInvalidForSource, type FunctionDef, } from './userFunctions'; export { FormulaError, isError, keyOf, parseKey, ERROR_CODES, type ErrorCode, type CellValue, type Scalar, type EngineHost, } from './types';