import { GitHubAuthManager } from '../auth/GitHubAuthManager.js'; import { PortfolioManager } from '../portfolio/PortfolioManager.js'; import { ConfigManager } from '../config/ConfigManager.js'; import { PortfolioRepoManager } from '../portfolio/PortfolioRepoManager.js'; import { TokenManager } from '../security/tokenManager.js'; import { PortfolioPullHandler } from './PortfolioPullHandler.js'; import { PortfolioIndexManager } from '../portfolio/PortfolioIndexManager.js'; import { UnifiedIndexManager } from '../portfolio/UnifiedIndexManager.js'; import { InitializationService } from '../services/InitializationService.js'; import { PersonaIndicatorService } from '../services/PersonaIndicatorService.js'; import { FileOperationsService } from '../services/FileOperationsService.js'; /** * PortfolioHandler - Manages portfolio operations, status, configuration, and search * * Uses dependency injection for all services: * - InitializationService for setup tasks * - PersonaIndicatorService for persona indicator formatting * - GitHubAuthManager for authentication * - PortfolioManager for portfolio operations * * FIX: DMCP-SEC-006 - Security audit suppression * This handler delegates operations to PortfolioManager and related services. * Audit logging happens in the underlying services (GitHubAuthManager, PortfolioRepoManager). * @security-audit-suppress DMCP-SEC-006 */ export declare class PortfolioHandler { private readonly githubAuthManager; private readonly portfolioManager; private readonly portfolioPullHandler; private readonly portfolioIndexManager; private readonly unifiedIndexManager; private readonly initService; private readonly indicatorService; private readonly configManager; private readonly fileOperations; private readonly tokenManager; private readonly portfolioRepoManager; constructor(githubAuthManager: GitHubAuthManager, portfolioManager: PortfolioManager, portfolioPullHandler: PortfolioPullHandler, portfolioIndexManager: PortfolioIndexManager, unifiedIndexManager: UnifiedIndexManager, initService: InitializationService, indicatorService: PersonaIndicatorService, configManager: ConfigManager, fileOperations: FileOperationsService, tokenManager: TokenManager, portfolioRepoManager: PortfolioRepoManager); private countElementsInDir; private getElementsList; private loadElementByType; portfolioStatus(username?: string): Promise<{ content: { type: string; text: string; }[]; }>; initPortfolio(_options: { repositoryName?: string; private?: boolean; description?: string; }): Promise<{ content: { type: string; text: string; }[]; }>; portfolioConfig(options: { autoSync?: boolean; defaultVisibility?: string; autoSubmit?: boolean; repositoryName?: string; }): Promise<{ content: { type: string; text: string; }[]; data: { config: { autoSubmit: boolean; repositoryName: string; defaultVisibility: string; }; }; } | { content: { type: string; text: string; }[]; data?: undefined; }>; syncPortfolio(options: { direction: string; mode?: string; force: boolean; dryRun: boolean; confirmDeletions?: boolean; }): Promise; searchPortfolio(options: { query: string; elementType?: string; fuzzyMatch?: boolean; maxResults?: number; includeKeywords?: boolean; includeTags?: boolean; includeTriggers?: boolean; includeDescriptions?: boolean; }): Promise<{ content: { type: string; text: string; }[]; }>; searchAll(options: { query: string; sources?: string[]; elementType?: string; page?: number; pageSize?: number; sortBy?: string; }): Promise<{ content: { type: string; text: string; }[]; }>; } //# sourceMappingURL=PortfolioHandler.d.ts.map