UNPKG

@nakedved/ano

Version:

Claude Code plugin for collaborative annotation and review

77 lines (76 loc) 2.43 kB
/** * Team Configuration Management * * Handles reading/writing team config from .ano/config.json * Advisory enforcement - shows warnings but doesn't block. */ import type { TeamConfig, TeamMember, TeamRole } from './types.js'; /** * Get the path to the team config file */ export declare function getConfigPath(projectRoot?: string): string; /** * Get the .ano directory path */ export declare function getConfigDir(projectRoot?: string): string; /** * Default team configuration */ export declare function createDefaultConfig(projectName?: string): TeamConfig; /** * Read team config from disk * Returns null if no config exists */ export declare function readTeamConfig(projectRoot?: string): Promise<TeamConfig | null>; /** * Write team config to disk */ export declare function writeTeamConfig(config: TeamConfig, projectRoot?: string): Promise<void>; /** * Initialize team config (create if doesn't exist) * Returns true if created, false if already exists */ export declare function initTeamConfig(projectName?: string, projectRoot?: string): Promise<boolean>; /** * Add a member to the team */ export declare function addTeamMember(member: TeamMember, projectRoot?: string): Promise<{ added: boolean; reason?: string; }>; /** * Remove a member from the team (by email) */ export declare function removeTeamMember(email: string, projectRoot?: string): Promise<{ removed: boolean; reason?: string; }>; /** * Find a team member by email */ export declare function findTeamMember(email: string, projectRoot?: string): Promise<TeamMember | null>; /** * Check if an email belongs to a team member * Returns member info and their role permissions */ export declare function checkTeamMembership(email: string, projectRoot?: string): Promise<{ isMember: boolean; member?: TeamMember; role?: TeamRole; }>; /** * Add a new role to the config */ export declare function addTeamRole(roleName: string, role: TeamRole, projectRoot?: string): Promise<{ added: boolean; reason?: string; }>; /** * Update approval requirements */ export declare function setRequirements(requirements: Partial<TeamConfig['requirements']>, projectRoot?: string): Promise<void>; /** * Get formatted team member status for an approver * Used in check/approve commands for advisory display */ export declare function getApproverStatus(email: string, projectRoot?: string): Promise<string>;