lark-billing 0.5.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (81) hide show
  1. lark/__init__.py +92 -0
  2. lark/_base_client.py +1995 -0
  3. lark/_client.py +459 -0
  4. lark/_compat.py +219 -0
  5. lark/_constants.py +14 -0
  6. lark/_exceptions.py +108 -0
  7. lark/_files.py +123 -0
  8. lark/_models.py +857 -0
  9. lark/_qs.py +150 -0
  10. lark/_resource.py +43 -0
  11. lark/_response.py +830 -0
  12. lark/_streaming.py +333 -0
  13. lark/_types.py +261 -0
  14. lark/_utils/__init__.py +64 -0
  15. lark/_utils/_compat.py +45 -0
  16. lark/_utils/_datetime_parse.py +136 -0
  17. lark/_utils/_logs.py +25 -0
  18. lark/_utils/_proxy.py +65 -0
  19. lark/_utils/_reflection.py +42 -0
  20. lark/_utils/_resources_proxy.py +24 -0
  21. lark/_utils/_streams.py +12 -0
  22. lark/_utils/_sync.py +58 -0
  23. lark/_utils/_transform.py +457 -0
  24. lark/_utils/_typing.py +156 -0
  25. lark/_utils/_utils.py +421 -0
  26. lark/_version.py +4 -0
  27. lark/lib/.keep +4 -0
  28. lark/py.typed +0 -0
  29. lark/resources/__init__.py +117 -0
  30. lark/resources/customer_access.py +167 -0
  31. lark/resources/customer_portal.py +187 -0
  32. lark/resources/invoices.py +191 -0
  33. lark/resources/pricing_metrics.py +499 -0
  34. lark/resources/rate_cards.py +395 -0
  35. lark/resources/subjects.py +579 -0
  36. lark/resources/subscriptions.py +647 -0
  37. lark/resources/usage_events.py +221 -0
  38. lark/types/__init__.py +53 -0
  39. lark/types/amount_input_param.py +16 -0
  40. lark/types/amount_output.py +13 -0
  41. lark/types/checkout_callback_param.py +15 -0
  42. lark/types/customer_access_retrieve_billing_state_response.py +40 -0
  43. lark/types/customer_portal_create_session_params.py +18 -0
  44. lark/types/customer_portal_create_session_response.py +18 -0
  45. lark/types/flat_price_input_param.py +17 -0
  46. lark/types/flat_price_output.py +17 -0
  47. lark/types/invoice_list_params.py +16 -0
  48. lark/types/invoice_list_response.py +49 -0
  49. lark/types/package_price_input_param.py +24 -0
  50. lark/types/package_price_output.py +24 -0
  51. lark/types/period.py +18 -0
  52. lark/types/period_param.py +21 -0
  53. lark/types/pricing_metric_create_params.py +98 -0
  54. lark/types/pricing_metric_create_summary_params.py +25 -0
  55. lark/types/pricing_metric_create_summary_response.py +36 -0
  56. lark/types/pricing_metric_list_params.py +11 -0
  57. lark/types/pricing_metric_list_response.py +14 -0
  58. lark/types/pricing_metric_resource.py +72 -0
  59. lark/types/rate_card_create_params.py +148 -0
  60. lark/types/rate_card_list_params.py +13 -0
  61. lark/types/rate_card_list_response.py +14 -0
  62. lark/types/rate_card_resource.py +141 -0
  63. lark/types/subject_create_params.py +29 -0
  64. lark/types/subject_create_response.py +34 -0
  65. lark/types/subject_list_params.py +13 -0
  66. lark/types/subject_list_response.py +14 -0
  67. lark/types/subject_resource.py +34 -0
  68. lark/types/subject_update_params.py +22 -0
  69. lark/types/subscription_cancel_params.py +16 -0
  70. lark/types/subscription_change_rate_card_params.py +29 -0
  71. lark/types/subscription_change_rate_card_response.py +55 -0
  72. lark/types/subscription_create_params.py +38 -0
  73. lark/types/subscription_create_response.py +55 -0
  74. lark/types/subscription_list_params.py +26 -0
  75. lark/types/subscription_list_response.py +14 -0
  76. lark/types/subscription_resource.py +49 -0
  77. lark/types/usage_event_create_params.py +41 -0
  78. lark_billing-0.5.0.dist-info/METADATA +431 -0
  79. lark_billing-0.5.0.dist-info/RECORD +81 -0
  80. lark_billing-0.5.0.dist-info/WHEEL +4 -0
  81. lark_billing-0.5.0.dist-info/licenses/LICENSE +201 -0
@@ -0,0 +1,167 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from __future__ import annotations
4
+
5
+ import httpx
6
+
7
+ from .._types import Body, Query, Headers, NotGiven, not_given
8
+ from .._compat import cached_property
9
+ from .._resource import SyncAPIResource, AsyncAPIResource
10
+ from .._response import (
11
+ to_raw_response_wrapper,
12
+ to_streamed_response_wrapper,
13
+ async_to_raw_response_wrapper,
14
+ async_to_streamed_response_wrapper,
15
+ )
16
+ from .._base_client import make_request_options
17
+ from ..types.customer_access_retrieve_billing_state_response import CustomerAccessRetrieveBillingStateResponse
18
+
19
+ __all__ = ["CustomerAccessResource", "AsyncCustomerAccessResource"]
20
+
21
+
22
+ class CustomerAccessResource(SyncAPIResource):
23
+ @cached_property
24
+ def with_raw_response(self) -> CustomerAccessResourceWithRawResponse:
25
+ """
26
+ This property can be used as a prefix for any HTTP method call to return
27
+ the raw response object instead of the parsed content.
28
+
29
+ For more information, see https://www.github.com/uselark/lark-billing-python#accessing-raw-response-data-eg-headers
30
+ """
31
+ return CustomerAccessResourceWithRawResponse(self)
32
+
33
+ @cached_property
34
+ def with_streaming_response(self) -> CustomerAccessResourceWithStreamingResponse:
35
+ """
36
+ An alternative to `.with_raw_response` that doesn't eagerly read the response body.
37
+
38
+ For more information, see https://www.github.com/uselark/lark-billing-python#with_streaming_response
39
+ """
40
+ return CustomerAccessResourceWithStreamingResponse(self)
41
+
42
+ def retrieve_billing_state(
43
+ self,
44
+ subject_id: str,
45
+ *,
46
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
47
+ # The extra values given here take precedence over values defined on the client or passed to this method.
48
+ extra_headers: Headers | None = None,
49
+ extra_query: Query | None = None,
50
+ extra_body: Body | None = None,
51
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
52
+ ) -> CustomerAccessRetrieveBillingStateResponse:
53
+ """
54
+ Get Billing State
55
+
56
+ Args:
57
+ subject_id: The ID or external ID of the subject to get billing state for.
58
+
59
+ extra_headers: Send extra headers
60
+
61
+ extra_query: Add additional query parameters to the request
62
+
63
+ extra_body: Add additional JSON properties to the request
64
+
65
+ timeout: Override the client-level default timeout for this request, in seconds
66
+ """
67
+ if not subject_id:
68
+ raise ValueError(f"Expected a non-empty value for `subject_id` but received {subject_id!r}")
69
+ return self._get(
70
+ f"/customer-access/{subject_id}/billing-state",
71
+ options=make_request_options(
72
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
73
+ ),
74
+ cast_to=CustomerAccessRetrieveBillingStateResponse,
75
+ )
76
+
77
+
78
+ class AsyncCustomerAccessResource(AsyncAPIResource):
79
+ @cached_property
80
+ def with_raw_response(self) -> AsyncCustomerAccessResourceWithRawResponse:
81
+ """
82
+ This property can be used as a prefix for any HTTP method call to return
83
+ the raw response object instead of the parsed content.
84
+
85
+ For more information, see https://www.github.com/uselark/lark-billing-python#accessing-raw-response-data-eg-headers
86
+ """
87
+ return AsyncCustomerAccessResourceWithRawResponse(self)
88
+
89
+ @cached_property
90
+ def with_streaming_response(self) -> AsyncCustomerAccessResourceWithStreamingResponse:
91
+ """
92
+ An alternative to `.with_raw_response` that doesn't eagerly read the response body.
93
+
94
+ For more information, see https://www.github.com/uselark/lark-billing-python#with_streaming_response
95
+ """
96
+ return AsyncCustomerAccessResourceWithStreamingResponse(self)
97
+
98
+ async def retrieve_billing_state(
99
+ self,
100
+ subject_id: str,
101
+ *,
102
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
103
+ # The extra values given here take precedence over values defined on the client or passed to this method.
104
+ extra_headers: Headers | None = None,
105
+ extra_query: Query | None = None,
106
+ extra_body: Body | None = None,
107
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
108
+ ) -> CustomerAccessRetrieveBillingStateResponse:
109
+ """
110
+ Get Billing State
111
+
112
+ Args:
113
+ subject_id: The ID or external ID of the subject to get billing state for.
114
+
115
+ extra_headers: Send extra headers
116
+
117
+ extra_query: Add additional query parameters to the request
118
+
119
+ extra_body: Add additional JSON properties to the request
120
+
121
+ timeout: Override the client-level default timeout for this request, in seconds
122
+ """
123
+ if not subject_id:
124
+ raise ValueError(f"Expected a non-empty value for `subject_id` but received {subject_id!r}")
125
+ return await self._get(
126
+ f"/customer-access/{subject_id}/billing-state",
127
+ options=make_request_options(
128
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
129
+ ),
130
+ cast_to=CustomerAccessRetrieveBillingStateResponse,
131
+ )
132
+
133
+
134
+ class CustomerAccessResourceWithRawResponse:
135
+ def __init__(self, customer_access: CustomerAccessResource) -> None:
136
+ self._customer_access = customer_access
137
+
138
+ self.retrieve_billing_state = to_raw_response_wrapper(
139
+ customer_access.retrieve_billing_state,
140
+ )
141
+
142
+
143
+ class AsyncCustomerAccessResourceWithRawResponse:
144
+ def __init__(self, customer_access: AsyncCustomerAccessResource) -> None:
145
+ self._customer_access = customer_access
146
+
147
+ self.retrieve_billing_state = async_to_raw_response_wrapper(
148
+ customer_access.retrieve_billing_state,
149
+ )
150
+
151
+
152
+ class CustomerAccessResourceWithStreamingResponse:
153
+ def __init__(self, customer_access: CustomerAccessResource) -> None:
154
+ self._customer_access = customer_access
155
+
156
+ self.retrieve_billing_state = to_streamed_response_wrapper(
157
+ customer_access.retrieve_billing_state,
158
+ )
159
+
160
+
161
+ class AsyncCustomerAccessResourceWithStreamingResponse:
162
+ def __init__(self, customer_access: AsyncCustomerAccessResource) -> None:
163
+ self._customer_access = customer_access
164
+
165
+ self.retrieve_billing_state = async_to_streamed_response_wrapper(
166
+ customer_access.retrieve_billing_state,
167
+ )
@@ -0,0 +1,187 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from __future__ import annotations
4
+
5
+ import httpx
6
+
7
+ from ..types import customer_portal_create_session_params
8
+ from .._types import Body, Query, Headers, NotGiven, not_given
9
+ from .._utils import maybe_transform, async_maybe_transform
10
+ from .._compat import cached_property
11
+ from .._resource import SyncAPIResource, AsyncAPIResource
12
+ from .._response import (
13
+ to_raw_response_wrapper,
14
+ to_streamed_response_wrapper,
15
+ async_to_raw_response_wrapper,
16
+ async_to_streamed_response_wrapper,
17
+ )
18
+ from .._base_client import make_request_options
19
+ from ..types.customer_portal_create_session_response import CustomerPortalCreateSessionResponse
20
+
21
+ __all__ = ["CustomerPortalResource", "AsyncCustomerPortalResource"]
22
+
23
+
24
+ class CustomerPortalResource(SyncAPIResource):
25
+ @cached_property
26
+ def with_raw_response(self) -> CustomerPortalResourceWithRawResponse:
27
+ """
28
+ This property can be used as a prefix for any HTTP method call to return
29
+ the raw response object instead of the parsed content.
30
+
31
+ For more information, see https://www.github.com/uselark/lark-billing-python#accessing-raw-response-data-eg-headers
32
+ """
33
+ return CustomerPortalResourceWithRawResponse(self)
34
+
35
+ @cached_property
36
+ def with_streaming_response(self) -> CustomerPortalResourceWithStreamingResponse:
37
+ """
38
+ An alternative to `.with_raw_response` that doesn't eagerly read the response body.
39
+
40
+ For more information, see https://www.github.com/uselark/lark-billing-python#with_streaming_response
41
+ """
42
+ return CustomerPortalResourceWithStreamingResponse(self)
43
+
44
+ def create_session(
45
+ self,
46
+ *,
47
+ return_url: str,
48
+ subject_id: str,
49
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
50
+ # The extra values given here take precedence over values defined on the client or passed to this method.
51
+ extra_headers: Headers | None = None,
52
+ extra_query: Query | None = None,
53
+ extra_body: Body | None = None,
54
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
55
+ ) -> CustomerPortalCreateSessionResponse:
56
+ """
57
+ Create Customer Portal Session
58
+
59
+ Args:
60
+ return_url: The URL to redirect customers to if they click the back button on the customer
61
+ portal.
62
+
63
+ subject_id: The ID or external ID of the subject to create the customer portal session for.
64
+
65
+ extra_headers: Send extra headers
66
+
67
+ extra_query: Add additional query parameters to the request
68
+
69
+ extra_body: Add additional JSON properties to the request
70
+
71
+ timeout: Override the client-level default timeout for this request, in seconds
72
+ """
73
+ return self._post(
74
+ "/customer-portal/sessions",
75
+ body=maybe_transform(
76
+ {
77
+ "return_url": return_url,
78
+ "subject_id": subject_id,
79
+ },
80
+ customer_portal_create_session_params.CustomerPortalCreateSessionParams,
81
+ ),
82
+ options=make_request_options(
83
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
84
+ ),
85
+ cast_to=CustomerPortalCreateSessionResponse,
86
+ )
87
+
88
+
89
+ class AsyncCustomerPortalResource(AsyncAPIResource):
90
+ @cached_property
91
+ def with_raw_response(self) -> AsyncCustomerPortalResourceWithRawResponse:
92
+ """
93
+ This property can be used as a prefix for any HTTP method call to return
94
+ the raw response object instead of the parsed content.
95
+
96
+ For more information, see https://www.github.com/uselark/lark-billing-python#accessing-raw-response-data-eg-headers
97
+ """
98
+ return AsyncCustomerPortalResourceWithRawResponse(self)
99
+
100
+ @cached_property
101
+ def with_streaming_response(self) -> AsyncCustomerPortalResourceWithStreamingResponse:
102
+ """
103
+ An alternative to `.with_raw_response` that doesn't eagerly read the response body.
104
+
105
+ For more information, see https://www.github.com/uselark/lark-billing-python#with_streaming_response
106
+ """
107
+ return AsyncCustomerPortalResourceWithStreamingResponse(self)
108
+
109
+ async def create_session(
110
+ self,
111
+ *,
112
+ return_url: str,
113
+ subject_id: str,
114
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
115
+ # The extra values given here take precedence over values defined on the client or passed to this method.
116
+ extra_headers: Headers | None = None,
117
+ extra_query: Query | None = None,
118
+ extra_body: Body | None = None,
119
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
120
+ ) -> CustomerPortalCreateSessionResponse:
121
+ """
122
+ Create Customer Portal Session
123
+
124
+ Args:
125
+ return_url: The URL to redirect customers to if they click the back button on the customer
126
+ portal.
127
+
128
+ subject_id: The ID or external ID of the subject to create the customer portal session for.
129
+
130
+ extra_headers: Send extra headers
131
+
132
+ extra_query: Add additional query parameters to the request
133
+
134
+ extra_body: Add additional JSON properties to the request
135
+
136
+ timeout: Override the client-level default timeout for this request, in seconds
137
+ """
138
+ return await self._post(
139
+ "/customer-portal/sessions",
140
+ body=await async_maybe_transform(
141
+ {
142
+ "return_url": return_url,
143
+ "subject_id": subject_id,
144
+ },
145
+ customer_portal_create_session_params.CustomerPortalCreateSessionParams,
146
+ ),
147
+ options=make_request_options(
148
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
149
+ ),
150
+ cast_to=CustomerPortalCreateSessionResponse,
151
+ )
152
+
153
+
154
+ class CustomerPortalResourceWithRawResponse:
155
+ def __init__(self, customer_portal: CustomerPortalResource) -> None:
156
+ self._customer_portal = customer_portal
157
+
158
+ self.create_session = to_raw_response_wrapper(
159
+ customer_portal.create_session,
160
+ )
161
+
162
+
163
+ class AsyncCustomerPortalResourceWithRawResponse:
164
+ def __init__(self, customer_portal: AsyncCustomerPortalResource) -> None:
165
+ self._customer_portal = customer_portal
166
+
167
+ self.create_session = async_to_raw_response_wrapper(
168
+ customer_portal.create_session,
169
+ )
170
+
171
+
172
+ class CustomerPortalResourceWithStreamingResponse:
173
+ def __init__(self, customer_portal: CustomerPortalResource) -> None:
174
+ self._customer_portal = customer_portal
175
+
176
+ self.create_session = to_streamed_response_wrapper(
177
+ customer_portal.create_session,
178
+ )
179
+
180
+
181
+ class AsyncCustomerPortalResourceWithStreamingResponse:
182
+ def __init__(self, customer_portal: AsyncCustomerPortalResource) -> None:
183
+ self._customer_portal = customer_portal
184
+
185
+ self.create_session = async_to_streamed_response_wrapper(
186
+ customer_portal.create_session,
187
+ )
@@ -0,0 +1,191 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from __future__ import annotations
4
+
5
+ import httpx
6
+
7
+ from ..types import invoice_list_params
8
+ from .._types import Body, Omit, Query, Headers, NotGiven, omit, not_given
9
+ from .._utils import maybe_transform, async_maybe_transform
10
+ from .._compat import cached_property
11
+ from .._resource import SyncAPIResource, AsyncAPIResource
12
+ from .._response import (
13
+ to_raw_response_wrapper,
14
+ to_streamed_response_wrapper,
15
+ async_to_raw_response_wrapper,
16
+ async_to_streamed_response_wrapper,
17
+ )
18
+ from .._base_client import make_request_options
19
+ from ..types.invoice_list_response import InvoiceListResponse
20
+
21
+ __all__ = ["InvoicesResource", "AsyncInvoicesResource"]
22
+
23
+
24
+ class InvoicesResource(SyncAPIResource):
25
+ @cached_property
26
+ def with_raw_response(self) -> InvoicesResourceWithRawResponse:
27
+ """
28
+ This property can be used as a prefix for any HTTP method call to return
29
+ the raw response object instead of the parsed content.
30
+
31
+ For more information, see https://www.github.com/uselark/lark-billing-python#accessing-raw-response-data-eg-headers
32
+ """
33
+ return InvoicesResourceWithRawResponse(self)
34
+
35
+ @cached_property
36
+ def with_streaming_response(self) -> InvoicesResourceWithStreamingResponse:
37
+ """
38
+ An alternative to `.with_raw_response` that doesn't eagerly read the response body.
39
+
40
+ For more information, see https://www.github.com/uselark/lark-billing-python#with_streaming_response
41
+ """
42
+ return InvoicesResourceWithStreamingResponse(self)
43
+
44
+ def list(
45
+ self,
46
+ *,
47
+ subject_id: str,
48
+ limit: int | Omit = omit,
49
+ offset: int | Omit = omit,
50
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
51
+ # The extra values given here take precedence over values defined on the client or passed to this method.
52
+ extra_headers: Headers | None = None,
53
+ extra_query: Query | None = None,
54
+ extra_body: Body | None = None,
55
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
56
+ ) -> InvoiceListResponse:
57
+ """
58
+ List Invoices
59
+
60
+ Args:
61
+ subject_id: The ID or external ID of the subject to list invoices for.
62
+
63
+ extra_headers: Send extra headers
64
+
65
+ extra_query: Add additional query parameters to the request
66
+
67
+ extra_body: Add additional JSON properties to the request
68
+
69
+ timeout: Override the client-level default timeout for this request, in seconds
70
+ """
71
+ return self._get(
72
+ "/invoices",
73
+ options=make_request_options(
74
+ extra_headers=extra_headers,
75
+ extra_query=extra_query,
76
+ extra_body=extra_body,
77
+ timeout=timeout,
78
+ query=maybe_transform(
79
+ {
80
+ "subject_id": subject_id,
81
+ "limit": limit,
82
+ "offset": offset,
83
+ },
84
+ invoice_list_params.InvoiceListParams,
85
+ ),
86
+ ),
87
+ cast_to=InvoiceListResponse,
88
+ )
89
+
90
+
91
+ class AsyncInvoicesResource(AsyncAPIResource):
92
+ @cached_property
93
+ def with_raw_response(self) -> AsyncInvoicesResourceWithRawResponse:
94
+ """
95
+ This property can be used as a prefix for any HTTP method call to return
96
+ the raw response object instead of the parsed content.
97
+
98
+ For more information, see https://www.github.com/uselark/lark-billing-python#accessing-raw-response-data-eg-headers
99
+ """
100
+ return AsyncInvoicesResourceWithRawResponse(self)
101
+
102
+ @cached_property
103
+ def with_streaming_response(self) -> AsyncInvoicesResourceWithStreamingResponse:
104
+ """
105
+ An alternative to `.with_raw_response` that doesn't eagerly read the response body.
106
+
107
+ For more information, see https://www.github.com/uselark/lark-billing-python#with_streaming_response
108
+ """
109
+ return AsyncInvoicesResourceWithStreamingResponse(self)
110
+
111
+ async def list(
112
+ self,
113
+ *,
114
+ subject_id: str,
115
+ limit: int | Omit = omit,
116
+ offset: int | Omit = omit,
117
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
118
+ # The extra values given here take precedence over values defined on the client or passed to this method.
119
+ extra_headers: Headers | None = None,
120
+ extra_query: Query | None = None,
121
+ extra_body: Body | None = None,
122
+ timeout: float | httpx.Timeout | None | NotGiven = not_given,
123
+ ) -> InvoiceListResponse:
124
+ """
125
+ List Invoices
126
+
127
+ Args:
128
+ subject_id: The ID or external ID of the subject to list invoices for.
129
+
130
+ extra_headers: Send extra headers
131
+
132
+ extra_query: Add additional query parameters to the request
133
+
134
+ extra_body: Add additional JSON properties to the request
135
+
136
+ timeout: Override the client-level default timeout for this request, in seconds
137
+ """
138
+ return await self._get(
139
+ "/invoices",
140
+ options=make_request_options(
141
+ extra_headers=extra_headers,
142
+ extra_query=extra_query,
143
+ extra_body=extra_body,
144
+ timeout=timeout,
145
+ query=await async_maybe_transform(
146
+ {
147
+ "subject_id": subject_id,
148
+ "limit": limit,
149
+ "offset": offset,
150
+ },
151
+ invoice_list_params.InvoiceListParams,
152
+ ),
153
+ ),
154
+ cast_to=InvoiceListResponse,
155
+ )
156
+
157
+
158
+ class InvoicesResourceWithRawResponse:
159
+ def __init__(self, invoices: InvoicesResource) -> None:
160
+ self._invoices = invoices
161
+
162
+ self.list = to_raw_response_wrapper(
163
+ invoices.list,
164
+ )
165
+
166
+
167
+ class AsyncInvoicesResourceWithRawResponse:
168
+ def __init__(self, invoices: AsyncInvoicesResource) -> None:
169
+ self._invoices = invoices
170
+
171
+ self.list = async_to_raw_response_wrapper(
172
+ invoices.list,
173
+ )
174
+
175
+
176
+ class InvoicesResourceWithStreamingResponse:
177
+ def __init__(self, invoices: InvoicesResource) -> None:
178
+ self._invoices = invoices
179
+
180
+ self.list = to_streamed_response_wrapper(
181
+ invoices.list,
182
+ )
183
+
184
+
185
+ class AsyncInvoicesResourceWithStreamingResponse:
186
+ def __init__(self, invoices: AsyncInvoicesResource) -> None:
187
+ self._invoices = invoices
188
+
189
+ self.list = async_to_streamed_response_wrapper(
190
+ invoices.list,
191
+ )