import { OperationError } from "./operationError.js"; import { result } from "./utility/result.js"; export type AlgebraicOperation = "Add" | "Multiply" | "Subtract" | "Divide" | "Power" | "Logarithm" | { NAME: "LogarithmWithThreshold"; VAL: number; }; export type ConvolutionOperation = "Add" | "Multiply" | "Subtract"; export declare const Convolution: { fromAlgebraicOperation(op: AlgebraicOperation): ConvolutionOperation | undefined; canDoAlgebraicOperation(op: AlgebraicOperation): boolean; toFn(t: ConvolutionOperation): (a: number, b: number) => number; }; type OperationFn = (a: number, b: number) => result; export declare const Algebraic: { toFn(x: AlgebraicOperation): OperationFn; toString(x: AlgebraicOperation): "*" | "/" | "+" | "-" | "**" | "log"; }; export type ScaleOperation = "Multiply" | "Power" | "Logarithm" | { NAME: "LogarithmWithThreshold"; VAL: number; } | "Divide"; export declare const Scale: { toFn(x: ScaleOperation): OperationFn; toIntegralSumCacheFn(x: ScaleOperation): ((a: number, b: number) => number) | undefined; toIntegralCacheFn(x: ScaleOperation): undefined; }; export {}; //# sourceMappingURL=operation.d.ts.map