use std::sync::Arc;
use crate::client::Client;
use crate::services::{PredictionService, PredictorService};
use super::anthropic::AnthropicClient;
use super::openai::OpenAIClient;
#[derive(Clone)]
pub struct BetaClient {
pub anthropic: AnthropicClient,
pub openai: OpenAIClient,
}
impl BetaClient {
pub fn new(
_: Arc<dyn Client>,
predictors: PredictorService,
predictions: PredictionService,
) -> Self {
let anthropic = AnthropicClient::new(predictors.clone(), predictions.clone());
let openai = OpenAIClient::new(predictors, predictions);
Self { anthropic, openai }
}
}