#![allow(clippy::module_name_repetitions)]
#![allow(clippy::too_many_arguments)]

//! TypeDialog AI Configuration Assistant Library
//!
//! Core library for AI-powered configuration assistance.
//! Provides AI FormBackend implementation, LLM providers, storage, analysis, and assistant components.

pub mod assistant;
pub mod backend;
pub mod config;
pub mod llm;
pub mod storage;

pub use assistant::SchemaAnalyzer;
pub use backend::{AiBackend, AiBackendMode};
pub use config::LlmProvider as LlmProviderType;
pub use config::{InteractionMode, TypeDialogAiConfig};
pub use storage::SurrealDbClient;

// LLM exports
#[allow(unused_imports)]
pub use llm::{GenerationOptions, LlmProvider, Message, Role};

#[cfg(feature = "openai")]
pub use llm::providers::OpenAiProvider;

#[cfg(feature = "anthropic")]
pub use llm::providers::AnthropicProvider;

#[cfg(feature = "ollama")]
pub use llm::providers::OllamaProvider;
