import type { Router } from "../router.js"; type JsonRecord = Record; type SpawnGuardResult = { allowed: boolean; retryable: boolean; blockedReason: string | null; spawnGuardResult: unknown | null; }; type DispatchExecutionPolicy = { domain: string | null; requiredSkills: string[]; }; type DispatchResolution = { executionPolicy: DispatchExecutionPolicy; taskTitle: string | null; workstreamTitle: string | null; }; type BillingStatus = { plan?: string; }; type AgentRunRecord = { runId: string; agentId: string; pid: number | null; message: string | null; provider: string | null; model: string | null; initiativeId: string | null; initiativeTitle: string | null; workstreamId: string | null; taskId: string | null; }; type RegisterAgentControlRoutesDeps = { parseJsonRequest: (req: TReq) => Promise; pickString: (record: Record, keys: string[]) => string | null; parseBooleanQuery: (value: string | null) => boolean | null; randomUUID: () => string; normalizeOpenClawProvider: (value: string | null) => string | null; resolveAutoOpenClawProvider: () => string | null; modelImpliesByok: (model: string | null) => boolean; listAgents: () => Promise>>; fetchBillingStatusSafe: (client: any) => Promise; client: any; resolveDispatchExecutionPolicy: (input: any) => Promise; fetchKickoffContextSafe: (client: any, payload: any) => Promise; renderKickoffMessage: (input: any) => { message: string; contextHash: string | null; }; posthogCapture: (input: any) => Promise; telemetryDistinctId: string; pluginVersion: string | null; enforceSpawnGuardForDispatch: (input: any) => Promise; extractSpawnGuardModelTier: (value: any) => string | null; buildPolicyEnforcedMessage: (input: any) => string; syncParentRollupsForTask: (input: any) => Promise; emitActivitySafe: (input: any) => Promise; configureOpenClawProviderRouting: (input: any) => Promise<{ provider: string; model: string; }>; upsertAgentContext: (input: any) => unknown; upsertRunContext: (input: any) => unknown; spawnAgentTurn: (input: any) => { pid: number | null; }; upsertAgentRun: (input: any) => unknown; getAgentRun: (runId: string) => AgentRunRecord | null | any; stopProcess: (pid: number) => Promise<{ stopped: boolean; wasRunning: boolean; }>; markAgentRunStopped: (runId: string) => unknown; writeRuntimeEvent: (input: any) => void; sendJson: (res: TRes, status: number, payload: unknown) => void; safeErrorMessage: (err: unknown) => string; }; export declare function registerAgentControlRoutes(router: Router, TReq, TRes>, deps: RegisterAgentControlRoutesDeps): void; export {};