/**
 * Agent Providers Module - Public API
 *
 * Re-exports provider types, presets, and registry functions.
 */

export type {
  AgentProviderConfig,
  StructuredOutputConfig,
  SessionIdConfig,
  NonInteractiveConfig,
} from './types.js';

export { PROVIDER_PRESETS } from './presets.js';

export {
  getProvider,
  listProviders,
  registerProvider,
  loadProvidersFromFile,
} from './registry.js';

// Stream parsing
export type {
  StreamEvent,
  StreamParser,
  StreamInitEvent,
  StreamTextDeltaEvent,
  StreamToolUseStartEvent,
  StreamToolResultEvent,
  StreamTurnEndEvent,
  StreamResultEvent,
  StreamErrorEvent,
} from './stream-types.js';

export {
  getStreamParser,
  ClaudeStreamParser,
  GenericStreamParser,
} from './parsers/index.js';
