1use crate::models;
12use serde::{Deserialize, Serialize};
13
14#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
15pub struct UpdateItem {
16 #[serde(rename = "ProviderType", skip_serializing_if = "Option::is_none")]
17 pub provider_type: Option<String>,
18 #[serde(rename = "accessibility", skip_serializing_if = "Option::is_none")]
20 pub accessibility: Option<String>,
21 #[serde(rename = "add-tag", skip_serializing_if = "Option::is_none")]
23 pub add_tag: Option<Vec<String>>,
24 #[serde(rename = "cert-file-data", skip_serializing_if = "Option::is_none")]
26 pub cert_file_data: Option<String>,
27 #[serde(rename = "certificate-format", skip_serializing_if = "Option::is_none")]
28 pub certificate_format: Option<String>,
29 #[serde(rename = "change-event", skip_serializing_if = "Option::is_none")]
31 pub change_event: Option<String>,
32 #[serde(rename = "delete_protection", skip_serializing_if = "Option::is_none")]
34 pub delete_protection: Option<String>,
35 #[serde(rename = "description", skip_serializing_if = "Option::is_none")]
37 pub description: Option<String>,
38 #[serde(rename = "expiration-event-in", skip_serializing_if = "Option::is_none")]
40 pub expiration_event_in: Option<Vec<String>>,
41 #[serde(rename = "gcp-sm-regions", skip_serializing_if = "Option::is_none")]
43 pub gcp_sm_regions: Option<String>,
44 #[serde(rename = "host-provider", skip_serializing_if = "Option::is_none")]
46 pub host_provider: Option<String>,
47 #[serde(rename = "item-custom-fields", skip_serializing_if = "Option::is_none")]
49 pub item_custom_fields: Option<std::collections::HashMap<String, String>>,
50 #[serde(rename = "json", skip_serializing_if = "Option::is_none")]
52 pub json: Option<bool>,
53 #[serde(rename = "max-versions", skip_serializing_if = "Option::is_none")]
55 pub max_versions: Option<String>,
56 #[serde(rename = "name")]
58 pub name: String,
59 #[serde(rename = "new-metadata", skip_serializing_if = "Option::is_none")]
61 pub new_metadata: Option<String>,
62 #[serde(rename = "new-name", skip_serializing_if = "Option::is_none")]
64 pub new_name: Option<String>,
65 #[serde(rename = "rm-tag", skip_serializing_if = "Option::is_none")]
67 pub rm_tag: Option<Vec<String>>,
68 #[serde(rename = "rotate-after-disconnect", skip_serializing_if = "Option::is_none")]
70 pub rotate_after_disconnect: Option<String>,
71 #[serde(rename = "secure-access-add-host", skip_serializing_if = "Option::is_none")]
73 pub secure_access_add_host: Option<Vec<String>>,
74 #[serde(rename = "secure-access-allow-external-user", skip_serializing_if = "Option::is_none")]
76 pub secure_access_allow_external_user: Option<String>,
77 #[serde(rename = "secure-access-allow-port-forwading", skip_serializing_if = "Option::is_none")]
79 pub secure_access_allow_port_forwading: Option<bool>,
80 #[serde(rename = "secure-access-api", skip_serializing_if = "Option::is_none")]
82 pub secure_access_api: Option<String>,
83 #[serde(rename = "secure-access-aws-account-id", skip_serializing_if = "Option::is_none")]
85 pub secure_access_aws_account_id: Option<String>,
86 #[serde(rename = "secure-access-aws-native-cli", skip_serializing_if = "Option::is_none")]
88 pub secure_access_aws_native_cli: Option<bool>,
89 #[serde(rename = "secure-access-aws-region", skip_serializing_if = "Option::is_none")]
91 pub secure_access_aws_region: Option<String>,
92 #[serde(rename = "secure-access-bastion-api", skip_serializing_if = "Option::is_none")]
94 pub secure_access_bastion_api: Option<String>,
95 #[serde(rename = "secure-access-bastion-issuer", skip_serializing_if = "Option::is_none")]
97 pub secure_access_bastion_issuer: Option<String>,
98 #[serde(rename = "secure-access-bastion-ssh", skip_serializing_if = "Option::is_none")]
100 pub secure_access_bastion_ssh: Option<String>,
101 #[serde(rename = "secure-access-certificate-issuer", skip_serializing_if = "Option::is_none")]
103 pub secure_access_certificate_issuer: Option<String>,
104 #[serde(rename = "secure-access-cluster-endpoint", skip_serializing_if = "Option::is_none")]
106 pub secure_access_cluster_endpoint: Option<String>,
107 #[serde(rename = "secure-access-dashboard-url", skip_serializing_if = "Option::is_none")]
109 pub secure_access_dashboard_url: Option<String>,
110 #[serde(rename = "secure-access-db-name", skip_serializing_if = "Option::is_none")]
112 pub secure_access_db_name: Option<String>,
113 #[serde(rename = "secure-access-db-schema", skip_serializing_if = "Option::is_none")]
115 pub secure_access_db_schema: Option<String>,
116 #[serde(rename = "secure-access-enable", skip_serializing_if = "Option::is_none")]
118 pub secure_access_enable: Option<String>,
119 #[serde(rename = "secure-access-gateway", skip_serializing_if = "Option::is_none")]
120 pub secure_access_gateway: Option<String>,
121 #[serde(rename = "secure-access-host", skip_serializing_if = "Option::is_none")]
123 pub secure_access_host: Option<Vec<String>>,
124 #[serde(rename = "secure-access-rd-gateway-server", skip_serializing_if = "Option::is_none")]
126 pub secure_access_rd_gateway_server: Option<String>,
127 #[serde(rename = "secure-access-rdp-domain", skip_serializing_if = "Option::is_none")]
129 pub secure_access_rdp_domain: Option<String>,
130 #[serde(rename = "secure-access-rdp-user", skip_serializing_if = "Option::is_none")]
132 pub secure_access_rdp_user: Option<String>,
133 #[serde(rename = "secure-access-rm-host", skip_serializing_if = "Option::is_none")]
135 pub secure_access_rm_host: Option<Vec<String>>,
136 #[serde(rename = "secure-access-ssh", skip_serializing_if = "Option::is_none")]
138 pub secure_access_ssh: Option<String>,
139 #[serde(rename = "secure-access-ssh-creds", skip_serializing_if = "Option::is_none")]
141 pub secure_access_ssh_creds: Option<String>,
142 #[serde(rename = "secure-access-ssh-creds-user", skip_serializing_if = "Option::is_none")]
144 pub secure_access_ssh_creds_user: Option<String>,
145 #[serde(rename = "secure-access-url", skip_serializing_if = "Option::is_none")]
147 pub secure_access_url: Option<String>,
148 #[serde(rename = "secure-access-use-internal-bastion", skip_serializing_if = "Option::is_none")]
150 pub secure_access_use_internal_bastion: Option<bool>,
151 #[serde(rename = "secure-access-use-internal-ssh-access", skip_serializing_if = "Option::is_none")]
153 pub secure_access_use_internal_ssh_access: Option<bool>,
154 #[serde(rename = "secure-access-web-browsing", skip_serializing_if = "Option::is_none")]
156 pub secure_access_web_browsing: Option<bool>,
157 #[serde(rename = "secure-access-web-proxy", skip_serializing_if = "Option::is_none")]
159 pub secure_access_web_proxy: Option<bool>,
160 #[serde(rename = "token", skip_serializing_if = "Option::is_none")]
162 pub token: Option<String>,
163 #[serde(rename = "uid-token", skip_serializing_if = "Option::is_none")]
165 pub uid_token: Option<String>,
166}
167
168impl UpdateItem {
169 pub fn new(name: String) -> UpdateItem {
170 UpdateItem {
171 provider_type: None,
172 accessibility: None,
173 add_tag: None,
174 cert_file_data: None,
175 certificate_format: None,
176 change_event: None,
177 delete_protection: None,
178 description: None,
179 expiration_event_in: None,
180 gcp_sm_regions: None,
181 host_provider: None,
182 item_custom_fields: None,
183 json: None,
184 max_versions: None,
185 name,
186 new_metadata: None,
187 new_name: None,
188 rm_tag: None,
189 rotate_after_disconnect: None,
190 secure_access_add_host: None,
191 secure_access_allow_external_user: None,
192 secure_access_allow_port_forwading: None,
193 secure_access_api: None,
194 secure_access_aws_account_id: None,
195 secure_access_aws_native_cli: None,
196 secure_access_aws_region: None,
197 secure_access_bastion_api: None,
198 secure_access_bastion_issuer: None,
199 secure_access_bastion_ssh: None,
200 secure_access_certificate_issuer: None,
201 secure_access_cluster_endpoint: None,
202 secure_access_dashboard_url: None,
203 secure_access_db_name: None,
204 secure_access_db_schema: None,
205 secure_access_enable: None,
206 secure_access_gateway: None,
207 secure_access_host: None,
208 secure_access_rd_gateway_server: None,
209 secure_access_rdp_domain: None,
210 secure_access_rdp_user: None,
211 secure_access_rm_host: None,
212 secure_access_ssh: None,
213 secure_access_ssh_creds: None,
214 secure_access_ssh_creds_user: None,
215 secure_access_url: None,
216 secure_access_use_internal_bastion: None,
217 secure_access_use_internal_ssh_access: None,
218 secure_access_web_browsing: None,
219 secure_access_web_proxy: None,
220 token: None,
221 uid_token: None,
222 }
223 }
224}
225