Package-level declarations
Types
A scriptable OnDeviceLlm test double — no real model, no device, no :ai backend SDK — so any app can exercise its own AI-branching (a success string, a typed AiFailure, a chunked stream) without shipping a 500MB model or needing AICore-class hardware just to run its tests.
Wraps another OnDeviceLlm (a FakeOnDeviceLlm by default) and records every call that reaches it — so a test can assert what an app's OWN caller actually sent (a CompositeOnDeviceLlm's PromptGuard-wrapped text, a retry, a prompt the caller built up itself) without inspecting that caller's internals. Every non-recording member (isAvailable, supportsImage, capabilities) delegates straight through to delegate via by — this class only intercepts the four call entry points to log them before forwarding.