1#[allow(clippy::derive_partial_eq_without_eq)]
2#[derive(Clone, PartialEq, ::prost::Message)]
3pub struct FieldRules {
4 #[prost(message, optional, tag = "17")]
5 pub message: ::core::option::Option<MessageRules>,
6 #[prost(
7 oneof = "field_rules::Type",
8 tags = "1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 18, 19, 20, 21, 22"
9 )]
10 pub r#type: ::core::option::Option<field_rules::Type>,
11}
12pub mod field_rules {
14 #[allow(clippy::derive_partial_eq_without_eq)]
15 #[derive(Clone, PartialEq, ::prost::Oneof)]
16 pub enum Type {
17 #[prost(message, tag = "1")]
18 Float(super::FloatRules),
19 #[prost(message, tag = "2")]
20 Double(super::DoubleRules),
21 #[prost(message, tag = "3")]
22 Int32(super::Int32Rules),
23 #[prost(message, tag = "4")]
24 Int64(super::Int64Rules),
25 #[prost(message, tag = "5")]
26 Uint32(super::UInt32Rules),
27 #[prost(message, tag = "6")]
28 Uint64(super::UInt64Rules),
29 #[prost(message, tag = "7")]
30 Sint32(super::SInt32Rules),
31 #[prost(message, tag = "8")]
32 Sint64(super::SInt64Rules),
33 #[prost(message, tag = "9")]
34 Fixed32(super::Fixed32Rules),
35 #[prost(message, tag = "10")]
36 Fixed64(super::Fixed64Rules),
37 #[prost(message, tag = "11")]
38 Sfixed32(super::SFixed32Rules),
39 #[prost(message, tag = "12")]
40 Sfixed64(super::SFixed64Rules),
41 #[prost(message, tag = "13")]
42 Bool(super::BoolRules),
43 #[prost(message, tag = "14")]
44 String(super::StringRules),
45 #[prost(message, tag = "15")]
46 Bytes(super::BytesRules),
47 #[prost(message, tag = "16")]
48 Enum(super::EnumRules),
49 #[prost(message, tag = "18")]
50 Repeated(::prost::alloc::boxed::Box<super::RepeatedRules>),
51 #[prost(message, tag = "19")]
52 Map(::prost::alloc::boxed::Box<super::MapRules>),
53 #[prost(message, tag = "20")]
54 Any(super::AnyRules),
55 #[prost(message, tag = "21")]
56 Duration(super::DurationRules),
57 #[prost(message, tag = "22")]
58 Timestamp(super::TimestampRules),
59 }
60}
61#[allow(clippy::derive_partial_eq_without_eq)]
62#[derive(Clone, PartialEq, ::prost::Message)]
63pub struct FloatRules {
64 #[prost(float, optional, tag = "1")]
65 pub r#const: ::core::option::Option<f32>,
66 #[prost(float, optional, tag = "2")]
67 pub lt: ::core::option::Option<f32>,
68 #[prost(float, optional, tag = "3")]
69 pub lte: ::core::option::Option<f32>,
70 #[prost(float, optional, tag = "4")]
71 pub gt: ::core::option::Option<f32>,
72 #[prost(float, optional, tag = "5")]
73 pub gte: ::core::option::Option<f32>,
74 #[prost(float, repeated, packed = "false", tag = "6")]
75 pub r#in: ::prost::alloc::vec::Vec<f32>,
76 #[prost(float, repeated, packed = "false", tag = "7")]
77 pub not_in: ::prost::alloc::vec::Vec<f32>,
78 #[prost(bool, optional, tag = "8")]
79 pub ignore_empty: ::core::option::Option<bool>,
80}
81#[allow(clippy::derive_partial_eq_without_eq)]
82#[derive(Clone, PartialEq, ::prost::Message)]
83pub struct DoubleRules {
84 #[prost(double, optional, tag = "1")]
85 pub r#const: ::core::option::Option<f64>,
86 #[prost(double, optional, tag = "2")]
87 pub lt: ::core::option::Option<f64>,
88 #[prost(double, optional, tag = "3")]
89 pub lte: ::core::option::Option<f64>,
90 #[prost(double, optional, tag = "4")]
91 pub gt: ::core::option::Option<f64>,
92 #[prost(double, optional, tag = "5")]
93 pub gte: ::core::option::Option<f64>,
94 #[prost(double, repeated, packed = "false", tag = "6")]
95 pub r#in: ::prost::alloc::vec::Vec<f64>,
96 #[prost(double, repeated, packed = "false", tag = "7")]
97 pub not_in: ::prost::alloc::vec::Vec<f64>,
98 #[prost(bool, optional, tag = "8")]
99 pub ignore_empty: ::core::option::Option<bool>,
100}
101#[allow(clippy::derive_partial_eq_without_eq)]
102#[derive(Clone, PartialEq, ::prost::Message)]
103pub struct Int32Rules {
104 #[prost(int32, optional, tag = "1")]
105 pub r#const: ::core::option::Option<i32>,
106 #[prost(int32, optional, tag = "2")]
107 pub lt: ::core::option::Option<i32>,
108 #[prost(int32, optional, tag = "3")]
109 pub lte: ::core::option::Option<i32>,
110 #[prost(int32, optional, tag = "4")]
111 pub gt: ::core::option::Option<i32>,
112 #[prost(int32, optional, tag = "5")]
113 pub gte: ::core::option::Option<i32>,
114 #[prost(int32, repeated, packed = "false", tag = "6")]
115 pub r#in: ::prost::alloc::vec::Vec<i32>,
116 #[prost(int32, repeated, packed = "false", tag = "7")]
117 pub not_in: ::prost::alloc::vec::Vec<i32>,
118 #[prost(bool, optional, tag = "8")]
119 pub ignore_empty: ::core::option::Option<bool>,
120}
121#[allow(clippy::derive_partial_eq_without_eq)]
122#[derive(Clone, PartialEq, ::prost::Message)]
123pub struct Int64Rules {
124 #[prost(int64, optional, tag = "1")]
125 pub r#const: ::core::option::Option<i64>,
126 #[prost(int64, optional, tag = "2")]
127 pub lt: ::core::option::Option<i64>,
128 #[prost(int64, optional, tag = "3")]
129 pub lte: ::core::option::Option<i64>,
130 #[prost(int64, optional, tag = "4")]
131 pub gt: ::core::option::Option<i64>,
132 #[prost(int64, optional, tag = "5")]
133 pub gte: ::core::option::Option<i64>,
134 #[prost(int64, repeated, packed = "false", tag = "6")]
135 pub r#in: ::prost::alloc::vec::Vec<i64>,
136 #[prost(int64, repeated, packed = "false", tag = "7")]
137 pub not_in: ::prost::alloc::vec::Vec<i64>,
138 #[prost(bool, optional, tag = "8")]
139 pub ignore_empty: ::core::option::Option<bool>,
140}
141#[allow(clippy::derive_partial_eq_without_eq)]
142#[derive(Clone, PartialEq, ::prost::Message)]
143pub struct UInt32Rules {
144 #[prost(uint32, optional, tag = "1")]
145 pub r#const: ::core::option::Option<u32>,
146 #[prost(uint32, optional, tag = "2")]
147 pub lt: ::core::option::Option<u32>,
148 #[prost(uint32, optional, tag = "3")]
149 pub lte: ::core::option::Option<u32>,
150 #[prost(uint32, optional, tag = "4")]
151 pub gt: ::core::option::Option<u32>,
152 #[prost(uint32, optional, tag = "5")]
153 pub gte: ::core::option::Option<u32>,
154 #[prost(uint32, repeated, packed = "false", tag = "6")]
155 pub r#in: ::prost::alloc::vec::Vec<u32>,
156 #[prost(uint32, repeated, packed = "false", tag = "7")]
157 pub not_in: ::prost::alloc::vec::Vec<u32>,
158 #[prost(bool, optional, tag = "8")]
159 pub ignore_empty: ::core::option::Option<bool>,
160}
161#[allow(clippy::derive_partial_eq_without_eq)]
162#[derive(Clone, PartialEq, ::prost::Message)]
163pub struct UInt64Rules {
164 #[prost(uint64, optional, tag = "1")]
165 pub r#const: ::core::option::Option<u64>,
166 #[prost(uint64, optional, tag = "2")]
167 pub lt: ::core::option::Option<u64>,
168 #[prost(uint64, optional, tag = "3")]
169 pub lte: ::core::option::Option<u64>,
170 #[prost(uint64, optional, tag = "4")]
171 pub gt: ::core::option::Option<u64>,
172 #[prost(uint64, optional, tag = "5")]
173 pub gte: ::core::option::Option<u64>,
174 #[prost(uint64, repeated, packed = "false", tag = "6")]
175 pub r#in: ::prost::alloc::vec::Vec<u64>,
176 #[prost(uint64, repeated, packed = "false", tag = "7")]
177 pub not_in: ::prost::alloc::vec::Vec<u64>,
178 #[prost(bool, optional, tag = "8")]
179 pub ignore_empty: ::core::option::Option<bool>,
180}
181#[allow(clippy::derive_partial_eq_without_eq)]
182#[derive(Clone, PartialEq, ::prost::Message)]
183pub struct SInt32Rules {
184 #[prost(sint32, optional, tag = "1")]
185 pub r#const: ::core::option::Option<i32>,
186 #[prost(sint32, optional, tag = "2")]
187 pub lt: ::core::option::Option<i32>,
188 #[prost(sint32, optional, tag = "3")]
189 pub lte: ::core::option::Option<i32>,
190 #[prost(sint32, optional, tag = "4")]
191 pub gt: ::core::option::Option<i32>,
192 #[prost(sint32, optional, tag = "5")]
193 pub gte: ::core::option::Option<i32>,
194 #[prost(sint32, repeated, packed = "false", tag = "6")]
195 pub r#in: ::prost::alloc::vec::Vec<i32>,
196 #[prost(sint32, repeated, packed = "false", tag = "7")]
197 pub not_in: ::prost::alloc::vec::Vec<i32>,
198 #[prost(bool, optional, tag = "8")]
199 pub ignore_empty: ::core::option::Option<bool>,
200}
201#[allow(clippy::derive_partial_eq_without_eq)]
202#[derive(Clone, PartialEq, ::prost::Message)]
203pub struct SInt64Rules {
204 #[prost(sint64, optional, tag = "1")]
205 pub r#const: ::core::option::Option<i64>,
206 #[prost(sint64, optional, tag = "2")]
207 pub lt: ::core::option::Option<i64>,
208 #[prost(sint64, optional, tag = "3")]
209 pub lte: ::core::option::Option<i64>,
210 #[prost(sint64, optional, tag = "4")]
211 pub gt: ::core::option::Option<i64>,
212 #[prost(sint64, optional, tag = "5")]
213 pub gte: ::core::option::Option<i64>,
214 #[prost(sint64, repeated, packed = "false", tag = "6")]
215 pub r#in: ::prost::alloc::vec::Vec<i64>,
216 #[prost(sint64, repeated, packed = "false", tag = "7")]
217 pub not_in: ::prost::alloc::vec::Vec<i64>,
218 #[prost(bool, optional, tag = "8")]
219 pub ignore_empty: ::core::option::Option<bool>,
220}
221#[allow(clippy::derive_partial_eq_without_eq)]
222#[derive(Clone, PartialEq, ::prost::Message)]
223pub struct Fixed32Rules {
224 #[prost(fixed32, optional, tag = "1")]
225 pub r#const: ::core::option::Option<u32>,
226 #[prost(fixed32, optional, tag = "2")]
227 pub lt: ::core::option::Option<u32>,
228 #[prost(fixed32, optional, tag = "3")]
229 pub lte: ::core::option::Option<u32>,
230 #[prost(fixed32, optional, tag = "4")]
231 pub gt: ::core::option::Option<u32>,
232 #[prost(fixed32, optional, tag = "5")]
233 pub gte: ::core::option::Option<u32>,
234 #[prost(fixed32, repeated, packed = "false", tag = "6")]
235 pub r#in: ::prost::alloc::vec::Vec<u32>,
236 #[prost(fixed32, repeated, packed = "false", tag = "7")]
237 pub not_in: ::prost::alloc::vec::Vec<u32>,
238 #[prost(bool, optional, tag = "8")]
239 pub ignore_empty: ::core::option::Option<bool>,
240}
241#[allow(clippy::derive_partial_eq_without_eq)]
242#[derive(Clone, PartialEq, ::prost::Message)]
243pub struct Fixed64Rules {
244 #[prost(fixed64, optional, tag = "1")]
245 pub r#const: ::core::option::Option<u64>,
246 #[prost(fixed64, optional, tag = "2")]
247 pub lt: ::core::option::Option<u64>,
248 #[prost(fixed64, optional, tag = "3")]
249 pub lte: ::core::option::Option<u64>,
250 #[prost(fixed64, optional, tag = "4")]
251 pub gt: ::core::option::Option<u64>,
252 #[prost(fixed64, optional, tag = "5")]
253 pub gte: ::core::option::Option<u64>,
254 #[prost(fixed64, repeated, packed = "false", tag = "6")]
255 pub r#in: ::prost::alloc::vec::Vec<u64>,
256 #[prost(fixed64, repeated, packed = "false", tag = "7")]
257 pub not_in: ::prost::alloc::vec::Vec<u64>,
258 #[prost(bool, optional, tag = "8")]
259 pub ignore_empty: ::core::option::Option<bool>,
260}
261#[allow(clippy::derive_partial_eq_without_eq)]
262#[derive(Clone, PartialEq, ::prost::Message)]
263pub struct SFixed32Rules {
264 #[prost(sfixed32, optional, tag = "1")]
265 pub r#const: ::core::option::Option<i32>,
266 #[prost(sfixed32, optional, tag = "2")]
267 pub lt: ::core::option::Option<i32>,
268 #[prost(sfixed32, optional, tag = "3")]
269 pub lte: ::core::option::Option<i32>,
270 #[prost(sfixed32, optional, tag = "4")]
271 pub gt: ::core::option::Option<i32>,
272 #[prost(sfixed32, optional, tag = "5")]
273 pub gte: ::core::option::Option<i32>,
274 #[prost(sfixed32, repeated, packed = "false", tag = "6")]
275 pub r#in: ::prost::alloc::vec::Vec<i32>,
276 #[prost(sfixed32, repeated, packed = "false", tag = "7")]
277 pub not_in: ::prost::alloc::vec::Vec<i32>,
278 #[prost(bool, optional, tag = "8")]
279 pub ignore_empty: ::core::option::Option<bool>,
280}
281#[allow(clippy::derive_partial_eq_without_eq)]
282#[derive(Clone, PartialEq, ::prost::Message)]
283pub struct SFixed64Rules {
284 #[prost(sfixed64, optional, tag = "1")]
285 pub r#const: ::core::option::Option<i64>,
286 #[prost(sfixed64, optional, tag = "2")]
287 pub lt: ::core::option::Option<i64>,
288 #[prost(sfixed64, optional, tag = "3")]
289 pub lte: ::core::option::Option<i64>,
290 #[prost(sfixed64, optional, tag = "4")]
291 pub gt: ::core::option::Option<i64>,
292 #[prost(sfixed64, optional, tag = "5")]
293 pub gte: ::core::option::Option<i64>,
294 #[prost(sfixed64, repeated, packed = "false", tag = "6")]
295 pub r#in: ::prost::alloc::vec::Vec<i64>,
296 #[prost(sfixed64, repeated, packed = "false", tag = "7")]
297 pub not_in: ::prost::alloc::vec::Vec<i64>,
298 #[prost(bool, optional, tag = "8")]
299 pub ignore_empty: ::core::option::Option<bool>,
300}
301#[allow(clippy::derive_partial_eq_without_eq)]
302#[derive(Clone, PartialEq, ::prost::Message)]
303pub struct BoolRules {
304 #[prost(bool, optional, tag = "1")]
305 pub r#const: ::core::option::Option<bool>,
306}
307#[allow(clippy::derive_partial_eq_without_eq)]
308#[derive(Clone, PartialEq, ::prost::Message)]
309pub struct StringRules {
310 #[prost(string, optional, tag = "1")]
311 pub r#const: ::core::option::Option<::prost::alloc::string::String>,
312 #[prost(uint64, optional, tag = "19")]
313 pub len: ::core::option::Option<u64>,
314 #[prost(uint64, optional, tag = "2")]
315 pub min_len: ::core::option::Option<u64>,
316 #[prost(uint64, optional, tag = "3")]
317 pub max_len: ::core::option::Option<u64>,
318 #[prost(uint64, optional, tag = "20")]
319 pub len_bytes: ::core::option::Option<u64>,
320 #[prost(uint64, optional, tag = "4")]
321 pub min_bytes: ::core::option::Option<u64>,
322 #[prost(uint64, optional, tag = "5")]
323 pub max_bytes: ::core::option::Option<u64>,
324 #[prost(string, optional, tag = "6")]
325 pub pattern: ::core::option::Option<::prost::alloc::string::String>,
326 #[prost(string, optional, tag = "7")]
327 pub prefix: ::core::option::Option<::prost::alloc::string::String>,
328 #[prost(string, optional, tag = "8")]
329 pub suffix: ::core::option::Option<::prost::alloc::string::String>,
330 #[prost(string, optional, tag = "9")]
331 pub contains: ::core::option::Option<::prost::alloc::string::String>,
332 #[prost(string, optional, tag = "23")]
333 pub not_contains: ::core::option::Option<::prost::alloc::string::String>,
334 #[prost(string, repeated, tag = "10")]
335 pub r#in: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
336 #[prost(string, repeated, tag = "11")]
337 pub not_in: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
338 #[prost(bool, optional, tag = "25", default = "true")]
339 pub strict: ::core::option::Option<bool>,
340 #[prost(bool, optional, tag = "26")]
341 pub ignore_empty: ::core::option::Option<bool>,
342 #[prost(
343 oneof = "string_rules::WellKnown",
344 tags = "12, 13, 14, 15, 16, 17, 18, 21, 22, 24"
345 )]
346 pub well_known: ::core::option::Option<string_rules::WellKnown>,
347}
348pub mod string_rules {
350 #[allow(clippy::derive_partial_eq_without_eq)]
351 #[derive(Clone, PartialEq, ::prost::Oneof)]
352 pub enum WellKnown {
353 #[prost(bool, tag = "12")]
354 Email(bool),
355 #[prost(bool, tag = "13")]
356 Hostname(bool),
357 #[prost(bool, tag = "14")]
358 Ip(bool),
359 #[prost(bool, tag = "15")]
360 Ipv4(bool),
361 #[prost(bool, tag = "16")]
362 Ipv6(bool),
363 #[prost(bool, tag = "17")]
364 Uri(bool),
365 #[prost(bool, tag = "18")]
366 UriRef(bool),
367 #[prost(bool, tag = "21")]
368 Address(bool),
369 #[prost(bool, tag = "22")]
370 Uuid(bool),
371 #[prost(enumeration = "super::KnownRegex", tag = "24")]
372 WellKnownRegex(i32),
373 }
374}
375#[allow(clippy::derive_partial_eq_without_eq)]
376#[derive(Clone, PartialEq, ::prost::Message)]
377pub struct BytesRules {
378 #[prost(bytes = "vec", optional, tag = "1")]
379 pub r#const: ::core::option::Option<::prost::alloc::vec::Vec<u8>>,
380 #[prost(uint64, optional, tag = "13")]
381 pub len: ::core::option::Option<u64>,
382 #[prost(uint64, optional, tag = "2")]
383 pub min_len: ::core::option::Option<u64>,
384 #[prost(uint64, optional, tag = "3")]
385 pub max_len: ::core::option::Option<u64>,
386 #[prost(string, optional, tag = "4")]
387 pub pattern: ::core::option::Option<::prost::alloc::string::String>,
388 #[prost(bytes = "vec", optional, tag = "5")]
389 pub prefix: ::core::option::Option<::prost::alloc::vec::Vec<u8>>,
390 #[prost(bytes = "vec", optional, tag = "6")]
391 pub suffix: ::core::option::Option<::prost::alloc::vec::Vec<u8>>,
392 #[prost(bytes = "vec", optional, tag = "7")]
393 pub contains: ::core::option::Option<::prost::alloc::vec::Vec<u8>>,
394 #[prost(bytes = "vec", repeated, tag = "8")]
395 pub r#in: ::prost::alloc::vec::Vec<::prost::alloc::vec::Vec<u8>>,
396 #[prost(bytes = "vec", repeated, tag = "9")]
397 pub not_in: ::prost::alloc::vec::Vec<::prost::alloc::vec::Vec<u8>>,
398 #[prost(bool, optional, tag = "14")]
399 pub ignore_empty: ::core::option::Option<bool>,
400 #[prost(oneof = "bytes_rules::WellKnown", tags = "10, 11, 12")]
401 pub well_known: ::core::option::Option<bytes_rules::WellKnown>,
402}
403pub mod bytes_rules {
405 #[allow(clippy::derive_partial_eq_without_eq)]
406 #[derive(Clone, PartialEq, ::prost::Oneof)]
407 pub enum WellKnown {
408 #[prost(bool, tag = "10")]
409 Ip(bool),
410 #[prost(bool, tag = "11")]
411 Ipv4(bool),
412 #[prost(bool, tag = "12")]
413 Ipv6(bool),
414 }
415}
416#[allow(clippy::derive_partial_eq_without_eq)]
417#[derive(Clone, PartialEq, ::prost::Message)]
418pub struct EnumRules {
419 #[prost(int32, optional, tag = "1")]
420 pub r#const: ::core::option::Option<i32>,
421 #[prost(bool, optional, tag = "2")]
422 pub defined_only: ::core::option::Option<bool>,
423 #[prost(int32, repeated, packed = "false", tag = "3")]
424 pub r#in: ::prost::alloc::vec::Vec<i32>,
425 #[prost(int32, repeated, packed = "false", tag = "4")]
426 pub not_in: ::prost::alloc::vec::Vec<i32>,
427}
428#[allow(clippy::derive_partial_eq_without_eq)]
429#[derive(Clone, PartialEq, ::prost::Message)]
430pub struct MessageRules {
431 #[prost(bool, optional, tag = "1")]
432 pub skip: ::core::option::Option<bool>,
433 #[prost(bool, optional, tag = "2")]
434 pub required: ::core::option::Option<bool>,
435}
436#[allow(clippy::derive_partial_eq_without_eq)]
437#[derive(Clone, PartialEq, ::prost::Message)]
438pub struct RepeatedRules {
439 #[prost(uint64, optional, tag = "1")]
440 pub min_items: ::core::option::Option<u64>,
441 #[prost(uint64, optional, tag = "2")]
442 pub max_items: ::core::option::Option<u64>,
443 #[prost(bool, optional, tag = "3")]
444 pub unique: ::core::option::Option<bool>,
445 #[prost(message, optional, boxed, tag = "4")]
446 pub items: ::core::option::Option<::prost::alloc::boxed::Box<FieldRules>>,
447 #[prost(bool, optional, tag = "5")]
448 pub ignore_empty: ::core::option::Option<bool>,
449}
450#[allow(clippy::derive_partial_eq_without_eq)]
451#[derive(Clone, PartialEq, ::prost::Message)]
452pub struct MapRules {
453 #[prost(uint64, optional, tag = "1")]
454 pub min_pairs: ::core::option::Option<u64>,
455 #[prost(uint64, optional, tag = "2")]
456 pub max_pairs: ::core::option::Option<u64>,
457 #[prost(bool, optional, tag = "3")]
458 pub no_sparse: ::core::option::Option<bool>,
459 #[prost(message, optional, boxed, tag = "4")]
460 pub keys: ::core::option::Option<::prost::alloc::boxed::Box<FieldRules>>,
461 #[prost(message, optional, boxed, tag = "5")]
462 pub values: ::core::option::Option<::prost::alloc::boxed::Box<FieldRules>>,
463 #[prost(bool, optional, tag = "6")]
464 pub ignore_empty: ::core::option::Option<bool>,
465}
466#[allow(clippy::derive_partial_eq_without_eq)]
467#[derive(Clone, PartialEq, ::prost::Message)]
468pub struct AnyRules {
469 #[prost(bool, optional, tag = "1")]
470 pub required: ::core::option::Option<bool>,
471 #[prost(string, repeated, tag = "2")]
472 pub r#in: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
473 #[prost(string, repeated, tag = "3")]
474 pub not_in: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
475}
476#[allow(clippy::derive_partial_eq_without_eq)]
477#[derive(Clone, PartialEq, ::prost::Message)]
478pub struct DurationRules {
479 #[prost(bool, optional, tag = "1")]
480 pub required: ::core::option::Option<bool>,
481 #[prost(message, optional, tag = "2")]
482 pub r#const: ::core::option::Option<::prost_types::Duration>,
483 #[prost(message, optional, tag = "3")]
484 pub lt: ::core::option::Option<::prost_types::Duration>,
485 #[prost(message, optional, tag = "4")]
486 pub lte: ::core::option::Option<::prost_types::Duration>,
487 #[prost(message, optional, tag = "5")]
488 pub gt: ::core::option::Option<::prost_types::Duration>,
489 #[prost(message, optional, tag = "6")]
490 pub gte: ::core::option::Option<::prost_types::Duration>,
491 #[prost(message, repeated, tag = "7")]
492 pub r#in: ::prost::alloc::vec::Vec<::prost_types::Duration>,
493 #[prost(message, repeated, tag = "8")]
494 pub not_in: ::prost::alloc::vec::Vec<::prost_types::Duration>,
495}
496#[allow(clippy::derive_partial_eq_without_eq)]
497#[derive(Clone, PartialEq, ::prost::Message)]
498pub struct TimestampRules {
499 #[prost(bool, optional, tag = "1")]
500 pub required: ::core::option::Option<bool>,
501 #[prost(message, optional, tag = "2")]
502 pub r#const: ::core::option::Option<::prost_types::Timestamp>,
503 #[prost(message, optional, tag = "3")]
504 pub lt: ::core::option::Option<::prost_types::Timestamp>,
505 #[prost(message, optional, tag = "4")]
506 pub lte: ::core::option::Option<::prost_types::Timestamp>,
507 #[prost(message, optional, tag = "5")]
508 pub gt: ::core::option::Option<::prost_types::Timestamp>,
509 #[prost(message, optional, tag = "6")]
510 pub gte: ::core::option::Option<::prost_types::Timestamp>,
511 #[prost(bool, optional, tag = "7")]
512 pub lt_now: ::core::option::Option<bool>,
513 #[prost(bool, optional, tag = "8")]
514 pub gt_now: ::core::option::Option<bool>,
515 #[prost(message, optional, tag = "9")]
516 pub within: ::core::option::Option<::prost_types::Duration>,
517}
518#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
519#[repr(i32)]
520pub enum KnownRegex {
521 Unknown = 0,
522 HttpHeaderName = 1,
523 HttpHeaderValue = 2,
524}
525impl KnownRegex {
526 pub fn as_str_name(&self) -> &'static str {
531 match self {
532 KnownRegex::Unknown => "UNKNOWN",
533 KnownRegex::HttpHeaderName => "HTTP_HEADER_NAME",
534 KnownRegex::HttpHeaderValue => "HTTP_HEADER_VALUE",
535 }
536 }
537 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
539 match value {
540 "UNKNOWN" => Some(Self::Unknown),
541 "HTTP_HEADER_NAME" => Some(Self::HttpHeaderName),
542 "HTTP_HEADER_VALUE" => Some(Self::HttpHeaderValue),
543 _ => None,
544 }
545 }
546}