use serde::{Deserialize, Serialize};
use super::CommandOutput;
use crate::SessionName;
#[derive(Debug, Clone, Copy, Default, PartialEq, Eq, Serialize, Deserialize)]
pub struct KillServerResponse;
#[derive(Debug, Clone, Copy, Default, PartialEq, Eq, Serialize, Deserialize)]
pub struct LockServerResponse;
#[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize)]
pub struct LockSessionResponse {
pub target: SessionName,
}
#[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize)]
pub struct LockClientResponse {
pub target_client: String,
}
#[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize)]
pub struct ServerAccessResponse {
pub output: CommandOutput,
}
impl ServerAccessResponse {
#[must_use]
pub const fn no_output(output: CommandOutput) -> Self {
Self { output }
}
#[must_use]
pub const fn command_output(&self) -> &CommandOutput {
&self.output
}
}