import { z } from "zod"; //#region src/math.d.ts declare const ExactRationalSchema: z.ZodObject<{ numerator: z.ZodString; denominator: z.ZodString; }, z.core.$strip>; type ExactRational = z.infer; declare const SI_BASE_DIMENSIONS: readonly ["length", "mass", "time", "electricCurrent", "thermodynamicTemperature", "amountOfSubstance", "luminousIntensity"]; type SiBaseDimension = (typeof SI_BASE_DIMENSIONS)[number]; declare const DimensionVectorSchema: z.ZodRecord & z.core.$partial, z.ZodNumber>; type DimensionVector = z.infer; declare const MathUnitSchema: z.ZodObject<{ id: z.ZodString; symbol: z.ZodString; name: z.ZodOptional; dimension: z.ZodRecord & z.core.$partial, z.ZodNumber>; factorToSi: z.ZodObject<{ numerator: z.ZodString; denominator: z.ZodString; }, z.core.$strip>; offsetToSi: z.ZodOptional>; context: z.ZodOptional; }, z.core.$strip>; type MathUnit = z.infer; declare const MathNormalisationContextSchema: z.ZodObject<{ id: z.ZodString; bases: z.ZodArray; }, z.core.$strip>>; }, z.core.$strip>; type MathNormalisationContext = z.infer; declare const MathSymbolEntrySchema: z.ZodObject<{ glyph: z.ZodString; scope: z.ZodString; id: z.ZodString; quantityKind: z.ZodOptional; preferredUnit: z.ZodOptional; definitionSource: z.ZodOptional; }, z.core.$strip>; type MathSymbolEntry = z.infer; declare const SymbolTableSchema: z.ZodObject<{ symbols: z.ZodArray; preferredUnit: z.ZodOptional; definitionSource: z.ZodOptional; }, z.core.$strip>>; units: z.ZodArray; dimension: z.ZodRecord & z.core.$partial, z.ZodNumber>; factorToSi: z.ZodObject<{ numerator: z.ZodString; denominator: z.ZodString; }, z.core.$strip>; offsetToSi: z.ZodOptional>; context: z.ZodOptional; }, z.core.$strip>>; contexts: z.ZodOptional; }, z.core.$strip>>; }, z.core.$strip>>>; }, z.core.$strip>; type SymbolTable = z.infer; declare const MathPresentationSchema: z.ZodObject<{ latex: z.ZodString; }, z.core.$strip>; type MathPresentation = z.infer; declare const MathProvenanceSchema: z.ZodObject<{ source: z.ZodString; pageRef: z.ZodOptional; editTrail: z.ZodArray; }, z.core.$strip>; type MathProvenance = z.infer; declare const MathUncertaintySchema: z.ZodObject<{ magnitude: z.ZodObject<{ numerator: z.ZodString; denominator: z.ZodString; }, z.core.$strip>; unit: z.ZodOptional; coverageFactor: z.ZodOptional; }, z.core.$strip>; type MathUncertainty = z.infer; declare const MathNumSchema: z.ZodObject<{ numerator: z.ZodString; denominator: z.ZodString; kind: z.ZodLiteral<"num">; }, z.core.$strip>; type MathNum = z.infer; declare const MathQtySchema: z.ZodObject<{ kind: z.ZodLiteral<"qty">; value: z.ZodObject<{ numerator: z.ZodString; denominator: z.ZodString; }, z.core.$strip>; unit: z.ZodString; uncertainty: z.ZodOptional; unit: z.ZodOptional; coverageFactor: z.ZodOptional; }, z.core.$strip>>; }, z.core.$strip>; type MathQty = z.infer; declare const MathSymSchema: z.ZodObject<{ kind: z.ZodLiteral<"sym">; id: z.ZodString; }, z.core.$strip>; type MathSym = z.infer; declare const MathUnparsedSchema: z.ZodObject<{ kind: z.ZodLiteral<"unparsed">; latex: z.ZodString; }, z.core.$strip>; type MathUnparsed = z.infer; interface MathApp { kind: "app"; operator: string; args: MathExpression[]; } interface MathSum { kind: "sum"; binder: string; lower: MathExpression; upper: MathExpression; body: MathExpression; } interface MathProd { kind: "prod"; binder: string; lower: MathExpression; upper: MathExpression; body: MathExpression; } interface MathMatrix { kind: "matrix"; rows: MathExpression[][]; } type MathExpression = MathNum | MathQty | MathSym | MathApp | MathSum | MathProd | MathMatrix | MathUnparsed; declare function isMathExpression(value: unknown): value is MathExpression; declare const MathAppSchema: z.ZodObject<{ kind: z.ZodLiteral<"app">; operator: z.ZodString; args: z.ZodLazy>>>; }, z.core.$strip>; declare const MathSumSchema: z.ZodObject<{ binder: z.ZodString; lower: z.ZodLazy>>; upper: z.ZodLazy>>; body: z.ZodLazy>>; kind: z.ZodLiteral<"sum">; }, z.core.$strip>; declare const MathProdSchema: z.ZodObject<{ binder: z.ZodString; lower: z.ZodLazy>>; upper: z.ZodLazy>>; body: z.ZodLazy>>; kind: z.ZodLiteral<"prod">; }, z.core.$strip>; declare const MathMatrixSchema: z.ZodObject<{ kind: z.ZodLiteral<"matrix">; rows: z.ZodLazy>>>>; }, z.core.$strip>; declare const MathExpressionSchema: z.ZodType; declare const QuantitySchema: z.ZodObject<{ kind: z.ZodLiteral<"quantity">; magnitude: z.ZodNumber; dimension: z.ZodRecord & z.core.$partial, z.ZodNumber>; }, z.core.$strip>; type Quantity = z.infer; declare const IntervalSchema: z.ZodObject<{ kind: z.ZodLiteral<"interval">; min: z.ZodNumber; max: z.ZodNumber; dimension: z.ZodRecord & z.core.$partial, z.ZodNumber>; }, z.core.$strip>; type Interval = z.infer; declare const EvaluationValueSchema: z.ZodUnion; magnitude: z.ZodNumber; dimension: z.ZodRecord & z.core.$partial, z.ZodNumber>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"interval">; min: z.ZodNumber; max: z.ZodNumber; dimension: z.ZodRecord & z.core.$partial, z.ZodNumber>; }, z.core.$strip>]>; type EvaluationValue = z.infer; declare const FormulaBindingsSchema: z.ZodRecord; magnitude: z.ZodNumber; dimension: z.ZodRecord & z.core.$partial, z.ZodNumber>; }, z.core.$strip>, z.ZodObject<{ kind: z.ZodLiteral<"interval">; min: z.ZodNumber; max: z.ZodNumber; dimension: z.ZodRecord & z.core.$partial, z.ZodNumber>; }, z.core.$strip>]>>; type FormulaBindings = z.infer; //#endregion export { MathSumSchema as A, MathUnparsedSchema as B, MathProd as C, MathQty as D, MathProvenanceSchema as E, MathUncertainty as F, SymbolTable as G, QuantitySchema as H, MathUncertaintySchema as I, SymbolTableSchema as K, MathUnit as L, MathSymSchema as M, MathSymbolEntry as N, MathQtySchema as O, MathSymbolEntrySchema as P, MathUnitSchema as R, MathPresentationSchema as S, MathProvenance as T, SI_BASE_DIMENSIONS as U, Quantity as V, SiBaseDimension as W, MathNormalisationContext as _, ExactRational as a, MathNumSchema as b, FormulaBindingsSchema as c, MathApp as d, MathAppSchema as f, MathMatrixSchema as g, MathMatrix as h, EvaluationValueSchema as i, MathSym as j, MathSum as k, Interval as l, MathExpressionSchema as m, DimensionVectorSchema as n, ExactRationalSchema as o, MathExpression as p, isMathExpression as q, EvaluationValue as r, FormulaBindings as s, DimensionVector as t, IntervalSchema as u, MathNormalisationContextSchema as v, MathProdSchema as w, MathPresentation as x, MathNum as y, MathUnparsed as z };