Files
simple-ai-provider/src/index.ts
2025-09-04 15:13:09 +02:00

61 lines
1.5 KiB
TypeScript

/**
* Simple AI Provider - A unified interface for multiple AI providers
*
* Main entry point for the library, providing access to all providers
* and utilities in a clean, type-safe interface.
*
* @author Jan-Marlon Leibl
* @version 1.0.0
*/
// Core types
export type {
AIMessage,
AIProviderConfig,
CompletionParams,
CompletionResponse,
CompletionChunk,
ProviderInfo,
TokenUsage,
ResponseType
} from './types/index.js';
// Error types
export { AIProviderError, AIErrorType } from './types/index.js';
// Response type utilities
export {
createResponseType,
generateResponseTypePrompt,
parseAndValidateResponseType
} from './types/index.js';
// Base provider
export { BaseAIProvider } from './providers/base.js';
// Provider implementations
export { ClaudeProvider, type ClaudeConfig } from './providers/claude.js';
export { OpenAIProvider, type OpenAIConfig } from './providers/openai.js';
export { GeminiProvider, type GeminiConfig } from './providers/gemini.js';
export { OpenWebUIProvider, type OpenWebUIConfig } from './providers/openwebui.js';
// Factory utilities
export {
createProvider,
createClaudeProvider,
createOpenAIProvider,
createGeminiProvider,
createOpenWebUIProvider,
type ProviderType,
PROVIDER_REGISTRY
} from './utils/factory.js';
/**
* List of all supported providers
*/
export const SUPPORTED_PROVIDERS = ['claude', 'openai', 'gemini', 'openwebui'] as const;
/**
* Package version
*/
export const VERSION = '1.2.0';