/**
 * @openfluke/welvet - Isomorphic WASM Wrapper
 *
 * Direct wrapper around Loom WASM that mirrors main.go exports exactly.
 * Provides the same API in both Node.js and browser environments.
 */
import { Network, GraftResult, KMeansResult, CorrelationResult, EnsembleMatch, AdaptationTracker } from "./types.js";
import { loadLoomWASM } from "./loader.js";
import { loadLoomWASMBrowser } from "./loader.browser.js";
export * from "./types.js";
export { loadLoomWASM, loadLoomWASMBrowser };
/**
 * Initialize WASM for Node.js environment
 */
export declare function init(): Promise<void>;
/**
 * Initialize WASM for Browser environment
 */
export declare function initBrowser(): Promise<void>;
/**
 * Create a network from JSON config
 * Wrapper around the global createLoomNetwork function exposed by WASM
 */
export declare function createNetwork(config: object | string): Network;
/**
 * Create a network handle for grafting
 */
export declare function createKHandle(config: object | string): number;
/**
 * Graft multiple networks together
 */
export declare function graft(ids: number[], combineMode: string): GraftResult;
/**
 * Perform K-Means Clustering
 */
export declare function kmeans(data: number[][], k: number, iter: number): KMeansResult;
/**
 * Compute Correlation Matrix
 */
export declare function correlation(matrixA: number[][], matrixB?: number[][]): CorrelationResult;
/**
 * Find Complementary Ensemble Matches
 */
export declare function ensemble(models: object[], minCoverage: number): EnsembleMatch[];
/**
 * Create Adaptation Tracker
 */
export declare function tracker(windowMs: number, totalMs: number): AdaptationTracker;
/**
 * Default export with all functions
 */
declare const _default: {
    init: typeof init;
    initBrowser: typeof initBrowser;
    createNetwork: typeof createNetwork;
    createKHandle: typeof createKHandle;
    graft: typeof graft;
    kmeans: typeof kmeans;
    correlation: typeof correlation;
    ensemble: typeof ensemble;
    tracker: typeof tracker;
};
export default _default;
