1#[derive(
9 serde::Serialize,
10 serde::Deserialize,
11 Debug,
12 Clone,
13 PartialEq,
14 Eq,
15 jacquard_derive::IntoStatic
16)]
17#[serde(rename_all = "camelCase")]
18pub struct QueryEvents<'a> {
19 #[serde(skip_serializing_if = "std::option::Option::is_none")]
20 #[serde(borrow)]
21 pub added_labels: std::option::Option<Vec<jacquard_common::CowStr<'a>>>,
22 #[serde(skip_serializing_if = "std::option::Option::is_none")]
23 #[serde(borrow)]
24 pub added_tags: std::option::Option<Vec<jacquard_common::CowStr<'a>>>,
25 #[serde(skip_serializing_if = "std::option::Option::is_none")]
26 #[serde(borrow)]
27 pub age_assurance_state: std::option::Option<jacquard_common::CowStr<'a>>,
28 #[serde(skip_serializing_if = "std::option::Option::is_none")]
29 #[serde(borrow)]
30 pub batch_id: std::option::Option<jacquard_common::CowStr<'a>>,
31 #[serde(skip_serializing_if = "std::option::Option::is_none")]
32 #[serde(borrow)]
33 pub collections: std::option::Option<Vec<jacquard_common::types::string::Nsid<'a>>>,
34 #[serde(skip_serializing_if = "std::option::Option::is_none")]
35 #[serde(borrow)]
36 pub comment: std::option::Option<jacquard_common::CowStr<'a>>,
37 #[serde(skip_serializing_if = "std::option::Option::is_none")]
38 pub created_after: std::option::Option<jacquard_common::types::string::Datetime>,
39 #[serde(skip_serializing_if = "std::option::Option::is_none")]
40 pub created_before: std::option::Option<jacquard_common::types::string::Datetime>,
41 #[serde(skip_serializing_if = "std::option::Option::is_none")]
42 #[serde(borrow)]
43 pub created_by: std::option::Option<jacquard_common::types::string::Did<'a>>,
44 #[serde(skip_serializing_if = "std::option::Option::is_none")]
45 #[serde(borrow)]
46 pub cursor: std::option::Option<jacquard_common::CowStr<'a>>,
47 #[serde(skip_serializing_if = "std::option::Option::is_none")]
48 pub has_comment: std::option::Option<bool>,
49 #[serde(skip_serializing_if = "std::option::Option::is_none")]
51 pub include_all_user_records: std::option::Option<bool>,
52 #[serde(skip_serializing_if = "std::option::Option::is_none")]
54 pub limit: std::option::Option<i64>,
55 #[serde(skip_serializing_if = "std::option::Option::is_none")]
56 #[serde(borrow)]
57 pub mod_tool: std::option::Option<Vec<jacquard_common::CowStr<'a>>>,
58 #[serde(skip_serializing_if = "std::option::Option::is_none")]
59 #[serde(borrow)]
60 pub policies: std::option::Option<Vec<jacquard_common::CowStr<'a>>>,
61 #[serde(skip_serializing_if = "std::option::Option::is_none")]
62 #[serde(borrow)]
63 pub removed_labels: std::option::Option<Vec<jacquard_common::CowStr<'a>>>,
64 #[serde(skip_serializing_if = "std::option::Option::is_none")]
65 #[serde(borrow)]
66 pub removed_tags: std::option::Option<Vec<jacquard_common::CowStr<'a>>>,
67 #[serde(skip_serializing_if = "std::option::Option::is_none")]
68 #[serde(borrow)]
69 pub report_types: std::option::Option<Vec<jacquard_common::CowStr<'a>>>,
70 #[serde(skip_serializing_if = "std::option::Option::is_none")]
72 #[serde(borrow)]
73 pub sort_direction: std::option::Option<jacquard_common::CowStr<'a>>,
74 #[serde(skip_serializing_if = "std::option::Option::is_none")]
75 #[serde(borrow)]
76 pub subject: std::option::Option<jacquard_common::types::string::Uri<'a>>,
77 #[serde(skip_serializing_if = "std::option::Option::is_none")]
78 #[serde(borrow)]
79 pub subject_type: std::option::Option<jacquard_common::CowStr<'a>>,
80 #[serde(skip_serializing_if = "std::option::Option::is_none")]
81 #[serde(borrow)]
82 pub types: std::option::Option<Vec<jacquard_common::CowStr<'a>>>,
83 #[serde(skip_serializing_if = "std::option::Option::is_none")]
84 pub with_strike: std::option::Option<bool>,
85}
86
87pub mod query_events_state {
88
89 pub use crate::builder_types::{Set, Unset, IsSet, IsUnset};
90 #[allow(unused)]
91 use ::core::marker::PhantomData;
92 mod sealed {
93 pub trait Sealed {}
94 }
95 pub trait State: sealed::Sealed {}
97 pub struct Empty(());
99 impl sealed::Sealed for Empty {}
100 impl State for Empty {}
101 #[allow(non_camel_case_types)]
103 pub mod members {}
104}
105
106pub struct QueryEventsBuilder<'a, S: query_events_state::State> {
108 _phantom_state: ::core::marker::PhantomData<fn() -> S>,
109 __unsafe_private_named: (
110 ::core::option::Option<Vec<jacquard_common::CowStr<'a>>>,
111 ::core::option::Option<Vec<jacquard_common::CowStr<'a>>>,
112 ::core::option::Option<jacquard_common::CowStr<'a>>,
113 ::core::option::Option<jacquard_common::CowStr<'a>>,
114 ::core::option::Option<Vec<jacquard_common::types::string::Nsid<'a>>>,
115 ::core::option::Option<jacquard_common::CowStr<'a>>,
116 ::core::option::Option<jacquard_common::types::string::Datetime>,
117 ::core::option::Option<jacquard_common::types::string::Datetime>,
118 ::core::option::Option<jacquard_common::types::string::Did<'a>>,
119 ::core::option::Option<jacquard_common::CowStr<'a>>,
120 ::core::option::Option<bool>,
121 ::core::option::Option<bool>,
122 ::core::option::Option<i64>,
123 ::core::option::Option<Vec<jacquard_common::CowStr<'a>>>,
124 ::core::option::Option<Vec<jacquard_common::CowStr<'a>>>,
125 ::core::option::Option<Vec<jacquard_common::CowStr<'a>>>,
126 ::core::option::Option<Vec<jacquard_common::CowStr<'a>>>,
127 ::core::option::Option<Vec<jacquard_common::CowStr<'a>>>,
128 ::core::option::Option<jacquard_common::CowStr<'a>>,
129 ::core::option::Option<jacquard_common::types::string::Uri<'a>>,
130 ::core::option::Option<jacquard_common::CowStr<'a>>,
131 ::core::option::Option<Vec<jacquard_common::CowStr<'a>>>,
132 ::core::option::Option<bool>,
133 ),
134 _phantom: ::core::marker::PhantomData<&'a ()>,
135}
136
137impl<'a> QueryEvents<'a> {
138 pub fn new() -> QueryEventsBuilder<'a, query_events_state::Empty> {
140 QueryEventsBuilder::new()
141 }
142}
143
144impl<'a> QueryEventsBuilder<'a, query_events_state::Empty> {
145 pub fn new() -> Self {
147 QueryEventsBuilder {
148 _phantom_state: ::core::marker::PhantomData,
149 __unsafe_private_named: (
150 None,
151 None,
152 None,
153 None,
154 None,
155 None,
156 None,
157 None,
158 None,
159 None,
160 None,
161 None,
162 None,
163 None,
164 None,
165 None,
166 None,
167 None,
168 None,
169 None,
170 None,
171 None,
172 None,
173 ),
174 _phantom: ::core::marker::PhantomData,
175 }
176 }
177}
178
179impl<'a, S: query_events_state::State> QueryEventsBuilder<'a, S> {
180 pub fn added_labels(
182 mut self,
183 value: impl Into<Option<Vec<jacquard_common::CowStr<'a>>>>,
184 ) -> Self {
185 self.__unsafe_private_named.0 = value.into();
186 self
187 }
188 pub fn maybe_added_labels(
190 mut self,
191 value: Option<Vec<jacquard_common::CowStr<'a>>>,
192 ) -> Self {
193 self.__unsafe_private_named.0 = value;
194 self
195 }
196}
197
198impl<'a, S: query_events_state::State> QueryEventsBuilder<'a, S> {
199 pub fn added_tags(
201 mut self,
202 value: impl Into<Option<Vec<jacquard_common::CowStr<'a>>>>,
203 ) -> Self {
204 self.__unsafe_private_named.1 = value.into();
205 self
206 }
207 pub fn maybe_added_tags(
209 mut self,
210 value: Option<Vec<jacquard_common::CowStr<'a>>>,
211 ) -> Self {
212 self.__unsafe_private_named.1 = value;
213 self
214 }
215}
216
217impl<'a, S: query_events_state::State> QueryEventsBuilder<'a, S> {
218 pub fn age_assurance_state(
220 mut self,
221 value: impl Into<Option<jacquard_common::CowStr<'a>>>,
222 ) -> Self {
223 self.__unsafe_private_named.2 = value.into();
224 self
225 }
226 pub fn maybe_age_assurance_state(
228 mut self,
229 value: Option<jacquard_common::CowStr<'a>>,
230 ) -> Self {
231 self.__unsafe_private_named.2 = value;
232 self
233 }
234}
235
236impl<'a, S: query_events_state::State> QueryEventsBuilder<'a, S> {
237 pub fn batch_id(
239 mut self,
240 value: impl Into<Option<jacquard_common::CowStr<'a>>>,
241 ) -> Self {
242 self.__unsafe_private_named.3 = value.into();
243 self
244 }
245 pub fn maybe_batch_id(mut self, value: Option<jacquard_common::CowStr<'a>>) -> Self {
247 self.__unsafe_private_named.3 = value;
248 self
249 }
250}
251
252impl<'a, S: query_events_state::State> QueryEventsBuilder<'a, S> {
253 pub fn collections(
255 mut self,
256 value: impl Into<Option<Vec<jacquard_common::types::string::Nsid<'a>>>>,
257 ) -> Self {
258 self.__unsafe_private_named.4 = value.into();
259 self
260 }
261 pub fn maybe_collections(
263 mut self,
264 value: Option<Vec<jacquard_common::types::string::Nsid<'a>>>,
265 ) -> Self {
266 self.__unsafe_private_named.4 = value;
267 self
268 }
269}
270
271impl<'a, S: query_events_state::State> QueryEventsBuilder<'a, S> {
272 pub fn comment(
274 mut self,
275 value: impl Into<Option<jacquard_common::CowStr<'a>>>,
276 ) -> Self {
277 self.__unsafe_private_named.5 = value.into();
278 self
279 }
280 pub fn maybe_comment(mut self, value: Option<jacquard_common::CowStr<'a>>) -> Self {
282 self.__unsafe_private_named.5 = value;
283 self
284 }
285}
286
287impl<'a, S: query_events_state::State> QueryEventsBuilder<'a, S> {
288 pub fn created_after(
290 mut self,
291 value: impl Into<Option<jacquard_common::types::string::Datetime>>,
292 ) -> Self {
293 self.__unsafe_private_named.6 = value.into();
294 self
295 }
296 pub fn maybe_created_after(
298 mut self,
299 value: Option<jacquard_common::types::string::Datetime>,
300 ) -> Self {
301 self.__unsafe_private_named.6 = value;
302 self
303 }
304}
305
306impl<'a, S: query_events_state::State> QueryEventsBuilder<'a, S> {
307 pub fn created_before(
309 mut self,
310 value: impl Into<Option<jacquard_common::types::string::Datetime>>,
311 ) -> Self {
312 self.__unsafe_private_named.7 = value.into();
313 self
314 }
315 pub fn maybe_created_before(
317 mut self,
318 value: Option<jacquard_common::types::string::Datetime>,
319 ) -> Self {
320 self.__unsafe_private_named.7 = value;
321 self
322 }
323}
324
325impl<'a, S: query_events_state::State> QueryEventsBuilder<'a, S> {
326 pub fn created_by(
328 mut self,
329 value: impl Into<Option<jacquard_common::types::string::Did<'a>>>,
330 ) -> Self {
331 self.__unsafe_private_named.8 = value.into();
332 self
333 }
334 pub fn maybe_created_by(
336 mut self,
337 value: Option<jacquard_common::types::string::Did<'a>>,
338 ) -> Self {
339 self.__unsafe_private_named.8 = value;
340 self
341 }
342}
343
344impl<'a, S: query_events_state::State> QueryEventsBuilder<'a, S> {
345 pub fn cursor(
347 mut self,
348 value: impl Into<Option<jacquard_common::CowStr<'a>>>,
349 ) -> Self {
350 self.__unsafe_private_named.9 = value.into();
351 self
352 }
353 pub fn maybe_cursor(mut self, value: Option<jacquard_common::CowStr<'a>>) -> Self {
355 self.__unsafe_private_named.9 = value;
356 self
357 }
358}
359
360impl<'a, S: query_events_state::State> QueryEventsBuilder<'a, S> {
361 pub fn has_comment(mut self, value: impl Into<Option<bool>>) -> Self {
363 self.__unsafe_private_named.10 = value.into();
364 self
365 }
366 pub fn maybe_has_comment(mut self, value: Option<bool>) -> Self {
368 self.__unsafe_private_named.10 = value;
369 self
370 }
371}
372
373impl<'a, S: query_events_state::State> QueryEventsBuilder<'a, S> {
374 pub fn include_all_user_records(mut self, value: impl Into<Option<bool>>) -> Self {
376 self.__unsafe_private_named.11 = value.into();
377 self
378 }
379 pub fn maybe_include_all_user_records(mut self, value: Option<bool>) -> Self {
381 self.__unsafe_private_named.11 = value;
382 self
383 }
384}
385
386impl<'a, S: query_events_state::State> QueryEventsBuilder<'a, S> {
387 pub fn limit(mut self, value: impl Into<Option<i64>>) -> Self {
389 self.__unsafe_private_named.12 = value.into();
390 self
391 }
392 pub fn maybe_limit(mut self, value: Option<i64>) -> Self {
394 self.__unsafe_private_named.12 = value;
395 self
396 }
397}
398
399impl<'a, S: query_events_state::State> QueryEventsBuilder<'a, S> {
400 pub fn mod_tool(
402 mut self,
403 value: impl Into<Option<Vec<jacquard_common::CowStr<'a>>>>,
404 ) -> Self {
405 self.__unsafe_private_named.13 = value.into();
406 self
407 }
408 pub fn maybe_mod_tool(
410 mut self,
411 value: Option<Vec<jacquard_common::CowStr<'a>>>,
412 ) -> Self {
413 self.__unsafe_private_named.13 = value;
414 self
415 }
416}
417
418impl<'a, S: query_events_state::State> QueryEventsBuilder<'a, S> {
419 pub fn policies(
421 mut self,
422 value: impl Into<Option<Vec<jacquard_common::CowStr<'a>>>>,
423 ) -> Self {
424 self.__unsafe_private_named.14 = value.into();
425 self
426 }
427 pub fn maybe_policies(
429 mut self,
430 value: Option<Vec<jacquard_common::CowStr<'a>>>,
431 ) -> Self {
432 self.__unsafe_private_named.14 = value;
433 self
434 }
435}
436
437impl<'a, S: query_events_state::State> QueryEventsBuilder<'a, S> {
438 pub fn removed_labels(
440 mut self,
441 value: impl Into<Option<Vec<jacquard_common::CowStr<'a>>>>,
442 ) -> Self {
443 self.__unsafe_private_named.15 = value.into();
444 self
445 }
446 pub fn maybe_removed_labels(
448 mut self,
449 value: Option<Vec<jacquard_common::CowStr<'a>>>,
450 ) -> Self {
451 self.__unsafe_private_named.15 = value;
452 self
453 }
454}
455
456impl<'a, S: query_events_state::State> QueryEventsBuilder<'a, S> {
457 pub fn removed_tags(
459 mut self,
460 value: impl Into<Option<Vec<jacquard_common::CowStr<'a>>>>,
461 ) -> Self {
462 self.__unsafe_private_named.16 = value.into();
463 self
464 }
465 pub fn maybe_removed_tags(
467 mut self,
468 value: Option<Vec<jacquard_common::CowStr<'a>>>,
469 ) -> Self {
470 self.__unsafe_private_named.16 = value;
471 self
472 }
473}
474
475impl<'a, S: query_events_state::State> QueryEventsBuilder<'a, S> {
476 pub fn report_types(
478 mut self,
479 value: impl Into<Option<Vec<jacquard_common::CowStr<'a>>>>,
480 ) -> Self {
481 self.__unsafe_private_named.17 = value.into();
482 self
483 }
484 pub fn maybe_report_types(
486 mut self,
487 value: Option<Vec<jacquard_common::CowStr<'a>>>,
488 ) -> Self {
489 self.__unsafe_private_named.17 = value;
490 self
491 }
492}
493
494impl<'a, S: query_events_state::State> QueryEventsBuilder<'a, S> {
495 pub fn sort_direction(
497 mut self,
498 value: impl Into<Option<jacquard_common::CowStr<'a>>>,
499 ) -> Self {
500 self.__unsafe_private_named.18 = value.into();
501 self
502 }
503 pub fn maybe_sort_direction(
505 mut self,
506 value: Option<jacquard_common::CowStr<'a>>,
507 ) -> Self {
508 self.__unsafe_private_named.18 = value;
509 self
510 }
511}
512
513impl<'a, S: query_events_state::State> QueryEventsBuilder<'a, S> {
514 pub fn subject(
516 mut self,
517 value: impl Into<Option<jacquard_common::types::string::Uri<'a>>>,
518 ) -> Self {
519 self.__unsafe_private_named.19 = value.into();
520 self
521 }
522 pub fn maybe_subject(
524 mut self,
525 value: Option<jacquard_common::types::string::Uri<'a>>,
526 ) -> Self {
527 self.__unsafe_private_named.19 = value;
528 self
529 }
530}
531
532impl<'a, S: query_events_state::State> QueryEventsBuilder<'a, S> {
533 pub fn subject_type(
535 mut self,
536 value: impl Into<Option<jacquard_common::CowStr<'a>>>,
537 ) -> Self {
538 self.__unsafe_private_named.20 = value.into();
539 self
540 }
541 pub fn maybe_subject_type(
543 mut self,
544 value: Option<jacquard_common::CowStr<'a>>,
545 ) -> Self {
546 self.__unsafe_private_named.20 = value;
547 self
548 }
549}
550
551impl<'a, S: query_events_state::State> QueryEventsBuilder<'a, S> {
552 pub fn types(
554 mut self,
555 value: impl Into<Option<Vec<jacquard_common::CowStr<'a>>>>,
556 ) -> Self {
557 self.__unsafe_private_named.21 = value.into();
558 self
559 }
560 pub fn maybe_types(
562 mut self,
563 value: Option<Vec<jacquard_common::CowStr<'a>>>,
564 ) -> Self {
565 self.__unsafe_private_named.21 = value;
566 self
567 }
568}
569
570impl<'a, S: query_events_state::State> QueryEventsBuilder<'a, S> {
571 pub fn with_strike(mut self, value: impl Into<Option<bool>>) -> Self {
573 self.__unsafe_private_named.22 = value.into();
574 self
575 }
576 pub fn maybe_with_strike(mut self, value: Option<bool>) -> Self {
578 self.__unsafe_private_named.22 = value;
579 self
580 }
581}
582
583impl<'a, S> QueryEventsBuilder<'a, S>
584where
585 S: query_events_state::State,
586{
587 pub fn build(self) -> QueryEvents<'a> {
589 QueryEvents {
590 added_labels: self.__unsafe_private_named.0,
591 added_tags: self.__unsafe_private_named.1,
592 age_assurance_state: self.__unsafe_private_named.2,
593 batch_id: self.__unsafe_private_named.3,
594 collections: self.__unsafe_private_named.4,
595 comment: self.__unsafe_private_named.5,
596 created_after: self.__unsafe_private_named.6,
597 created_before: self.__unsafe_private_named.7,
598 created_by: self.__unsafe_private_named.8,
599 cursor: self.__unsafe_private_named.9,
600 has_comment: self.__unsafe_private_named.10,
601 include_all_user_records: self.__unsafe_private_named.11,
602 limit: self.__unsafe_private_named.12,
603 mod_tool: self.__unsafe_private_named.13,
604 policies: self.__unsafe_private_named.14,
605 removed_labels: self.__unsafe_private_named.15,
606 removed_tags: self.__unsafe_private_named.16,
607 report_types: self.__unsafe_private_named.17,
608 sort_direction: self.__unsafe_private_named.18,
609 subject: self.__unsafe_private_named.19,
610 subject_type: self.__unsafe_private_named.20,
611 types: self.__unsafe_private_named.21,
612 with_strike: self.__unsafe_private_named.22,
613 }
614 }
615}
616
617#[jacquard_derive::lexicon]
618#[derive(
619 serde::Serialize,
620 serde::Deserialize,
621 Debug,
622 Clone,
623 PartialEq,
624 Eq,
625 jacquard_derive::IntoStatic
626)]
627#[serde(rename_all = "camelCase")]
628pub struct QueryEventsOutput<'a> {
629 #[serde(skip_serializing_if = "std::option::Option::is_none")]
630 #[serde(borrow)]
631 pub cursor: std::option::Option<jacquard_common::CowStr<'a>>,
632 #[serde(borrow)]
633 pub events: Vec<crate::tools_ozone::moderation::ModEventView<'a>>,
634}
635
636pub struct QueryEventsResponse;
639impl jacquard_common::xrpc::XrpcResp for QueryEventsResponse {
640 const NSID: &'static str = "tools.ozone.moderation.queryEvents";
641 const ENCODING: &'static str = "application/json";
642 type Output<'de> = QueryEventsOutput<'de>;
643 type Err<'de> = jacquard_common::xrpc::GenericError<'de>;
644}
645
646impl<'a> jacquard_common::xrpc::XrpcRequest for QueryEvents<'a> {
647 const NSID: &'static str = "tools.ozone.moderation.queryEvents";
648 const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
649 type Response = QueryEventsResponse;
650}
651
652pub struct QueryEventsRequest;
655impl jacquard_common::xrpc::XrpcEndpoint for QueryEventsRequest {
656 const PATH: &'static str = "/xrpc/tools.ozone.moderation.queryEvents";
657 const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
658 type Request<'de> = QueryEvents<'de>;
659 type Response = QueryEventsResponse;
660}