/** * Type definitions for the team module. * * Mirrors cc-agent-teams-impl-mcp models.py but uses Zod for runtime * validation (matching the codex-mcp-server convention). */ import { z } from 'zod'; export declare const TEAM_NAME_REGEX: RegExp; export declare const TEAM_NAME_MAX_LENGTH = 64; export declare const TEAMMATE_NAME_REGEX: RegExp; export declare const TEAMMATE_NAME_MAX_LENGTH = 64; export declare const COLOR_PALETTE: readonly ["blue", "green", "yellow", "purple", "orange", "pink", "cyan", "red"]; export interface LeadMember { agentId: string; name: 'team-lead'; agentType: 'team-lead'; model: string; joinedAt: string; cwd: string; } export interface TeammateMember { name: string; agentId: string; agentType: string; color: string; prompt: string; model: string; isActive: boolean; pid?: number; taskId?: string; sessionId?: string; conversationId?: string; joinedAt: string; cwd: string; } export type TeamMember = LeadMember | TeammateMember; export declare function isTeammateMember(m: TeamMember): m is TeammateMember; export declare function isLeadMember(m: TeamMember): m is LeadMember; export interface TeamConfig { name: string; description?: string; createdAt: string; leadSessionId: string; worktreePath?: string; branch?: string; baseCommit?: string; members: TeamMember[]; } export interface InboxMessage { from: string; text: string; timestamp: string; read: boolean; summary?: string; color?: string; type?: 'plain' | 'shutdown_request' | 'shutdown_response' | 'task_assignment'; } export interface ShutdownRequest { type: 'shutdown_request'; requestId: string; from: string; reason: string; timestamp: string; } export interface TaskAssignment { type: 'task_assignment'; taskId: string; subject: string; description: string; assignedBy: string; timestamp: string; } export type TeamTaskStatus = 'pending' | 'in_progress' | 'completed' | 'deleted'; export declare const STATUS_ORDER: Record; export interface TeamTask { id: string; subject: string; description: string; activeForm?: string; status: TeamTaskStatus; blocks: string[]; blockedBy: string[]; owner?: string; metadata?: Record; } export interface TeamSessionState { activeTeam: string | null; sessionId: string; } export interface SpawnResult { name: string; agentId: string; taskId: string; pid?: number; worktreePath?: string; } export declare const CreateTeamSchema: z.ZodObject<{ name: z.ZodString; description: z.ZodOptional; }, z.core.$strip>; export declare const DeleteTeamSchema: z.ZodObject<{}, z.core.$strip>; export declare const SpawnTeammateSchema: z.ZodObject<{ name: z.ZodString; prompt: z.ZodString; role: z.ZodOptional>; specialization: z.ZodOptional; model: z.ZodOptional; context_files: z.ZodOptional; start_line: z.ZodOptional; end_line: z.ZodOptional; }, z.core.$strip>>>; commonContext: z.ZodOptional; }, z.core.$strip>; export declare const SendMessageSchema: z.ZodObject<{ type: z.ZodEnum<{ message: "message"; broadcast: "broadcast"; shutdown_request: "shutdown_request"; shutdown_response: "shutdown_response"; }>; recipient: z.ZodOptional; content: z.ZodOptional; summary: z.ZodOptional; request_id: z.ZodOptional; approve: z.ZodOptional; }, z.core.$strip>; export declare const ReadInboxSchema: z.ZodObject<{ unread_only: z.ZodDefault>; mark_as_read: z.ZodDefault>; sender_filter: z.ZodOptional; }, z.core.$strip>; export declare const CreateTaskSchema: z.ZodObject<{ subject: z.ZodString; description: z.ZodString; activeForm: z.ZodOptional; metadata: z.ZodOptional>; }, z.core.$strip>; export declare const UpdateTaskSchema: z.ZodObject<{ taskId: z.ZodString; status: z.ZodOptional>; owner: z.ZodOptional; subject: z.ZodOptional; description: z.ZodOptional; activeForm: z.ZodOptional; addBlocks: z.ZodOptional>; addBlockedBy: z.ZodOptional>; metadata: z.ZodOptional>; }, z.core.$strip>; export declare const ListTasksSchema: z.ZodObject<{}, z.core.$strip>; export declare const GetTaskSchema: z.ZodObject<{ taskId: z.ZodString; }, z.core.$strip>; export declare const CheckTeammateSchema: z.ZodObject<{ name: z.ZodString; }, z.core.$strip>; export declare const ForceKillTeammateSchema: z.ZodObject<{ name: z.ZodString; }, z.core.$strip>; export declare const ProcessShutdownSchema: z.ZodObject<{ name: z.ZodString; }, z.core.$strip>; export type CreateTeamArgs = z.infer; export type SpawnTeammateArgs = z.infer; export type SendMessageArgs = z.infer; export type ReadInboxArgs = z.infer; export type CreateTaskArgs = z.infer; export type UpdateTaskArgs = z.infer; export type GetTaskArgs = z.infer; export type CheckTeammateArgs = z.infer; export type ForceKillTeammateArgs = z.infer; export type ProcessShutdownArgs = z.infer; //# sourceMappingURL=types.d.ts.map