import { MathJsConfig } from '../config.js'; export declare const MATRIX_OPTIONS: readonly ['Matrix', 'Array']; export declare const NUMBER_OPTIONS: readonly ['number', 'BigNumber', 'bigint', 'Fraction']; /** A valid value of the `matrix` configuration option. */ export type MatrixOption = (typeof MATRIX_OPTIONS)[number]; /** A valid value of the `number` configuration option. */ export type NumberOption = (typeof NUMBER_OPTIONS)[number]; /** * Type for partial config options */ export type ConfigOptions = Partial & { epsilon?: number; }; /** * Type for the config function */ export interface ConfigFunction { (): MathJsConfig; (options: ConfigOptions): MathJsConfig; MATRIX_OPTIONS: readonly string[]; NUMBER_OPTIONS: readonly string[]; readonly relTol: number; readonly absTol: number; readonly matrix: MatrixOption; readonly number: NumberOption; readonly numberFallback: 'number' | 'BigNumber'; readonly precision: number; readonly predictable: boolean; readonly randomSeed: string | null; readonly legacySubset: boolean; } /** * Type for the emit function */ export type EmitFunction = (event: string, curr: MathJsConfig, prev: MathJsConfig, changes: Partial) => void; /** * Create the `config` function for a math.js instance. * * The created function reads and changes `config`, and calls `emit` with the event * `'config'`. */ export declare function configFactory(config: MathJsConfig, emit: EmitFunction): ConfigFunction; //# sourceMappingURL=config.d.ts.map