1use crate::{agent::StreamingPromptRequest, completion::Message};
4use rig_core::wasm_compat::{WasmCompatSend, WasmCompatSync};
5
6pub use rig_core::streaming::*;
7
8pub trait StreamingPrompt {
10 fn stream_prompt(&self, prompt: impl Into<Message> + WasmCompatSend) -> StreamingPromptRequest;
12}
13
14pub trait StreamingChat: WasmCompatSend + WasmCompatSync {
16 fn stream_chat<I, T>(
18 &self,
19 prompt: impl Into<Message> + WasmCompatSend,
20 chat_history: I,
21 ) -> StreamingPromptRequest
22 where
23 I: IntoIterator<Item = T> + WasmCompatSend,
24 T: Into<Message>;
25}