import { default as React } from 'react'; export interface NavItem { id: string; label: string; path: string; icon?: React.ReactNode; order?: number; group?: string; children?: NavItem[]; } export interface FooterItem { id: string; label: string; type: 'status' | 'action'; order?: number; section: 'left' | 'center' | 'right'; } export interface PlanMagnetRootProps { basePath?: string; workspaceId?: string; tenantId?: string; apiGatewayUrl?: string; authToken?: string; workspaceToken?: string; navigate?: (path: string) => void; currentUser?: { id: string; email: string; firstName?: string; lastName?: string; avatar?: string; username?: string; name?: string; role?: string; } | null; registerNavItems?: (items: NavItem | NavItem[]) => () => void; registerFooterItems?: (items: FooterItem | FooterItem[]) => () => void; onAuthError?: () => void; } export interface OverviewMetric { label: string; value: string; trend: string; } export interface WorkItem { id: string; title: string; status: 'active' | 'planned' | 'at_risk' | 'completed'; owner: string; updatedAt: string; } export interface Product { id: string; name: string; description: string; vision?: string; strategy?: string; status: 'active' | 'sunset' | 'beta' | 'planning'; featuresCount: number; releasesCount: number; roadmapsCount: number; owner: PersonRef; createdAt: string; updatedAt: string; } export interface Feature { id: string; title: string; description: string; productId: string; productName: string; status: 'discovery' | 'planning' | 'development' | 'testing' | 'released' | 'deprecated'; priority: 'low' | 'medium' | 'high' | 'critical'; effort: 'small' | 'medium' | 'large' | 'epic'; progress: number; riceScore: number; reach: number; impact: number; confidence: number; effortScore: number; customerRequests: number; upvotes: number; comments: number; targetRelease: string; owner: PersonRef; lastUpdated: string; } export interface Release { id: string; version: string; name: string; description: string; productId: string; productName: string; status: 'planning' | 'development' | 'testing' | 'staging' | 'released' | 'deprecated'; type: 'major' | 'minor' | 'patch' | 'hotfix'; targetDate: string; releaseDate?: string; progress: number; featuresCount: number; bugFixesCount: number; downloadsCount?: number; owner: PersonRef; changelog: string[]; environment: 'development' | 'staging' | 'production'; rolloutPercentage?: number; } export interface Roadmap { id: string; name: string; description: string; productId: string; productName: string; status: 'draft' | 'active' | 'archived'; visibility: 'internal' | 'customer' | 'stakeholder'; timeframe: 'quarterly' | 'yearly' | 'custom'; theme: 'customer_experience' | 'technical_debt' | 'growth' | 'compliance' | 'innovation'; startDate: string; endDate: string; progress: number; featuresCount: number; milestonesCount: number; stakeholders: number; owner: PersonRef; lastUpdated: string; } export interface Project { id: string; name: string; description: string; status: 'active' | 'completed' | 'on_hold' | 'cancelled' | 'planning'; priority: 'low' | 'medium' | 'high' | 'critical'; methodology: 'scrum' | 'kanban' | 'waterfall' | 'hybrid'; startDate: string; endDate: string; progress: number; budget: number; budgetSpent: number; tasksTotal: number; tasksCompleted: number; teamSize: number; owner: PersonRef; health: 'healthy' | 'at_risk' | 'critical'; } export interface Task { id: string; title: string; description: string; projectId: string; projectName: string; status: 'backlog' | 'todo' | 'in_progress' | 'in_review' | 'done' | 'blocked'; priority: 'low' | 'medium' | 'high' | 'critical'; type: 'story' | 'bug' | 'task' | 'epic' | 'subtask'; storyPoints: number; assignee: PersonRef; reporter: PersonRef; sprintId?: string; labels: string[]; dueDate: string; createdAt: string; updatedAt: string; } export interface Sprint { id: string; name: string; projectId: string; projectName: string; status: 'planning' | 'active' | 'completed' | 'cancelled'; startDate: string; endDate: string; goal: string; totalPoints: number; completedPoints: number; tasksTotal: number; tasksCompleted: number; velocity: number; teamMembers: PersonRef[]; } export interface Milestone { id: string; title: string; description: string; projectId: string; projectName: string; status: 'upcoming' | 'in_progress' | 'completed' | 'at_risk' | 'overdue'; dueDate: string; progress: number; tasksTotal: number; tasksCompleted: number; owner: PersonRef; } export interface TeamMember { id: string; name: string; email: string; role: string; department: string; avatar: string; status: 'active' | 'away' | 'busy' | 'offline'; tasksAssigned: number; tasksCompleted: number; velocity: number; } export interface Team { id: string; name: string; description: string; members: TeamMember[]; projectsCount: number; lead: PersonRef; } export interface Channel { id: string; name: string; description: string; type: 'public' | 'private' | 'direct'; membersCount: number; unreadCount: number; lastMessage: string; lastMessageAt: string; } export interface Message { id: string; channelId: string; content: string; sender: PersonRef; createdAt: string; reactions: { emoji: string; count: number; }[]; threadCount: number; } export interface Discussion { id: string; title: string; content: string; author: PersonRef; projectId: string; projectName: string; status: 'open' | 'resolved' | 'closed'; repliesCount: number; createdAt: string; } export interface SharedFile { id: string; name: string; type: string; size: number; uploadedBy: PersonRef; projectId: string; createdAt: string; url: string; } export interface Meeting { id: string; title: string; description: string; type: 'standup' | 'sprint_review' | 'retrospective' | 'planning' | 'one_on_one' | 'general'; date: string; startTime: string; endTime: string; attendees: PersonRef[]; projectId?: string; location: string; status: 'scheduled' | 'in_progress' | 'completed' | 'cancelled'; } export interface Notification { id: string; type: 'task' | 'project' | 'comment' | 'mention' | 'deadline' | 'system' | 'sprint' | 'release'; title: string; description: string; timestamp: string; read: boolean; actionUrl?: string; sender?: PersonRef; } export interface Report { id: string; name: string; description: string; type: 'velocity' | 'burndown' | 'burnup' | 'cumulative_flow' | 'cycle_time' | 'lead_time' | 'custom'; projectId?: string; createdBy: PersonRef; createdAt: string; lastRun: string; schedule?: 'daily' | 'weekly' | 'monthly'; } export interface PlanningSession { id: string; name: string; projectId: string; projectName: string; type: 'sprint_planning' | 'backlog_refinement' | 'capacity_planning' | 'release_planning'; status: 'draft' | 'in_progress' | 'completed'; date: string; participants: PersonRef[]; estimatedCapacity: number; allocatedPoints: number; } export interface Workspace { id: string; name: string; description: string; slug: string; membersCount: number; projectsCount: number; owner: PersonRef; createdAt: string; } export interface PersonRef { id: string; name: string; avatar: string; } //# sourceMappingURL=index.d.ts.map