import { VerifiedEvent } from "nostr-tools"; import { SenderKeyState } from "./SenderKey"; /** * Parsed one-to-many outer payload. * * Outer content is: base64(keyId_be || messageNumber_be || nip44_ciphertext_bytes) */ export declare class OneToManyMessage { readonly keyId: number; readonly messageNumber: number; readonly ciphertext: Uint8Array; constructor(keyId: number, messageNumber: number, ciphertext: Uint8Array); decrypt(state: SenderKeyState): string; } /** * A lightweight helper for "one-to-many" publishing: * * - Outer Nostr event is authored by a sender-controlled pubkey (eg per-group sender keypair). * - Outer content is a compact base64 payload: `keyId_be || msgNum_be || nip44_ciphertext_bytes`. * - Ciphertext bytes are produced/consumed by SenderKeyState. */ export declare class OneToManyChannel { private readonly outerKind; constructor(outerKind?: number); static default(): OneToManyChannel; outerEventKind(): number; buildOuterContent(keyId: number, messageNumber: number, ciphertextBytes: Uint8Array): string; parseOuterContent(content: string): OneToManyMessage; encryptToOuterEvent(senderEventSecretKey: Uint8Array, senderKey: SenderKeyState, innerPlaintext: string, createdAt: number): VerifiedEvent; } //# sourceMappingURL=OneToManyChannel.d.ts.map