import { validateEventFields } from './shared.js';
export function validateAgentSpawning(v) {
    return validateEventFields('AGENT_SPAWNING', v, [
        { key: 'agentId', kind: 'string' },
        { key: 'role', kind: 'string' },
        { key: 'task', kind: 'string' },
    ]);
}
export function validateAgentCompleted(v) {
    return validateEventFields('AGENT_COMPLETED', v, [
        { key: 'agentId', kind: 'string' },
        { key: 'durationMs', kind: 'number' },
    ]);
}
export function validateAgentFailed(v) {
    return validateEventFields('AGENT_FAILED', v, [
        { key: 'agentId', kind: 'string' },
        { key: 'error', kind: 'string' },
    ]);
}
export function validateMcpConnected(v) {
    return validateEventFields('MCP_CONNECTED', v, [
        { key: 'serverId', kind: 'string' },
        { key: 'toolCount', kind: 'number' },
        { key: 'resourceCount', kind: 'number' },
    ]);
}
export function validateMcpDisconnected(v) {
    return validateEventFields('MCP_DISCONNECTED', v, [
        { key: 'serverId', kind: 'string' },
        { key: 'willRetry', kind: 'boolean' },
    ]);
}
export function validateMcpReconnecting(v) {
    return validateEventFields('MCP_RECONNECTING', v, [
        { key: 'serverId', kind: 'string' },
        { key: 'attempt', kind: 'number' },
        { key: 'maxAttempts', kind: 'number' },
    ]);
}
