import { MQMessage, MQStats, MQSubscribeOptions } from "$sb/types.ts"; export interface MessageQueue { batchSend(queue: string, bodies: any[]): Promise<void>; send(queue: string, body: any): Promise<void>; subscribe( queue: string, options: MQSubscribeOptions, callback: (messages: MQMessage[]) => Promise<void> | void, ): () => void; ack(queue: string, id: string): Promise<void>; batchAck(queue: string, ids: string[]): Promise<void>; getQueueStats(queue: string): Promise<MQStats>; getAllQueueStats(): Promise<Record<string, MQStats>>; }