vek-engine
Version:
Efficient WebAssembly-based vector math engine for JavaScript/TypeScript
230 lines (229 loc) • 8.23 kB
TypeScript
declare namespace __AdaptedExports {
/**
* wasm/src/vector/vectorCreate
* @param dimensions `u32`
* @param elementByteSize `u8`
* @returns `wasm/src/vector/Vector`
*/
export function vectorCreate(dimensions: number, elementByteSize: number): __Internref4;
/**
* wasm/src/vector/vectorInstanceArithmeticMean
* @param vector `wasm/src/vector/Vector`
* @returns `f64`
*/
export function vectorInstanceArithmeticMean(vector: __Internref4): number;
/**
* wasm/src/vector/vectorInstanceFill
* @param vector `wasm/src/vector/Vector`
* @param value `f64`
*/
export function vectorInstanceFill(vector: __Internref4, value: number): void;
/**
* wasm/src/vector/vectorInstanceGeometricMean
* @param vector `wasm/src/vector/Vector`
* @returns `f64`
*/
export function vectorInstanceGeometricMean(vector: __Internref4): number;
/**
* wasm/src/vector/vectorInstanceGetDimensions
* @param vector `wasm/src/vector/Vector`
* @returns `u32`
*/
export function vectorInstanceGetDimensions(vector: __Internref4): number;
/**
* wasm/src/vector/vectorInstanceGetElementByteSize
* @param vector `wasm/src/vector/Vector`
* @returns `u8`
*/
export function vectorInstanceGetElementByteSize(vector: __Internref4): number;
/**
* wasm/src/vector/vectorInstanceGetIs64Bit
* @param vector `wasm/src/vector/Vector`
* @returns `bool`
*/
export function vectorInstanceGetIs64Bit(vector: __Internref4): boolean;
/**
* wasm/src/vector/vectorInstanceGetMaxIndex
* @param vector `wasm/src/vector/Vector`
* @returns `u32`
*/
export function vectorInstanceGetMaxIndex(vector: __Internref4): number;
/**
* wasm/src/vector/vectorInstanceGetValue
* @param vector `wasm/src/vector/Vector`
* @param index `u32`
* @returns `f64`
*/
export function vectorInstanceGetValue(vector: __Internref4, index: number): number;
/**
* wasm/src/vector/vectorInstanceIndexOfMax
* @param vector `wasm/src/vector/Vector`
* @returns `u32`
*/
export function vectorInstanceIndexOfMax(vector: __Internref4): number;
/**
* wasm/src/vector/vectorInstanceIndexOfMin
* @param vector `wasm/src/vector/Vector`
* @returns `u32`
*/
export function vectorInstanceIndexOfMin(vector: __Internref4): number;
/**
* wasm/src/vector/vectorInstanceInfinityNorm
* @param vector `wasm/src/vector/Vector`
* @returns `f64`
*/
export function vectorInstanceInfinityNorm(vector: __Internref4): number;
/**
* wasm/src/vector/vectorInstanceMax
* @param vector `wasm/src/vector/Vector`
* @returns `f64`
*/
export function vectorInstanceMax(vector: __Internref4): number;
/**
* wasm/src/vector/vectorInstanceMin
* @param vector `wasm/src/vector/Vector`
* @returns `f64`
*/
export function vectorInstanceMin(vector: __Internref4): number;
/**
* wasm/src/vector/vectorInstanceMode
* @param vector `wasm/src/vector/Vector`
* @returns `~lib/typedarray/Float64Array`
*/
export function vectorInstanceMode(vector: __Internref4): Float64Array;
/**
* wasm/src/vector/vectorInstanceNeg
* @param vector `wasm/src/vector/Vector`
* @param resultVector `wasm/src/vector/Vector`
*/
export function vectorInstanceNeg(vector: __Internref4, resultVector: __Internref4): void;
/**
* wasm/src/vector/vectorInstancePNorm
* @param vector `wasm/src/vector/Vector`
* @param p `f32`
* @returns `f64`
*/
export function vectorInstancePNorm(vector: __Internref4, p: number): number;
/**
* wasm/src/vector/vectorInstanceSetValue
* @param vector `wasm/src/vector/Vector`
* @param index `u32`
* @param value `f64`
* @returns `bool`
*/
export function vectorInstanceSetValue(vector: __Internref4, index: number, value: number): boolean;
/**
* wasm/src/vector/vectorInstanceSum
* @param vector `wasm/src/vector/Vector`
* @returns `f64`
*/
export function vectorInstanceSum(vector: __Internref4): number;
/**
* wasm/src/vector/vectorInstanceToBuffer
* @param vector `wasm/src/vector/Vector`
* @returns `~lib/arraybuffer/ArrayBuffer`
*/
export function vectorInstanceToBuffer(vector: __Internref4): ArrayBuffer;
/**
* wasm/src/vector/vectorStaticAdd
* @param aVector `wasm/src/vector/Vector`
* @param bVector `wasm/src/vector/Vector`
* @param resultVector `wasm/src/vector/Vector`
*/
export function vectorStaticAdd(aVector: __Internref4, bVector: __Internref4, resultVector: __Internref4): void;
/**
* wasm/src/vector/vectorStaticCmp
* @param aVector `wasm/src/vector/Vector`
* @param bVector `wasm/src/vector/Vector`
* @returns `~lib/arraybuffer/ArrayBuffer`
*/
export function vectorStaticCmp(aVector: __Internref4, bVector: __Internref4): ArrayBuffer;
/**
* wasm/src/vector/vectorStaticCosineSimilarity
* @param aVector `wasm/src/vector/Vector`
* @param bVector `wasm/src/vector/Vector`
* @returns `f64`
*/
export function vectorStaticCosineSimilarity(aVector: __Internref4, bVector: __Internref4): number;
/**
* wasm/src/vector/vectorStaticDiv
* @param aVector `wasm/src/vector/Vector`
* @param bVector `wasm/src/vector/Vector`
* @param resultVector `wasm/src/vector/Vector`
*/
export function vectorStaticDiv(aVector: __Internref4, bVector: __Internref4, resultVector: __Internref4): void;
/**
* wasm/src/vector/vectorStaticDot
* @param aVector `wasm/src/vector/Vector`
* @param bVector `wasm/src/vector/Vector`
* @returns `f64`
*/
export function vectorStaticDot(aVector: __Internref4, bVector: __Internref4): number;
/**
* wasm/src/vector/vectorStaticFromBuffer
* @param buffer `~lib/arraybuffer/ArrayBuffer`
* @returns `wasm/src/vector/Vector`
*/
export function vectorStaticFromBuffer(buffer: ArrayBuffer): __Internref4;
/**
* wasm/src/vector/vectorStaticMod
* @param aVector `wasm/src/vector/Vector`
* @param bVector `wasm/src/vector/Vector`
* @param resultVector `wasm/src/vector/Vector`
*/
export function vectorStaticMod(aVector: __Internref4, bVector: __Internref4, resultVector: __Internref4): void;
/**
* wasm/src/vector/vectorStaticMul
* @param aVector `wasm/src/vector/Vector`
* @param bVector `wasm/src/vector/Vector`
* @param resultVector `wasm/src/vector/Vector`
*/
export function vectorStaticMul(aVector: __Internref4, bVector: __Internref4, resultVector: __Internref4): void;
/**
* wasm/src/vector/vectorStaticOnes
* @param dimensions `u32`
* @param elementByteSize `u8`
* @returns `wasm/src/vector/Vector`
*/
export function vectorStaticOnes(dimensions: number, elementByteSize: number): __Internref4;
/**
* wasm/src/vector/vectorStaticSub
* @param aVector `wasm/src/vector/Vector`
* @param bVector `wasm/src/vector/Vector`
* @param resultVector `wasm/src/vector/Vector`
*/
export function vectorStaticSub(aVector: __Internref4, bVector: __Internref4, resultVector: __Internref4): void;
/**
* wasm/src/vector-iterator/vectorIteratorCreate
* @param vector `wasm/src/vector/Vector`
* @returns `wasm/src/vector-iterator/VectorIterator`
*/
export function vectorIteratorCreate(vector: __Internref4): __Internref18;
/**
* wasm/src/vector-iterator/vectorIteratorInstanceNext
* @param iterator `wasm/src/vector-iterator/VectorIterator`
* @returns `wasm/src/vector-iterator/VectorIteratorNext`
*/
export function vectorIteratorInstanceNext(iterator: __Internref18): __Record19<never>;
}
/** wasm/src/vector/Vector */
declare class __Internref4 extends Number {
private __nominal4: symbol;
private __nominal0: symbol;
}
/** wasm/src/vector-iterator/VectorIterator */
declare class __Internref18 extends Number {
private __nominal18: symbol;
private __nominal0: symbol;
}
/** wasm/src/vector-iterator/VectorIteratorNext */
declare interface __Record19<TOmittable> {
/** @type `bool` */
isDone: boolean | TOmittable;
/** @type `f64` */
value: number | TOmittable;
}
/** Instantiates the compiled WebAssembly module with the given imports. */
export declare function instantiate(module: WebAssembly.Module, imports: {
env: unknown,
}): Promise<typeof __AdaptedExports>;