Public declaration syntax from harness-tui-kit/src/components/system/theme_picker.rs Original source SHA-256: dcac6f9d0304d8ddbd48fbc74d80bb69ee14151bea6360de832cdd913c7a0981 Function bodies and constant values are omitted. This is not the complete implementation. Source line 21 #[derive(Debug, Clone)] pub struct ThemePickerRow { /// Stable id (used by the activation handler). pub id: String, /// Display name (e.g. "Solarized Dark"). pub name: String, /// One-line description shown beside the focus marker. pub description: String, /// Background color preview (for the swatch column). pub preview_bg: Color, /// Foreground color preview. pub preview_fg: Color, /// Accent color preview. pub preview_accent: Color } Source line 38 #[derive(Debug, Clone, Default)] pub struct ThemePickerState { } Source line 45 #[must_use] pub fn selected(&self) -> usize; Source line 50 pub fn move_down(&mut self, len: usize); Source line 59 pub fn move_up(&mut self); Source line 64 pub fn reset(&mut self); Source line 71 #[derive(Debug, Clone)] pub struct ThemePicker<'a> { } Source line 80 #[must_use] pub fn new(rows: &'a [ThemePickerRow]) -> Self; Source line 91 #[must_use] pub fn theme(mut self, theme: &'a Theme) -> Self; Source line 98 #[must_use] pub fn title(mut self, title: &'a str) -> Self;