@vansite/ts-sharetribe-flex-sdk 1.0.33 → 2.0.0

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 (271) hide show
  1. package/README.md +1 -1
  2. package/dist/endpoints/assets/index.d.ts +47 -0
  3. package/dist/endpoints/auth/index.d.ts +45 -0
  4. package/dist/endpoints/integrationApi/AvailabilityExceptions.d.ts +66 -0
  5. package/dist/endpoints/integrationApi/Events.d.ts +43 -0
  6. package/dist/endpoints/integrationApi/Images.d.ts +36 -0
  7. package/dist/endpoints/integrationApi/Listings.d.ts +87 -0
  8. package/dist/endpoints/integrationApi/Marketplace.d.ts +30 -0
  9. package/dist/endpoints/integrationApi/Stock.d.ts +42 -0
  10. package/dist/endpoints/integrationApi/StockAdjustments.d.ts +64 -0
  11. package/dist/{types/endpoints/integrationApi/StockReservation.d.ts → endpoints/integrationApi/StockReservations.d.ts} +3 -4
  12. package/dist/endpoints/integrationApi/Transactions.d.ts +76 -0
  13. package/dist/endpoints/integrationApi/Users.d.ts +72 -0
  14. package/dist/endpoints/integrationApi/index.d.ts +58 -0
  15. package/dist/endpoints/marketplace/AvailabilityExceptions.d.ts +69 -0
  16. package/dist/endpoints/marketplace/Bookings.d.ts +45 -0
  17. package/dist/endpoints/marketplace/CurrentUser.d.ts +110 -0
  18. package/dist/endpoints/marketplace/Images.d.ts +38 -0
  19. package/dist/endpoints/marketplace/Listings.d.ts +52 -0
  20. package/dist/endpoints/marketplace/Marketplace.d.ts +33 -0
  21. package/dist/endpoints/marketplace/Messages.d.ts +51 -0
  22. package/dist/endpoints/marketplace/OwnListings.d.ts +116 -0
  23. package/dist/endpoints/marketplace/PasswordReset.d.ts +50 -0
  24. package/dist/endpoints/marketplace/ProcessTransitions.d.ts +42 -0
  25. package/dist/endpoints/marketplace/Reviews.d.ts +49 -0
  26. package/dist/endpoints/marketplace/Stock.d.ts +50 -0
  27. package/dist/endpoints/marketplace/StockAdjustments.d.ts +64 -0
  28. package/dist/endpoints/marketplace/StripeAccount.d.ts +56 -0
  29. package/dist/endpoints/marketplace/StripeAccountLinks.d.ts +42 -0
  30. package/dist/endpoints/marketplace/StripeCustomer.d.ts +62 -0
  31. package/dist/endpoints/marketplace/StripePersons.d.ts +37 -0
  32. package/dist/endpoints/marketplace/StripeSetupIntents.d.ts +42 -0
  33. package/dist/endpoints/marketplace/TimeSlots.d.ts +40 -0
  34. package/dist/endpoints/marketplace/Transactions.d.ts +89 -0
  35. package/dist/endpoints/marketplace/Users.d.ts +34 -0
  36. package/dist/endpoints/marketplace/index.d.ts +80 -0
  37. package/dist/index.d.ts +161 -0
  38. package/dist/index.js +3 -0
  39. package/dist/{ts-sharetribe-flex-sdk.cjs.LICENSE.txt → index.js.LICENSE.txt} +53 -41
  40. package/dist/index.js.map +1 -0
  41. package/dist/index.mjs +3 -0
  42. package/dist/{ts-sharetribe-flex-sdk.js.LICENSE.txt → index.mjs.LICENSE.txt} +13 -5
  43. package/dist/index.mjs.map +1 -0
  44. package/dist/index.umd.js +3 -0
  45. package/dist/{ts-sharetribe-flex-sdk.mjs.LICENSE.txt → index.umd.js.LICENSE.txt} +13 -5
  46. package/dist/index.umd.js.map +1 -0
  47. package/dist/integrationSdk.d.ts +119 -0
  48. package/dist/sdk.d.ts +211 -0
  49. package/dist/sdkTypes/BigDecimal.d.ts +30 -0
  50. package/dist/sdkTypes/LatLng.d.ts +34 -0
  51. package/dist/sdkTypes/LatLngBounds.d.ts +51 -0
  52. package/dist/sdkTypes/Money.d.ts +28 -0
  53. package/dist/sdkTypes/UUID.d.ts +38 -0
  54. package/dist/types/apiConfigs.d.ts +104 -0
  55. package/dist/types/assets/index.d.ts +101 -0
  56. package/dist/types/authentication/index.d.ts +152 -0
  57. package/dist/types/axios.d.ts +10 -0
  58. package/dist/types/config.d.ts +99 -0
  59. package/dist/types/endpoints/assets/index.d.ts +22 -36
  60. package/dist/types/endpoints/assets/index.d.ts.map +1 -1
  61. package/dist/types/endpoints/auth/index.d.ts +20 -41
  62. package/dist/types/endpoints/auth/index.d.ts.map +1 -1
  63. package/dist/types/endpoints/integrationApi/AvailabilityExceptions.d.ts +30 -49
  64. package/dist/types/endpoints/integrationApi/AvailabilityExceptions.d.ts.map +1 -1
  65. package/dist/types/endpoints/integrationApi/Events.d.ts +23 -27
  66. package/dist/types/endpoints/integrationApi/Events.d.ts.map +1 -1
  67. package/dist/types/endpoints/integrationApi/Images.d.ts +17 -28
  68. package/dist/types/endpoints/integrationApi/Images.d.ts.map +1 -1
  69. package/dist/types/endpoints/integrationApi/Listings.d.ts +42 -104
  70. package/dist/types/endpoints/integrationApi/Listings.d.ts.map +1 -1
  71. package/dist/types/endpoints/integrationApi/Marketplace.d.ts +12 -20
  72. package/dist/types/endpoints/integrationApi/Marketplace.d.ts.map +1 -1
  73. package/dist/types/endpoints/integrationApi/Stock.d.ts +22 -28
  74. package/dist/types/endpoints/integrationApi/Stock.d.ts.map +1 -1
  75. package/dist/types/endpoints/integrationApi/StockAdjustments.d.ts +35 -35
  76. package/dist/types/endpoints/integrationApi/StockAdjustments.d.ts.map +1 -1
  77. package/dist/types/endpoints/integrationApi/StockReservations.d.ts +43 -0
  78. package/dist/types/endpoints/integrationApi/StockReservations.d.ts.map +1 -0
  79. package/dist/types/endpoints/integrationApi/Transactions.d.ts +36 -80
  80. package/dist/types/endpoints/integrationApi/Transactions.d.ts.map +1 -1
  81. package/dist/types/endpoints/integrationApi/Users.d.ts +35 -70
  82. package/dist/types/endpoints/integrationApi/Users.d.ts.map +1 -1
  83. package/dist/types/endpoints/integrationApi/index.d.ts +40 -40
  84. package/dist/types/endpoints/integrationApi/index.d.ts.map +1 -1
  85. package/dist/types/endpoints/marketplace/AvailabilityExceptions.d.ts +34 -48
  86. package/dist/types/endpoints/marketplace/AvailabilityExceptions.d.ts.map +1 -1
  87. package/dist/types/endpoints/marketplace/Bookings.d.ts +24 -23
  88. package/dist/types/endpoints/marketplace/Bookings.d.ts.map +1 -1
  89. package/dist/types/endpoints/marketplace/CurrentUser.d.ts +54 -125
  90. package/dist/types/endpoints/marketplace/CurrentUser.d.ts.map +1 -1
  91. package/dist/types/endpoints/marketplace/Images.d.ts +19 -27
  92. package/dist/types/endpoints/marketplace/Images.d.ts.map +1 -1
  93. package/dist/types/endpoints/marketplace/Listings.d.ts +26 -25
  94. package/dist/types/endpoints/marketplace/Listings.d.ts.map +1 -1
  95. package/dist/types/endpoints/marketplace/Marketplace.d.ts +15 -19
  96. package/dist/types/endpoints/marketplace/Marketplace.d.ts.map +1 -1
  97. package/dist/types/endpoints/marketplace/Messages.d.ts +24 -29
  98. package/dist/types/endpoints/marketplace/Messages.d.ts.map +1 -1
  99. package/dist/types/endpoints/marketplace/OwnListings.d.ts +55 -119
  100. package/dist/types/endpoints/marketplace/OwnListings.d.ts.map +1 -1
  101. package/dist/types/endpoints/marketplace/PasswordReset.d.ts +23 -35
  102. package/dist/types/endpoints/marketplace/PasswordReset.d.ts.map +1 -1
  103. package/dist/types/endpoints/marketplace/ProcessTransitions.d.ts +22 -22
  104. package/dist/types/endpoints/marketplace/ProcessTransitions.d.ts.map +1 -1
  105. package/dist/types/endpoints/marketplace/Reviews.d.ts +23 -25
  106. package/dist/types/endpoints/marketplace/Reviews.d.ts.map +1 -1
  107. package/dist/types/endpoints/marketplace/Stock.d.ts +30 -26
  108. package/dist/types/endpoints/marketplace/Stock.d.ts.map +1 -1
  109. package/dist/types/endpoints/marketplace/StockAdjustments.d.ts +36 -34
  110. package/dist/types/endpoints/marketplace/StockAdjustments.d.ts.map +1 -1
  111. package/dist/types/endpoints/marketplace/StripeAccount.d.ts +28 -49
  112. package/dist/types/endpoints/marketplace/StripeAccount.d.ts.map +1 -1
  113. package/dist/types/endpoints/marketplace/StripeAccountLinks.d.ts +22 -31
  114. package/dist/types/endpoints/marketplace/StripeAccountLinks.d.ts.map +1 -1
  115. package/dist/types/endpoints/marketplace/StripeCustomer.d.ts +32 -46
  116. package/dist/types/endpoints/marketplace/StripeCustomer.d.ts.map +1 -1
  117. package/dist/types/endpoints/marketplace/StripePersons.d.ts +17 -25
  118. package/dist/types/endpoints/marketplace/StripePersons.d.ts.map +1 -1
  119. package/dist/types/endpoints/marketplace/StripeSetupIntents.d.ts +24 -24
  120. package/dist/types/endpoints/marketplace/StripeSetupIntents.d.ts.map +1 -1
  121. package/dist/types/endpoints/marketplace/TimeSlots.d.ts +20 -23
  122. package/dist/types/endpoints/marketplace/TimeSlots.d.ts.map +1 -1
  123. package/dist/types/endpoints/marketplace/Transactions.d.ts +45 -81
  124. package/dist/types/endpoints/marketplace/Transactions.d.ts.map +1 -1
  125. package/dist/types/endpoints/marketplace/Users.d.ts +15 -22
  126. package/dist/types/endpoints/marketplace/Users.d.ts.map +1 -1
  127. package/dist/types/endpoints/marketplace/index.d.ts +50 -40
  128. package/dist/types/endpoints/marketplace/index.d.ts.map +1 -1
  129. package/dist/types/index.d.ts +15 -30
  130. package/dist/types/index.d.ts.map +1 -1
  131. package/dist/types/integration/events.d.ts +87 -0
  132. package/dist/types/integrationSdk.d.ts +4 -5
  133. package/dist/types/integrationSdk.d.ts.map +1 -1
  134. package/dist/types/marketplace/availabilityExceptions.d.ts +99 -0
  135. package/dist/types/marketplace/availabilityPlan.d.ts +17 -0
  136. package/dist/types/marketplace/bookings.d.ts +80 -0
  137. package/dist/types/marketplace/currentUser.d.ts +202 -0
  138. package/dist/types/marketplace/images.d.ts +65 -0
  139. package/dist/types/marketplace/listings.d.ts +169 -0
  140. package/dist/types/marketplace/marketplace.d.ts +30 -0
  141. package/dist/types/marketplace/messages.d.ts +87 -0
  142. package/dist/types/marketplace/ownListings.d.ts +155 -0
  143. package/dist/types/marketplace/passwordReset.d.ts +54 -0
  144. package/dist/types/marketplace/processTransitions.d.ts +56 -0
  145. package/dist/types/marketplace/reviews.d.ts +108 -0
  146. package/dist/types/marketplace/stock.d.ts +45 -0
  147. package/dist/types/marketplace/stockAdjustment.d.ts +97 -0
  148. package/dist/types/marketplace/stockReservations.d.ts +89 -0
  149. package/dist/types/marketplace/stripeAccount.d.ts +67 -0
  150. package/dist/types/marketplace/stripeAccountLinks.d.ts +55 -0
  151. package/dist/types/marketplace/stripeCustomer.d.ts +94 -0
  152. package/dist/types/marketplace/stripePaymentMethod.d.ts +21 -0
  153. package/dist/types/marketplace/stripePersons.d.ts +48 -0
  154. package/dist/types/marketplace/stripeSetupIntents.d.ts +48 -0
  155. package/dist/types/marketplace/timeSlots.d.ts +51 -0
  156. package/dist/types/marketplace/transactions.d.ts +200 -0
  157. package/dist/types/marketplace/user.d.ts +200 -0
  158. package/dist/types/sdk-types.d.ts +10 -0
  159. package/dist/types/sdk.d.ts +6 -7
  160. package/dist/types/sdk.d.ts.map +1 -1
  161. package/dist/types/sdkTypes/BigDecimal.d.ts +1 -1
  162. package/dist/types/sdkTypes/BigDecimal.d.ts.map +1 -1
  163. package/dist/types/sdkTypes/LatLng.d.ts +1 -1
  164. package/dist/types/sdkTypes/LatLng.d.ts.map +1 -1
  165. package/dist/types/sdkTypes/LatLngBounds.d.ts +1 -1
  166. package/dist/types/sdkTypes/LatLngBounds.d.ts.map +1 -1
  167. package/dist/types/sdkTypes/Money.d.ts +1 -1
  168. package/dist/types/sdkTypes/Money.d.ts.map +1 -1
  169. package/dist/types/sdkTypes/UUID.d.ts +1 -1
  170. package/dist/types/sdkTypes/UUID.d.ts.map +1 -1
  171. package/dist/types/sharetribe.d.ts +227 -0
  172. package/dist/types/store.d.ts +22 -0
  173. package/dist/types/types/apiConfigs.d.ts.map +1 -1
  174. package/dist/types/types/assets/index.d.ts +74 -36
  175. package/dist/types/types/assets/index.d.ts.map +1 -1
  176. package/dist/types/types/authentication/index.d.ts +111 -60
  177. package/dist/types/types/authentication/index.d.ts.map +1 -1
  178. package/dist/types/types/axios.d.ts.map +1 -1
  179. package/dist/types/types/config.d.ts +1 -39
  180. package/dist/types/types/config.d.ts.map +1 -1
  181. package/dist/types/types/integration/events.d.ts +52 -20
  182. package/dist/types/types/integration/events.d.ts.map +1 -1
  183. package/dist/types/types/marketplace/availabilityExceptions.d.ts +59 -16
  184. package/dist/types/types/marketplace/availabilityExceptions.d.ts.map +1 -1
  185. package/dist/types/types/marketplace/availabilityPlan.d.ts +18 -0
  186. package/dist/types/types/marketplace/availabilityPlan.d.ts.map +1 -0
  187. package/dist/types/types/marketplace/bookings.d.ts +48 -14
  188. package/dist/types/types/marketplace/bookings.d.ts.map +1 -1
  189. package/dist/types/types/marketplace/currentUser.d.ts +99 -55
  190. package/dist/types/types/marketplace/currentUser.d.ts.map +1 -1
  191. package/dist/types/types/marketplace/images.d.ts +40 -14
  192. package/dist/types/types/marketplace/images.d.ts.map +1 -1
  193. package/dist/types/types/marketplace/listings.d.ts +96 -66
  194. package/dist/types/types/marketplace/listings.d.ts.map +1 -1
  195. package/dist/types/types/marketplace/marketplace.d.ts +16 -6
  196. package/dist/types/types/marketplace/marketplace.d.ts.map +1 -1
  197. package/dist/types/types/marketplace/messages.d.ts +53 -15
  198. package/dist/types/types/marketplace/messages.d.ts.map +1 -1
  199. package/dist/types/types/marketplace/ownListings.d.ts +92 -65
  200. package/dist/types/types/marketplace/ownListings.d.ts.map +1 -1
  201. package/dist/types/types/marketplace/passwordReset.d.ts +32 -9
  202. package/dist/types/types/marketplace/passwordReset.d.ts.map +1 -1
  203. package/dist/types/types/marketplace/processTransitions.d.ts +33 -14
  204. package/dist/types/types/marketplace/processTransitions.d.ts.map +1 -1
  205. package/dist/types/types/marketplace/reviews.d.ts +72 -23
  206. package/dist/types/types/marketplace/reviews.d.ts.map +1 -1
  207. package/dist/types/types/marketplace/stock.d.ts +23 -6
  208. package/dist/types/types/marketplace/stock.d.ts.map +1 -1
  209. package/dist/types/types/marketplace/stockAdjustment.d.ts +60 -14
  210. package/dist/types/types/marketplace/stockAdjustment.d.ts.map +1 -1
  211. package/dist/types/types/marketplace/stockReservations.d.ts +59 -14
  212. package/dist/types/types/marketplace/stockReservations.d.ts.map +1 -1
  213. package/dist/types/types/marketplace/stripeAccount.d.ts +28 -5
  214. package/dist/types/types/marketplace/stripeAccount.d.ts.map +1 -1
  215. package/dist/types/types/marketplace/stripeAccountLinks.d.ts +26 -6
  216. package/dist/types/types/marketplace/stripeAccountLinks.d.ts.map +1 -1
  217. package/dist/types/types/marketplace/stripeCustomer.d.ts +60 -13
  218. package/dist/types/types/marketplace/stripeCustomer.d.ts.map +1 -1
  219. package/dist/types/types/marketplace/stripePaymentMethod.d.ts +1 -2
  220. package/dist/types/types/marketplace/stripePaymentMethod.d.ts.map +1 -1
  221. package/dist/types/types/marketplace/stripePersons.d.ts +17 -15
  222. package/dist/types/types/marketplace/stripePersons.d.ts.map +1 -1
  223. package/dist/types/types/marketplace/stripeSetupIntents.d.ts +16 -14
  224. package/dist/types/types/marketplace/stripeSetupIntents.d.ts.map +1 -1
  225. package/dist/types/types/marketplace/timeSlots.d.ts +13 -15
  226. package/dist/types/types/marketplace/timeSlots.d.ts.map +1 -1
  227. package/dist/types/types/marketplace/transactions.d.ts +77 -83
  228. package/dist/types/types/marketplace/transactions.d.ts.map +1 -1
  229. package/dist/types/types/marketplace/user.d.ts +85 -64
  230. package/dist/types/types/marketplace/user.d.ts.map +1 -1
  231. package/dist/types/types/sharetribe.d.ts +130 -92
  232. package/dist/types/types/sharetribe.d.ts.map +1 -1
  233. package/dist/types/types/store.d.ts +3 -14
  234. package/dist/types/types/store.d.ts.map +1 -1
  235. package/dist/types/utils/apis.d.ts +1 -1
  236. package/dist/types/utils/apis.d.ts.map +1 -1
  237. package/dist/types/utils/config.d.ts.map +1 -1
  238. package/dist/types/utils/convert-types.d.ts.map +1 -1
  239. package/dist/types/utils/parameter-serializer.d.ts.map +1 -1
  240. package/dist/types/utils/prepare-axios-instance.d.ts +1 -1
  241. package/dist/types/utils/prepare-axios-instance.d.ts.map +1 -1
  242. package/dist/types/utils/stores/BrowserStore.d.ts +1 -2
  243. package/dist/types/utils/stores/BrowserStore.d.ts.map +1 -1
  244. package/dist/types/utils/stores/ExpressStore.d.ts +6 -7
  245. package/dist/types/utils/stores/ExpressStore.d.ts.map +1 -1
  246. package/dist/types/utils/stores/MemoryStore.d.ts +1 -2
  247. package/dist/types/utils/stores/MemoryStore.d.ts.map +1 -1
  248. package/dist/types/utils/stores/store.d.ts.map +1 -1
  249. package/dist/types/utils/transit.d.ts +1 -1
  250. package/dist/types/utils/transit.d.ts.map +1 -1
  251. package/dist/types/utils/util.d.ts +2 -2
  252. package/dist/types/utils/util.d.ts.map +1 -1
  253. package/dist/utils/apis.d.ts +8 -0
  254. package/dist/utils/config.d.ts +32 -0
  255. package/dist/utils/convert-types.d.ts +13 -0
  256. package/dist/utils/parameter-serializer.d.ts +23 -0
  257. package/dist/utils/prepare-axios-instance.d.ts +14 -0
  258. package/dist/utils/stores/BrowserStore.d.ts +37 -0
  259. package/dist/utils/stores/ExpressStore.d.ts +48 -0
  260. package/dist/utils/stores/MemoryStore.d.ts +23 -0
  261. package/dist/utils/stores/store.d.ts +8 -0
  262. package/dist/utils/transit.d.ts +28 -0
  263. package/dist/utils/util.d.ts +15 -0
  264. package/package.json +18 -17
  265. package/dist/ts-sharetribe-flex-sdk.cjs +0 -3
  266. package/dist/ts-sharetribe-flex-sdk.cjs.map +0 -1
  267. package/dist/ts-sharetribe-flex-sdk.js +0 -3
  268. package/dist/ts-sharetribe-flex-sdk.js.map +0 -1
  269. package/dist/ts-sharetribe-flex-sdk.mjs +0 -3
  270. package/dist/ts-sharetribe-flex-sdk.mjs.map +0 -1
  271. package/dist/types/endpoints/integrationApi/StockReservation.d.ts.map +0 -1
@@ -1,10 +1,19 @@
1
1
  /**
2
- * @fileoverview Type definitions for managing the current user in the Sharetribe Marketplace API.
3
- * These types define the structure of current user-related parameters, responses, and relationships.
2
+ * @fileoverview Type definitions for Current User in the Sharetribe Marketplace API.
3
+ */
4
+ import { ApiParameter, ExtraParameterType, Relationship, RelationshipTypeMap, UUID } from "../sharetribe";
5
+ import { Permissions } from "./user";
6
+ /**
7
+ * Available endpoints
4
8
  */
5
- import { ApiParameter, ExtraParameter, ExtraParameterType, Relationship, RelationshipTypeMap, UUID } from "../sharetribe";
6
9
  export type CurrentUserEndpoints = "show" | "delete" | "create" | "create_with_idp" | "update_profile" | "change_password" | "change_email" | "verify_email" | "send_verification_email";
10
+ /**
11
+ * Relationship fields
12
+ */
7
13
  export type CurrentUserRelationshipsFields = "marketplace" | "profileImage" | "stripeAccount" | "stripeCustomer" | "stripeCustomer.defaultPaymentMethod" | "effectivePermissionSet";
14
+ /**
15
+ * Current User resource
16
+ */
8
17
  export interface CurrentUser {
9
18
  id: UUID;
10
19
  type: "currentUser";
@@ -14,7 +23,7 @@ export interface CurrentUser {
14
23
  createdAt: string;
15
24
  email: string;
16
25
  emailVerified: boolean;
17
- pendingEmail: boolean;
26
+ pendingEmail: string | null;
18
27
  stripeConnected: boolean;
19
28
  stripePayoutsEnabled: boolean;
20
29
  stripeChargesEnabled: boolean;
@@ -27,15 +36,18 @@ export interface CurrentUser {
27
36
  lastName: string;
28
37
  displayName: string;
29
38
  abbreviatedName: string;
30
- bio: string;
31
- publicData: CurrentUserProfilePublicData & CurrentUserCustomProfilePublicData;
32
- protectedData: CurrentUserProfileProtectedData & CurrentUserCustomProfileProtectedData;
33
- privateData: CurrentUserProfilePrivateData & CurrentUserCustomProfilePrivateData;
34
- metadata: CurrentUserProfileMetadata & CurrentUserCustomProfileMetadata;
39
+ bio: string | null;
40
+ publicData: CurrentUserPublicData & CurrentUserCustomPublicData;
41
+ protectedData: CurrentUserProtectedData & CurrentUserCustomProtectedData;
42
+ privateData: CurrentUserPrivateData & CurrentUserCustomPrivateData;
43
+ metadata: CurrentUserMetadata & CurrentUserCustomMetadata;
35
44
  };
36
45
  };
37
46
  }
38
- export interface DeleteCurrentUser {
47
+ /**
48
+ * Deleted user representation
49
+ */
50
+ export type DeletedCurrentUser = {
39
51
  id: UUID;
40
52
  type: "currentUser";
41
53
  attributes: {
@@ -61,29 +73,40 @@ export interface DeleteCurrentUser {
61
73
  metadata: null;
62
74
  };
63
75
  };
64
- }
65
- export interface CurrentUserPermissionSet {
66
- postListings: "POST /own_listings/create_draft" | "POST /own_listings/publish_draft" | "POST /own_listings/create" | "POST /own_listings/open";
67
- initiateTransactions: "POST /transactions/initiate";
68
- read: "GET /listings/query" | "GET /listings/show" | "GET /users/show" | "GET /timeslots/query" | "GET /reviews/query" | "GET /reviews/show";
69
- }
76
+ };
77
+ /**
78
+ * Current User permission set
79
+ */
80
+ export type CurrentUserPermissionSet = {
81
+ postListings: Permissions;
82
+ initiateTransactions: Permissions;
83
+ read: Permissions;
84
+ };
85
+ /**
86
+ * With relationships
87
+ */
70
88
  export interface CurrentUserWithRelationships extends CurrentUser {
71
89
  relationships: {
72
90
  marketplace: Relationship<false, "marketplace">;
73
- profileImage: Relationship<false, "image">;
74
- stripeAccount: Relationship<false, "stripeAccount">;
75
- stripeCustomer: Relationship<false, "stripeCustomer">;
76
- effectivePermissionSet: Relationship<false, "permissionSet">;
91
+ profileImage?: Relationship<false, "profileImage">;
92
+ stripeAccount?: Relationship<false, "stripeAccount">;
93
+ stripeCustomer?: Relationship<false, "stripeCustomer">;
94
+ effectivePermissionSet: Relationship<false, "effectivePermissionSet">;
77
95
  };
78
96
  }
79
- export type CurrentUserType<R extends boolean> = R extends true ? CurrentUserWithRelationships : CurrentUser;
97
+ export type CurrentUserResource<R extends boolean> = R extends true ? CurrentUserWithRelationships : CurrentUser;
98
+ /**
99
+ * Base request parameters
100
+ */
80
101
  export interface CurrentUserParameter extends ApiParameter {
81
102
  include?: CurrentUserRelationshipsFields[];
82
103
  }
83
- export interface CurrentUserShowParameter extends CurrentUserParameter {
84
- }
85
- export interface CurrentUserDeleteParameter {
86
- }
104
+ /**
105
+ * Endpoint parameters
106
+ */
107
+ export type CurrentUserShowParameter = CurrentUserParameter;
108
+ export type CurrentUserDeleteParameter = void;
109
+ export type CurrentUserSendVerificationEmailParameter = void;
87
110
  export interface CurrentUserCreateParameter extends CurrentUserParameter {
88
111
  email: string;
89
112
  password: string;
@@ -91,9 +114,9 @@ export interface CurrentUserCreateParameter extends CurrentUserParameter {
91
114
  lastName: string;
92
115
  displayName?: string;
93
116
  bio?: string;
94
- publicData?: unknown;
95
- protectedData?: unknown;
96
- privateData?: unknown;
117
+ publicData?: CurrentUserPublicData & CurrentUserCustomPublicData;
118
+ protectedData?: CurrentUserProtectedData & CurrentUserCustomProtectedData;
119
+ privateData?: CurrentUserPrivateData & CurrentUserCustomPrivateData;
97
120
  }
98
121
  export interface CurrentUserCreateWithIdpParameter extends CurrentUserCreateParameter {
99
122
  idpId: string;
@@ -104,56 +127,77 @@ export interface CurrentUserUpdateProfileParameter extends CurrentUserParameter
104
127
  firstName?: string;
105
128
  lastName?: string;
106
129
  displayName?: string;
107
- bio?: string;
108
- publicData?: unknown;
109
- protectedData?: unknown;
110
- privateData?: unknown;
111
- profileImageId?: string;
130
+ bio?: string | null;
131
+ publicData?: CurrentUserPublicData & CurrentUserCustomPublicData;
132
+ protectedData?: CurrentUserProtectedData & CurrentUserCustomProtectedData;
133
+ privateData?: CurrentUserPrivateData & CurrentUserCustomPrivateData;
134
+ profileImageId?: UUID | string;
112
135
  }
113
- export interface CurrentUserChangePasswordParameter extends CurrentUserParameter {
136
+ export interface CurrentUserChangePasswordParameter {
114
137
  currentPassword: string;
115
138
  newPassword: string;
116
139
  }
117
- export interface CurrentUserChangeEmailParameter extends CurrentUserParameter {
140
+ export interface CurrentUserChangeEmailParameter {
118
141
  currentPassword: string;
119
142
  email: string;
120
143
  }
121
- export interface CurrentUserVerifyEmailParameter extends CurrentUserParameter {
144
+ export interface CurrentUserVerifyEmailParameter {
122
145
  verificationToken: string;
123
146
  }
124
- export interface CurrentUserProfilePublicData {
147
+ /**
148
+ * Custom profile data
149
+ */
150
+ export interface CurrentUserPublicData {
125
151
  [key: string]: any;
126
152
  }
127
- export interface CurrentUserCustomProfilePublicData {
153
+ export interface CurrentUserCustomPublicData extends Record<string, unknown> {
128
154
  }
129
- export interface CurrentUserProfileProtectedData {
155
+ export interface CurrentUserProtectedData {
130
156
  [key: string]: any;
131
157
  }
132
- export interface CurrentUserCustomProfileProtectedData {
158
+ export interface CurrentUserCustomProtectedData extends Record<string, unknown> {
133
159
  }
134
- export interface CurrentUserProfilePrivateData {
160
+ export interface CurrentUserPrivateData {
135
161
  [key: string]: any;
136
162
  }
137
- export interface CurrentUserCustomProfilePrivateData {
163
+ export interface CurrentUserCustomPrivateData extends Record<string, unknown> {
138
164
  }
139
- export interface CurrentUserProfileMetadata {
165
+ export interface CurrentUserMetadata {
140
166
  [key: string]: any;
141
167
  }
142
- export interface CurrentUserCustomProfileMetadata {
168
+ export interface CurrentUserCustomMetadata extends Record<string, unknown> {
143
169
  }
144
- type AllCurrentUserParameter = CurrentUserShowParameter | CurrentUserDeleteParameter | CurrentUserCreateParameter | CurrentUserCreateWithIdpParameter | CurrentUserUpdateProfileParameter | CurrentUserChangePasswordParameter | CurrentUserChangeEmailParameter | CurrentUserVerifyEmailParameter | void;
145
- type CurrentUserTypeType<P extends AllCurrentUserParameter> = "include" extends keyof P ? P["include"] extends CurrentUserRelationshipsFields[] ? true : false : false;
146
- type IncludedType<P extends AllCurrentUserParameter> = "include" extends keyof P ? P["include"] extends (keyof RelationshipTypeMap)[] ? Array<RelationshipTypeMap[P["include"][number]]> : never : never;
147
- type ExpandReturnType<P extends AllCurrentUserParameter, EP> = EP extends {
170
+ /**
171
+ * All parameter types
172
+ */
173
+ type AllCurrentUserParameter = CurrentUserShowParameter | CurrentUserDeleteParameter | CurrentUserCreateParameter | CurrentUserCreateWithIdpParameter | CurrentUserUpdateProfileParameter | CurrentUserChangePasswordParameter | CurrentUserChangeEmailParameter | CurrentUserVerifyEmailParameter | CurrentUserSendVerificationEmailParameter;
174
+ /**
175
+ * Include detection — fixes TS2536
176
+ */
177
+ type HasInclude<P> = P extends {
178
+ include: infer I extends readonly CurrentUserRelationshipsFields[];
179
+ } ? I : never;
180
+ type IncludesRelationships<P> = HasInclude<P> extends never ? false : true;
181
+ type IncludedResources<P> = HasInclude<P> extends infer Fields extends CurrentUserRelationshipsFields[] ? RelationshipTypeMap[Fields[number]][] : never;
182
+ /**
183
+ * Expand behavior
184
+ */
185
+ type ExpandResult<T, EP extends ExtraParameterType | undefined> = EP extends {
148
186
  expand: true;
149
- } ? CurrentUserType<CurrentUserTypeType<P>> : EP extends {
187
+ } ? T : EP extends {
150
188
  expand: false;
151
- } ? Omit<CurrentUserType<CurrentUserTypeType<P>>, "attributes"> : CurrentUserType<CurrentUserTypeType<P>>;
152
- type DataType<E extends CurrentUserEndpoints, P extends AllCurrentUserParameter, EP extends ExtraParameter | undefined> = E extends "show" ? CurrentUserType<CurrentUserTypeType<P>> : E extends "delete" ? Pick<DeleteCurrentUser, "id" | "type"> : E extends "create" | "create_with_idp" | "update_profile" | "change_password" | "change_email" | "verify_email" ? ExpandReturnType<P, EP> : never;
153
- export type CurrentUserResponse<E extends CurrentUserEndpoints, P extends AllCurrentUserParameter, EP extends ExtraParameterType = undefined> = {
154
- data: DataType<E, P, EP>;
155
- } & ("include" extends keyof P ? {
156
- included: IncludedType<P>;
189
+ } ? Omit<T, "attributes"> : Omit<T, "attributes">;
190
+ /**
191
+ * Response data per endpoint
192
+ */
193
+ type ResponseData<E extends CurrentUserEndpoints, P extends AllCurrentUserParameter, EP extends ExtraParameterType | undefined> = E extends "show" ? CurrentUserResource<IncludesRelationships<P>> : E extends "delete" ? Pick<DeletedCurrentUser, "id" | "type"> : E extends "create" | "create_with_idp" | "update_profile" | "change_password" | "change_email" | "verify_email" | "send_verification_email" ? ExpandResult<CurrentUserResource<IncludesRelationships<P>>, EP> : never;
194
+ /**
195
+ * Final response type
196
+ */
197
+ export type CurrentUserResponse<E extends CurrentUserEndpoints, P extends AllCurrentUserParameter, EP extends ExtraParameterType | undefined = undefined> = {
198
+ data: ResponseData<E, P, EP>;
199
+ } & (IncludesRelationships<P> extends true ? {
200
+ included: IncludedResources<P>;
157
201
  } : {});
158
202
  export {};
159
203
  //# sourceMappingURL=currentUser.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"currentUser.d.ts","sourceRoot":"","sources":["../../../../src/types/marketplace/currentUser.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"currentUser.d.ts","sourceRoot":"","sources":["../../../../src/types/marketplace/currentUser.ts"],"names":[],"mappings":"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"}
@@ -1,40 +1,66 @@
1
1
  /**
2
- * @fileoverview Type definitions for managing images in the Sharetribe Marketplace API.
3
- * These types define the structure for image parameters, responses, and variants.
2
+ * @fileoverview Type definitions for Images in the Sharetribe Marketplace API.
3
+ */
4
+ import { ApiParameter, ExtraParameterType, UUID } from "../sharetribe";
5
+ /**
6
+ * Available endpoints
4
7
  */
5
- import { ApiParameter, ExtraParameter, ExtraParameterType, UUID } from "../sharetribe";
6
8
  export type ImagesEndpoints = "upload";
7
- export type ImageVariantNames = "default" | "landscape-crop" | "landscape-crop2x" | "landscape-crop4x" | "landscape-crop6x" | "scaled-small" | "scaled-medium" | "scaled-large" | "scaled-xlarge" | "square-small" | "square-small2x" | "facebook" | "twitter";
8
- export type ImageVariants = {
9
- height: number;
9
+ /**
10
+ * Standard image variant names
11
+ */
12
+ export type ImageVariantName = "default" | "landscape-crop" | "landscape-crop2x" | "landscape-crop4x" | "landscape-crop6x" | "scaled-small" | "scaled-medium" | "scaled-large" | "scaled-xlarge" | "square-small" | "square-small2x" | "facebook" | "twitter";
13
+ /**
14
+ * Image variant object
15
+ */
16
+ export interface ImageVariant {
10
17
  width: number;
18
+ height: number;
11
19
  url: string;
12
- name: ImageVariantNames;
13
- };
20
+ name: ImageVariantName;
21
+ }
22
+ /**
23
+ * Image resource
24
+ */
14
25
  export interface Image {
15
26
  id: UUID;
16
27
  type: "image";
17
28
  attributes: {
18
29
  variants: {
19
- [key in ImageVariantNames]?: ImageVariants;
30
+ [K in ImageVariantName]?: ImageVariant;
20
31
  } & {
21
- [key: string]: ImageVariants | undefined;
32
+ [key: string]: ImageVariant | undefined;
22
33
  };
23
34
  };
24
35
  }
36
+ /**
37
+ * Base request parameters
38
+ */
25
39
  export interface ImagesParameter extends ApiParameter {
26
40
  }
41
+ /**
42
+ * Upload endpoint parameters
43
+ */
27
44
  export interface ImagesUploadParameter extends ImagesParameter {
28
45
  image: File;
29
46
  }
30
- type ExpandReturnType<EP> = EP extends {
47
+ /**
48
+ * Expand behavior
49
+ */
50
+ type ExpandResult<EP extends ExtraParameterType | undefined> = EP extends {
31
51
  expand: true;
32
52
  } ? Image : EP extends {
33
53
  expand: false;
34
54
  } ? Omit<Image, "attributes"> : Omit<Image, "attributes">;
35
- type DataType<E extends ImagesEndpoints, EP extends ExtraParameter | undefined> = E extends "upload" ? ExpandReturnType<EP> : never;
36
- export type ImagesResponse<E extends ImagesEndpoints, EP extends ExtraParameterType = undefined> = {
37
- data: DataType<E, EP>;
55
+ /**
56
+ * Response data per endpoint
57
+ */
58
+ type ResponseData<E extends ImagesEndpoints, EP extends ExtraParameterType | undefined> = E extends "upload" ? ExpandResult<EP> : never;
59
+ /**
60
+ * Final response type
61
+ */
62
+ export type ImagesResponse<E extends ImagesEndpoints = "upload", EP extends ExtraParameterType | undefined = undefined> = {
63
+ data: ResponseData<E, EP>;
38
64
  };
39
65
  export {};
40
66
  //# sourceMappingURL=images.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"images.d.ts","sourceRoot":"","sources":["../../../../src/types/marketplace/images.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EACL,YAAY,EACZ,cAAc,EACd,kBAAkB,EAClB,IAAI,EACL,MAAM,eAAe,CAAC;AAGvB,MAAM,MAAM,eAAe,GAAG,QAAQ,CAAC;AAGvC,MAAM,MAAM,iBAAiB,GACzB,SAAS,GACT,gBAAgB,GAChB,kBAAkB,GAClB,kBAAkB,GAClB,kBAAkB,GAClB,cAAc,GACd,eAAe,GACf,cAAc,GACd,eAAe,GACf,cAAc,GACd,gBAAgB,GAChB,UAAU,GACV,SAAS,CAAC;AAGd,MAAM,MAAM,aAAa,GAAG;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,iBAAiB,CAAC;CACzB,CAAC;AAGF,MAAM,WAAW,KAAK;IACpB,EAAE,EAAE,IAAI,CAAC;IACT,IAAI,EAAE,OAAO,CAAC;IACd,UAAU,EAAE;QACV,QAAQ,EAAE;aACP,GAAG,IAAI,iBAAiB,CAAC,CAAC,EAAE,aAAa;SAC3C,GAAG;YACF,CAAC,GAAG,EAAE,MAAM,GAAG,aAAa,GAAG,SAAS,CAAC;SAC1C,CAAC;KACH,CAAC;CACH;AAGD,MAAM,WAAW,eAAgB,SAAQ,YAAY;CAAG;AAGxD,MAAM,WAAW,qBAAsB,SAAQ,eAAe;IAC5D,KAAK,EAAE,IAAI,CAAC;CACb;AAGD,KAAK,gBAAgB,CAAC,EAAE,IAAI,EAAE,SAAS;IAAE,MAAM,EAAE,IAAI,CAAA;CAAE,GACnD,KAAK,GACL,EAAE,SAAS;IAAE,MAAM,EAAE,KAAK,CAAA;CAAE,GAC5B,IAAI,CAAC,KAAK,EAAE,YAAY,CAAC,GACzB,IAAI,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;AAG9B,KAAK,QAAQ,CACX,CAAC,SAAS,eAAe,EACzB,EAAE,SAAS,cAAc,GAAG,SAAS,IACnC,CAAC,SAAS,QAAQ,GAAG,gBAAgB,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC;AAGtD,MAAM,MAAM,cAAc,CACxB,CAAC,SAAS,eAAe,EACzB,EAAE,SAAS,kBAAkB,GAAG,SAAS,IACvC;IACF,IAAI,EAAE,QAAQ,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;CACvB,CAAC"}
1
+ {"version":3,"file":"images.d.ts","sourceRoot":"","sources":["../../../../src/types/marketplace/images.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAC,YAAY,EAAE,kBAAkB,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAEtE;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG,QAAQ,CAAC;AAEvC;;GAEG;AACH,MAAM,MAAM,gBAAgB,GACxB,SAAS,GACT,gBAAgB,GAChB,kBAAkB,GAClB,kBAAkB,GAClB,kBAAkB,GAClB,cAAc,GACd,eAAe,GACf,cAAc,GACd,eAAe,GACf,cAAc,GACd,gBAAgB,GAChB,UAAU,GACV,SAAS,CAAC;AAEd;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,gBAAgB,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,KAAK;IACpB,EAAE,EAAE,IAAI,CAAC;IACT,IAAI,EAAE,OAAO,CAAC;IACd,UAAU,EAAE;QACV,QAAQ,EAAE;aACP,CAAC,IAAI,gBAAgB,CAAC,CAAC,EAAE,YAAY;SACvC,GAAG;YACF,CAAC,GAAG,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS,CAAC;SACzC,CAAC;KACH,CAAC;CACH;AAED;;GAEG;AACH,MAAM,WAAW,eAAgB,SAAQ,YAAY;CACpD;AAED;;GAEG;AACH,MAAM,WAAW,qBAAsB,SAAQ,eAAe;IAC5D,KAAK,EAAE,IAAI,CAAC;CACb;AAED;;GAEG;AACH,KAAK,YAAY,CAAC,EAAE,SAAS,kBAAkB,GAAG,SAAS,IACzD,EAAE,SAAS;IAAE,MAAM,EAAE,IAAI,CAAA;CAAE,GACvB,KAAK,GACL,EAAE,SAAS;IAAE,MAAM,EAAE,KAAK,CAAA;CAAE,GAC1B,IAAI,CAAC,KAAK,EAAE,YAAY,CAAC,GACzB,IAAI,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;AAElC;;GAEG;AACH,KAAK,YAAY,CACf,CAAC,SAAS,eAAe,EACzB,EAAE,SAAS,kBAAkB,GAAG,SAAS,IACvC,CAAC,SAAS,QAAQ,GAAG,YAAY,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC;AAElD;;GAEG;AACH,MAAM,MAAM,cAAc,CACxB,CAAC,SAAS,eAAe,GAAG,QAAQ,EACpC,EAAE,SAAS,kBAAkB,GAAG,SAAS,GAAG,SAAS,IACnD;IACF,IAAI,EAAE,YAAY,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;CAC3B,CAAC"}
@@ -1,60 +1,69 @@
1
1
  /**
2
- * @fileoverview Type definitions for managing listings in the Sharetribe Marketplace API.
3
- * These types define the structure for listing parameters, attributes, relationships, and responses.
2
+ * @fileoverview Type definitions for Listings in the Sharetribe Marketplace API.
3
+ */
4
+ import { ApiMeta, ApiParameter, ExtraParameterType, LatLng, LatLngBounds, Money, QueryMeta, QueryPub, Relationship, RelationshipTypeMap, UUID } from "../sharetribe";
5
+ import { AvailabilityPlan } from "./availabilityPlan";
6
+ /**
7
+ * Public listing states
4
8
  */
5
- import { ApiMeta, ApiParameter, ExtraParameter, ExtraParameterType, LatLng, Money, QueryMeta, QueryPub, Relationship, RelationshipTypeMap, UUID } from "../sharetribe";
6
- import LatLngBounds from "../../sdkTypes/LatLngBounds";
7
- export type ListingsEndpoints = "show" | "query" | "create" | "update" | "close" | "open" | "approve";
8
- export type ListingsRelationshipsFields = "marketplace" | "author" | "author.profileImage" | "author.marketplace" | "author.stripeAccount" | "author.effectivePermissionSet" | "images" | "currentStock";
9
9
  export type ListingState = "published" | "closed" | "draft" | "pendingApproval";
10
+ /**
11
+ * Availability mode returned in query results
12
+ */
10
13
  export type ListingAvailability = "day-full" | "day-partial" | "time-full" | "time-partial";
14
+ /**
15
+ * Listing resource
16
+ */
11
17
  export interface Listing<I extends boolean = false> {
12
18
  id: UUID;
13
19
  type: "listing";
14
- attributes: ListingAttributes<I>;
20
+ attributes: {
21
+ title: string;
22
+ description: string;
23
+ price: Money;
24
+ geolocation: LatLng;
25
+ state: ListingState;
26
+ deleted: boolean;
27
+ createdAt: Date;
28
+ availabilityPlan: AvailabilityPlan | null;
29
+ publicData: ListingPublicData & ListingCustomPublicData;
30
+ metadata: ListingMetadata & ListingCustomMetadata;
31
+ } & (I extends true ? {
32
+ privateData: ListingPrivateData & ListingCustomPrivateData;
33
+ } : {});
15
34
  }
16
- type ListingAttributes<I extends boolean = false> = {
17
- availabilityPlan: ListingAvailabilityPlan;
18
- createdAt: Date;
19
- deleted: boolean;
20
- description: string;
21
- geolocation: LatLng;
22
- metadata: ListingMetadata & ListingCustomMetadata;
23
- price: Money;
24
- publicData: ListingPublicData & ListingCustomPublicData;
25
- state: ListingState;
26
- title: string;
27
- } & (I extends true ? {
28
- privateData: ListingPrivateData & ListingCustomPrivateData;
29
- } : {});
30
- type ListingAvailabilityPlanTypes = "availability-plan/day" | "availability-plan/time";
31
- type ListingAvailabilityPlanEntry<T extends ListingAvailabilityPlanTypes> = {
32
- dayOfWeek: "mon" | "tue" | "wed" | "thu" | "fri" | "sat" | "sun";
33
- seats: number;
34
- } & (T extends "availability-plan/time" ? {
35
- startTime: string;
36
- endTime: string;
37
- } : {});
38
- type ListingAvailabilityPlan<T extends ListingAvailabilityPlanTypes = "availability-plan/day"> = {
39
- type: string;
40
- timezone: string;
41
- entries: Array<ListingAvailabilityPlanEntry<T>>;
42
- };
35
+ /**
36
+ * With relationships
37
+ */
43
38
  export interface ListingWithRelationships<I extends boolean = false> extends Listing<I> {
44
39
  relationships: {
45
40
  marketplace: Relationship<false, "marketplace">;
46
- author: Relationship<false, "user">;
47
- images: Relationship<true, "image">;
48
- currentStock: Relationship<false, "stock">;
41
+ author: Relationship<false, "author">;
42
+ images: Relationship<true, "images">;
43
+ currentStock?: Relationship<false, "currentStock">;
49
44
  };
50
45
  }
51
- export type ListingType<R extends boolean, I extends boolean = false> = R extends true ? ListingWithRelationships<I> : Listing<I>;
46
+ export type ListingResource<R extends boolean, I extends boolean = false> = R extends true ? ListingWithRelationships<I> : Listing<I>;
47
+ /**
48
+ * Relationship fields
49
+ */
50
+ export type ListingsRelationshipsFields = "marketplace" | "author" | "author.profileImage" | "author.marketplace" | "author.stripeAccount" | "author.effectivePermissionSet" | "images" | "currentStock";
51
+ /**
52
+ * Available endpoints
53
+ */
54
+ export type ListingsEndpoints = "show" | "query" | "create" | "update" | "close" | "open" | "approve";
55
+ /**
56
+ * Base request parameters
57
+ */
52
58
  export interface ListingsParameter extends ApiParameter {
53
59
  include?: ListingsRelationshipsFields[];
54
60
  }
55
- export interface ListingsShowParameter extends ListingsParameter {
61
+ /**
62
+ * Endpoint parameters
63
+ */
64
+ export type ListingsShowParameter = ListingsParameter & {
56
65
  id: UUID | string;
57
- }
66
+ };
58
67
  export interface ListingsQueryParameter extends ListingsParameter {
59
68
  authorId?: UUID | string;
60
69
  ids?: UUID[] | string[];
@@ -68,9 +77,9 @@ export interface ListingsQueryParameter extends ListingsParameter {
68
77
  availability?: ListingAvailability;
69
78
  minDuration?: number;
70
79
  minStock?: number;
71
- [keyof: QueryPub]: string;
72
- [keyof: QueryMeta]: string;
73
80
  sort?: string;
81
+ [keyof: QueryPub]: string | undefined;
82
+ [keyof: QueryMeta]: string | undefined;
74
83
  }
75
84
  export interface ListingsCreateParameter extends ListingsParameter {
76
85
  title: string;
@@ -79,60 +88,81 @@ export interface ListingsCreateParameter extends ListingsParameter {
79
88
  description?: string;
80
89
  geolocation?: LatLng | string;
81
90
  price?: Money | string;
82
- availabilityPlan?: ListingAvailabilityPlan;
91
+ availabilityPlan?: AvailabilityPlan | null;
83
92
  publicData?: ListingPublicData & ListingCustomPublicData;
84
93
  privateData?: ListingPrivateData & ListingCustomPrivateData;
85
94
  metadata?: ListingMetadata & ListingCustomMetadata;
86
95
  images?: UUID[] | string[];
87
96
  }
88
- export interface ListingsUpdateParameter extends ListingsParameter {
97
+ export type ListingsUpdateParameter = ListingsParameter & {
89
98
  id: UUID | string;
90
99
  title?: string;
91
100
  description?: string;
92
101
  price?: Money | string;
93
- availabilityPlan?: ListingAvailabilityPlan;
102
+ availabilityPlan?: AvailabilityPlan | null;
94
103
  publicData?: ListingPublicData & ListingCustomPublicData;
95
104
  privateData?: ListingPrivateData & ListingCustomPrivateData;
96
105
  metadata?: ListingMetadata & ListingCustomMetadata;
97
106
  images?: UUID[] | string[];
98
- }
99
- export interface ListingsCloseParameter extends ListingsParameter {
107
+ };
108
+ export type ListingsCloseParameter = ListingsParameter & {
100
109
  id: UUID | string;
101
- }
102
- export interface ListingsOpenParameter extends ListingsParameter {
110
+ };
111
+ export type ListingsOpenParameter = ListingsParameter & {
103
112
  id: UUID | string;
104
- }
105
- export interface ListingsApproveParameter extends ListingsParameter {
113
+ };
114
+ export type ListingsApproveParameter = ListingsParameter & {
106
115
  id: UUID | string;
107
- }
116
+ };
117
+ /**
118
+ * Custom data
119
+ */
108
120
  export interface ListingPublicData {
109
121
  [key: string]: any;
110
122
  }
111
- export interface ListingCustomPublicData {
123
+ export interface ListingCustomPublicData extends Record<string, unknown> {
112
124
  }
113
125
  export interface ListingPrivateData {
114
126
  [key: string]: any;
115
127
  }
116
- export interface ListingCustomPrivateData {
128
+ export interface ListingCustomPrivateData extends Record<string, unknown> {
117
129
  }
118
130
  export interface ListingMetadata {
119
131
  [key: string]: any;
120
132
  }
121
- export interface ListingCustomMetadata {
133
+ export interface ListingCustomMetadata extends Record<string, unknown> {
122
134
  }
123
- type AllListingsParameter = ListingsShowParameter | ListingsQueryParameter | ListingsCreateParameter | ListingsUpdateParameter;
124
- type ListingsType<P extends AllListingsParameter> = "include" extends keyof P ? P["include"] extends ListingsRelationshipsFields[] ? true : false : false;
125
- type IncludedType<P extends AllListingsParameter, I extends boolean> = "include" extends keyof P ? P["include"] extends (keyof RelationshipTypeMap<I>)[] ? Array<RelationshipTypeMap<I>[P["include"][number]]> : never : never;
126
- type ExpandReturnType<P extends AllListingsParameter, EP, I extends boolean> = EP extends {
135
+ /**
136
+ * All parameter types
137
+ */
138
+ type AllListingsParameter = ListingsShowParameter | ListingsQueryParameter | ListingsCreateParameter | ListingsUpdateParameter | ListingsCloseParameter | ListingsOpenParameter | ListingsApproveParameter;
139
+ /**
140
+ * Include detection — fixes TS2536
141
+ */
142
+ type HasInclude<P> = P extends {
143
+ include: infer I extends readonly ListingsRelationshipsFields[];
144
+ } ? I : never;
145
+ type IncludesRelationships<P> = HasInclude<P> extends never ? false : true;
146
+ type IncludedResources<P> = HasInclude<P> extends infer Fields extends ListingsRelationshipsFields[] ? RelationshipTypeMap[Fields[number]][] : never;
147
+ /**
148
+ * Expand behavior
149
+ */
150
+ type ExpandResult<T, EP extends ExtraParameterType | undefined> = EP extends {
127
151
  expand: true;
128
- } ? ListingType<ListingsType<P>, I> : EP extends {
152
+ } ? T : EP extends {
129
153
  expand: false;
130
- } ? Omit<ListingType<ListingsType<P>, I>, "attributes"> : Omit<ListingType<ListingsType<P>, I>, "attributes">;
131
- type DataType<E extends ListingsEndpoints, P extends AllListingsParameter, EP extends ExtraParameter | undefined, I extends boolean = false> = E extends "query" ? ListingType<ListingsType<P>, I>[] : E extends "show" ? ListingType<ListingsType<P>, I> : E extends "create" ? ExpandReturnType<P, EP, I> : E extends "update" ? ExpandReturnType<P, EP, I> : E extends "close" ? ExpandReturnType<P, EP, I> : E extends "open" ? ExpandReturnType<P, EP, I> : E extends "approve" ? ExpandReturnType<P, EP, I> : never;
132
- export type ListingsResponse<E extends ListingsEndpoints, P extends AllListingsParameter, EP extends ExtraParameterType = undefined, I extends boolean = false> = {
133
- data: DataType<E, P, EP, I>;
134
- } & ("include" extends keyof P ? {
135
- included: IncludedType<P, I>;
154
+ } ? Omit<T, "attributes"> : Omit<T, "attributes">;
155
+ /**
156
+ * Response data per endpoint
157
+ */
158
+ type ResponseData<E extends ListingsEndpoints, P extends AllListingsParameter, EP extends ExtraParameterType | undefined, I extends boolean = false> = E extends "query" ? ListingResource<IncludesRelationships<P>, I>[] : E extends "show" | "create" | "update" | "close" | "open" | "approve" ? ExpandResult<ListingResource<IncludesRelationships<P>, I>, EP> : never;
159
+ /**
160
+ * Final response
161
+ */
162
+ export type ListingsResponse<E extends ListingsEndpoints, P extends AllListingsParameter, EP extends ExtraParameterType | undefined = undefined, I extends boolean = false> = {
163
+ data: ResponseData<E, P, EP, I>;
164
+ } & (IncludesRelationships<P> extends true ? {
165
+ included: IncludedResources<P>;
136
166
  } : {}) & (E extends "query" ? {
137
167
  meta: ApiMeta;
138
168
  } : {});
@@ -1 +1 @@
1
- {"version":3,"file":"listings.d.ts","sourceRoot":"","sources":["../../../../src/types/marketplace/listings.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"listings.d.ts","sourceRoot":"","sources":["../../../../src/types/marketplace/listings.ts"],"names":[],"mappings":"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"}