/**
 * Worker /status and /drain HTTP endpoint handlers.
 *
 * - GET /status -- returns worker instance info, connection state, agents, active/recent jobs
 * - POST /drain -- sets draining flag, returns active job count
 *
 * These are mounted on the worker's HTTP server in worker-core.ts.
 */
import type { IncomingMessage, ServerResponse } from 'node:http';
import type { InMemoryExecutionTracker } from './in-memory-execution-tracker.js';
import type { AgentRegistry } from '../agent/registry.js';
import type { PeerClient } from '../cluster/peer-client.js';
export interface WorkerStatusDeps {
    instanceId: string;
    executionTracker: InMemoryExecutionTracker;
    agentRegistry: AgentRegistry;
    peerClient: PeerClient;
    startedAt: number;
    getDraining: () => boolean;
    setDraining: (v: boolean) => void;
}
/**
 * Create a handler for GET /status.
 *
 * Returns worker instance info including role, coordinator connection state,
 * draining flag, uptime, agent counts, active jobs, and recent job history.
 */
export declare function createWorkerStatusHandler(deps: WorkerStatusDeps): (_req: IncomingMessage, res: ServerResponse) => void;
/**
 * Create a handler for POST /drain.
 *
 * Sets the draining flag to true and returns the current active job count.
 * Idempotent -- calling multiple times has no additional effect.
 */
export declare function createWorkerDrainHandler(deps: WorkerStatusDeps): (_req: IncomingMessage, res: ServerResponse) => void;
//# sourceMappingURL=worker-status.d.ts.map