/**
 * Provider Module
 *
 * 模型提供商管理模块
 */

// Types
export type {
  BuiltinProviderType,
  ProviderType,
  ModelCapabilities,
  ModelInfo,
  ProviderInfo,
  ProviderConfig,
  CustomProviderDefinition,
  ConnectionTestResult,
  ProviderFactory,
  RegisteredProvider,
  ProvidersConfigFile,
  ProviderListItem,
  ProviderDetail,
} from './types.js';

// Registry
export {
  ProviderRegistry,
  providerRegistry,
  getProviderRegistry,
} from './registry.js';

// Builtin providers
export {
  builtinProviders,
  getBuiltinProviders,
  getBuiltinProvider,
  isBuiltinProvider,
} from './builtin/index.js';

// Config utilities
export {
  loadProvidersConfig,
  saveProvidersConfig,
  resolveApiKey,
  getConfigPath,
} from './config.js';

// Utils
export {
  testOpenAICompatibleConnection,
  createOpenAICompatibleFactory,
  isValidProviderId,
  isValidUrl,
} from './utils.js';
