import { PRNG } from "../../rng/index.js"; import { result } from "../../utility/result.js"; import { BaseDist } from "../BaseDist.js"; import { DistError } from "../DistError.js"; import { Env } from "../env.js"; type DistResult = result; type Opts = { env: Env; rng: PRNG; }; export type BinaryOperation = (t1: BaseDist, t2: BaseDist, opts: Opts) => DistResult; export declare const binaryOperations: { algebraicAdd: (t1: BaseDist, t2: BaseDist, opts: Opts) => result; algebraicMultiply: (t1: BaseDist, t2: BaseDist, opts: Opts) => result; algebraicDivide: (t1: BaseDist, t2: BaseDist, opts: Opts) => result; algebraicSubtract: (t1: BaseDist, t2: BaseDist, opts: Opts) => result; algebraicLogarithm: (t1: BaseDist, t2: BaseDist, opts: Opts) => result; algebraicPower: (t1: BaseDist, t2: BaseDist, opts: Opts) => result; pointwiseAdd: (t1: BaseDist, t2: BaseDist, { env }: Opts) => result; pointwiseMultiply: (t1: BaseDist, t2: BaseDist, { env }: Opts) => result; pointwiseDivide: (t1: BaseDist, t2: BaseDist, { env }: Opts) => result; pointwiseSubtract: (t1: BaseDist, t2: BaseDist, { env }: Opts) => result; pointwiseLogarithm: (t1: BaseDist, t2: BaseDist, { env }: Opts) => result; pointwisePower: (t1: BaseDist, t2: BaseDist, { env }: Opts) => result; }; type AlgebraicFn = (dists: BaseDist[], opts: Opts) => DistResult; type AlgebraicCumFn = (dists: BaseDist[], opts: Opts) => result; export declare const algebraicSum: AlgebraicFn; export declare const algebraicProduct: AlgebraicFn; export declare const algebraicCumSum: AlgebraicCumFn; export declare const algebraicCumProd: AlgebraicCumFn; export declare const algebraicDiff: AlgebraicCumFn; export {}; //# sourceMappingURL=binaryOperations.d.ts.map