import type { FrontMcpLogger } from '../../common'; import type { ChannelInstance } from '../channel.instance'; import type { ChannelJobCompletionSource } from '../../common/metadata/channel.metadata'; /** * Event payload from job completion. */ export interface JobCompletionEvent { jobName: string; jobId: string; status: 'success' | 'error' | 'timeout' | 'cancelled'; durationMs?: number; output?: string; error?: string; attempt?: number; /** Session that triggered this job execution (for session-scoped delivery) */ sessionId?: string; } /** * Wires a job-completion channel source to a job execution manager emitter. * * @param channel - The channel instance to push notifications to * @param sourceConfig - The job-completion source configuration * @param jobEmitterSubscribe - Subscribe function from the job execution manager * @param logger - Logger instance * @returns Unsubscribe function */ export declare function wireJobCompletionSource(channel: ChannelInstance, sourceConfig: ChannelJobCompletionSource, jobEmitterSubscribe: (cb: (event: JobCompletionEvent) => void) => () => void, logger: FrontMcpLogger): () => void; //# sourceMappingURL=job-completion.source.d.ts.map