@danielsimonjr/mathts-core 0.14.3 → 0.15.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (89) hide show
  1. package/dist/arithmetic/scalar.d.ts +56 -0
  2. package/dist/arithmetic/scalar.d.ts.map +1 -0
  3. package/dist/array.d.ts +253 -0
  4. package/dist/array.d.ts.map +1 -0
  5. package/dist/bignumber-formatter.d.ts +135 -0
  6. package/dist/bignumber-formatter.d.ts.map +1 -0
  7. package/dist/collection.d.ts +67 -0
  8. package/dist/collection.d.ts.map +1 -0
  9. package/dist/config.d.ts +17 -0
  10. package/dist/config.d.ts.map +1 -0
  11. package/dist/constants.d.ts +30 -0
  12. package/dist/constants.d.ts.map +1 -0
  13. package/dist/customs.d.ts +44 -0
  14. package/dist/customs.d.ts.map +1 -0
  15. package/dist/error/DimensionError.d.ts +26 -0
  16. package/dist/error/DimensionError.d.ts.map +1 -0
  17. package/dist/error/IndexError.d.ts +33 -0
  18. package/dist/error/IndexError.d.ts.map +1 -0
  19. package/dist/error/MathjsError.d.ts +13 -0
  20. package/dist/error/MathjsError.d.ts.map +1 -0
  21. package/dist/factory/factory.d.ts +154 -0
  22. package/dist/factory/factory.d.ts.map +1 -0
  23. package/dist/factory/index.d.ts +6 -0
  24. package/dist/factory/index.d.ts.map +1 -0
  25. package/dist/factory.d.ts +112 -0
  26. package/dist/factory.d.ts.map +1 -0
  27. package/dist/index.d.ts +24 -2593
  28. package/dist/index.d.ts.map +1 -0
  29. package/dist/index.js +22 -13
  30. package/dist/internal.d.ts +33 -1344
  31. package/dist/internal.d.ts.map +1 -0
  32. package/dist/is.d.ts +102 -0
  33. package/dist/is.d.ts.map +1 -0
  34. package/dist/map.d.ts +113 -0
  35. package/dist/map.d.ts.map +1 -0
  36. package/dist/number.d.ts +314 -0
  37. package/dist/number.d.ts.map +1 -0
  38. package/dist/numeric/stable.d.ts +130 -0
  39. package/dist/numeric/stable.d.ts.map +1 -0
  40. package/dist/object.d.ts +119 -0
  41. package/dist/object.d.ts.map +1 -0
  42. package/dist/shared.d.ts +41 -0
  43. package/dist/shared.d.ts.map +1 -0
  44. package/dist/string.d.ts +70 -0
  45. package/dist/string.d.ts.map +1 -0
  46. package/dist/switch.d.ts +9 -0
  47. package/dist/switch.d.ts.map +1 -0
  48. package/dist/typed/index.d.ts +7 -0
  49. package/dist/typed/index.d.ts.map +1 -0
  50. package/dist/typed/mathts-typed.d.ts +246 -0
  51. package/dist/typed/mathts-typed.d.ts.map +1 -0
  52. package/dist/typed/type-bridge.d.ts +2 -0
  53. package/dist/typed/type-bridge.d.ts.map +1 -0
  54. package/dist/types/bignumber.d.ts +367 -0
  55. package/dist/types/bignumber.d.ts.map +1 -0
  56. package/dist/types/complex.d.ts +284 -0
  57. package/dist/types/complex.d.ts.map +1 -0
  58. package/dist/types/dual-rules.d.ts +129 -0
  59. package/dist/types/dual-rules.d.ts.map +1 -0
  60. package/dist/types/dual.d.ts +36 -0
  61. package/dist/types/dual.d.ts.map +1 -0
  62. package/dist/types/fraction.d.ts +215 -0
  63. package/dist/types/fraction.d.ts.map +1 -0
  64. package/dist/types/interfaces.d.ts +143 -0
  65. package/dist/types/interfaces.d.ts.map +1 -0
  66. package/dist/types/matrix/Range.d.ts +767 -0
  67. package/dist/types/matrix/Range.d.ts.map +1 -0
  68. package/dist/types/unit/Unit.d.ts +3 -0
  69. package/dist/types/unit/Unit.d.ts.map +1 -0
  70. package/dist/types/unit/dependencies.d.ts +4 -0
  71. package/dist/types/unit/dependencies.d.ts.map +1 -0
  72. package/dist/types/unit/errors.d.ts +18 -0
  73. package/dist/types/unit/errors.d.ts.map +1 -0
  74. package/dist/types/unit/index.d.ts +7 -0
  75. package/dist/types/unit/index.d.ts.map +1 -0
  76. package/dist/types/unit/unit-types.d.ts +231 -0
  77. package/dist/types/unit/unit-types.d.ts.map +1 -0
  78. package/dist/types/unit-definitions.d.ts +79 -0
  79. package/dist/types/unit-definitions.d.ts.map +1 -0
  80. package/dist/types/unit-prefixes.d.ts +29 -0
  81. package/dist/types/unit-prefixes.d.ts.map +1 -0
  82. package/dist/types/unit.d.ts +28 -0
  83. package/dist/types/unit.d.ts.map +1 -0
  84. package/dist/types/wasm-loader.d.ts +35 -0
  85. package/dist/types/wasm-loader.d.ts.map +1 -0
  86. package/dist/wasm-loader.d.ts +97 -0
  87. package/dist/wasm-loader.d.ts.map +1 -0
  88. package/package.json +8 -8
  89. package/dist/index-B4LIOfHN.d.ts +0 -449
@@ -1,449 +0,0 @@
1
- /**
2
- * Type for a factory function that creates instances
3
- */
4
- interface FactoryFunction<TResult = unknown> {
5
- (scope: Record<string, unknown>): TResult;
6
- isFactory: true;
7
- fn: string;
8
- dependencies: string[];
9
- meta?: FactoryMeta;
10
- }
11
- /**
12
- * Type for legacy factory objects (old-style factories)
13
- */
14
- interface LegacyFactory {
15
- type?: string;
16
- name: string;
17
- factory: (...args: unknown[]) => unknown;
18
- math?: boolean;
19
- dependencies?: string[];
20
- meta?: FactoryMeta;
21
- }
22
- /**
23
- * Meta information that can be attached to a factory
24
- */
25
- interface FactoryMeta {
26
- /**
27
- * If true, the factory will be recreated when config changes
28
- */
29
- recreateOnConfigChange?: boolean;
30
- /**
31
- * If true, this is a lazy factory that should only be created when needed
32
- */
33
- lazy?: boolean;
34
- /**
35
- * Additional custom metadata
36
- */
37
- [key: string]: unknown;
38
- }
39
- /**
40
- * Type for dependency names, which can be optional (prefixed with '?')
41
- */
42
- type DependencyName = string;
43
- /**
44
- * Type for the create callback function
45
- */
46
- type CreateFunction<TDeps extends Record<string, unknown>, TResult> = (dependencies: TDeps) => TResult;
47
- /**
48
- * Create a factory function, which can be used to inject dependencies.
49
- *
50
- * The created functions are memoized, a consecutive call of the factory
51
- * with the exact same inputs will return the same function instance.
52
- * The memoized cache is exposed on `factory.cache` and can be cleared
53
- * if needed.
54
- *
55
- * Example:
56
- *
57
- * const name = 'log'
58
- * const dependencies = ['config', 'typed', 'divideScalar', 'Complex']
59
- *
60
- * export const createLog = factory(name, dependencies, ({ typed, config, divideScalar, Complex }) => {
61
- * // ... create the function log here and return it
62
- * }
63
- *
64
- * @param name Name of the function to be created
65
- * @param dependencies The names of all required dependencies
66
- * @param create Callback function called with an object with all dependencies
67
- * @param meta Optional object with meta information that will be attached
68
- * to the created factory function as property `meta`. For explanation
69
- * of what meta properties can be specified and what they mean, see
70
- * docs/core/extension.md.
71
- * @returns The factory function
72
- */
73
- declare function factory<TDeps extends Record<string, unknown> = Record<string, unknown>, TResult = unknown>(name: string, dependencies: DependencyName[], create: CreateFunction<TDeps, TResult>, meta?: FactoryMeta): FactoryFunction<TResult>;
74
- /**
75
- * Sort all factories such that when loading in order, the dependencies are resolved.
76
- *
77
- * @param factories Array of factory functions or legacy factories
78
- * @returns Returns a new array with the sorted factories
79
- */
80
- declare function sortFactories(factories: Array<FactoryFunction | LegacyFactory>): Array<FactoryFunction | LegacyFactory>;
81
- declare function create(factories: Array<FactoryFunction | LegacyFactory>, scope?: Record<string, unknown>): Record<string, unknown>;
82
- /**
83
- * Test whether an object is a factory. This is the case when it has
84
- * properties name, dependencies, and a function create.
85
- * @param obj Any value to test
86
- * @returns true if obj is a factory function
87
- */
88
- declare function isFactory(obj: unknown): obj is FactoryFunction;
89
- /**
90
- * Assert that all dependencies of a list with dependencies are available in the provided scope.
91
- *
92
- * Will throw an exception when there are dependencies missing.
93
- *
94
- * @param name Name for the function to be created. Used to generate a useful error message
95
- * @param dependencies Array of dependency names
96
- * @param scope Object containing the available dependencies
97
- * @throws Error if required dependencies are missing
98
- */
99
- declare function assertDependencies(name: string, dependencies: DependencyName[], scope: Record<string, unknown>): void;
100
- /**
101
- * Check if a dependency is optional (starts with '?')
102
- * @param dependency The dependency name to check
103
- * @returns true if the dependency is optional
104
- */
105
- declare function isOptionalDependency(dependency: DependencyName): boolean;
106
- /**
107
- * Remove the optional notation '?' from a dependency name
108
- * @param dependency The dependency name
109
- * @returns The dependency name without optional notation
110
- */
111
- declare function stripOptionalNotation(dependency: DependencyName): string;
112
-
113
- interface BigNumber {
114
- isBigNumber: boolean;
115
- constructor: {
116
- prototype: {
117
- isBigNumber: boolean;
118
- };
119
- isDecimal?: (x: unknown) => boolean;
120
- };
121
- }
122
- interface Complex {
123
- re: number;
124
- im: number;
125
- }
126
- interface Fraction {
127
- n: number;
128
- d: number;
129
- }
130
- interface Unit$1 {
131
- constructor: {
132
- prototype: {
133
- isUnit: boolean;
134
- };
135
- };
136
- }
137
- interface Matrix {
138
- isMatrix?: boolean;
139
- _size?: number[];
140
- constructor: {
141
- prototype: {
142
- isMatrix: boolean;
143
- };
144
- };
145
- }
146
- interface DenseMatrix extends Matrix {
147
- isDenseMatrix: boolean;
148
- }
149
- interface SparseMatrix extends Matrix {
150
- isSparseMatrix: boolean;
151
- }
152
- interface Range {
153
- start: number;
154
- end: number;
155
- step: number;
156
- constructor: {
157
- prototype: {
158
- isRange: boolean;
159
- };
160
- };
161
- }
162
- interface IndexDimension {
163
- _data?: unknown[];
164
- _size: number[];
165
- isRange?: boolean;
166
- start?: number;
167
- end?: number;
168
- }
169
- interface Index {
170
- _dimensions: (IndexDimension | string)[];
171
- _sourceSize?: (number | null)[];
172
- constructor: {
173
- prototype: {
174
- isIndex: boolean;
175
- };
176
- };
177
- }
178
- declare function isNumber(x: unknown): x is number;
179
- declare function isBigNumber(x: unknown): x is BigNumber;
180
- declare function isBigInt(x: unknown): x is bigint;
181
- declare function isComplex(x: unknown): x is Complex;
182
- declare function isFraction(x: unknown): x is Fraction;
183
- declare function isUnit(x: unknown): x is Unit$1;
184
- declare function isString(x: unknown): x is string;
185
- declare const isArray: (arg: any) => arg is any[];
186
- declare function isMatrix(x: unknown): x is Matrix;
187
- /**
188
- * Test whether a value is a collection: an Array or Matrix
189
- * @param {*} x
190
- * @returns {boolean} isCollection
191
- */
192
- declare function isCollection(x: unknown): x is unknown[] | Matrix;
193
- declare function isDenseMatrix(x: unknown): x is DenseMatrix;
194
- declare function isSparseMatrix(x: unknown): x is SparseMatrix;
195
- declare function isRange(x: unknown): x is Range;
196
- declare function isIndex(x: unknown): x is Index;
197
- declare function isBoolean(x: unknown): x is boolean;
198
- declare function isFunction(x: unknown): x is (...args: unknown[]) => unknown;
199
- declare function isDate(x: unknown): x is Date;
200
- declare function isRegExp(x: unknown): x is RegExp;
201
- declare function isObject(x: unknown): x is Record<string, unknown>;
202
- /**
203
- * Returns `true` if the passed object appears to be a Map (i.e. duck typing).
204
- *
205
- * Methods looked for are `get`, `set`, `keys` and `has`.
206
- *
207
- * @param {Map | object} object
208
- * @returns
209
- */
210
- declare function isMap(object: unknown): object is Map<unknown, unknown>;
211
- declare function isNull(x: unknown): x is null;
212
- declare function isUndefined(x: unknown): x is undefined;
213
- declare function typeOf(x: unknown): string;
214
-
215
- /**
216
- * Shared TypeScript interfaces for the Unit factory (`Unit.ts`).
217
- *
218
- * The Unit type is a "function-as-class" (a constructor function whose
219
- * prototype is built up imperatively) ported from mathjs. These interfaces
220
- * describe the runtime shapes precisely so `Unit.ts` can be fully type-checked
221
- * under strict mode without suppression directives or escape-hatch typing.
222
- *
223
- * @module @danielsimonjr/mathts-core/types/unit/unit-types
224
- */
225
-
226
- /** A complex number value (re/im pair), as produced by the `Complex` type. */
227
- type ComplexValue = Complex;
228
- /**
229
- * Minimal structural view of a BigNumber value: only the instance methods that
230
- * the Unit factory actually calls when computing angle constants.
231
- */
232
- interface BigNumberValue {
233
- div(other: BigNumberValue | number | string): BigNumberValue;
234
- times(other: BigNumberValue | number | string): BigNumberValue;
235
- }
236
- /** Structural view of a Fraction value (numerator/denominator/sign). */
237
- interface FractionValue {
238
- n: number;
239
- d: number;
240
- s: number;
241
- isFraction?: boolean;
242
- }
243
- /**
244
- * Any numeric value a Unit can carry. Mirrors what `isNumeric`/`isComplex`
245
- * accept at the constructor boundary (number, bigint, boolean, BigNumber,
246
- * Fraction, Complex). Boolean/bigint flow through unchanged for valueless
247
- * units and are coerced by the scalar operations otherwise.
248
- */
249
- type Numeric = number | bigint | boolean | BigNumberValue | FractionValue | ComplexValue;
250
- /** A prefix definition such as `{ name: 'k', value: 1e3, scientific: true }`. */
251
- interface PrefixDef {
252
- name: string;
253
- value: number;
254
- scientific: boolean;
255
- }
256
- /** A named table of prefixes (e.g. PREFIXES.SHORT), keyed by prefix name. */
257
- type PrefixTable = Record<string, PrefixDef>;
258
- /** A base dimension definition (the 9-element exponent vector + its key). */
259
- interface BaseUnitDef {
260
- dimensions: number[];
261
- key?: string;
262
- }
263
- /**
264
- * A unit definition entry in the UNITS table. `dimensions` and `base.key` are
265
- * populated after the literal is created (see the module-init loops), hence
266
- * optional; `value` is `null` for angle units until `calculateAngleValues`
267
- * runs at module init, before any unit is parsed.
268
- */
269
- interface UnitDef {
270
- name: string;
271
- base?: BaseUnitDef;
272
- prefixes?: PrefixTable;
273
- value: Numeric | null;
274
- offset: number;
275
- dimensions?: number[];
276
- reciprocal?: boolean;
277
- }
278
- /** A single component of a Unit's unit list (e.g. the `m` in `m/s^2`). */
279
- interface UnitComponent {
280
- unit: UnitDef;
281
- prefix: PrefixDef;
282
- power: number;
283
- }
284
- /** An entry in a unit system, pairing a unit with a default prefix. */
285
- interface UnitSystemEntry {
286
- unit: UnitDef;
287
- prefix: PrefixDef;
288
- }
289
- /** A unit system (e.g. `si`, `cgs`, `us`, `auto`), keyed by base-dimension. */
290
- type UnitSystem = Record<string, UnitSystemEntry>;
291
- /** JSON serialization shape produced by `Unit#toJSON`. */
292
- interface UnitJSON {
293
- mathjs: 'Unit';
294
- value: Numeric | null;
295
- unit: string | null;
296
- fixPrefix: boolean;
297
- skipSimp: boolean;
298
- }
299
- /** A numeric-type converter (number → BigNumber/Fraction/Complex/number). */
300
- type ConverterFn = (x: Numeric) => Numeric;
301
- /** The table of numeric-type converters exposed on `Unit.typeConverters`. */
302
- interface TypeConverters {
303
- BigNumber: ConverterFn;
304
- Fraction: ConverterFn;
305
- Complex: ConverterFn;
306
- number: ConverterFn;
307
- [key: string]: ConverterFn;
308
- }
309
- /** Options accepted by `Unit.parse`. */
310
- interface ParseOptions {
311
- allowNoUnits?: boolean;
312
- }
313
- /** Formatting options accepted by `Unit#format` / `Unit#toBest`. */
314
- interface UnitFormatOptions {
315
- offset?: number;
316
- [key: string]: unknown;
317
- }
318
- /** Options accepted by `Unit.createUnit`. */
319
- interface CreateUnitOptions {
320
- override?: boolean;
321
- }
322
- /** Object form of a `createUnit` / `createUnitSingle` definition. */
323
- interface CreateUnitDefObject {
324
- definition?: string | UnitInstance;
325
- prefixes?: string;
326
- offset?: number;
327
- baseName?: string;
328
- aliases?: string[];
329
- }
330
- /** Config object the Unit factory reads (`config` dep + `on('config')`). */
331
- interface UnitConfig {
332
- number: string;
333
- predictable?: boolean;
334
- }
335
- /** Constructor (with static `.I`) for Complex values. */
336
- interface ComplexConstructor {
337
- readonly I: ComplexValue;
338
- }
339
- /** Constructor for BigNumber values. */
340
- interface BigNumberConstructor {
341
- new (value: number | string): BigNumberValue;
342
- }
343
- /** Constructor for Fraction values. */
344
- interface FractionConstructor {
345
- new (value: Numeric | string, denominator?: number): FractionValue;
346
- }
347
- /** `subtractScalar` is polymorphic: it also subtracts two Units (in splitUnit). */
348
- interface SubtractScalar {
349
- (a: UnitInstance, b: UnitInstance): UnitInstance;
350
- (a: Numeric, b: Numeric): Numeric;
351
- }
352
- /** A binary scalar operation (add/multiply/divide/pow). */
353
- type ScalarBinaryOp = (a: Numeric, b: Numeric) => Numeric;
354
- /** A unary scalar operation (abs/fix/round). */
355
- type ScalarUnaryOp = (x: Numeric) => Numeric;
356
- /**
357
- * The dependency object injected into the Unit factory by the factory system.
358
- * `on` is optional (`?on` in the dependency list). The index signature reflects that
359
- * this is a factory *scope* (a string-keyed dependency record that may also carry
360
- * deps beyond the ones the Unit itself reads), and lets it satisfy the `factory`
361
- * helper's `Record<string, unknown>` constraint.
362
- */
363
- interface UnitDependencies {
364
- [key: string]: unknown;
365
- on?: (event: string, callback: (curr: UnitConfig, prev: UnitConfig) => void) => void;
366
- config: UnitConfig;
367
- addScalar: ScalarBinaryOp;
368
- subtractScalar: SubtractScalar;
369
- multiplyScalar: ScalarBinaryOp;
370
- divideScalar: ScalarBinaryOp;
371
- pow: ScalarBinaryOp;
372
- abs: ScalarUnaryOp;
373
- fix: ScalarUnaryOp;
374
- round: ScalarUnaryOp;
375
- equal: (a: unknown, b: unknown) => boolean;
376
- isNumeric: (x: unknown) => boolean;
377
- format: (value: unknown, options?: unknown) => string;
378
- number: (x: unknown) => number;
379
- Complex: ComplexConstructor;
380
- BigNumber: BigNumberConstructor;
381
- Fraction: FractionConstructor;
382
- }
383
- /** An instance of Unit (the prototype methods + per-instance fields). */
384
- interface UnitInstance {
385
- value: Numeric | null;
386
- units: UnitComponent[];
387
- dimensions: number[];
388
- fixPrefix: boolean;
389
- skipAutomaticSimplification: boolean;
390
- type: 'Unit';
391
- isUnit: boolean;
392
- constructor: UnitConstructor;
393
- clone(): UnitInstance;
394
- valueType(): string;
395
- _isDerived(): boolean;
396
- _normalize(value: Numeric | null | undefined): Numeric | null;
397
- _denormalize(value: Numeric | null, prefixValue?: Numeric): Numeric | null;
398
- hasBase(base: BaseUnitDef | string | undefined): boolean;
399
- equalBase(other: {
400
- dimensions: number[];
401
- }): boolean;
402
- equals(other: UnitInstance): boolean;
403
- multiply(other: UnitInstance | Numeric): UnitInstance | Numeric;
404
- divideInto(numerator: Numeric): UnitInstance | Numeric;
405
- divide(other: UnitInstance | Numeric): UnitInstance | Numeric;
406
- pow(p: number): UnitInstance | Numeric;
407
- abs(): UnitInstance;
408
- to(valuelessUnit: string | UnitInstance): UnitInstance;
409
- toNumber(valuelessUnit?: string | UnitInstance): number;
410
- toNumeric(valuelessUnit?: string | UnitInstance): Numeric | null;
411
- toString(): string;
412
- toJSON(): UnitJSON;
413
- valueOf(): string;
414
- simplify(): UnitInstance;
415
- toSI(): UnitInstance;
416
- formatUnits(): string;
417
- toBest(unitList?: Array<string | UnitInstance>, options?: UnitFormatOptions): UnitInstance;
418
- format(options?: UnitFormatOptions): string;
419
- _bestPrefix(offset?: number): PrefixDef;
420
- splitUnit(parts: Array<string | UnitInstance>): UnitInstance[];
421
- _numberConverter(): ConverterFn;
422
- }
423
- /** The Unit constructor function together with its static members. */
424
- interface UnitConstructor {
425
- new (value?: Numeric | null, valuelessUnit?: string | UnitInstance): UnitInstance;
426
- prototype: UnitInstance;
427
- name: string;
428
- parse(str: string, options?: ParseOptions): UnitInstance;
429
- isValuelessUnit(name: string): boolean;
430
- isValidAlpha(c: string): boolean;
431
- fromJSON(json: UnitJSON): UnitInstance;
432
- setUnitSystem(name: string): void;
433
- getUnitSystem(): string | undefined;
434
- createUnit(obj: Record<string, unknown>, options?: CreateUnitOptions): UnitInstance | undefined;
435
- createUnitSingle(name: string, obj?: unknown): UnitInstance;
436
- deleteUnit(name: string): void;
437
- _getNumberConverter(type: string): ConverterFn;
438
- typeConverters: TypeConverters;
439
- PREFIXES: Record<string, PrefixTable>;
440
- BASE_DIMENSIONS: string[];
441
- BASE_UNITS: Record<string, BaseUnitDef>;
442
- UNIT_SYSTEMS: Record<string, UnitSystem>;
443
- UNITS: Record<string, UnitDef>;
444
- }
445
-
446
- /** The core `Unit` class, pre-wired to core's numeric primitives. */
447
- declare const Unit: UnitConstructor;
448
-
449
- export { isDate as $, type UnitDef as A, type BaseUnitDef as B, type Complex as C, type DenseMatrix as D, type UnitFormatOptions as E, type FactoryFunction as F, type UnitJSON as G, type UnitSystem as H, type Index as I, type UnitSystemEntry as J, assertDependencies as K, type LegacyFactory as L, type Matrix as M, type Numeric as N, create as O, type ParseOptions as P, factory as Q, type Range as R, type ScalarBinaryOp as S, type TypeConverters as T, Unit as U, isArray as V, isBigInt as W, isBigNumber as X, isBoolean as Y, isCollection as Z, isComplex as _, type UnitInstance as a, isDenseMatrix as a0, isFactory as a1, isFraction as a2, isFunction as a3, isIndex as a4, isMap as a5, isMatrix as a6, isNull as a7, isNumber as a8, isObject as a9, isOptionalDependency as aa, isRange as ab, isRegExp as ac, isSparseMatrix as ad, isString as ae, isUndefined as af, sortFactories as ag, stripOptionalNotation as ah, typeOf as ai, type UnitConstructor as b, type UnitDependencies as c, type BigNumber as d, type BigNumberConstructor as e, type ComplexConstructor as f, type ComplexValue as g, type ConverterFn as h, isUnit as i, type CreateFunction as j, type CreateUnitDefObject as k, type CreateUnitOptions as l, type DependencyName as m, type FactoryMeta as n, type Fraction as o, type FractionConstructor as p, type FractionValue as q, type IndexDimension as r, type PrefixDef as s, type PrefixTable as t, type ScalarUnaryOp as u, type SparseMatrix as v, type SubtractScalar as w, type Unit$1 as x, type UnitComponent as y, type UnitConfig as z };