/**
 * @deprecated Use the native JS implementation at
 * `./native/metis_partition_kway.js` instead.
 *
 * This class wraps the WASM-compiled METIS via a worker. It depends on
 * `libs/metis/metis.js` being served by the host app and on a `micron_partition`
 * global being defined inside that script. The native equivalent has no such
 * dependencies, is synchronous (no worker round-trip), and tracks the latest
 * `KarypisLab/METIS` master rather than the 2013-era 5.1.0 release.
 *
 * Migration:
 *   - Was:  `await Metis.INSTANCE.partition(nv, k, xadj, adj, ewgt, options)`
 *   - Now:  `metis_partition_kway(nv, k, xadj, adj, ewgt, { seed, niter, ufactor })`
 *
 * The native function returns the partition array directly (synchronously);
 * wrap in `Promise.resolve(...)` if you need a promise-returning surface.
 */
export class Metis {
    service: OnDemandWorkerManager;
    /**
     * @deprecated Use `metis_partition_kway` from
     * `./native/metis_partition_kway.js` instead.
     *
     * @param {number} n_vertices
     * @param {number} n_parts
     * @param {Uint32Array} edge_addresses
     * @param {Uint32Array} adjacency
     * @param {Uint32Array} edge_weights
     * @param {metis_options} options
     * @returns {Promise<T>}
     */
    partition(n_vertices: number, n_parts: number, edge_addresses: Uint32Array, adjacency: Uint32Array, edge_weights: Uint32Array, options: metis_options): Promise<T>;
}
export namespace Metis {
    let INSTANCE: Metis;
}
import { OnDemandWorkerManager } from "../../process/worker/OnDemandWorkerManager.js";
//# sourceMappingURL=metis.d.ts.map