use crate::ctx;
use std::sync::Arc;
pub trait UsageHandler<CTXEXT> {
fn handle_usage(
&self,
ctx: ctx::Context<CTXEXT, impl crate::ctx::persistent_cache::PersistentCacheClient>,
request: Arc<objectiveai_sdk::agent::completions::request::AgentCompletionCreateParams>,
response: objectiveai_sdk::agent::completions::response::unary::AgentCompletion,
) -> impl std::future::Future<Output = ()> + Send + 'static;
}