trieve_client/models/
search_over_groups_req_payload.rs1use crate::models;
12
13#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
14pub struct SearchOverGroupsReqPayload {
15 #[serde(rename = "filters", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
16 pub filters: Option<Option<Box<models::ChunkFilter>>>,
17 #[serde(rename = "get_total_pages", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
19 pub get_total_pages: Option<Option<bool>>,
20 #[serde(rename = "group_size", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
22 pub group_size: Option<Option<i32>>,
23 #[serde(rename = "highlight_options", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
24 pub highlight_options: Option<Option<Box<models::HighlightOptions>>>,
25 #[serde(rename = "page", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
27 pub page: Option<Option<i64>>,
28 #[serde(rename = "page_size", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
30 pub page_size: Option<Option<i64>>,
31 #[serde(rename = "query")]
32 pub query: Box<models::QueryTypes>,
33 #[serde(rename = "remove_stop_words", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
35 pub remove_stop_words: Option<Option<bool>>,
36 #[serde(rename = "score_threshold", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
38 pub score_threshold: Option<Option<f32>>,
39 #[serde(rename = "search_type")]
40 pub search_type: models::SearchMethod,
41 #[serde(rename = "slim_chunks", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
43 pub slim_chunks: Option<Option<bool>>,
44 #[serde(rename = "use_quote_negated_terms", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
46 pub use_quote_negated_terms: Option<Option<bool>>,
47 #[serde(rename = "user_id", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
49 pub user_id: Option<Option<String>>,
50}
51
52impl SearchOverGroupsReqPayload {
53 pub fn new(query: models::QueryTypes, search_type: models::SearchMethod) -> SearchOverGroupsReqPayload {
54 SearchOverGroupsReqPayload {
55 filters: None,
56 get_total_pages: None,
57 group_size: None,
58 highlight_options: None,
59 page: None,
60 page_size: None,
61 query: Box::new(query),
62 remove_stop_words: None,
63 score_threshold: None,
64 search_type,
65 slim_chunks: None,
66 use_quote_negated_terms: None,
67 user_id: None,
68 }
69 }
70}
71