import type { PmEvent, PmEventType } from '../app/api/pm-events/route.js';
export type PmConnectionStatus = 'connected' | 'connecting' | 'disconnected';
export interface UsePmEventsOptions {
    projectId: string;
    /** Optional filter to only receive specific event types */
    eventTypes?: PmEventType[];
    /** Called when any PM event is received */
    onEvent?: (event: PmEvent) => void;
}
export interface UsePmEventsResult {
    events: PmEvent[];
    lastEvent: PmEvent | null;
    connectionStatus: PmConnectionStatus;
}
/**
 * Hook that receives real-time project management events via SSE.
 *
 * Connects directly to /api/pm-events?projectId=... and receives
 * work item, cycle, and module change events. Automatically reconnects
 * on disconnect with exponential backoff.
 */
export declare function usePmEvents({ projectId, eventTypes, onEvent, }: UsePmEventsOptions): UsePmEventsResult;
//# sourceMappingURL=use-pm-events.d.ts.map