use std::borrow::Cow;
use super::{AxisDirection, Handle, Id, Value};
#[derive(Debug, PartialEq, PartialOrd, Clone)]
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
pub struct ListView<'a>(
pub Value<'a, AxisDirection>,
);
#[derive(Debug, PartialEq, PartialOrd, Clone)]
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
pub struct Image<'a>(
pub Value<'a, Cow<'a, str>>,
);
#[derive(Debug, PartialEq, PartialOrd, Clone)]
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
pub struct Button<'a> {
pub text: Value<'a, Cow<'a, str>>,
pub click: Handle<'a>,
pub icon: Option<Value<'a, Cow<'a, str>>>,
}
#[derive(Debug, PartialEq, PartialOrd, Clone)]
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
pub struct TextField<'a> {
pub id: Id<'a>,
pub prompt: Value<'a, Cow<'a, str>>,
}
#[derive(Debug, PartialEq, PartialOrd, Clone)]
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
pub struct Label<'a> {
pub text: Value<'a, Cow<'a, str>>,
pub icon: Option<Value<'a, Cow<'a, str>>>,
}