use serde::Deserialize;
use std::collections::HashMap;
use super::domain::{CommandStatus, Description, Explanation, Query, RequestInfo, Stream, Table};
#[derive(Clone, Debug, Deserialize)]
#[serde(rename_all(serialize = "snake_case", deserialize = "camelCase"))]
pub struct CreateResponse {
#[serde(flatten)]
pub info: RequestInfo,
pub command_id: Option<String>,
pub command_status: Option<CommandStatus>,
pub command_sequence_number: Option<i32>,
}
#[derive(Clone, Debug, Deserialize)]
#[serde(rename_all(serialize = "snake_case", deserialize = "camelCase"))]
pub struct DropResponse {
#[serde(flatten)]
pub info: RequestInfo,
pub command_id: Option<String>,
pub command_status: Option<CommandStatus>,
pub command_sequence_number: Option<i32>,
}
#[derive(Clone, Debug, Deserialize)]
#[serde(rename_all(serialize = "snake_case", deserialize = "camelCase"))]
pub struct TerminateResponse {
#[serde(flatten)]
pub info: RequestInfo,
pub command_id: Option<String>,
pub command_status: Option<CommandStatus>,
pub command_sequence_number: Option<i32>,
}
#[derive(Clone, Debug, Deserialize)]
#[serde(rename_all(serialize = "snake_case", deserialize = "camelCase"))]
pub struct ListStreamsResponse {
#[serde(flatten)]
pub info: RequestInfo,
pub source_descriptions: Vec<Stream>,
}
#[derive(Clone, Debug, Deserialize)]
#[serde(rename_all(serialize = "snake_case", deserialize = "camelCase"))]
pub struct ListTablesResponse {
#[serde(flatten)]
pub info: RequestInfo,
pub tables: Vec<Table>,
}
#[derive(Clone, Debug, Deserialize)]
#[serde(rename_all(serialize = "snake_case", deserialize = "camelCase"))]
pub struct ListQueriesResponse {
#[serde(flatten)]
pub info: RequestInfo,
pub queries: Vec<Query>,
}
#[derive(Clone, Debug, Deserialize)]
#[serde(rename_all(serialize = "snake_case", deserialize = "camelCase"))]
pub struct DescribeResponse {
#[serde(flatten)]
pub info: RequestInfo,
pub source_description: Description,
}
#[derive(Clone, Debug, Deserialize)]
#[serde(rename_all(serialize = "snake_case", deserialize = "camelCase"))]
pub struct ExplainResponse {
#[serde(flatten)]
pub info: RequestInfo,
pub query_description: Explanation,
pub overridden_properties: HashMap<String, String>,
}