/** * Portfolio sync handler for the sync_portfolio MCP tool * Manages bi-directional synchronization between local portfolio and GitHub * * Uses dependency injection for all services: * - PortfolioSyncManager for sync operations * - ConfigManager for configuration * - PersonaIndicatorService for persona indicator formatting */ import { PortfolioSyncManager } from '../portfolio/PortfolioSyncManager.js'; import { ConfigManager } from '../config/ConfigManager.js'; import { ElementType } from '../portfolio/PortfolioManager.js'; import { PersonaIndicatorService } from '../services/PersonaIndicatorService.js'; export interface SyncOperationOptions { operation: 'list-remote' | 'download' | 'upload' | 'compare' | 'bulk-download' | 'bulk-upload'; element_name?: string; element_type?: ElementType; filter?: { type?: ElementType; author?: string; updated_after?: string; }; options?: { force?: boolean; dry_run?: boolean; include_private?: boolean; }; } export declare class SyncHandler { private readonly syncManager; private readonly configManager; private readonly indicatorService; constructor(syncManager: PortfolioSyncManager, configManager: ConfigManager, indicatorService: PersonaIndicatorService); /** * Handle portfolio sync operations */ handleSyncOperation(options: SyncOperationOptions): Promise<{ content: { type: string; text: string; }[]; }>; private mapOperation; private formatResult; private formatListResult; private formatDownloadResult; private formatUploadResult; private formatCompareResult; } //# sourceMappingURL=SyncHandlerV2.d.ts.map