decthings_api/client/rpc/image/
request.rs1use serde::Serialize;
2
3#[derive(Debug, Clone, Serialize)]
4#[serde(rename_all = "camelCase")]
5pub struct CreateRepositoryParams<'a> {
6 pub name: &'a str,
8 pub description: &'a str,
10 #[serde(skip_serializing_if = "Option::is_none")]
12 pub public_access: Option<bool>,
13}
14
15#[derive(Debug, Clone, Serialize)]
16#[serde(rename_all = "camelCase")]
17pub struct UpdateRepositoryProperties<'a> {
18 #[serde(skip_serializing_if = "Option::is_none")]
19 pub description: Option<&'a str>,
20 #[serde(skip_serializing_if = "Option::is_none")]
21 pub public_access: Option<bool>,
22}
23
24#[derive(Debug, Clone, Serialize)]
25#[serde(rename_all = "camelCase")]
26pub struct UpdateRepositoryParams<'a> {
27 pub name: &'a str,
29 pub properties: UpdateRepositoryProperties<'a>,
31}
32
33#[derive(Debug, Clone, Serialize)]
34#[serde(rename_all = "camelCase")]
35pub struct DeleteRepositoryParams<'a> {
36 pub name: &'a str,
38}
39
40#[derive(Debug, Clone, Serialize)]
41#[serde(rename_all = "camelCase")]
42pub struct GetRepositoriesFilter<'a, S: AsRef<str>> {
43 #[serde(serialize_with = "super::super::serialize_option_asref_str_seq")]
44 #[serde(skip_serializing_if = "Option::is_none")]
45 pub owners: Option<&'a [S]>,
46 #[serde(serialize_with = "super::super::serialize_option_asref_str_seq")]
47 #[serde(skip_serializing_if = "Option::is_none")]
48 pub names: Option<&'a [S]>,
49 #[serde(skip_serializing_if = "Option::is_none")]
50 pub search_name: Option<&'a str>,
51}
52
53#[derive(Debug, Clone, Serialize)]
54#[serde(rename_all = "camelCase")]
55pub enum SortDirection {
56 Asc,
57 Desc,
58}
59
60#[derive(Debug, Clone, Serialize)]
61#[serde(rename_all = "camelCase")]
62#[serde(bound(serialize = ""))]
63pub struct GetRepositoriesParams<'a, S: AsRef<str>> {
64 #[serde(skip_serializing_if = "Option::is_none")]
66 pub offset: Option<u32>,
67 #[serde(skip_serializing_if = "Option::is_none")]
69 pub limit: Option<u32>,
70 #[serde(skip_serializing_if = "Option::is_none")]
72 pub filter: Option<GetRepositoriesFilter<'a, S>>,
73 #[serde(skip_serializing_if = "Option::is_none")]
75 pub sort: Option<&'a str>,
76 #[serde(skip_serializing_if = "Option::is_none")]
77 pub sort_direction: Option<SortDirection>,
78}