import { Team, TeamMember, TeamPauseState } from '../types/index.js'; export declare class TeamModel implements Team { id: string; name: string; description?: string; members: TeamMember[]; projectIds: string[]; hierarchical?: boolean; leaderId?: string; leaderIds?: string[]; templateId?: string; parentTeamId?: string; /** Owner pause (specs/2026-10-04-team-pause.md) */ paused?: TeamPauseState; /** Where other agents file work while the team is paused */ issueRepo?: string; worktrees?: Team['worktrees']; archived?: boolean; archivedAt?: string; mission?: string; charter?: string; charterUpdatedAt?: string; charterUpdatedBy?: string; budget?: Team['budget']; qualityGate?: Team['qualityGate']; recoveryPolicy?: Team['recoveryPolicy']; ownerUserId?: string; ownershipScope?: Team['ownershipScope']; serviceContract?: Team['serviceContract']; triggers?: Team['triggers']; /** Fields this class does not know about (a newer version, a plugin): kept as stored, never dropped. */ [extra: string]: unknown; createdAt: string; updatedAt: string; constructor(data: Partial); assignToProject(projectId: string): void; unassignFromProject(projectId: string): void; addMember(member: TeamMember): void; removeMember(memberId: string): void; updateMember(memberId: string, updates: Partial): void; assignTicketsToMember(memberId: string, ticketIds: string[]): void; /** * Serialise every own field (declared or not), core fields first. Fields * left undefined are omitted, as JSON.stringify would drop them anyway. */ toJSON(): Team; static fromJSON(data: Team): TeamModel; } //# sourceMappingURL=Team.d.ts.map