Skip to main content

bitwarden_importers/importers/keeper/proto/
vault.rs

1// This file is @generated by prost-build.
2#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
3pub struct SyncDownRequest {
4    #[prost(bytes = "vec", tag = "1")]
5    pub continuation_token: ::prost::alloc::vec::Vec<u8>,
6    #[prost(int32, tag = "2")]
7    pub data_version: i32,
8}
9#[derive(Clone, PartialEq, ::prost::Message)]
10pub struct SyncDownResponse {
11    #[prost(bytes = "vec", tag = "1")]
12    pub continuation_token: ::prost::alloc::vec::Vec<u8>,
13    #[prost(bool, tag = "2")]
14    pub has_more: bool,
15    #[prost(enumeration = "CacheStatus", tag = "3")]
16    pub cache_status: i32,
17    #[prost(message, repeated, tag = "4")]
18    pub user_folders: ::prost::alloc::vec::Vec<UserFolder>,
19    #[prost(message, repeated, tag = "5")]
20    pub shared_folders: ::prost::alloc::vec::Vec<SharedFolder>,
21    #[prost(message, repeated, tag = "6")]
22    pub user_folder_shared_folders: ::prost::alloc::vec::Vec<UserFolderSharedFolder>,
23    #[prost(message, repeated, tag = "7")]
24    pub shared_folder_folders: ::prost::alloc::vec::Vec<SharedFolderFolder>,
25    #[prost(message, repeated, tag = "8")]
26    pub records: ::prost::alloc::vec::Vec<Record>,
27    #[prost(message, repeated, tag = "9")]
28    pub record_meta_data: ::prost::alloc::vec::Vec<RecordMetaData>,
29    #[prost(message, repeated, tag = "10")]
30    pub non_shared_data: ::prost::alloc::vec::Vec<NonSharedData>,
31    #[prost(message, repeated, tag = "11")]
32    pub record_links: ::prost::alloc::vec::Vec<RecordLink>,
33    #[prost(message, repeated, tag = "12")]
34    pub user_folder_records: ::prost::alloc::vec::Vec<UserFolderRecord>,
35    #[prost(message, repeated, tag = "13")]
36    pub shared_folder_records: ::prost::alloc::vec::Vec<SharedFolderRecord>,
37    #[prost(message, repeated, tag = "14")]
38    pub shared_folder_folder_records: ::prost::alloc::vec::Vec<SharedFolderFolderRecord>,
39    #[prost(message, repeated, tag = "15")]
40    pub shared_folder_users: ::prost::alloc::vec::Vec<SharedFolderUser>,
41    #[prost(message, repeated, tag = "16")]
42    pub shared_folder_teams: ::prost::alloc::vec::Vec<SharedFolderTeam>,
43    #[prost(bytes = "vec", repeated, tag = "17")]
44    pub record_add_audit_data: ::prost::alloc::vec::Vec<::prost::alloc::vec::Vec<u8>>,
45    #[prost(message, repeated, tag = "18")]
46    pub teams: ::prost::alloc::vec::Vec<Team>,
47    #[prost(message, repeated, tag = "19")]
48    pub sharing_changes: ::prost::alloc::vec::Vec<SharingChange>,
49    #[prost(message, optional, tag = "20")]
50    pub profile: ::core::option::Option<Profile>,
51    #[prost(message, optional, tag = "21")]
52    pub profile_pic: ::core::option::Option<ProfilePic>,
53    #[prost(message, repeated, tag = "22")]
54    pub pending_team_members: ::prost::alloc::vec::Vec<PendingTeamMember>,
55    #[prost(message, repeated, tag = "23")]
56    pub breach_watch_records: ::prost::alloc::vec::Vec<BreachWatchRecord>,
57    #[prost(message, repeated, tag = "24")]
58    pub user_auths: ::prost::alloc::vec::Vec<UserAuth>,
59    #[prost(message, repeated, tag = "25")]
60    pub breach_watch_security_data: ::prost::alloc::vec::Vec<BreachWatchSecurityData>,
61    #[prost(message, optional, tag = "26")]
62    pub reused_passwords: ::core::option::Option<ReusedPasswords>,
63    #[prost(bytes = "vec", repeated, tag = "27")]
64    pub removed_user_folders: ::prost::alloc::vec::Vec<::prost::alloc::vec::Vec<u8>>,
65    #[prost(bytes = "vec", repeated, tag = "28")]
66    pub removed_shared_folders: ::prost::alloc::vec::Vec<::prost::alloc::vec::Vec<u8>>,
67    #[prost(message, repeated, tag = "29")]
68    pub removed_user_folder_shared_folders: ::prost::alloc::vec::Vec<UserFolderSharedFolder>,
69    #[prost(message, repeated, tag = "30")]
70    pub removed_shared_folder_folders: ::prost::alloc::vec::Vec<SharedFolderFolder>,
71    #[prost(bytes = "vec", repeated, tag = "31")]
72    pub removed_records: ::prost::alloc::vec::Vec<::prost::alloc::vec::Vec<u8>>,
73    #[prost(message, repeated, tag = "32")]
74    pub removed_record_links: ::prost::alloc::vec::Vec<RecordLink>,
75    #[prost(message, repeated, tag = "33")]
76    pub removed_user_folder_records: ::prost::alloc::vec::Vec<UserFolderRecord>,
77    #[prost(message, repeated, tag = "34")]
78    pub removed_shared_folder_records: ::prost::alloc::vec::Vec<SharedFolderRecord>,
79    #[prost(message, repeated, tag = "35")]
80    pub removed_shared_folder_folder_records: ::prost::alloc::vec::Vec<SharedFolderFolderRecord>,
81    #[prost(message, repeated, tag = "36")]
82    pub removed_shared_folder_users: ::prost::alloc::vec::Vec<SharedFolderUser>,
83    #[prost(message, repeated, tag = "37")]
84    pub removed_shared_folder_teams: ::prost::alloc::vec::Vec<SharedFolderTeam>,
85    #[prost(bytes = "vec", repeated, tag = "38")]
86    pub removed_teams: ::prost::alloc::vec::Vec<::prost::alloc::vec::Vec<u8>>,
87    #[prost(message, repeated, tag = "39")]
88    pub ksm_app_shares: ::prost::alloc::vec::Vec<KsmChange>,
89    #[prost(message, repeated, tag = "40")]
90    pub ksm_app_clients: ::prost::alloc::vec::Vec<KsmChange>,
91    #[prost(message, repeated, tag = "41")]
92    pub share_invitations: ::prost::alloc::vec::Vec<ShareInvitation>,
93    #[prost(message, optional, tag = "42")]
94    pub diagnostics: ::core::option::Option<SyncDiagnostics>,
95    #[prost(message, repeated, tag = "43")]
96    pub record_rotations: ::prost::alloc::vec::Vec<RecordRotation>,
97    #[prost(message, repeated, tag = "44")]
98    pub users: ::prost::alloc::vec::Vec<User>,
99    #[prost(bytes = "vec", repeated, tag = "45")]
100    pub removed_users: ::prost::alloc::vec::Vec<::prost::alloc::vec::Vec<u8>>,
101    #[prost(message, repeated, tag = "46")]
102    pub security_score_data: ::prost::alloc::vec::Vec<SecurityScoreData>,
103    #[prost(message, repeated, tag = "47")]
104    pub notification_sync:
105        ::prost::alloc::vec::Vec<super::notification_center::NotificationWrapper>,
106}
107#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
108pub struct UserFolder {
109    #[prost(bytes = "vec", tag = "1")]
110    pub folder_uid: ::prost::alloc::vec::Vec<u8>,
111    #[prost(bytes = "vec", tag = "2")]
112    pub parent_uid: ::prost::alloc::vec::Vec<u8>,
113    #[prost(bytes = "vec", tag = "3")]
114    pub user_folder_key: ::prost::alloc::vec::Vec<u8>,
115    #[prost(enumeration = "super::records::RecordKeyType", tag = "4")]
116    pub key_type: i32,
117    #[prost(int64, tag = "5")]
118    pub revision: i64,
119    #[prost(bytes = "vec", tag = "6")]
120    pub data: ::prost::alloc::vec::Vec<u8>,
121}
122#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
123pub struct SharedFolder {
124    #[prost(bytes = "vec", tag = "1")]
125    pub shared_folder_uid: ::prost::alloc::vec::Vec<u8>,
126    #[prost(int64, tag = "2")]
127    pub revision: i64,
128    #[prost(bytes = "vec", tag = "3")]
129    pub shared_folder_key: ::prost::alloc::vec::Vec<u8>,
130    #[prost(enumeration = "super::records::RecordKeyType", tag = "4")]
131    pub key_type: i32,
132    #[prost(bytes = "vec", tag = "5")]
133    pub data: ::prost::alloc::vec::Vec<u8>,
134    #[prost(bool, tag = "6")]
135    pub default_manage_records: bool,
136    #[prost(bool, tag = "7")]
137    pub default_manage_users: bool,
138    #[prost(bool, tag = "8")]
139    pub default_can_edit: bool,
140    #[prost(bool, tag = "9")]
141    pub default_can_reshare: bool,
142    #[prost(enumeration = "CacheStatus", tag = "10")]
143    pub cache_status: i32,
144    #[prost(string, tag = "11")]
145    pub owner: ::prost::alloc::string::String,
146    #[prost(bytes = "vec", tag = "12")]
147    pub owner_account_uid: ::prost::alloc::vec::Vec<u8>,
148    #[prost(bytes = "vec", tag = "13")]
149    pub name: ::prost::alloc::vec::Vec<u8>,
150}
151#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
152pub struct UserFolderSharedFolder {
153    #[prost(bytes = "vec", tag = "1")]
154    pub folder_uid: ::prost::alloc::vec::Vec<u8>,
155    #[prost(bytes = "vec", tag = "2")]
156    pub shared_folder_uid: ::prost::alloc::vec::Vec<u8>,
157    #[prost(int64, tag = "3")]
158    pub revision: i64,
159}
160#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
161pub struct SharedFolderFolder {
162    #[prost(bytes = "vec", tag = "1")]
163    pub shared_folder_uid: ::prost::alloc::vec::Vec<u8>,
164    #[prost(bytes = "vec", tag = "2")]
165    pub folder_uid: ::prost::alloc::vec::Vec<u8>,
166    #[prost(bytes = "vec", tag = "3")]
167    pub parent_uid: ::prost::alloc::vec::Vec<u8>,
168    #[prost(bytes = "vec", tag = "4")]
169    pub shared_folder_folder_key: ::prost::alloc::vec::Vec<u8>,
170    #[prost(enumeration = "super::records::RecordKeyType", tag = "5")]
171    pub key_type: i32,
172    #[prost(int64, tag = "6")]
173    pub revision: i64,
174    #[prost(bytes = "vec", tag = "7")]
175    pub data: ::prost::alloc::vec::Vec<u8>,
176}
177#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
178pub struct SharedFolderKey {
179    #[prost(bytes = "vec", tag = "1")]
180    pub shared_folder_uid: ::prost::alloc::vec::Vec<u8>,
181    #[prost(bytes = "vec", tag = "2")]
182    pub shared_folder_key: ::prost::alloc::vec::Vec<u8>,
183    #[prost(enumeration = "super::records::RecordKeyType", tag = "3")]
184    pub key_type: i32,
185}
186#[derive(Clone, PartialEq, ::prost::Message)]
187pub struct Team {
188    #[prost(bytes = "vec", tag = "1")]
189    pub team_uid: ::prost::alloc::vec::Vec<u8>,
190    #[prost(string, tag = "2")]
191    pub name: ::prost::alloc::string::String,
192    #[prost(bytes = "vec", tag = "3")]
193    pub team_key: ::prost::alloc::vec::Vec<u8>,
194    #[prost(enumeration = "super::records::RecordKeyType", tag = "4")]
195    pub team_key_type: i32,
196    #[prost(bytes = "vec", tag = "5")]
197    pub team_private_key: ::prost::alloc::vec::Vec<u8>,
198    #[prost(bool, tag = "6")]
199    pub restrict_edit: bool,
200    #[prost(bool, tag = "7")]
201    pub restrict_share: bool,
202    #[prost(bool, tag = "8")]
203    pub restrict_view: bool,
204    #[prost(bytes = "vec", repeated, tag = "9")]
205    pub removed_shared_folders: ::prost::alloc::vec::Vec<::prost::alloc::vec::Vec<u8>>,
206    #[prost(message, repeated, tag = "10")]
207    pub shared_folder_keys: ::prost::alloc::vec::Vec<SharedFolderKey>,
208    #[prost(bytes = "vec", tag = "11")]
209    pub team_ecc_private_key: ::prost::alloc::vec::Vec<u8>,
210    #[prost(bytes = "vec", tag = "12")]
211    pub team_ecc_public_key: ::prost::alloc::vec::Vec<u8>,
212}
213#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
214pub struct Record {
215    #[prost(bytes = "vec", tag = "1")]
216    pub record_uid: ::prost::alloc::vec::Vec<u8>,
217    #[prost(int64, tag = "2")]
218    pub revision: i64,
219    #[prost(int32, tag = "3")]
220    pub version: i32,
221    #[prost(bool, tag = "4")]
222    pub shared: bool,
223    #[prost(int64, tag = "5")]
224    pub client_modified_time: i64,
225    #[prost(bytes = "vec", tag = "6")]
226    pub data: ::prost::alloc::vec::Vec<u8>,
227    #[prost(bytes = "vec", tag = "7")]
228    pub extra: ::prost::alloc::vec::Vec<u8>,
229    #[prost(string, tag = "8")]
230    pub udata: ::prost::alloc::string::String,
231    #[prost(int64, tag = "9")]
232    pub file_size: i64,
233    #[prost(int64, tag = "10")]
234    pub thumbnail_size: i64,
235}
236#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
237pub struct RecordLink {
238    #[prost(bytes = "vec", tag = "1")]
239    pub parent_record_uid: ::prost::alloc::vec::Vec<u8>,
240    #[prost(bytes = "vec", tag = "2")]
241    pub child_record_uid: ::prost::alloc::vec::Vec<u8>,
242    #[prost(bytes = "vec", tag = "3")]
243    pub record_key: ::prost::alloc::vec::Vec<u8>,
244    #[prost(int64, tag = "4")]
245    pub revision: i64,
246}
247#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
248pub struct UserFolderRecord {
249    #[prost(bytes = "vec", tag = "1")]
250    pub folder_uid: ::prost::alloc::vec::Vec<u8>,
251    #[prost(bytes = "vec", tag = "2")]
252    pub record_uid: ::prost::alloc::vec::Vec<u8>,
253    #[prost(int64, tag = "3")]
254    pub revision: i64,
255}
256#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
257pub struct SharedFolderFolderRecord {
258    #[prost(bytes = "vec", tag = "1")]
259    pub shared_folder_uid: ::prost::alloc::vec::Vec<u8>,
260    #[prost(bytes = "vec", tag = "2")]
261    pub folder_uid: ::prost::alloc::vec::Vec<u8>,
262    #[prost(bytes = "vec", tag = "3")]
263    pub record_uid: ::prost::alloc::vec::Vec<u8>,
264    #[prost(int64, tag = "4")]
265    pub revision: i64,
266}
267#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
268pub struct NonSharedData {
269    #[prost(bytes = "vec", tag = "1")]
270    pub record_uid: ::prost::alloc::vec::Vec<u8>,
271    #[prost(bytes = "vec", tag = "2")]
272    pub data: ::prost::alloc::vec::Vec<u8>,
273}
274#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
275pub struct RecordMetaData {
276    #[prost(bytes = "vec", tag = "1")]
277    pub record_uid: ::prost::alloc::vec::Vec<u8>,
278    #[prost(bool, tag = "2")]
279    pub owner: bool,
280    #[prost(bytes = "vec", tag = "3")]
281    pub record_key: ::prost::alloc::vec::Vec<u8>,
282    #[prost(enumeration = "super::records::RecordKeyType", tag = "4")]
283    pub record_key_type: i32,
284    #[prost(bool, tag = "5")]
285    pub can_share: bool,
286    #[prost(bool, tag = "6")]
287    pub can_edit: bool,
288    #[prost(bytes = "vec", tag = "7")]
289    pub owner_account_uid: ::prost::alloc::vec::Vec<u8>,
290    #[prost(int64, tag = "8")]
291    pub expiration: i64,
292    #[prost(enumeration = "super::records::TimerNotificationType", tag = "9")]
293    pub expiration_notification_type: i32,
294    #[prost(string, tag = "10")]
295    pub owner_username: ::prost::alloc::string::String,
296}
297#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
298pub struct SharingChange {
299    #[prost(bytes = "vec", tag = "1")]
300    pub record_uid: ::prost::alloc::vec::Vec<u8>,
301    #[prost(bool, tag = "2")]
302    pub shared: bool,
303}
304#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
305pub struct Profile {
306    #[prost(bytes = "vec", tag = "1")]
307    pub data: ::prost::alloc::vec::Vec<u8>,
308    #[prost(string, tag = "2")]
309    pub profile_name: ::prost::alloc::string::String,
310    #[prost(int64, tag = "3")]
311    pub revision: i64,
312}
313#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
314pub struct ProfilePic {
315    #[prost(string, tag = "1")]
316    pub url: ::prost::alloc::string::String,
317    #[prost(int64, tag = "2")]
318    pub revision: i64,
319}
320#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
321pub struct PendingTeamMember {
322    #[prost(int64, tag = "1")]
323    pub enterprise_user_id: i64,
324    #[prost(bytes = "vec", tag = "2")]
325    pub user_public_key: ::prost::alloc::vec::Vec<u8>,
326    #[prost(bytes = "vec", repeated, tag = "3")]
327    pub team_uids: ::prost::alloc::vec::Vec<::prost::alloc::vec::Vec<u8>>,
328    #[prost(bytes = "vec", tag = "4")]
329    pub user_ecc_public_key: ::prost::alloc::vec::Vec<u8>,
330}
331#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
332pub struct BreachWatchRecord {
333    #[prost(bytes = "vec", tag = "1")]
334    pub record_uid: ::prost::alloc::vec::Vec<u8>,
335    #[prost(bytes = "vec", tag = "2")]
336    pub data: ::prost::alloc::vec::Vec<u8>,
337    #[prost(enumeration = "super::breach_watch::BreachWatchInfoType", tag = "3")]
338    pub r#type: i32,
339    #[prost(string, tag = "4")]
340    pub scanned_by: ::prost::alloc::string::String,
341    #[prost(int64, tag = "5")]
342    pub revision: i64,
343    #[prost(bytes = "vec", tag = "6")]
344    pub scanned_by_account_uid: ::prost::alloc::vec::Vec<u8>,
345}
346#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
347pub struct UserAuth {
348    #[prost(bytes = "vec", tag = "1")]
349    pub uid: ::prost::alloc::vec::Vec<u8>,
350    #[prost(enumeration = "super::authentication::LoginType", tag = "2")]
351    pub login_type: i32,
352    #[prost(bool, tag = "3")]
353    pub deleted: bool,
354    #[prost(int32, tag = "4")]
355    pub iterations: i32,
356    #[prost(bytes = "vec", tag = "5")]
357    pub salt: ::prost::alloc::vec::Vec<u8>,
358    #[prost(bytes = "vec", tag = "6")]
359    pub encrypted_client_key: ::prost::alloc::vec::Vec<u8>,
360    #[prost(int64, tag = "7")]
361    pub revision: i64,
362    #[prost(string, tag = "8")]
363    pub name: ::prost::alloc::string::String,
364}
365#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
366pub struct BreachWatchSecurityData {
367    #[prost(bytes = "vec", tag = "1")]
368    pub record_uid: ::prost::alloc::vec::Vec<u8>,
369    #[prost(int64, tag = "2")]
370    pub revision: i64,
371}
372#[derive(Clone, Copy, PartialEq, Eq, Hash, ::prost::Message)]
373pub struct ReusedPasswords {
374    #[prost(int32, tag = "1")]
375    pub count: i32,
376    #[prost(int64, tag = "2")]
377    pub revision: i64,
378}
379#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
380pub struct SharedFolderRecord {
381    #[prost(bytes = "vec", tag = "1")]
382    pub shared_folder_uid: ::prost::alloc::vec::Vec<u8>,
383    #[prost(bytes = "vec", tag = "2")]
384    pub record_uid: ::prost::alloc::vec::Vec<u8>,
385    #[prost(bytes = "vec", tag = "3")]
386    pub record_key: ::prost::alloc::vec::Vec<u8>,
387    #[prost(bool, tag = "4")]
388    pub can_share: bool,
389    #[prost(bool, tag = "5")]
390    pub can_edit: bool,
391    #[prost(bytes = "vec", tag = "6")]
392    pub owner_account_uid: ::prost::alloc::vec::Vec<u8>,
393    #[prost(int64, tag = "7")]
394    pub expiration: i64,
395    #[prost(bool, tag = "8")]
396    pub owner: bool,
397    #[prost(enumeration = "super::records::TimerNotificationType", tag = "9")]
398    pub expiration_notification_type: i32,
399    #[prost(string, tag = "10")]
400    pub owner_username: ::prost::alloc::string::String,
401    #[prost(bool, tag = "11")]
402    pub rotate_on_expiration: bool,
403}
404#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
405pub struct SharedFolderUser {
406    #[prost(bytes = "vec", tag = "1")]
407    pub shared_folder_uid: ::prost::alloc::vec::Vec<u8>,
408    #[prost(string, tag = "2")]
409    pub username: ::prost::alloc::string::String,
410    #[prost(bool, tag = "3")]
411    pub manage_records: bool,
412    #[prost(bool, tag = "4")]
413    pub manage_users: bool,
414    #[prost(bytes = "vec", tag = "5")]
415    pub account_uid: ::prost::alloc::vec::Vec<u8>,
416    #[prost(int64, tag = "6")]
417    pub expiration: i64,
418    #[prost(enumeration = "super::records::TimerNotificationType", tag = "7")]
419    pub expiration_notification_type: i32,
420    #[prost(bool, tag = "8")]
421    pub rotate_on_expiration: bool,
422}
423#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
424pub struct SharedFolderTeam {
425    #[prost(bytes = "vec", tag = "1")]
426    pub shared_folder_uid: ::prost::alloc::vec::Vec<u8>,
427    #[prost(bytes = "vec", tag = "2")]
428    pub team_uid: ::prost::alloc::vec::Vec<u8>,
429    #[prost(string, tag = "3")]
430    pub name: ::prost::alloc::string::String,
431    #[prost(bool, tag = "4")]
432    pub manage_records: bool,
433    #[prost(bool, tag = "5")]
434    pub manage_users: bool,
435    #[prost(int64, tag = "6")]
436    pub expiration: i64,
437    #[prost(enumeration = "super::records::TimerNotificationType", tag = "7")]
438    pub expiration_notification_type: i32,
439    #[prost(bool, tag = "8")]
440    pub rotate_on_expiration: bool,
441}
442#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
443pub struct KsmChange {
444    #[prost(bytes = "vec", tag = "1")]
445    pub app_record_uid: ::prost::alloc::vec::Vec<u8>,
446    #[prost(bytes = "vec", tag = "2")]
447    pub detail_id: ::prost::alloc::vec::Vec<u8>,
448    #[prost(bool, tag = "3")]
449    pub removed: bool,
450    #[prost(enumeration = "super::enterprise::AppClientType", tag = "4")]
451    pub app_client_type: i32,
452    #[prost(int64, tag = "5")]
453    pub expiration: i64,
454}
455#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
456pub struct ShareInvitation {
457    #[prost(string, tag = "1")]
458    pub username: ::prost::alloc::string::String,
459}
460#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
461pub struct User {
462    #[prost(bytes = "vec", tag = "1")]
463    pub account_uid: ::prost::alloc::vec::Vec<u8>,
464    #[prost(string, tag = "2")]
465    pub username: ::prost::alloc::string::String,
466}
467#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
468pub struct SyncDiagnostics {
469    #[prost(bytes = "vec", tag = "1")]
470    pub continuation_token: ::prost::alloc::vec::Vec<u8>,
471    #[prost(int32, tag = "2")]
472    pub user_id: i32,
473    #[prost(int64, tag = "3")]
474    pub enterprise_user_id: i64,
475    #[prost(int64, tag = "4")]
476    pub synced_to: i64,
477    #[prost(int64, tag = "5")]
478    pub syncing_to: i64,
479}
480#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
481pub struct RecordRotation {
482    #[prost(bytes = "vec", tag = "1")]
483    pub record_uid: ::prost::alloc::vec::Vec<u8>,
484    #[prost(int64, tag = "2")]
485    pub revision: i64,
486    #[prost(bytes = "vec", tag = "3")]
487    pub configuration_uid: ::prost::alloc::vec::Vec<u8>,
488    #[prost(string, tag = "4")]
489    pub schedule: ::prost::alloc::string::String,
490    #[prost(bytes = "vec", tag = "5")]
491    pub pwd_complexity: ::prost::alloc::vec::Vec<u8>,
492    #[prost(bool, tag = "6")]
493    pub disabled: bool,
494    #[prost(bytes = "vec", tag = "7")]
495    pub resource_uid: ::prost::alloc::vec::Vec<u8>,
496    #[prost(int64, tag = "8")]
497    pub last_rotation: i64,
498    #[prost(enumeration = "RecordRotationStatus", tag = "9")]
499    pub last_rotation_status: i32,
500}
501#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
502pub struct SecurityScoreData {
503    #[prost(bytes = "vec", tag = "1")]
504    pub record_uid: ::prost::alloc::vec::Vec<u8>,
505    #[prost(bytes = "vec", tag = "2")]
506    pub data: ::prost::alloc::vec::Vec<u8>,
507    #[prost(int64, tag = "3")]
508    pub revision: i64,
509}
510#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
511pub struct BreachWatchGetSyncDataRequest {
512    #[prost(bytes = "vec", repeated, tag = "1")]
513    pub record_uids: ::prost::alloc::vec::Vec<::prost::alloc::vec::Vec<u8>>,
514}
515#[derive(Clone, PartialEq, ::prost::Message)]
516pub struct BreachWatchGetSyncDataResponse {
517    #[prost(message, repeated, tag = "1")]
518    pub breach_watch_records: ::prost::alloc::vec::Vec<BreachWatchRecord>,
519    #[prost(message, repeated, tag = "2")]
520    pub breach_watch_security_data: ::prost::alloc::vec::Vec<BreachWatchSecurityData>,
521    #[prost(message, repeated, tag = "3")]
522    pub users: ::prost::alloc::vec::Vec<User>,
523}
524#[derive(Clone, PartialEq, ::prost::Message)]
525pub struct GetAccountUidMapResponse {
526    #[prost(message, repeated, tag = "1")]
527    pub users: ::prost::alloc::vec::Vec<User>,
528}
529#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
530#[repr(i32)]
531pub enum CacheStatus {
532    Keep = 0,
533    Clear = 1,
534}
535impl CacheStatus {
536    /// String value of the enum field names used in the ProtoBuf definition.
537    ///
538    /// The values are not transformed in any way and thus are considered stable
539    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
540    pub fn as_str_name(&self) -> &'static str {
541        match self {
542            Self::Keep => "KEEP",
543            Self::Clear => "CLEAR",
544        }
545    }
546    /// Creates an enum from field names used in the ProtoBuf definition.
547    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
548        match value {
549            "KEEP" => Some(Self::Keep),
550            "CLEAR" => Some(Self::Clear),
551            _ => None,
552        }
553    }
554}
555#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
556#[repr(i32)]
557pub enum RecordRotationStatus {
558    RrstNotRotated = 0,
559    RrstInProgress = 1,
560    RrstSuccess = 2,
561    RrstFailure = 3,
562}
563impl RecordRotationStatus {
564    /// String value of the enum field names used in the ProtoBuf definition.
565    ///
566    /// The values are not transformed in any way and thus are considered stable
567    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
568    pub fn as_str_name(&self) -> &'static str {
569        match self {
570            Self::RrstNotRotated => "RRST_NOT_ROTATED",
571            Self::RrstInProgress => "RRST_IN_PROGRESS",
572            Self::RrstSuccess => "RRST_SUCCESS",
573            Self::RrstFailure => "RRST_FAILURE",
574        }
575    }
576    /// Creates an enum from field names used in the ProtoBuf definition.
577    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
578        match value {
579            "RRST_NOT_ROTATED" => Some(Self::RrstNotRotated),
580            "RRST_IN_PROGRESS" => Some(Self::RrstInProgress),
581            "RRST_SUCCESS" => Some(Self::RrstSuccess),
582            "RRST_FAILURE" => Some(Self::RrstFailure),
583            _ => None,
584        }
585    }
586}