UNPKG

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

119 lines 3.44 kB
/** * SharePoint Configuration Manager * Part of ADPA (Automated Document Processing Assistant) v2.1.3 * * Manages SharePoint integration configuration, including environment variables, * configuration file management, and validation for enterprise deployments. * * Features: * - Configuration file management with schema validation * - Environment variable integration and fallbacks * - Multi-tenant and authentication method support * - Configuration validation and health checks * - Secure credential handling recommendations */ import { SharePointConfig } from './types.js'; export interface SharePointConfigFile { sharepoint?: { authMethod: 'oauth2' | 'service-principal' | 'certificate'; tenantId: string; clientId: string; siteUrl: string; documentLibrary: string; rootFolderPath?: string; oauth2?: { redirectUri: string; scopes: string[]; authority?: string; }; publishingOptions?: { enableVersioning?: boolean; createFolders?: boolean; overwriteExisting?: boolean; addMetadata?: boolean; maxConcurrency?: number; }; defaultTags?: string[]; defaultMetadata?: Record<string, any>; retentionDays?: number; enableAuditLog?: boolean; }; } export interface ConfigurationStatus { configured: boolean; valid: boolean; errors: string[]; warnings: string[]; envVarsSet: string[]; envVarsMissing: string[]; recommendedScopes: string[]; } /** * SharePoint Configuration Manager class */ export declare class SharePointConfigManager { private configPath; private config; constructor(configPath?: string); /** * Initialize SharePoint configuration */ initializeConfiguration(): Promise<{ success: boolean; message: string; configPath: string; }>; /** * Get SharePoint configuration with environment variable fallbacks */ getSharePointConfig(): SharePointConfig; /** * Validate current configuration */ validateConfiguration(): { valid: boolean; errors: string[]; warnings: string[]; }; /** * Get configuration status for display */ getConfigurationStatus(): ConfigurationStatus; /** * Get publishing options with defaults */ getPublishingOptions(): NonNullable<SharePointConfigFile['sharepoint']>['publishingOptions']; /** * Get default tags for publishing */ getDefaultTags(): string[]; /** * Get default metadata template */ getDefaultMetadata(): Record<string, any>; /** * Update SharePoint configuration */ updateConfiguration(updates: Partial<SharePointConfigFile['sharepoint']>): void; /** * Load configuration from file */ private loadConfiguration; /** * Save configuration to file */ private saveConfiguration; /** * Generate environment variables template */ generateEnvTemplate(): string; /** * Generate setup instructions */ generateSetupInstructions(): string; } /** * Factory function to create SharePointConfigManager instance */ export declare function createSharePointConfigManager(configPath?: string): SharePointConfigManager; //# sourceMappingURL=SharePointConfigManager.d.ts.map