use super::responses::{GetSecretResponse, ListSecretResponse};
use rustify_derive::Endpoint;
use std::fmt::Debug;
#[derive(Builder, Debug, Endpoint)]
#[endpoint(
path = "{self.mount}/{self.path}",
response = "GetSecretResponse",
builder = "true"
)]
#[builder(setter(into))]
pub struct GetSecretRequest {
#[endpoint(skip)]
pub mount: String,
#[endpoint(skip)]
pub path: String,
}
#[derive(Builder, Debug, Endpoint)]
#[endpoint(path = "{self.mount}/{self.path}", method = "POST", builder = "true")]
#[builder(setter(into))]
pub struct SetSecretRequest {
#[endpoint(skip)]
pub mount: String,
#[endpoint(skip)]
pub path: String,
#[endpoint(raw)]
pub data: Vec<u8>,
}
#[derive(Builder, Debug, Endpoint)]
#[endpoint(
path = "{self.mount}/{self.path}",
method = "LIST",
builder = "true",
response = "ListSecretResponse"
)]
#[builder(setter(into))]
pub struct ListSecretRequest {
#[endpoint(skip)]
pub mount: String,
#[endpoint(skip)]
pub path: String,
}
#[derive(Builder, Debug, Endpoint)]
#[endpoint(path = "{self.mount}/{self.path}", method = "DELETE", builder = "true")]
#[builder(setter(into))]
pub struct DeleteSecretRequest {
#[endpoint(skip)]
pub mount: String,
#[endpoint(skip)]
pub path: String,
}