import { JsonValue } from "@quri/serializer"; import * as Operation from "../../operation.js"; import { OperationError } from "../../operationError.js"; import { result } from "../../utility/result.js"; import { BaseSymbolicDist } from "./BaseSymbolicDist.js"; import { Bernoulli } from "./Bernoulli.js"; import { Beta } from "./Beta.js"; import { Binomial } from "./Binomial.js"; import { Cauchy } from "./Cauchy.js"; import { Exponential } from "./Exponential.js"; import { Gamma } from "./Gamma.js"; import { Logistic } from "./Logistic.js"; import { Lognormal } from "./Lognormal.js"; import { Normal } from "./Normal.js"; import { PointMass } from "./PointMass.js"; import { Poisson } from "./Poisson.js"; import { Triangular } from "./Triangular.js"; import { Uniform } from "./Uniform.js"; export { Bernoulli, Beta, Binomial, Cauchy, Exponential, Gamma, Logistic, Lognormal, Normal, PointMass, Poisson, Triangular, Uniform, }; export declare const tryAnalyticalSimplification: (d1: SymbolicDist, d2: SymbolicDist, op: Operation.AlgebraicOperation) => result | undefined; export type SymbolicDist = BaseSymbolicDist; type KnownSymbolicDist = Normal | Lognormal | PointMass | Bernoulli | Beta | Binomial | Cauchy | Exponential | Gamma | Logistic | Poisson | Triangular | Uniform; type GetArgs = V extends BaseSymbolicDist ? A : never; export type SerializedSymbolicDist = { [T in KnownSymbolicDist["symbolicType"]]: { type: T; args: GetArgs>; }; }[KnownSymbolicDist["symbolicType"]]; export declare function assertIsKnownSymbolicDist(dist: SymbolicDist): asserts dist is KnownSymbolicDist; export declare function serializeSymbolicDist(dist: KnownSymbolicDist): SerializedSymbolicDist; export declare function deserializeSymbolicDist(value: SerializedSymbolicDist): KnownSymbolicDist; //# sourceMappingURL=index.d.ts.map