import { Observable } from 'rxjs';
/**
 * Interface defining the operations available for a queue manager.
 * Allows producing and consuming messages from a queue.
 * @category Queue
 */
export interface QueueManager<T> {
    /** Publish messages to the queue */
    produce(messages: T[]): Promise<void>;
    /** Consume messages from the queue */
    consume(): Observable<T>;
}
