import { isInitialized } from '../init.js'; import type { WasmSource } from '../wasm-source.js'; import type { MlKemExports, Sha3Exports, MlKemKeyPair, MlKemEncapsulation } from './types.js'; import { MlKemParams, MLKEM512, MLKEM768, MLKEM1024 } from './params.js'; export declare function mlkemInit(source: WasmSource): Promise; export type { WasmSource }; export type { MlKemKeyPair, MlKemEncapsulation, MlKemExports, Sha3Exports }; export { MLKEM512, MLKEM768, MLKEM1024 }; export type { MlKemParams }; export { isInitialized }; export { MlKemSuite } from './suite.js'; export declare class MlKemBase { readonly params: MlKemParams; constructor(params: MlKemParams); private get kx(); private get sx(); keygenDerand(d: Uint8Array, z: Uint8Array): MlKemKeyPair; keygen(): MlKemKeyPair; encapsulateDerand(ek: Uint8Array, m: Uint8Array): MlKemEncapsulation; encapsulate(ek: Uint8Array): MlKemEncapsulation; decapsulate(dk: Uint8Array, c: Uint8Array): Uint8Array; checkEncapsulationKey(ek: Uint8Array): boolean; checkDecapsulationKey(dk: Uint8Array): boolean; dispose(): void; } /** ML-KEM-512, k=2, η₁=3, η₂=2, dᵤ=10, dᵥ=4. */ export declare class MlKem512 extends MlKemBase { constructor(); } /** ML-KEM-768, k=3, η₁=2, η₂=2, dᵤ=10, dᵥ=4. */ export declare class MlKem768 extends MlKemBase { constructor(); } /** ML-KEM-1024, k=4, η₁=2, η₂=2, dᵤ=11, dᵥ=5. */ export declare class MlKem1024 extends MlKemBase { constructor(); }