/**
 * Profile Manager for Multi-Project Sync
 *
 * Manages sync profiles across multiple external projects (GitHub, JIRA, ADO).
 * Handles CRUD operations, validation, and profile selection.
 */
import { SyncProfile, SyncProvider, ProfileValidationResult, SyncConfiguration } from '../types/sync-profile.js';
export declare class ProfileManager {
    private configPath;
    private config;
    constructor(projectRoot: string);
    /**
     * Load sync configuration from disk
     */
    load(): Promise<SyncConfiguration>;
    /**
     * Save sync configuration to disk
     */
    save(): Promise<void>;
    /**
     * Get all profiles
     */
    getAllProfiles(): Promise<Record<string, SyncProfile>>;
    /**
     * Get a specific profile by ID
     */
    getProfile(profileId: string): Promise<SyncProfile | null>;
    /**
     * Get default profile
     */
    getDefaultProfile(): Promise<{
        id: string;
        profile: SyncProfile;
    } | null>;
    /**
     * Set default profile
     */
    setDefaultProfile(profileId: string): Promise<void>;
    /**
     * Create a new profile
     */
    createProfile(profileId: string, profile: SyncProfile): Promise<void>;
    /**
     * Update an existing profile
     */
    updateProfile(profileId: string, updates: Partial<SyncProfile>): Promise<void>;
    /**
     * Delete a profile
     */
    deleteProfile(profileId: string): Promise<void>;
    /**
     * Get profiles by provider
     */
    getProfilesByProvider(provider: SyncProvider): Promise<Record<string, SyncProfile>>;
    /**
     * Get profiles for a project
     */
    getProfilesForProject(projectName: string): Promise<Record<string, SyncProfile>>;
    /**
     * Validate a sync profile
     */
    validateProfile(profile: SyncProfile): ProfileValidationResult;
    /**
     * Get profile statistics
     */
    getStats(): Promise<{
        totalProfiles: number;
        byProvider: Record<SyncProvider, number>;
        defaultProfile: string | null;
    }>;
}
//# sourceMappingURL=profile-manager.d.ts.map