tasq/node_modules/@ruvector/rvf-wasm/pkg/rvf_wasm.d.ts

58 lines
2.4 KiB
TypeScript

/**
* Type declarations for the RVF WASM microkernel exports.
*/
export interface RvfWasmExports {
memory: WebAssembly.Memory;
// Memory management
rvf_alloc(size: number): number;
rvf_free(ptr: number, size: number): void;
// Core query path
rvf_init(config_ptr: number): number;
rvf_load_query(query_ptr: number, dim: number): number;
rvf_load_block(block_ptr: number, count: number, dtype: number): number;
rvf_distances(metric: number, result_ptr: number): number;
rvf_topk_merge(dist_ptr: number, id_ptr: number, count: number, k: number): number;
rvf_topk_read(out_ptr: number): number;
// Quantization
rvf_load_sq_params(params_ptr: number, dim: number): number;
rvf_dequant_i8(src_ptr: number, dst_ptr: number, count: number): number;
rvf_load_pq_codebook(codebook_ptr: number, m: number, k: number): number;
rvf_pq_distances(codes_ptr: number, count: number, result_ptr: number): number;
// HNSW navigation
rvf_load_neighbors(node_id: bigint, layer: number, out_ptr: number): number;
rvf_greedy_step(current_id: bigint, layer: number): bigint;
// Segment verification
rvf_verify_header(header_ptr: number): number;
rvf_crc32c(data_ptr: number, len: number): number;
rvf_verify_checksum(buf_ptr: number, buf_len: number): number;
// In-memory store
rvf_store_create(dim: number, metric: number): number;
rvf_store_open(buf_ptr: number, buf_len: number): number;
rvf_store_ingest(handle: number, vecs_ptr: number, ids_ptr: number, count: number): number;
rvf_store_query(handle: number, query_ptr: number, k: number, metric: number, out_ptr: number): number;
rvf_store_delete(handle: number, ids_ptr: number, count: number): number;
rvf_store_count(handle: number): number;
rvf_store_dimension(handle: number): number;
rvf_store_status(handle: number, out_ptr: number): number;
rvf_store_export(handle: number, out_ptr: number, out_len: number): number;
rvf_store_close(handle: number): number;
// Segment parsing
rvf_parse_header(buf_ptr: number, buf_len: number, out_ptr: number): number;
rvf_segment_count(buf_ptr: number, buf_len: number): number;
rvf_segment_info(buf_ptr: number, buf_len: number, idx: number, out_ptr: number): number;
// Witness chain
rvf_witness_verify(chain_ptr: number, chain_len: number): number;
rvf_witness_count(chain_len: number): number;
}
export default function init(input?: ArrayBuffer | Uint8Array | WebAssembly.Module): Promise<RvfWasmExports>;