/**
 * ListAgentMessagesUseCase
 *
 * Scope-safe read for the agent message bus. Always filters by `appId`
 * (NFR-7 cross-app isolation). Optional `featureId`, `agentRunId`, and
 * `since` cursor narrow the result. The collaboration feature flag does
 * NOT gate reads — when the flag is off, no rows have been written, so
 * the bus naturally returns an empty list.
 */
import type { IAgentMessageBus } from '../../ports/output/agents/agent-message-bus.interface.js';
import type { AgentMessage } from '../../../domain/generated/output.js';
export interface ListAgentMessagesInput {
    appId: string;
    featureId?: string;
    agentRunId?: string;
    since?: Date;
    limit?: number;
}
export declare class ListAgentMessagesUseCase {
    private readonly bus;
    constructor(bus: IAgentMessageBus);
    execute(input: ListAgentMessagesInput): Promise<AgentMessage[]>;
}
//# sourceMappingURL=list-agent-messages.use-case.d.ts.map