/// import { DecryptStream, DecryptResult } from './encryption/index.js'; import { VerifyStream, VerifyResult, VerifyDetachedResult } from './signing/index.js'; import { DesigncryptStream, DesigncryptResult } from './signcryption/index.js'; import { SymmetricKeyRecipient } from './signcryption/recipient.js'; import { DearmorStream, Options as ArmorOptions, ArmorHeaderInfo, DearmorResult } from './armor.js'; import tweetnacl from 'tweetnacl'; import Pumpify from 'pumpify'; export declare function encryptAndArmor(data: Uint8Array | string, keypair: tweetnacl.BoxKeyPair | null, recipients_keys: Uint8Array[]): Promise; export declare function dearmorAndDecrypt(encrypted: string, keypair: tweetnacl.BoxKeyPair, sender?: Uint8Array | null): Promise; export type DearmorAndDecryptResult = DearmorResult & DecryptResult; export declare class EncryptAndArmorStream extends Pumpify { constructor(keypair: tweetnacl.BoxKeyPair | null, recipients_keys: Uint8Array[], armor_options?: Partial); } export declare class DearmorAndDecryptStream extends Pumpify { readonly dearmor: DearmorStream; readonly decrypt: DecryptStream; constructor(keypair: tweetnacl.BoxKeyPair, sender?: Uint8Array | null, armor_options?: Partial); get info(): ArmorHeaderInfo; get sender_public_key(): Uint8Array; } export declare function signAndArmor(data: Uint8Array | string, keypair: tweetnacl.SignKeyPair): Promise; export declare function verifyArmored(signed: string, public_key?: Uint8Array | null): Promise; export type DearmorAndVerifyResult = DearmorResult & VerifyResult; export declare class SignAndArmorStream extends Pumpify { constructor(keypair: tweetnacl.SignKeyPair, armor_options?: Partial); } export declare class DearmorAndVerifyStream extends Pumpify { readonly dearmor: DearmorStream; readonly verify: VerifyStream; constructor(public_key?: Uint8Array | null, armor_options?: Partial); get info(): ArmorHeaderInfo; get public_key(): Uint8Array; } export declare function signDetachedAndArmor(data: Uint8Array | string, keypair: tweetnacl.SignKeyPair): Promise; export declare function verifyDetachedArmored(signature: string, data: Uint8Array | string, public_key?: Uint8Array | null): Promise; export interface DearmorAndVerifyDetachedResult extends VerifyDetachedResult { remaining: Buffer; header_info: ArmorHeaderInfo; } export declare function signcryptAndArmor(data: Uint8Array | string, keypair: tweetnacl.SignKeyPair | null, recipients_keys: Uint8Array[]): Promise; export declare function dearmorAndDesigncrypt(signcrypted: string, keypair: tweetnacl.BoxKeyPair, sender?: Uint8Array | null): Promise; export type DearmorAndDesigncryptResult = DearmorResult & DesigncryptResult; export declare class SigncryptAndArmorStream extends Pumpify { constructor(keypair: tweetnacl.SignKeyPair | null, recipients_keys: (Uint8Array | SymmetricKeyRecipient)[], armor_options?: Partial); } export declare class DearmorAndDesigncryptStream extends Pumpify { readonly dearmor: DearmorStream; readonly decrypt: DesigncryptStream; constructor(keys: tweetnacl.BoxKeyPair | SymmetricKeyRecipient, armor_options?: Partial); get info(): ArmorHeaderInfo; get sender_public_key(): Uint8Array | null; }