import type { SubtleAlgorithm, KeyUsage, BinaryLike, BufferLike, JWK, AnyAlgorithm, ImportFormat, EncryptDecryptParams } from './utils'; import { CryptoKey } from './keys'; import type { CryptoKeyPair } from './utils/types'; import type { EncapsulateResult } from './utils'; export declare const PQC_SEEDLESS_PKCS8_LENGTHS: Readonly>; export declare function isCryptoKeyPair(result: CryptoKey | CryptoKeyPair): result is CryptoKeyPair; export declare class Subtle { static supports(operation: string, algorithm: SubtleAlgorithm | AnyAlgorithm, lengthOrAdditionalAlgorithm?: unknown): boolean; decrypt(algorithm: EncryptDecryptParams, key: CryptoKey, data: BufferLike): Promise; digest(algorithm: SubtleAlgorithm | AnyAlgorithm, data: BufferLike): Promise; deriveBits(algorithm: SubtleAlgorithm, baseKey: CryptoKey, length?: number | null): Promise; deriveKey(algorithm: SubtleAlgorithm, baseKey: CryptoKey, derivedKeyAlgorithm: SubtleAlgorithm, extractable: boolean, keyUsages: KeyUsage[]): Promise; encrypt(algorithm: EncryptDecryptParams, key: CryptoKey, data: BufferLike): Promise; exportKey(format: ImportFormat, key: CryptoKey): Promise; wrapKey(format: ImportFormat, key: CryptoKey, wrappingKey: CryptoKey, wrapAlgorithm: EncryptDecryptParams): Promise; unwrapKey(format: ImportFormat, wrappedKey: BufferLike, unwrappingKey: CryptoKey, unwrapAlgorithm: EncryptDecryptParams, unwrappedKeyAlgorithm: SubtleAlgorithm | AnyAlgorithm, extractable: boolean, keyUsages: KeyUsage[]): Promise; generateKey(algorithm: SubtleAlgorithm, extractable: boolean, keyUsages: KeyUsage[]): Promise; getPublicKey(key: CryptoKey, keyUsages: KeyUsage[]): Promise; importKey(format: ImportFormat, data: BufferLike | BinaryLike | JWK, algorithm: SubtleAlgorithm | AnyAlgorithm, extractable: boolean, keyUsages: KeyUsage[]): Promise; sign(algorithm: SubtleAlgorithm, key: CryptoKey, data: BufferLike): Promise; verify(algorithm: SubtleAlgorithm, key: CryptoKey, signature: BufferLike, data: BufferLike): Promise; private _encapsulateCore; private _decapsulateCore; encapsulateBits(algorithm: SubtleAlgorithm, key: CryptoKey): Promise; encapsulateKey(algorithm: SubtleAlgorithm, key: CryptoKey, sharedKeyAlgorithm: SubtleAlgorithm | AnyAlgorithm, extractable: boolean, usages: KeyUsage[]): Promise<{ key: CryptoKey; ciphertext: ArrayBuffer; }>; decapsulateBits(algorithm: SubtleAlgorithm, key: CryptoKey, ciphertext: BufferLike): Promise; decapsulateKey(algorithm: SubtleAlgorithm, key: CryptoKey, ciphertext: BufferLike, sharedKeyAlgorithm: SubtleAlgorithm | AnyAlgorithm, extractable: boolean, usages: KeyUsage[]): Promise; } export declare const subtle: Subtle; //# sourceMappingURL=subtle.d.ts.map