/**
 * Messaging Controller
 *
 * HTTP request handlers for the message queue system. Provides endpoints
 * for monitoring queue status, viewing messages, and managing the queue.
 *
 * @module controllers/messaging/messaging.controller
 */
import type { Request, Response, NextFunction } from 'express';
import type { MessageQueueService } from '../../services/messaging/message-queue.service.js';
/**
 * Set the message queue service instance.
 * Called during server initialization.
 *
 * @param service - The MessageQueueService instance
 */
export declare function setMessageQueueService(service: MessageQueueService): void;
/**
 * GET /api/messaging/queue/status
 *
 * Get the current queue status summary.
 *
 * @param req - Request
 * @param res - Response with QueueStatus
 */
export declare function getQueueStatus(req: Request, res: Response, next: NextFunction): Promise<void>;
/**
 * GET /api/messaging/queue/messages
 *
 * Get all pending messages in the queue.
 *
 * @param req - Request
 * @param res - Response with pending messages
 */
export declare function getPendingMessages(req: Request, res: Response, next: NextFunction): Promise<void>;
/**
 * GET /api/messaging/queue/history
 *
 * Get processed message history.
 *
 * @param req - Request
 * @param res - Response with message history
 */
export declare function getMessageHistory(req: Request, res: Response, next: NextFunction): Promise<void>;
/**
 * GET /api/messaging/queue/messages/:messageId
 *
 * Get a specific message by ID.
 *
 * @param req - Request with messageId param
 * @param res - Response with the message
 */
export declare function getMessageById(req: Request, res: Response, next: NextFunction): Promise<void>;
/**
 * DELETE /api/messaging/queue/messages/:messageId
 *
 * Cancel a pending message.
 *
 * @param req - Request with messageId param
 * @param res - Response confirming cancellation
 */
export declare function cancelMessage(req: Request, res: Response, next: NextFunction): Promise<void>;
/**
 * DELETE /api/messaging/queue
 *
 * Clear all pending messages from the queue.
 *
 * @param req - Request
 * @param res - Response with count of cleared messages
 */
export declare function clearQueue(req: Request, res: Response, next: NextFunction): Promise<void>;
//# sourceMappingURL=messaging.controller.d.ts.map