/** * AIBP envelope utilities — create, parse, and validate AIBP messages. */ import type { AibpMessage, CommandPayload, ImagePayload, StatusPayload, SystemEvent, SystemPayload, TextPayload, TypingPayload, VoicePayload } from "./types.js"; export declare function text(src: string, dst: string, content: string): AibpMessage; export declare function voice(src: string, dst: string, audioBase64: string, transcript: string, durationMs?: number, chunkMeta?: { groupId: string; chunkIndex: number; totalChunks: number; }): AibpMessage; export declare function image(src: string, dst: string, imageBase64: string, mimeType: string, caption?: string): AibpMessage; export declare function typing(src: string, dst: string, active: boolean): AibpMessage; export declare function status(src: string, dst: string, subject: string, state: StatusPayload["state"], summary?: string): AibpMessage; export declare function command(src: string, dst: string, cmd: string, args?: Record): AibpMessage; export declare function system(src: string, dst: string, event: SystemEvent, data?: Record): AibpMessage; export declare function parse(raw: string): AibpMessage | null; export declare function isAibpMessage(obj: unknown): obj is AibpMessage; export declare function serialize(msg: AibpMessage): string; /** Extract the address type prefix (e.g., "session" from "session:ABC123") */ export declare function addressType(address: string): string; /** Extract the address value (e.g., "ABC123" from "session:ABC123") */ export declare function addressValue(address: string): string; /** Check if an address is a hub-local address (not a remote hub reference) */ export declare function isLocal(address: string): boolean; /** For mesh addresses like "hub:mac-mini/session:DEF456", extract the hub and local parts */ export declare function parseMeshAddress(address: string): { hub: string; local: string; } | null; //# sourceMappingURL=envelope.d.ts.map