Public declaration syntax from harness-tui-kit/src/components/chat/timeline.rs Original source SHA-256: 4e3001a90967ecc471c04755ef88e5cb0ea6f094eb6985648873c18746dcbe8d Function bodies and constant values are omitted. This is not the complete implementation. Source line 43 #[derive(Debug, Clone)] pub struct ChatTimeline<'a> { } Source line 53 #[must_use] pub fn new(messages: &'a [ChatMessage]) -> Self; Source line 62 #[must_use] pub fn theme(mut self, theme: &'a Theme) -> Self; Source line 81 #[derive(Debug, Clone, Default)] pub struct ChatTimelineState { } Source line 97 #[must_use] pub fn new() -> Self; Source line 106 #[must_use] pub fn messages(&self) -> &[ChatMessage]; Source line 112 #[must_use] pub fn message_count(&self) -> usize; Source line 119 pub fn push_message(&mut self, message: ChatMessage); Source line 128 pub fn update_streaming(&mut self, delta: &str); Source line 138 pub fn scroll_up(&mut self); Source line 146 pub fn scroll_down(&mut self); Source line 157 pub fn scroll_to_bottom(&mut self); Source line 163 pub fn scroll_to_top(&mut self); Source line 169 pub fn select(&mut self, index: usize); Source line 185 pub fn deselect(&mut self); Source line 195 #[must_use] pub fn is_auto_scroll(&self) -> bool; Source line 200 pub fn clear(&mut self);