use serde::{Deserialize, Serialize};
#[derive(Debug, Deserialize, Serialize)]
#[serde(rename_all = "camelCase")]
pub struct OpenIntentRequest {
pub action: String,
pub data: Option<String>,
pub category: Option<String>,
pub mime_type: Option<String>,
pub package_name: Option<String>,
pub class_name: Option<String>,
pub flags: Option<Vec<String>>,
pub extras: Option<std::collections::HashMap<String, IntentExtra>>,
}
#[derive(Debug, Clone, Deserialize, Serialize)]
#[serde(rename_all = "camelCase")]
pub enum IntentExtra {
String(String),
Int(i32),
Long(i64),
Float(f32),
Double(f64),
Boolean(bool),
StringArray(Vec<String>),
IntArray(Vec<i32>),
}
#[derive(Debug, Clone, Default, Deserialize, Serialize)]
#[serde(rename_all = "camelCase")]
pub struct OpenIntentResponse {
pub success: bool,
pub error: Option<String>,
}