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

68 lines 1.91 kB
/** * Core AI Types and Interfaces Module for Requirements Gathering Agent * * Defines essential TypeScript interfaces and types for AI provider integration, * message handling, and response processing across the system. * * @version 2.1.3 * @author Requirements Gathering Agent Team * @created 2024 * @updated June 2025 * * Key Features: * - Comprehensive AI provider type definitions * - Message and response interface specifications * - Metrics and performance tracking types * - Configuration and validation interfaces * - Cross-module type consistency * * @filepath c:\Users\menno\Source\Repos\requirements-gathering-agent\src\modules\ai\types.ts */ export interface ChatMessage { role: 'system' | 'user' | 'assistant'; content: string; } export interface ProviderMetrics { totalCalls: number; successfulCalls: number; failedCalls: number; totalResponseTime: number; averageResponseTime: number; lastUsed: Date; rateLimitHits: number; errors: { [errorType: string]: number; }; } export interface RetryConfig { maxRetries: number; baseDelay: number; maxDelay: number; backoffMultiplier: number; retryableErrors: string[]; } export type AIProvider = 'azure-openai' | 'azure-openai-key' | 'azure-openai-entra' | 'github-ai' | 'ollama' | 'azure-ai-studio' | 'google-ai'; export interface AIClientConfig { provider: AIProvider; endpoint?: string; apiKey?: string; deployment?: string; model?: string; useEntraID?: boolean; } export interface AIResponse { content: string; metadata?: { provider: AIProvider; responseTime: number; tokensUsed?: number; }; } export interface ProjectContext { projectName: string; programName?: string; programManager?: string; projectType?: string; description?: string; } //# sourceMappingURL=types.d.ts.map