crypticorn 2.17.0rc1__py3-none-any.whl → 2.17.0rc2__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 (86) hide show
  1. crypticorn/__init__.py +2 -2
  2. crypticorn/auth/client/api/admin_api.py +415 -13
  3. crypticorn/auth/client/api/auth_api.py +2622 -113
  4. crypticorn/auth/client/api/service_api.py +258 -7
  5. crypticorn/auth/client/api/user_api.py +2485 -270
  6. crypticorn/auth/client/api/wallet_api.py +1518 -77
  7. crypticorn/auth/client/models/create_api_key_request.py +2 -1
  8. crypticorn/auth/client/models/get_api_keys200_response_inner.py +2 -1
  9. crypticorn/auth/client/rest.py +23 -4
  10. crypticorn/auth/main.py +8 -5
  11. crypticorn/client.py +227 -59
  12. crypticorn/common/__init__.py +0 -1
  13. crypticorn/common/metrics.py +4 -6
  14. crypticorn/common/middleware.py +10 -5
  15. crypticorn/common/pagination.py +137 -18
  16. crypticorn/common/router/admin_router.py +1 -1
  17. crypticorn/common/utils.py +2 -1
  18. crypticorn/common/warnings.py +1 -0
  19. crypticorn/hive/client/api/admin_api.py +1234 -51
  20. crypticorn/hive/client/api/data_api.py +517 -13
  21. crypticorn/hive/client/api/models_api.py +1657 -83
  22. crypticorn/hive/client/api/status_api.py +415 -13
  23. crypticorn/hive/client/models/api_error_identifier.py +1 -1
  24. crypticorn/hive/client/rest.py +23 -4
  25. crypticorn/hive/main.py +99 -25
  26. crypticorn/klines/client/api/admin_api.py +1234 -51
  27. crypticorn/klines/client/api/change_in_timeframe_api.py +278 -7
  28. crypticorn/klines/client/api/funding_rates_api.py +324 -7
  29. crypticorn/klines/client/api/ohlcv_data_api.py +399 -7
  30. crypticorn/klines/client/api/status_api.py +415 -13
  31. crypticorn/klines/client/api/symbols_api.py +225 -7
  32. crypticorn/klines/client/api/udf_api.py +1393 -120
  33. crypticorn/klines/client/models/api_error_identifier.py +3 -1
  34. crypticorn/klines/client/rest.py +23 -4
  35. crypticorn/klines/main.py +89 -12
  36. crypticorn/metrics/client/api/admin_api.py +1234 -51
  37. crypticorn/metrics/client/api/exchanges_api.py +1405 -140
  38. crypticorn/metrics/client/api/indicators_api.py +640 -13
  39. crypticorn/metrics/client/api/logs_api.py +305 -7
  40. crypticorn/metrics/client/api/marketcap_api.py +1240 -60
  41. crypticorn/metrics/client/api/markets_api.py +352 -7
  42. crypticorn/metrics/client/api/quote_currencies_api.py +237 -7
  43. crypticorn/metrics/client/api/status_api.py +415 -13
  44. crypticorn/metrics/client/api/tokens_api.py +400 -13
  45. crypticorn/metrics/client/configuration.py +4 -2
  46. crypticorn/metrics/client/rest.py +23 -4
  47. crypticorn/metrics/main.py +113 -19
  48. crypticorn/pay/client/api/admin_api.py +1720 -126
  49. crypticorn/pay/client/api/now_payments_api.py +1013 -42
  50. crypticorn/pay/client/api/payments_api.py +580 -13
  51. crypticorn/pay/client/api/products_api.py +915 -25
  52. crypticorn/pay/client/api/status_api.py +415 -13
  53. crypticorn/pay/client/configuration.py +2 -2
  54. crypticorn/pay/client/models/api_error_identifier.py +7 -7
  55. crypticorn/pay/client/models/scope.py +1 -0
  56. crypticorn/pay/client/rest.py +23 -4
  57. crypticorn/pay/main.py +10 -6
  58. crypticorn/trade/client/__init__.py +2 -1
  59. crypticorn/trade/client/api/__init__.py +0 -1
  60. crypticorn/trade/client/api/admin_api.py +1718 -123
  61. crypticorn/trade/client/api/api_keys_api.py +1596 -103
  62. crypticorn/trade/client/api/bots_api.py +1106 -47
  63. crypticorn/trade/client/api/exchanges_api.py +592 -19
  64. crypticorn/trade/client/api/notifications_api.py +1340 -112
  65. crypticorn/trade/client/api/orders_api.py +240 -7
  66. crypticorn/trade/client/api/status_api.py +415 -13
  67. crypticorn/trade/client/api/strategies_api.py +1170 -69
  68. crypticorn/trade/client/api/trading_actions_api.py +650 -19
  69. crypticorn/trade/client/models/__init__.py +2 -0
  70. crypticorn/trade/client/models/exchange.py +6 -1
  71. crypticorn/trade/client/models/exchange_key_balance.py +111 -0
  72. crypticorn/trade/client/models/futures_balance.py +27 -25
  73. crypticorn/trade/client/models/spot_balance.py +110 -0
  74. crypticorn/trade/client/models/strategy.py +5 -3
  75. crypticorn/trade/client/models/strategy_create.py +6 -4
  76. crypticorn/trade/client/models/strategy_exchange_info.py +16 -4
  77. crypticorn/trade/client/models/strategy_update.py +2 -2
  78. crypticorn/trade/client/rest.py +23 -4
  79. crypticorn/trade/main.py +15 -12
  80. {crypticorn-2.17.0rc1.dist-info → crypticorn-2.17.0rc2.dist-info}/METADATA +64 -20
  81. {crypticorn-2.17.0rc1.dist-info → crypticorn-2.17.0rc2.dist-info}/RECORD +85 -84
  82. crypticorn/trade/client/api/futures_trading_panel_api.py +0 -1285
  83. {crypticorn-2.17.0rc1.dist-info → crypticorn-2.17.0rc2.dist-info}/WHEEL +0 -0
  84. {crypticorn-2.17.0rc1.dist-info → crypticorn-2.17.0rc2.dist-info}/entry_points.txt +0 -0
  85. {crypticorn-2.17.0rc1.dist-info → crypticorn-2.17.0rc2.dist-info}/licenses/LICENSE +0 -0
  86. {crypticorn-2.17.0rc1.dist-info → crypticorn-2.17.0rc2.dist-info}/top_level.txt +0 -0
crypticorn/__init__.py CHANGED
@@ -14,6 +14,6 @@ warnings.filterwarnings("default", "", DeprecationWarning)
14
14
  configure_logging()
15
15
  logging.captureWarnings(True)
16
16
 
17
- from crypticorn.client import ApiClient
17
+ from crypticorn.client import AsyncClient, SyncClient, ApiClient
18
18
 
19
- __all__ = ["ApiClient"]
19
+ __all__ = ["AsyncClient", "SyncClient", "ApiClient"]
@@ -29,6 +29,24 @@ from crypticorn.auth.client.api_client import ApiClient, RequestSerialized
29
29
  from crypticorn.auth.client.api_response import ApiResponse
30
30
  from crypticorn.auth.client.rest import RESTResponseType
31
31
 
32
+ # Import async_to_sync for sync methods
33
+ try:
34
+ from asgiref.sync import async_to_sync
35
+
36
+ _HAS_ASGIREF = True
37
+ except ImportError:
38
+ _HAS_ASGIREF = False
39
+
40
+ def async_to_sync(async_func):
41
+ """Fallback decorator that raises an error if asgiref is not available."""
42
+
43
+ def wrapper(*args, **kwargs):
44
+ raise ImportError(
45
+ "asgiref is required for sync methods. Install with: pip install asgiref"
46
+ )
47
+
48
+ return wrapper
49
+
32
50
 
33
51
  class AdminApi:
34
52
  """NOTE: This class is auto generated by OpenAPI Generator
@@ -37,13 +55,135 @@ class AdminApi:
37
55
  Do not edit the class manually.
38
56
  """
39
57
 
40
- def __init__(self, api_client=None) -> None:
58
+ def __init__(self, api_client=None, is_sync: bool = False) -> None:
41
59
  if api_client is None:
42
60
  api_client = ApiClient.get_default()
43
61
  self.api_client = api_client
62
+ self.is_sync = is_sync
44
63
 
45
64
  @validate_call
46
- async def revoke_user_tokens(
65
+ def revoke_user_tokens(
66
+ self,
67
+ revoke_user_tokens_request: RevokeUserTokensRequest,
68
+ _request_timeout: Union[
69
+ None,
70
+ Annotated[StrictFloat, Field(gt=0)],
71
+ Tuple[
72
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
73
+ ],
74
+ ] = None,
75
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
76
+ _content_type: Optional[StrictStr] = None,
77
+ _headers: Optional[Dict[StrictStr, Any]] = None,
78
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
79
+ ) -> LogoutDefaultResponseIssuesInner:
80
+ """Revoke user tokens
81
+
82
+ This method can work in both sync and async modes based on the is_sync flag.
83
+ """
84
+ if self.is_sync:
85
+ return self._revoke_user_tokens_sync(
86
+ revoke_user_tokens_request=revoke_user_tokens_request,
87
+ _request_timeout=_request_timeout,
88
+ _request_auth=_request_auth,
89
+ _content_type=_content_type,
90
+ _headers=_headers,
91
+ _host_index=_host_index,
92
+ )
93
+
94
+ else:
95
+ return self._revoke_user_tokens_async(
96
+ revoke_user_tokens_request=revoke_user_tokens_request,
97
+ _request_timeout=_request_timeout,
98
+ _request_auth=_request_auth,
99
+ _content_type=_content_type,
100
+ _headers=_headers,
101
+ _host_index=_host_index,
102
+ )
103
+
104
+ @validate_call
105
+ def revoke_user_tokens_with_http_info(
106
+ self,
107
+ revoke_user_tokens_request: RevokeUserTokensRequest,
108
+ _request_timeout: Union[
109
+ None,
110
+ Annotated[StrictFloat, Field(gt=0)],
111
+ Tuple[
112
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
113
+ ],
114
+ ] = None,
115
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
116
+ _content_type: Optional[StrictStr] = None,
117
+ _headers: Optional[Dict[StrictStr, Any]] = None,
118
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
119
+ ) -> ApiResponse[LogoutDefaultResponseIssuesInner]:
120
+ """Revoke user tokens with HTTP info
121
+
122
+ This method can work in both sync and async modes based on the is_sync flag.
123
+ """
124
+ if self.is_sync:
125
+ return self._revoke_user_tokens_sync_with_http_info(
126
+ revoke_user_tokens_request=revoke_user_tokens_request,
127
+ _request_timeout=_request_timeout,
128
+ _request_auth=_request_auth,
129
+ _content_type=_content_type,
130
+ _headers=_headers,
131
+ _host_index=_host_index,
132
+ )
133
+
134
+ else:
135
+ return self._revoke_user_tokens_async_with_http_info(
136
+ revoke_user_tokens_request=revoke_user_tokens_request,
137
+ _request_timeout=_request_timeout,
138
+ _request_auth=_request_auth,
139
+ _content_type=_content_type,
140
+ _headers=_headers,
141
+ _host_index=_host_index,
142
+ )
143
+
144
+ @validate_call
145
+ def revoke_user_tokens_without_preload_content(
146
+ self,
147
+ revoke_user_tokens_request: RevokeUserTokensRequest,
148
+ _request_timeout: Union[
149
+ None,
150
+ Annotated[StrictFloat, Field(gt=0)],
151
+ Tuple[
152
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
153
+ ],
154
+ ] = None,
155
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
156
+ _content_type: Optional[StrictStr] = None,
157
+ _headers: Optional[Dict[StrictStr, Any]] = None,
158
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
159
+ ) -> RESTResponseType:
160
+ """Revoke user tokens without preloading content
161
+
162
+ This method can work in both sync and async modes based on the is_sync flag.
163
+ """
164
+ if self.is_sync:
165
+ return self._revoke_user_tokens_sync_without_preload_content(
166
+ revoke_user_tokens_request=revoke_user_tokens_request,
167
+ _request_timeout=_request_timeout,
168
+ _request_auth=_request_auth,
169
+ _content_type=_content_type,
170
+ _headers=_headers,
171
+ _host_index=_host_index,
172
+ )
173
+
174
+ else:
175
+ return self._revoke_user_tokens_async_without_preload_content(
176
+ revoke_user_tokens_request=revoke_user_tokens_request,
177
+ _request_timeout=_request_timeout,
178
+ _request_auth=_request_auth,
179
+ _content_type=_content_type,
180
+ _headers=_headers,
181
+ _host_index=_host_index,
182
+ )
183
+
184
+ # Private async implementation methods
185
+ @validate_call
186
+ async def _revoke_user_tokens_async(
47
187
  self,
48
188
  revoke_user_tokens_request: RevokeUserTokensRequest,
49
189
  _request_timeout: Union[
@@ -107,7 +247,7 @@ class AdminApi:
107
247
  ).data
108
248
 
109
249
  @validate_call
110
- async def revoke_user_tokens_with_http_info(
250
+ async def _revoke_user_tokens_async_with_http_info(
111
251
  self,
112
252
  revoke_user_tokens_request: RevokeUserTokensRequest,
113
253
  _request_timeout: Union[
@@ -166,12 +306,11 @@ class AdminApi:
166
306
  )
167
307
  await response_data.read()
168
308
  return self.api_client.response_deserialize(
169
- response_data=response_data,
170
- response_types_map=_response_types_map,
309
+ response_data=response_data, response_types_map=_response_types_map
171
310
  )
172
311
 
173
312
  @validate_call
174
- async def revoke_user_tokens_without_preload_content(
313
+ async def _revoke_user_tokens_async_without_preload_content(
175
314
  self,
176
315
  revoke_user_tokens_request: RevokeUserTokensRequest,
177
316
  _request_timeout: Union[
@@ -228,7 +367,86 @@ class AdminApi:
228
367
  response_data = await self.api_client.call_api(
229
368
  *_param, _request_timeout=_request_timeout
230
369
  )
231
- return response_data.response
370
+ return response_data
371
+
372
+ # Private sync implementation methods
373
+ @validate_call
374
+ def _revoke_user_tokens_sync(
375
+ self,
376
+ revoke_user_tokens_request: RevokeUserTokensRequest,
377
+ _request_timeout: Union[
378
+ None,
379
+ Annotated[StrictFloat, Field(gt=0)],
380
+ Tuple[
381
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
382
+ ],
383
+ ] = None,
384
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
385
+ _content_type: Optional[StrictStr] = None,
386
+ _headers: Optional[Dict[StrictStr, Any]] = None,
387
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
388
+ ) -> LogoutDefaultResponseIssuesInner:
389
+ """Synchronous version of revoke_user_tokens"""
390
+ return async_to_sync(self._revoke_user_tokens_async)(
391
+ revoke_user_tokens_request=revoke_user_tokens_request,
392
+ _request_timeout=_request_timeout,
393
+ _request_auth=_request_auth,
394
+ _content_type=_content_type,
395
+ _headers=_headers,
396
+ _host_index=_host_index,
397
+ )
398
+
399
+ @validate_call
400
+ def _revoke_user_tokens_sync_with_http_info(
401
+ self,
402
+ revoke_user_tokens_request: RevokeUserTokensRequest,
403
+ _request_timeout: Union[
404
+ None,
405
+ Annotated[StrictFloat, Field(gt=0)],
406
+ Tuple[
407
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
408
+ ],
409
+ ] = None,
410
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
411
+ _content_type: Optional[StrictStr] = None,
412
+ _headers: Optional[Dict[StrictStr, Any]] = None,
413
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
414
+ ) -> ApiResponse[LogoutDefaultResponseIssuesInner]:
415
+ """Synchronous version of revoke_user_tokens_with_http_info"""
416
+ return async_to_sync(self._revoke_user_tokens_async_with_http_info)(
417
+ revoke_user_tokens_request=revoke_user_tokens_request,
418
+ _request_timeout=_request_timeout,
419
+ _request_auth=_request_auth,
420
+ _content_type=_content_type,
421
+ _headers=_headers,
422
+ _host_index=_host_index,
423
+ )
424
+
425
+ @validate_call
426
+ def _revoke_user_tokens_sync_without_preload_content(
427
+ self,
428
+ revoke_user_tokens_request: RevokeUserTokensRequest,
429
+ _request_timeout: Union[
430
+ None,
431
+ Annotated[StrictFloat, Field(gt=0)],
432
+ Tuple[
433
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
434
+ ],
435
+ ] = None,
436
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
437
+ _content_type: Optional[StrictStr] = None,
438
+ _headers: Optional[Dict[StrictStr, Any]] = None,
439
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
440
+ ) -> RESTResponseType:
441
+ """Synchronous version of revoke_user_tokens_without_preload_content"""
442
+ return async_to_sync(self._revoke_user_tokens_async_without_preload_content)(
443
+ revoke_user_tokens_request=revoke_user_tokens_request,
444
+ _request_timeout=_request_timeout,
445
+ _request_auth=_request_auth,
446
+ _content_type=_content_type,
447
+ _headers=_headers,
448
+ _host_index=_host_index,
449
+ )
232
450
 
233
451
  def _revoke_user_tokens_serialize(
234
452
  self,
@@ -295,7 +513,119 @@ class AdminApi:
295
513
  )
296
514
 
297
515
  @validate_call
298
- async def user_list(
516
+ def user_list(
517
+ self,
518
+ _request_timeout: Union[
519
+ None,
520
+ Annotated[StrictFloat, Field(gt=0)],
521
+ Tuple[
522
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
523
+ ],
524
+ ] = None,
525
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
526
+ _content_type: Optional[StrictStr] = None,
527
+ _headers: Optional[Dict[StrictStr, Any]] = None,
528
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
529
+ ) -> List[Whoami200Response]:
530
+ """User List
531
+
532
+ This method can work in both sync and async modes based on the is_sync flag.
533
+ """
534
+ if self.is_sync:
535
+ return self._user_list_sync(
536
+ _request_timeout=_request_timeout,
537
+ _request_auth=_request_auth,
538
+ _content_type=_content_type,
539
+ _headers=_headers,
540
+ _host_index=_host_index,
541
+ )
542
+
543
+ else:
544
+ return self._user_list_async(
545
+ _request_timeout=_request_timeout,
546
+ _request_auth=_request_auth,
547
+ _content_type=_content_type,
548
+ _headers=_headers,
549
+ _host_index=_host_index,
550
+ )
551
+
552
+ @validate_call
553
+ def user_list_with_http_info(
554
+ self,
555
+ _request_timeout: Union[
556
+ None,
557
+ Annotated[StrictFloat, Field(gt=0)],
558
+ Tuple[
559
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
560
+ ],
561
+ ] = None,
562
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
563
+ _content_type: Optional[StrictStr] = None,
564
+ _headers: Optional[Dict[StrictStr, Any]] = None,
565
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
566
+ ) -> ApiResponse[List[Whoami200Response]]:
567
+ """User List with HTTP info
568
+
569
+ This method can work in both sync and async modes based on the is_sync flag.
570
+ """
571
+ if self.is_sync:
572
+ return self._user_list_sync_with_http_info(
573
+ _request_timeout=_request_timeout,
574
+ _request_auth=_request_auth,
575
+ _content_type=_content_type,
576
+ _headers=_headers,
577
+ _host_index=_host_index,
578
+ )
579
+
580
+ else:
581
+ return self._user_list_async_with_http_info(
582
+ _request_timeout=_request_timeout,
583
+ _request_auth=_request_auth,
584
+ _content_type=_content_type,
585
+ _headers=_headers,
586
+ _host_index=_host_index,
587
+ )
588
+
589
+ @validate_call
590
+ def user_list_without_preload_content(
591
+ self,
592
+ _request_timeout: Union[
593
+ None,
594
+ Annotated[StrictFloat, Field(gt=0)],
595
+ Tuple[
596
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
597
+ ],
598
+ ] = None,
599
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
600
+ _content_type: Optional[StrictStr] = None,
601
+ _headers: Optional[Dict[StrictStr, Any]] = None,
602
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
603
+ ) -> RESTResponseType:
604
+ """User List without preloading content
605
+
606
+ This method can work in both sync and async modes based on the is_sync flag.
607
+ """
608
+ if self.is_sync:
609
+ return self._user_list_sync_without_preload_content(
610
+ _request_timeout=_request_timeout,
611
+ _request_auth=_request_auth,
612
+ _content_type=_content_type,
613
+ _headers=_headers,
614
+ _host_index=_host_index,
615
+ )
616
+
617
+ else:
618
+ return self._user_list_async_without_preload_content(
619
+ _request_timeout=_request_timeout,
620
+ _request_auth=_request_auth,
621
+ _content_type=_content_type,
622
+ _headers=_headers,
623
+ _host_index=_host_index,
624
+ )
625
+
626
+ # Private async implementation methods
627
+ @validate_call
628
+ async def _user_list_async(
299
629
  self,
300
630
  _request_timeout: Union[
301
631
  None,
@@ -355,7 +685,7 @@ class AdminApi:
355
685
  ).data
356
686
 
357
687
  @validate_call
358
- async def user_list_with_http_info(
688
+ async def _user_list_async_with_http_info(
359
689
  self,
360
690
  _request_timeout: Union[
361
691
  None,
@@ -410,12 +740,11 @@ class AdminApi:
410
740
  )
411
741
  await response_data.read()
412
742
  return self.api_client.response_deserialize(
413
- response_data=response_data,
414
- response_types_map=_response_types_map,
743
+ response_data=response_data, response_types_map=_response_types_map
415
744
  )
416
745
 
417
746
  @validate_call
418
- async def user_list_without_preload_content(
747
+ async def _user_list_async_without_preload_content(
419
748
  self,
420
749
  _request_timeout: Union[
421
750
  None,
@@ -468,7 +797,80 @@ class AdminApi:
468
797
  response_data = await self.api_client.call_api(
469
798
  *_param, _request_timeout=_request_timeout
470
799
  )
471
- return response_data.response
800
+ return response_data
801
+
802
+ # Private sync implementation methods
803
+ @validate_call
804
+ def _user_list_sync(
805
+ self,
806
+ _request_timeout: Union[
807
+ None,
808
+ Annotated[StrictFloat, Field(gt=0)],
809
+ Tuple[
810
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
811
+ ],
812
+ ] = None,
813
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
814
+ _content_type: Optional[StrictStr] = None,
815
+ _headers: Optional[Dict[StrictStr, Any]] = None,
816
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
817
+ ) -> List[Whoami200Response]:
818
+ """Synchronous version of user_list"""
819
+ return async_to_sync(self._user_list_async)(
820
+ _request_timeout=_request_timeout,
821
+ _request_auth=_request_auth,
822
+ _content_type=_content_type,
823
+ _headers=_headers,
824
+ _host_index=_host_index,
825
+ )
826
+
827
+ @validate_call
828
+ def _user_list_sync_with_http_info(
829
+ self,
830
+ _request_timeout: Union[
831
+ None,
832
+ Annotated[StrictFloat, Field(gt=0)],
833
+ Tuple[
834
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
835
+ ],
836
+ ] = None,
837
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
838
+ _content_type: Optional[StrictStr] = None,
839
+ _headers: Optional[Dict[StrictStr, Any]] = None,
840
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
841
+ ) -> ApiResponse[List[Whoami200Response]]:
842
+ """Synchronous version of user_list_with_http_info"""
843
+ return async_to_sync(self._user_list_async_with_http_info)(
844
+ _request_timeout=_request_timeout,
845
+ _request_auth=_request_auth,
846
+ _content_type=_content_type,
847
+ _headers=_headers,
848
+ _host_index=_host_index,
849
+ )
850
+
851
+ @validate_call
852
+ def _user_list_sync_without_preload_content(
853
+ self,
854
+ _request_timeout: Union[
855
+ None,
856
+ Annotated[StrictFloat, Field(gt=0)],
857
+ Tuple[
858
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
859
+ ],
860
+ ] = None,
861
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
862
+ _content_type: Optional[StrictStr] = None,
863
+ _headers: Optional[Dict[StrictStr, Any]] = None,
864
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
865
+ ) -> RESTResponseType:
866
+ """Synchronous version of user_list_without_preload_content"""
867
+ return async_to_sync(self._user_list_async_without_preload_content)(
868
+ _request_timeout=_request_timeout,
869
+ _request_auth=_request_auth,
870
+ _content_type=_content_type,
871
+ _headers=_headers,
872
+ _host_index=_host_index,
873
+ )
472
874
 
473
875
  def _user_list_serialize(
474
876
  self,