use crateKumoError;
/// Token usage returned by a single LLM extraction call.
/// Provider-agnostic LLM client for structured data extraction.
///
/// Implement this trait to plug in any LLM provider not shipped with kumo.
///
/// The `schema` parameter is a JSON Schema object (`{"type":"object","properties":{...}}`)
/// describing the fields to extract. Each provider converts it into the appropriate
/// tool-use / structured-output call for their API.