1use crate::enums::*;
2use chrono::NaiveDate;
3
4#[derive(Debug, Clone, Default)]
6pub struct ListBusinessesOptions {
7 pub page: Option<i64>,
8 pub page_size: Option<i64>,
9}
10
11#[derive(Debug, Clone, Default)]
13pub struct ListCustomersOptions {
14 pub page: Option<i64>,
15 pub page_size: Option<i64>,
16 pub sort: Vec<CustomerSort>,
17 pub email: Option<String>,
18}
19
20#[derive(Debug, Clone, Default)]
22pub struct ListInvoicesOptions {
23 pub page: Option<i64>,
24 pub page_size: Option<i64>,
25 pub sort: Vec<InvoiceSort>,
26 pub status: Option<InvoiceStatus>,
27 pub customer_id: Option<String>,
28 pub currency: Option<CurrencyCode>,
29 pub invoice_date_start: Option<NaiveDate>,
30 pub invoice_date_end: Option<NaiveDate>,
31 pub invoice_number: Option<String>,
32}
33
34#[derive(Debug, Clone, Default)]
36pub struct ListAccountsOptions {
37 pub page: Option<i64>,
38 pub page_size: Option<i64>,
39 pub types: Option<Vec<AccountTypeValue>>,
40 pub subtypes: Option<Vec<AccountSubtypeValue>>,
41 pub is_archived: Option<bool>,
42}
43
44#[derive(Debug, Clone, Default)]
46pub struct ListProductsOptions {
47 pub page: Option<i64>,
48 pub page_size: Option<i64>,
49 pub sort: Vec<ProductSort>,
50 pub is_sold: Option<bool>,
51 pub is_bought: Option<bool>,
52 pub is_archived: Option<bool>,
53}
54
55#[derive(Debug, Clone, Default)]
57pub struct ListVendorsOptions {
58 pub page: Option<i64>,
59 pub page_size: Option<i64>,
60 pub email: Option<String>,
61}
62
63#[derive(Debug, Clone, Default)]
65pub struct ListSalesTaxesOptions {
66 pub page: Option<i64>,
67 pub page_size: Option<i64>,
68 pub is_archived: Option<bool>,
69}