import type { AnyObject, Nullable } from '../../types/index.js'; import type { DeepReadonly } from '../../types/deep.js'; import { CompositeObjectOps } from './ops.composite.js'; import type { AbsOptions, IObjectMath, MathPair, MathPairsMap, RoundOptions } from './types.js'; export declare class CompositeObjectMath extends CompositeObjectOps implements IObjectMath { protected readonly innerMath: MathPair[]; private returnInfinityOnDivByEmpty; constructor(innerMath: MathPairsMap); useInfinityOnDivByEmpty(enable: boolean): this; contains(base: Nullable>, target: Nullable>): boolean; inverse(o: Nullable>): T; abs(o: DeepReadonly, options?: AbsOptions): T; abs(o: Nullable>, options?: AbsOptions): T | null; round(o: DeepReadonly, options?: RoundOptions): T; round(o: Nullable>, options?: RoundOptions): T | null; add(o1: Nullable>, o2: Nullable>): T; subtract(base: Nullable>, amount: number | Nullable>): T; multiply(o1: Nullable>, o2: number | Nullable>): T; div(o1: Nullable>, o2: Nullable): T; div(o1: Nullable>, o2: Nullable>): number; }