mod ai_keyword_data;
mod llm_mentions;
mod llm_responses;
mod llm_scraper;
mod provider;
pub use ai_keyword_data::*;
pub use llm_mentions::*;
pub use llm_responses::*;
pub use llm_scraper::*;
pub use provider::*;
use crate::DataForSeoClient;
pub struct AiOptimizationApi<'a> {
client: &'a DataForSeoClient,
}
impl DataForSeoClient {
pub fn ai_optimization(&self) -> AiOptimizationApi<'_> {
AiOptimizationApi { client: self }
}
}
impl AiOptimizationApi<'_> {
pub fn ai_keyword_data(&self) -> AiOptimizationApiKeywordData<'_> {
AiOptimizationApiKeywordData {
client: self.client,
}
}
pub fn llm_mentions(&self) -> AiOptimizationApiLlmMentions<'_> {
AiOptimizationApiLlmMentions {
client: self.client,
}
}
pub fn chat_gpt(&self) -> AiOptimizationApiChatGpt<'_> {
AiOptimizationApiChatGpt {
client: self.client,
}
}
pub fn claude(&self) -> AiOptimizationApiClaude<'_> {
AiOptimizationApiClaude {
client: self.client,
}
}
pub fn gemini(&self) -> AiOptimizationApiGemini<'_> {
AiOptimizationApiGemini {
client: self.client,
}
}
pub fn perplexity(&self) -> AiOptimizationApiPerplexity<'_> {
AiOptimizationApiPerplexity {
client: self.client,
}
}
}