import { BinaryOp, Dyno, TrinaryOp, UnaryOp } from './base';
import { AddOutput, ClampOutput, DivOutput, IModOutput, IsInfOutput, IsNanOutput, MaxOutput, MinOutput, MixOutput, ModOutput, MulOutput, SmoothstepOutput, StepOutput, SubOutput } from './mathTypes';
import { AllIntTypes, AllSignedTypes, AllValueTypes, BoolTypes, FloatTypes, SignedTypes, ValueTypes } from './types';
import { DynoVal } from './value';
export declare const add: (a: DynoVal, b: DynoVal) => DynoVal>;
export declare const sub: (a: DynoVal, b: DynoVal) => DynoVal>;
export declare const mul: (a: DynoVal, b: DynoVal) => DynoVal>;
export declare const div: (a: DynoVal, b: DynoVal) => DynoVal>;
export declare const imod: (a: DynoVal, b: DynoVal) => DynoVal>;
export declare const mod: (a: DynoVal, b: DynoVal) => DynoVal>;
export declare const modf: (a: DynoVal) => {
fract: DynoVal;
integer: DynoVal;
};
export declare const neg: (a: DynoVal) => DynoVal;
export declare const abs: (a: DynoVal) => DynoVal;
export declare const sign: (a: DynoVal) => DynoVal;
export declare const floor: (a: DynoVal) => DynoVal;
export declare const ceil: (a: DynoVal) => DynoVal;
export declare const trunc: (a: DynoVal) => DynoVal;
export declare const round: (a: DynoVal) => DynoVal;
export declare const fract: (a: DynoVal) => DynoVal;
export declare const pow: (a: DynoVal, b: DynoVal) => DynoVal;
export declare const exp: (a: DynoVal) => DynoVal;
export declare const exp2: (a: DynoVal) => DynoVal;
export declare const log: (a: DynoVal) => DynoVal;
export declare const log2: (a: DynoVal) => DynoVal;
export declare const sqr: (a: DynoVal) => DynoVal;
export declare const sqrt: (a: DynoVal) => DynoVal;
export declare const inversesqrt: (a: DynoVal) => DynoVal;
export declare const min: (a: DynoVal, b: DynoVal) => DynoVal>;
export declare const max: (a: DynoVal, b: DynoVal) => DynoVal>;
export declare const clamp: (a: DynoVal, min: DynoVal, max: DynoVal) => DynoVal>;
export declare const mix: (a: DynoVal, b: DynoVal, t: DynoVal) => DynoVal>;
export declare const step: (edge: DynoVal, x: DynoVal) => DynoVal>;
export declare const smoothstep: (edge0: DynoVal, edge1: DynoVal, x: DynoVal) => DynoVal>;
export declare const isNan: (a: DynoVal) => DynoVal>;
export declare const isInf: (a: DynoVal) => DynoVal>;
export declare class Add extends BinaryOp, "sum"> {
constructor({ a, b }: {
a: DynoVal;
b: DynoVal;
});
}
export declare class Sub extends BinaryOp, "difference"> {
constructor({ a, b }: {
a: DynoVal;
b: DynoVal;
});
}
export declare class Mul extends BinaryOp, "product"> {
constructor({ a, b }: {
a: DynoVal;
b: DynoVal;
});
}
export declare class Div extends BinaryOp, "quotient"> {
constructor({ a, b }: {
a: DynoVal;
b: DynoVal;
});
}
export declare class IMod extends BinaryOp, "remainder"> {
constructor({ a, b }: {
a: DynoVal;
b: DynoVal;
});
}
export declare class Mod extends BinaryOp, "remainder"> {
constructor({ a, b }: {
a: DynoVal;
b: DynoVal;
});
}
export declare class Modf extends Dyno<{
a: A;
}, {
fract: A;
integer: A;
}> {
constructor({ a }: {
a: DynoVal;
});
}
export declare class Neg extends UnaryOp {
constructor({ a }: {
a: DynoVal;
});
}
export declare class Abs extends UnaryOp {
constructor({ a }: {
a: DynoVal;
});
}
export declare class Sign extends UnaryOp {
constructor({ a }: {
a: DynoVal;
});
}
export declare class Floor extends UnaryOp {
constructor({ a }: {
a: DynoVal;
});
}
export declare class Ceil extends UnaryOp {
constructor({ a }: {
a: DynoVal;
});
}
export declare class Trunc extends UnaryOp {
constructor({ a }: {
a: DynoVal;
});
}
export declare class Round extends UnaryOp {
constructor({ a }: {
a: DynoVal;
});
}
export declare class Fract extends UnaryOp {
constructor({ a }: {
a: DynoVal;
});
}
export declare class Pow extends BinaryOp {
constructor({ a, b }: {
a: DynoVal;
b: DynoVal;
});
}
export declare class Exp extends UnaryOp {
constructor({ a }: {
a: DynoVal;
});
}
export declare class Exp2 extends UnaryOp {
constructor({ a }: {
a: DynoVal;
});
}
export declare class Log extends UnaryOp {
constructor({ a }: {
a: DynoVal;
});
}
export declare class Log2 extends UnaryOp {
constructor({ a }: {
a: DynoVal;
});
}
export declare class Sqr extends UnaryOp {
constructor({ a }: {
a: DynoVal;
});
}
export declare class Sqrt extends UnaryOp {
constructor({ a }: {
a: DynoVal;
});
}
export declare class InverseSqrt extends UnaryOp {
constructor({ a }: {
a: DynoVal;
});
}
export declare class Min extends BinaryOp, "min"> {
constructor({ a, b }: {
a: DynoVal;
b: DynoVal;
});
}
export declare class Max extends BinaryOp, "max"> {
constructor({ a, b }: {
a: DynoVal;
b: DynoVal;
});
}
export declare class Clamp extends TrinaryOp, "clamp"> {
constructor({ a, min, max, }: {
a: DynoVal;
min: DynoVal;
max: DynoVal;
});
}
export declare class Mix extends TrinaryOp, "mix"> {
constructor({ a, b, t }: {
a: DynoVal;
b: DynoVal;
t: DynoVal;
});
}
export declare class Step extends BinaryOp, "step"> {
constructor({ edge, x }: {
edge: DynoVal;
x: DynoVal;
});
}
export declare class Smoothstep extends TrinaryOp, "smoothstep"> {
constructor({ edge0, edge1, x, }: {
edge0: DynoVal;
edge1: DynoVal;
x: DynoVal;
});
}
export declare class IsNan extends UnaryOp, "isNan"> {
constructor({ a }: {
a: DynoVal;
});
}
export declare class IsInf extends UnaryOp, "isInf"> {
constructor({ a }: {
a: DynoVal;
});
}