adpa-enterprise-framework-automation
Version:
Modular, standards-compliant Node.js/TypeScript automation framework for enterprise requirements, project, and data management. Provides CLI and API for BABOK v3, PMBOK 7th Edition, and DMBOK 2.0 (in progress). Production-ready Express.js API with TypeSpe
126 lines • 3.85 kB
TypeScript
/**
* 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<ConfluenceConfig>): 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<ConfluenceConfigFile['confluence']>['publishingOptions']): void;
/**
* Get publishing options with defaults
* @returns Publishing options
*/
getPublishingOptions(): NonNullable<ConfluenceConfigFile['confluence']>['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