/** * Confluence Configuration Manager * Part of ADPA (Automated Document Processing Assistant) v2.1.3 * * Manages Confluence integration configuration * Features: * - Configuration validation and storage * - Environment variable support * - Secure credential handling * - Configuration templates and defaults */ import { ConfluenceConfig } from './ConfluencePublisher.js'; export interface ConfluenceConfigFile { confluence?: { authMethod?: 'oauth2' | 'api-token'; oauth2?: { redirectUri?: string; scopes?: string[]; }; baseUrl?: string; email?: string; spaceKey?: string; parentPageId?: string; cloudId?: string; defaultLabels?: string[]; publishingOptions?: { createParentPages?: boolean; updateExisting?: boolean; includeMetadata?: boolean; rateLimitDelay?: number; }; }; } /** * Configuration manager for Confluence integration */ export declare class ConfluenceConfigManager { private configPath; private config; constructor(configPath?: string); /** * Load configuration from file * @returns Configuration object */ private loadConfig; /** * Save configuration to file */ saveConfig(): void; /** * Get Confluence configuration with environment variable fallbacks * @returns Complete Confluence configuration */ getConfluenceConfig(): ConfluenceConfig; /** * Validate current Confluence configuration * @returns Validation result */ validateConfiguration(): { valid: boolean; errors: string[]; warnings: string[]; }; /** * Update Confluence configuration * @param updates Configuration updates */ updateConfluenceConfig(updates: Partial): void; /** * Set default labels for published documents * @param labels Array of default labels */ setDefaultLabels(labels: string[]): void; /** * Update publishing options * @param options Publishing options */ updatePublishingOptions(options: NonNullable['publishingOptions']): void; /** * Get publishing options with defaults * @returns Publishing options */ getPublishingOptions(): NonNullable['publishingOptions']; /** * Get default labels for publishing * @returns Array of default labels */ getDefaultLabels(): string[]; /** * Create a configuration template for Confluence integration setup * @returns Configuration template */ createConfigurationTemplate(): ConfluenceConfigFile; /** * Initialize Confluence configuration with guided setup * @param interactive Whether to run interactive setup * @returns Setup result */ initializeConfiguration(interactive?: boolean): Promise<{ success: boolean; message: string; configPath?: string; }>; /** * Get environment variable setup instructions * @returns Setup instructions */ getEnvironmentSetupInstructions(): string; /** * Display current configuration status * @returns Configuration status report */ getConfigurationStatus(): { configured: boolean; valid: boolean; errors: string[]; warnings: string[]; envVarsSet: string[]; envVarsMissing: string[]; }; } /** * Factory function to create ConfluenceConfigManager * @param configPath Optional config file path * @returns ConfluenceConfigManager instance */ export declare function createConfluenceConfigManager(configPath?: string): ConfluenceConfigManager; //# sourceMappingURL=ConfluenceConfigManager.d.ts.map