Public declaration syntax from forge-rs/crates/forge-provider-anthropic/src/sse.rs Original source SHA-256: 7b27a84ebf6b5086ff3d5347dd9e7ed6f29c85977a4c3b9eb3e7d9eba2392f53 Function bodies and constant values are omitted. This is not the complete implementation. Source line 30 #[derive(Debug, Clone)] pub enum AnthropicSseEvent { /// Stream started with message metadata. MessageStart { /// Input token count from the initial message. input_tokens: u64, }, /// A new content block started. ContentBlockStart { /// Zero-based index of this block. index: u32, /// The initial content block. block: ContentBlock, }, /// Incremental update to the current content block. ContentBlockDelta { /// Zero-based index of the block being updated. index: u32, /// The delta update. delta: DeltaBlock, }, /// A content block finished. ContentBlockStop { /// Zero-based index of the completed block. index: u32, }, /// Stream metadata update (stop reason, output usage). MessageDelta { /// Why generation stopped. stop_reason: Option, /// Output tokens generated. output_tokens: Option, }, /// Stream completed. MessageStop, /// Keepalive ping (ignored by consumers). Ping, } Source line 84 pub fn parse_sse_stream(sse_bytes: &[u8]) -> Result, AnthropicError>; Source line 324 pub struct SseDecoder { } Source line 338 pub fn new() -> Self; Source line 355 pub fn feed(&mut self, bytes: &[u8]) -> Result<(), AnthropicError>; Source line 413 pub fn drain(&mut self) -> Vec; Source line 428 pub fn finish(&mut self) -> Result, AnthropicError>; Source line 476 pub struct ChunkEmitter { } Source line 486 pub fn new() -> Self; Source line 496 pub fn emit(&mut self, event: AnthropicSseEvent) -> Vec;