import { Interval } from './eval'; import { ExprElement, ExprMap, MathMLMap, VarMap } from './elements'; export declare class ExprFunction extends ExprElement { readonly fn: string; readonly args: ExprElement[]; constructor(fn: string, args?: ExprElement[]); evaluate(vars?: VarMap): number; interval(vars?: VarMap): Interval; substitute(vars?: ExprMap): ExprFunction; collapse(): ExprElement | ExprFunction; get simplified(): this; get variables(): string[]; get functions(): string[]; toString(): string; toMathML(custom?: MathMLMap): string; toVoice(custom?: MathMLMap): string; } export declare class ExprTerm extends ExprElement { readonly items: ExprElement[]; constructor(items: ExprElement[]); evaluate(vars?: VarMap): number; interval(vars?: VarMap): Interval; substitute(vars?: ExprMap): ExprElement; get simplified(): ExprElement; get variables(): string[]; get functions(): string[]; toString(): string; toMathML(custom?: MathMLMap): string; toVoice(custom?: MathMLMap): string; collapse(): ExprElement; }