@vansite/ts-sharetribe-flex-sdk 1.0.34 → 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.
- package/README.md +1 -1
- package/dist/endpoints/assets/index.d.ts +47 -0
- package/dist/endpoints/auth/index.d.ts +45 -0
- package/dist/endpoints/integrationApi/AvailabilityExceptions.d.ts +66 -0
- package/dist/endpoints/integrationApi/Events.d.ts +43 -0
- package/dist/endpoints/integrationApi/Images.d.ts +36 -0
- package/dist/endpoints/integrationApi/Listings.d.ts +87 -0
- package/dist/endpoints/integrationApi/Marketplace.d.ts +30 -0
- package/dist/endpoints/integrationApi/Stock.d.ts +42 -0
- package/dist/endpoints/integrationApi/StockAdjustments.d.ts +64 -0
- package/dist/{types/endpoints/integrationApi/StockReservation.d.ts → endpoints/integrationApi/StockReservations.d.ts} +3 -4
- package/dist/endpoints/integrationApi/Transactions.d.ts +76 -0
- package/dist/endpoints/integrationApi/Users.d.ts +72 -0
- package/dist/endpoints/integrationApi/index.d.ts +58 -0
- package/dist/endpoints/marketplace/AvailabilityExceptions.d.ts +69 -0
- package/dist/endpoints/marketplace/Bookings.d.ts +45 -0
- package/dist/endpoints/marketplace/CurrentUser.d.ts +110 -0
- package/dist/endpoints/marketplace/Images.d.ts +38 -0
- package/dist/endpoints/marketplace/Listings.d.ts +52 -0
- package/dist/endpoints/marketplace/Marketplace.d.ts +33 -0
- package/dist/endpoints/marketplace/Messages.d.ts +51 -0
- package/dist/endpoints/marketplace/OwnListings.d.ts +116 -0
- package/dist/endpoints/marketplace/PasswordReset.d.ts +50 -0
- package/dist/endpoints/marketplace/ProcessTransitions.d.ts +42 -0
- package/dist/endpoints/marketplace/Reviews.d.ts +49 -0
- package/dist/endpoints/marketplace/Stock.d.ts +50 -0
- package/dist/endpoints/marketplace/StockAdjustments.d.ts +64 -0
- package/dist/endpoints/marketplace/StripeAccount.d.ts +56 -0
- package/dist/endpoints/marketplace/StripeAccountLinks.d.ts +42 -0
- package/dist/endpoints/marketplace/StripeCustomer.d.ts +62 -0
- package/dist/endpoints/marketplace/StripePersons.d.ts +37 -0
- package/dist/endpoints/marketplace/StripeSetupIntents.d.ts +42 -0
- package/dist/endpoints/marketplace/TimeSlots.d.ts +40 -0
- package/dist/endpoints/marketplace/Transactions.d.ts +89 -0
- package/dist/endpoints/marketplace/Users.d.ts +34 -0
- package/dist/endpoints/marketplace/index.d.ts +80 -0
- package/dist/index.d.ts +161 -0
- package/dist/index.js +3 -0
- package/dist/{ts-sharetribe-flex-sdk.cjs.LICENSE.txt → index.js.LICENSE.txt} +13 -5
- package/dist/index.js.map +1 -0
- package/dist/index.mjs +3 -0
- package/dist/{ts-sharetribe-flex-sdk.js.LICENSE.txt → index.mjs.LICENSE.txt} +13 -5
- package/dist/index.mjs.map +1 -0
- package/dist/index.umd.js +3 -0
- package/dist/{ts-sharetribe-flex-sdk.mjs.LICENSE.txt → index.umd.js.LICENSE.txt} +13 -5
- package/dist/index.umd.js.map +1 -0
- package/dist/integrationSdk.d.ts +119 -0
- package/dist/sdk.d.ts +211 -0
- package/dist/sdkTypes/BigDecimal.d.ts +30 -0
- package/dist/sdkTypes/LatLng.d.ts +34 -0
- package/dist/sdkTypes/LatLngBounds.d.ts +51 -0
- package/dist/sdkTypes/Money.d.ts +28 -0
- package/dist/sdkTypes/UUID.d.ts +38 -0
- package/dist/types/apiConfigs.d.ts +104 -0
- package/dist/types/assets/index.d.ts +101 -0
- package/dist/types/authentication/index.d.ts +152 -0
- package/dist/types/axios.d.ts +10 -0
- package/dist/types/config.d.ts +99 -0
- package/dist/types/endpoints/assets/index.d.ts +22 -36
- package/dist/types/endpoints/assets/index.d.ts.map +1 -1
- package/dist/types/endpoints/auth/index.d.ts +20 -41
- package/dist/types/endpoints/auth/index.d.ts.map +1 -1
- package/dist/types/endpoints/integrationApi/AvailabilityExceptions.d.ts +30 -49
- package/dist/types/endpoints/integrationApi/AvailabilityExceptions.d.ts.map +1 -1
- package/dist/types/endpoints/integrationApi/Events.d.ts +23 -27
- package/dist/types/endpoints/integrationApi/Events.d.ts.map +1 -1
- package/dist/types/endpoints/integrationApi/Images.d.ts +17 -28
- package/dist/types/endpoints/integrationApi/Images.d.ts.map +1 -1
- package/dist/types/endpoints/integrationApi/Listings.d.ts +42 -104
- package/dist/types/endpoints/integrationApi/Listings.d.ts.map +1 -1
- package/dist/types/endpoints/integrationApi/Marketplace.d.ts +12 -20
- package/dist/types/endpoints/integrationApi/Marketplace.d.ts.map +1 -1
- package/dist/types/endpoints/integrationApi/Stock.d.ts +22 -28
- package/dist/types/endpoints/integrationApi/Stock.d.ts.map +1 -1
- package/dist/types/endpoints/integrationApi/StockAdjustments.d.ts +35 -35
- package/dist/types/endpoints/integrationApi/StockAdjustments.d.ts.map +1 -1
- package/dist/types/endpoints/integrationApi/StockReservations.d.ts +43 -0
- package/dist/types/endpoints/integrationApi/StockReservations.d.ts.map +1 -0
- package/dist/types/endpoints/integrationApi/Transactions.d.ts +36 -80
- package/dist/types/endpoints/integrationApi/Transactions.d.ts.map +1 -1
- package/dist/types/endpoints/integrationApi/Users.d.ts +35 -70
- package/dist/types/endpoints/integrationApi/Users.d.ts.map +1 -1
- package/dist/types/endpoints/integrationApi/index.d.ts +40 -40
- package/dist/types/endpoints/integrationApi/index.d.ts.map +1 -1
- package/dist/types/endpoints/marketplace/AvailabilityExceptions.d.ts +34 -48
- package/dist/types/endpoints/marketplace/AvailabilityExceptions.d.ts.map +1 -1
- package/dist/types/endpoints/marketplace/Bookings.d.ts +24 -23
- package/dist/types/endpoints/marketplace/Bookings.d.ts.map +1 -1
- package/dist/types/endpoints/marketplace/CurrentUser.d.ts +54 -125
- package/dist/types/endpoints/marketplace/CurrentUser.d.ts.map +1 -1
- package/dist/types/endpoints/marketplace/Images.d.ts +19 -27
- package/dist/types/endpoints/marketplace/Images.d.ts.map +1 -1
- package/dist/types/endpoints/marketplace/Listings.d.ts +26 -25
- package/dist/types/endpoints/marketplace/Listings.d.ts.map +1 -1
- package/dist/types/endpoints/marketplace/Marketplace.d.ts +15 -19
- package/dist/types/endpoints/marketplace/Marketplace.d.ts.map +1 -1
- package/dist/types/endpoints/marketplace/Messages.d.ts +24 -29
- package/dist/types/endpoints/marketplace/Messages.d.ts.map +1 -1
- package/dist/types/endpoints/marketplace/OwnListings.d.ts +55 -119
- package/dist/types/endpoints/marketplace/OwnListings.d.ts.map +1 -1
- package/dist/types/endpoints/marketplace/PasswordReset.d.ts +23 -35
- package/dist/types/endpoints/marketplace/PasswordReset.d.ts.map +1 -1
- package/dist/types/endpoints/marketplace/ProcessTransitions.d.ts +22 -22
- package/dist/types/endpoints/marketplace/ProcessTransitions.d.ts.map +1 -1
- package/dist/types/endpoints/marketplace/Reviews.d.ts +23 -25
- package/dist/types/endpoints/marketplace/Reviews.d.ts.map +1 -1
- package/dist/types/endpoints/marketplace/Stock.d.ts +30 -26
- package/dist/types/endpoints/marketplace/Stock.d.ts.map +1 -1
- package/dist/types/endpoints/marketplace/StockAdjustments.d.ts +36 -34
- package/dist/types/endpoints/marketplace/StockAdjustments.d.ts.map +1 -1
- package/dist/types/endpoints/marketplace/StripeAccount.d.ts +28 -49
- package/dist/types/endpoints/marketplace/StripeAccount.d.ts.map +1 -1
- package/dist/types/endpoints/marketplace/StripeAccountLinks.d.ts +22 -31
- package/dist/types/endpoints/marketplace/StripeAccountLinks.d.ts.map +1 -1
- package/dist/types/endpoints/marketplace/StripeCustomer.d.ts +32 -46
- package/dist/types/endpoints/marketplace/StripeCustomer.d.ts.map +1 -1
- package/dist/types/endpoints/marketplace/StripePersons.d.ts +17 -25
- package/dist/types/endpoints/marketplace/StripePersons.d.ts.map +1 -1
- package/dist/types/endpoints/marketplace/StripeSetupIntents.d.ts +24 -24
- package/dist/types/endpoints/marketplace/StripeSetupIntents.d.ts.map +1 -1
- package/dist/types/endpoints/marketplace/TimeSlots.d.ts +20 -23
- package/dist/types/endpoints/marketplace/TimeSlots.d.ts.map +1 -1
- package/dist/types/endpoints/marketplace/Transactions.d.ts +45 -81
- package/dist/types/endpoints/marketplace/Transactions.d.ts.map +1 -1
- package/dist/types/endpoints/marketplace/Users.d.ts +15 -22
- package/dist/types/endpoints/marketplace/Users.d.ts.map +1 -1
- package/dist/types/endpoints/marketplace/index.d.ts +50 -40
- package/dist/types/endpoints/marketplace/index.d.ts.map +1 -1
- package/dist/types/index.d.ts +15 -30
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/integration/events.d.ts +87 -0
- package/dist/types/integrationSdk.d.ts +4 -5
- package/dist/types/integrationSdk.d.ts.map +1 -1
- package/dist/types/marketplace/availabilityExceptions.d.ts +99 -0
- package/dist/types/marketplace/availabilityPlan.d.ts +17 -0
- package/dist/types/marketplace/bookings.d.ts +80 -0
- package/dist/types/marketplace/currentUser.d.ts +202 -0
- package/dist/types/marketplace/images.d.ts +65 -0
- package/dist/types/marketplace/listings.d.ts +169 -0
- package/dist/types/marketplace/marketplace.d.ts +30 -0
- package/dist/types/marketplace/messages.d.ts +87 -0
- package/dist/types/marketplace/ownListings.d.ts +155 -0
- package/dist/types/marketplace/passwordReset.d.ts +54 -0
- package/dist/types/marketplace/processTransitions.d.ts +56 -0
- package/dist/types/marketplace/reviews.d.ts +108 -0
- package/dist/types/marketplace/stock.d.ts +45 -0
- package/dist/types/marketplace/stockAdjustment.d.ts +97 -0
- package/dist/types/marketplace/stockReservations.d.ts +89 -0
- package/dist/types/marketplace/stripeAccount.d.ts +67 -0
- package/dist/types/marketplace/stripeAccountLinks.d.ts +55 -0
- package/dist/types/marketplace/stripeCustomer.d.ts +94 -0
- package/dist/types/marketplace/stripePaymentMethod.d.ts +21 -0
- package/dist/types/marketplace/stripePersons.d.ts +48 -0
- package/dist/types/marketplace/stripeSetupIntents.d.ts +48 -0
- package/dist/types/marketplace/timeSlots.d.ts +51 -0
- package/dist/types/marketplace/transactions.d.ts +200 -0
- package/dist/types/marketplace/user.d.ts +200 -0
- package/dist/types/sdk-types.d.ts +10 -0
- package/dist/types/sdk.d.ts +6 -7
- package/dist/types/sdk.d.ts.map +1 -1
- package/dist/types/sdkTypes/BigDecimal.d.ts +1 -1
- package/dist/types/sdkTypes/BigDecimal.d.ts.map +1 -1
- package/dist/types/sdkTypes/LatLng.d.ts +1 -1
- package/dist/types/sdkTypes/LatLng.d.ts.map +1 -1
- package/dist/types/sdkTypes/LatLngBounds.d.ts +1 -1
- package/dist/types/sdkTypes/LatLngBounds.d.ts.map +1 -1
- package/dist/types/sdkTypes/Money.d.ts +1 -1
- package/dist/types/sdkTypes/Money.d.ts.map +1 -1
- package/dist/types/sdkTypes/UUID.d.ts +1 -1
- package/dist/types/sdkTypes/UUID.d.ts.map +1 -1
- package/dist/types/sharetribe.d.ts +227 -0
- package/dist/types/store.d.ts +22 -0
- package/dist/types/types/apiConfigs.d.ts.map +1 -1
- package/dist/types/types/assets/index.d.ts +74 -36
- package/dist/types/types/assets/index.d.ts.map +1 -1
- package/dist/types/types/authentication/index.d.ts +111 -60
- package/dist/types/types/authentication/index.d.ts.map +1 -1
- package/dist/types/types/axios.d.ts.map +1 -1
- package/dist/types/types/config.d.ts +1 -39
- package/dist/types/types/config.d.ts.map +1 -1
- package/dist/types/types/integration/events.d.ts +52 -20
- package/dist/types/types/integration/events.d.ts.map +1 -1
- package/dist/types/types/marketplace/availabilityExceptions.d.ts +59 -16
- package/dist/types/types/marketplace/availabilityExceptions.d.ts.map +1 -1
- package/dist/types/types/marketplace/availabilityPlan.d.ts +18 -0
- package/dist/types/types/marketplace/availabilityPlan.d.ts.map +1 -0
- package/dist/types/types/marketplace/bookings.d.ts +48 -14
- package/dist/types/types/marketplace/bookings.d.ts.map +1 -1
- package/dist/types/types/marketplace/currentUser.d.ts +99 -55
- package/dist/types/types/marketplace/currentUser.d.ts.map +1 -1
- package/dist/types/types/marketplace/images.d.ts +40 -14
- package/dist/types/types/marketplace/images.d.ts.map +1 -1
- package/dist/types/types/marketplace/listings.d.ts +96 -66
- package/dist/types/types/marketplace/listings.d.ts.map +1 -1
- package/dist/types/types/marketplace/marketplace.d.ts +16 -6
- package/dist/types/types/marketplace/marketplace.d.ts.map +1 -1
- package/dist/types/types/marketplace/messages.d.ts +53 -15
- package/dist/types/types/marketplace/messages.d.ts.map +1 -1
- package/dist/types/types/marketplace/ownListings.d.ts +92 -65
- package/dist/types/types/marketplace/ownListings.d.ts.map +1 -1
- package/dist/types/types/marketplace/passwordReset.d.ts +32 -9
- package/dist/types/types/marketplace/passwordReset.d.ts.map +1 -1
- package/dist/types/types/marketplace/processTransitions.d.ts +33 -14
- package/dist/types/types/marketplace/processTransitions.d.ts.map +1 -1
- package/dist/types/types/marketplace/reviews.d.ts +72 -23
- package/dist/types/types/marketplace/reviews.d.ts.map +1 -1
- package/dist/types/types/marketplace/stock.d.ts +23 -6
- package/dist/types/types/marketplace/stock.d.ts.map +1 -1
- package/dist/types/types/marketplace/stockAdjustment.d.ts +60 -14
- package/dist/types/types/marketplace/stockAdjustment.d.ts.map +1 -1
- package/dist/types/types/marketplace/stockReservations.d.ts +59 -14
- package/dist/types/types/marketplace/stockReservations.d.ts.map +1 -1
- package/dist/types/types/marketplace/stripeAccount.d.ts +28 -5
- package/dist/types/types/marketplace/stripeAccount.d.ts.map +1 -1
- package/dist/types/types/marketplace/stripeAccountLinks.d.ts +26 -6
- package/dist/types/types/marketplace/stripeAccountLinks.d.ts.map +1 -1
- package/dist/types/types/marketplace/stripeCustomer.d.ts +60 -13
- package/dist/types/types/marketplace/stripeCustomer.d.ts.map +1 -1
- package/dist/types/types/marketplace/stripePaymentMethod.d.ts +1 -2
- package/dist/types/types/marketplace/stripePaymentMethod.d.ts.map +1 -1
- package/dist/types/types/marketplace/stripePersons.d.ts +17 -15
- package/dist/types/types/marketplace/stripePersons.d.ts.map +1 -1
- package/dist/types/types/marketplace/stripeSetupIntents.d.ts +16 -14
- package/dist/types/types/marketplace/stripeSetupIntents.d.ts.map +1 -1
- package/dist/types/types/marketplace/timeSlots.d.ts +13 -15
- package/dist/types/types/marketplace/timeSlots.d.ts.map +1 -1
- package/dist/types/types/marketplace/transactions.d.ts +77 -83
- package/dist/types/types/marketplace/transactions.d.ts.map +1 -1
- package/dist/types/types/marketplace/user.d.ts +85 -64
- package/dist/types/types/marketplace/user.d.ts.map +1 -1
- package/dist/types/types/sharetribe.d.ts +130 -92
- package/dist/types/types/sharetribe.d.ts.map +1 -1
- package/dist/types/types/store.d.ts +3 -14
- package/dist/types/types/store.d.ts.map +1 -1
- package/dist/types/utils/apis.d.ts +1 -1
- package/dist/types/utils/apis.d.ts.map +1 -1
- package/dist/types/utils/config.d.ts.map +1 -1
- package/dist/types/utils/prepare-axios-instance.d.ts.map +1 -1
- package/dist/types/utils/stores/BrowserStore.d.ts +1 -2
- package/dist/types/utils/stores/BrowserStore.d.ts.map +1 -1
- package/dist/types/utils/stores/ExpressStore.d.ts +6 -7
- package/dist/types/utils/stores/ExpressStore.d.ts.map +1 -1
- package/dist/types/utils/stores/MemoryStore.d.ts +1 -2
- package/dist/types/utils/stores/MemoryStore.d.ts.map +1 -1
- package/dist/types/utils/transit.d.ts +1 -1
- package/dist/types/utils/transit.d.ts.map +1 -1
- package/dist/types/utils/util.d.ts +2 -2
- package/dist/types/utils/util.d.ts.map +1 -1
- package/dist/utils/apis.d.ts +8 -0
- package/dist/utils/config.d.ts +32 -0
- package/dist/utils/convert-types.d.ts +13 -0
- package/dist/utils/parameter-serializer.d.ts +23 -0
- package/dist/utils/prepare-axios-instance.d.ts +14 -0
- package/dist/utils/stores/BrowserStore.d.ts +37 -0
- package/dist/utils/stores/ExpressStore.d.ts +48 -0
- package/dist/utils/stores/MemoryStore.d.ts +23 -0
- package/dist/utils/stores/store.d.ts +8 -0
- package/dist/utils/transit.d.ts +28 -0
- package/dist/utils/util.d.ts +15 -0
- package/package.json +16 -14
- package/dist/ts-sharetribe-flex-sdk.cjs +0 -3
- package/dist/ts-sharetribe-flex-sdk.cjs.map +0 -1
- package/dist/ts-sharetribe-flex-sdk.js +0 -3
- package/dist/ts-sharetribe-flex-sdk.js.map +0 -1
- package/dist/ts-sharetribe-flex-sdk.mjs +0 -3
- package/dist/ts-sharetribe-flex-sdk.mjs.map +0 -1
- package/dist/types/endpoints/integrationApi/StockReservation.d.ts.map +0 -1
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview Type definitions for Images in the Sharetribe Marketplace API.
|
|
3
|
+
*/
|
|
4
|
+
import { ApiParameter, ExtraParameterType, UUID } from "../sharetribe";
|
|
5
|
+
/**
|
|
6
|
+
* Available endpoints
|
|
7
|
+
*/
|
|
8
|
+
export type ImagesEndpoints = "upload";
|
|
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 {
|
|
17
|
+
width: number;
|
|
18
|
+
height: number;
|
|
19
|
+
url: string;
|
|
20
|
+
name: ImageVariantName;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Image resource
|
|
24
|
+
*/
|
|
25
|
+
export interface Image {
|
|
26
|
+
id: UUID;
|
|
27
|
+
type: "image";
|
|
28
|
+
attributes: {
|
|
29
|
+
variants: {
|
|
30
|
+
[K in ImageVariantName]?: ImageVariant;
|
|
31
|
+
} & {
|
|
32
|
+
[key: string]: ImageVariant | undefined;
|
|
33
|
+
};
|
|
34
|
+
};
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Base request parameters
|
|
38
|
+
*/
|
|
39
|
+
export interface ImagesParameter extends ApiParameter {
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Upload endpoint parameters
|
|
43
|
+
*/
|
|
44
|
+
export interface ImagesUploadParameter extends ImagesParameter {
|
|
45
|
+
image: File;
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Expand behavior
|
|
49
|
+
*/
|
|
50
|
+
type ExpandResult<EP extends ExtraParameterType | undefined> = EP extends {
|
|
51
|
+
expand: true;
|
|
52
|
+
} ? Image : EP extends {
|
|
53
|
+
expand: false;
|
|
54
|
+
} ? Omit<Image, "attributes"> : Omit<Image, "attributes">;
|
|
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>;
|
|
64
|
+
};
|
|
65
|
+
export {};
|
|
@@ -0,0 +1,169 @@
|
|
|
1
|
+
/**
|
|
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
|
|
8
|
+
*/
|
|
9
|
+
export type ListingState = "published" | "closed" | "draft" | "pendingApproval";
|
|
10
|
+
/**
|
|
11
|
+
* Availability mode returned in query results
|
|
12
|
+
*/
|
|
13
|
+
export type ListingAvailability = "day-full" | "day-partial" | "time-full" | "time-partial";
|
|
14
|
+
/**
|
|
15
|
+
* Listing resource
|
|
16
|
+
*/
|
|
17
|
+
export interface Listing<I extends boolean = false> {
|
|
18
|
+
id: UUID;
|
|
19
|
+
type: "listing";
|
|
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
|
+
} : {});
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* With relationships
|
|
37
|
+
*/
|
|
38
|
+
export interface ListingWithRelationships<I extends boolean = false> extends Listing<I> {
|
|
39
|
+
relationships: {
|
|
40
|
+
marketplace: Relationship<false, "marketplace">;
|
|
41
|
+
author: Relationship<false, "author">;
|
|
42
|
+
images: Relationship<true, "images">;
|
|
43
|
+
currentStock?: Relationship<false, "currentStock">;
|
|
44
|
+
};
|
|
45
|
+
}
|
|
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
|
+
*/
|
|
58
|
+
export interface ListingsParameter extends ApiParameter {
|
|
59
|
+
include?: ListingsRelationshipsFields[];
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* Endpoint parameters
|
|
63
|
+
*/
|
|
64
|
+
export type ListingsShowParameter = ListingsParameter & {
|
|
65
|
+
id: UUID | string;
|
|
66
|
+
};
|
|
67
|
+
export interface ListingsQueryParameter extends ListingsParameter {
|
|
68
|
+
authorId?: UUID | string;
|
|
69
|
+
ids?: UUID[] | string[];
|
|
70
|
+
keywords?: string;
|
|
71
|
+
origin?: LatLng | string;
|
|
72
|
+
bounds?: LatLngBounds | string;
|
|
73
|
+
price?: Money | [Money, Money] | string;
|
|
74
|
+
start?: Date | string;
|
|
75
|
+
end?: Date | string;
|
|
76
|
+
seats?: number;
|
|
77
|
+
availability?: ListingAvailability;
|
|
78
|
+
minDuration?: number;
|
|
79
|
+
minStock?: number;
|
|
80
|
+
sort?: string;
|
|
81
|
+
[keyof: QueryPub]: string | undefined;
|
|
82
|
+
[keyof: QueryMeta]: string | undefined;
|
|
83
|
+
}
|
|
84
|
+
export interface ListingsCreateParameter extends ListingsParameter {
|
|
85
|
+
title: string;
|
|
86
|
+
authorId: UUID | string;
|
|
87
|
+
state: ListingState;
|
|
88
|
+
description?: string;
|
|
89
|
+
geolocation?: LatLng | string;
|
|
90
|
+
price?: Money | string;
|
|
91
|
+
availabilityPlan?: AvailabilityPlan | null;
|
|
92
|
+
publicData?: ListingPublicData & ListingCustomPublicData;
|
|
93
|
+
privateData?: ListingPrivateData & ListingCustomPrivateData;
|
|
94
|
+
metadata?: ListingMetadata & ListingCustomMetadata;
|
|
95
|
+
images?: UUID[] | string[];
|
|
96
|
+
}
|
|
97
|
+
export type ListingsUpdateParameter = ListingsParameter & {
|
|
98
|
+
id: UUID | string;
|
|
99
|
+
title?: string;
|
|
100
|
+
description?: string;
|
|
101
|
+
price?: Money | string;
|
|
102
|
+
availabilityPlan?: AvailabilityPlan | null;
|
|
103
|
+
publicData?: ListingPublicData & ListingCustomPublicData;
|
|
104
|
+
privateData?: ListingPrivateData & ListingCustomPrivateData;
|
|
105
|
+
metadata?: ListingMetadata & ListingCustomMetadata;
|
|
106
|
+
images?: UUID[] | string[];
|
|
107
|
+
};
|
|
108
|
+
export type ListingsCloseParameter = ListingsParameter & {
|
|
109
|
+
id: UUID | string;
|
|
110
|
+
};
|
|
111
|
+
export type ListingsOpenParameter = ListingsParameter & {
|
|
112
|
+
id: UUID | string;
|
|
113
|
+
};
|
|
114
|
+
export type ListingsApproveParameter = ListingsParameter & {
|
|
115
|
+
id: UUID | string;
|
|
116
|
+
};
|
|
117
|
+
/**
|
|
118
|
+
* Custom data
|
|
119
|
+
*/
|
|
120
|
+
export interface ListingPublicData {
|
|
121
|
+
[key: string]: any;
|
|
122
|
+
}
|
|
123
|
+
export interface ListingCustomPublicData extends Record<string, unknown> {
|
|
124
|
+
}
|
|
125
|
+
export interface ListingPrivateData {
|
|
126
|
+
[key: string]: any;
|
|
127
|
+
}
|
|
128
|
+
export interface ListingCustomPrivateData extends Record<string, unknown> {
|
|
129
|
+
}
|
|
130
|
+
export interface ListingMetadata {
|
|
131
|
+
[key: string]: any;
|
|
132
|
+
}
|
|
133
|
+
export interface ListingCustomMetadata extends Record<string, unknown> {
|
|
134
|
+
}
|
|
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 {
|
|
151
|
+
expand: true;
|
|
152
|
+
} ? T : EP extends {
|
|
153
|
+
expand: false;
|
|
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>;
|
|
166
|
+
} : {}) & (E extends "query" ? {
|
|
167
|
+
meta: ApiMeta;
|
|
168
|
+
} : {});
|
|
169
|
+
export {};
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview Type definitions for Marketplace in the Sharetribe Marketplace API.
|
|
3
|
+
*/
|
|
4
|
+
import { UUID } from "../sharetribe";
|
|
5
|
+
/**
|
|
6
|
+
* Available endpoints
|
|
7
|
+
*/
|
|
8
|
+
export type MarketplaceEndpoints = "show";
|
|
9
|
+
/**
|
|
10
|
+
* Marketplace resource
|
|
11
|
+
*/
|
|
12
|
+
export interface Marketplace {
|
|
13
|
+
id: UUID;
|
|
14
|
+
type: "marketplace";
|
|
15
|
+
attributes: {
|
|
16
|
+
name: string;
|
|
17
|
+
description: string;
|
|
18
|
+
};
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Response data per endpoint
|
|
22
|
+
*/
|
|
23
|
+
type ResponseData<E extends MarketplaceEndpoints> = E extends "show" ? Marketplace : never;
|
|
24
|
+
/**
|
|
25
|
+
* Final response type
|
|
26
|
+
*/
|
|
27
|
+
export type MarketplaceResponse<E extends MarketplaceEndpoints = "show"> = {
|
|
28
|
+
data: ResponseData<E>;
|
|
29
|
+
};
|
|
30
|
+
export {};
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview Type definitions for Messages in the Sharetribe Marketplace API.
|
|
3
|
+
*/
|
|
4
|
+
import { ApiMeta, ApiParameter, ExtraParameterType, Relationship, RelationshipTypeMap, UUID } from "../sharetribe";
|
|
5
|
+
/**
|
|
6
|
+
* Available endpoints
|
|
7
|
+
*/
|
|
8
|
+
export type MessagesEndpoints = "query" | "send";
|
|
9
|
+
/**
|
|
10
|
+
* Relationship fields that can be included
|
|
11
|
+
*/
|
|
12
|
+
export type MessagesRelationshipsFields = "sender" | "sender.profileImage" | "sender.marketplace" | "transaction" | "transaction.marketplace" | "transaction.listing" | "transaction.provider" | "transaction.customer" | "transaction.booking" | "transaction.stockReservation" | "transaction.reviews" | "transaction.messages";
|
|
13
|
+
/**
|
|
14
|
+
* Message resource
|
|
15
|
+
*/
|
|
16
|
+
export interface Message {
|
|
17
|
+
id: UUID;
|
|
18
|
+
type: "message";
|
|
19
|
+
attributes: {
|
|
20
|
+
content: string;
|
|
21
|
+
createdAt: Date;
|
|
22
|
+
};
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* With relationships
|
|
26
|
+
*/
|
|
27
|
+
export interface MessageWithRelationships extends Message {
|
|
28
|
+
relationships: {
|
|
29
|
+
sender: Relationship<false, "sender">;
|
|
30
|
+
transaction: Relationship<false, "transaction">;
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
export type MessageResource<R extends boolean> = R extends true ? MessageWithRelationships : Message;
|
|
34
|
+
/**
|
|
35
|
+
* Base request parameters
|
|
36
|
+
*/
|
|
37
|
+
export interface MessagesParameter extends ApiParameter {
|
|
38
|
+
include?: MessagesRelationshipsFields[];
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Query messages
|
|
42
|
+
*/
|
|
43
|
+
export interface MessagesQueryParameter extends MessagesParameter {
|
|
44
|
+
transactionId: UUID | string;
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Send a message
|
|
48
|
+
*/
|
|
49
|
+
export interface MessagesSendParameter extends MessagesParameter {
|
|
50
|
+
transactionId: UUID | string;
|
|
51
|
+
content: string;
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* All parameter types
|
|
55
|
+
*/
|
|
56
|
+
type AllMessagesParameter = MessagesQueryParameter | MessagesSendParameter;
|
|
57
|
+
/**
|
|
58
|
+
* Include detection — fixes TS2536
|
|
59
|
+
*/
|
|
60
|
+
type HasInclude<P> = P extends {
|
|
61
|
+
include: infer I extends readonly MessagesRelationshipsFields[];
|
|
62
|
+
} ? I : never;
|
|
63
|
+
type IncludesRelationships<P> = HasInclude<P> extends never ? false : true;
|
|
64
|
+
type IncludedResources<P> = HasInclude<P> extends infer Fields extends MessagesRelationshipsFields[] ? RelationshipTypeMap[Fields[number]][] : never;
|
|
65
|
+
/**
|
|
66
|
+
* Expand behavior
|
|
67
|
+
*/
|
|
68
|
+
type ExpandResult<T, EP extends ExtraParameterType | undefined> = EP extends {
|
|
69
|
+
expand: true;
|
|
70
|
+
} ? T : EP extends {
|
|
71
|
+
expand: false;
|
|
72
|
+
} ? Omit<T, "attributes"> : Omit<T, "attributes">;
|
|
73
|
+
/**
|
|
74
|
+
* Response data per endpoint
|
|
75
|
+
*/
|
|
76
|
+
type ResponseData<E extends MessagesEndpoints, P extends AllMessagesParameter, EP extends ExtraParameterType | undefined> = E extends "query" ? MessageResource<IncludesRelationships<P>>[] : E extends "send" ? ExpandResult<MessageResource<IncludesRelationships<P>>, EP> : never;
|
|
77
|
+
/**
|
|
78
|
+
* Final response type
|
|
79
|
+
*/
|
|
80
|
+
export type MessagesResponse<E extends MessagesEndpoints, P extends AllMessagesParameter, EP extends ExtraParameterType | undefined = undefined> = {
|
|
81
|
+
data: ResponseData<E, P, EP>;
|
|
82
|
+
} & (IncludesRelationships<P> extends true ? {
|
|
83
|
+
included: IncludedResources<P>;
|
|
84
|
+
} : {}) & (E extends "query" ? {
|
|
85
|
+
meta: ApiMeta;
|
|
86
|
+
} : {});
|
|
87
|
+
export {};
|
|
@@ -0,0 +1,155 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview Type definitions for Own Listings in the Sharetribe Marketplace API.
|
|
3
|
+
*/
|
|
4
|
+
import { ApiMeta, ApiParameter, ExtraParameterType, LatLng, Money, Relationship, RelationshipTypeMap, UUID } from "../sharetribe";
|
|
5
|
+
import { AvailabilityPlan } from "./availabilityPlan";
|
|
6
|
+
/**
|
|
7
|
+
* Listing states
|
|
8
|
+
*/
|
|
9
|
+
export type OwnListingState = "draft" | "pendingApproval" | "published" | "closed";
|
|
10
|
+
/**
|
|
11
|
+
* Available endpoints
|
|
12
|
+
*/
|
|
13
|
+
export type OwnListingsEndpoints = "show" | "query" | "create" | "createDraft" | "update" | "publishDraft" | "discardDraft" | "close" | "open" | "addImage";
|
|
14
|
+
/**
|
|
15
|
+
* Relationship fields
|
|
16
|
+
*/
|
|
17
|
+
export type OwnListingsRelationshipsFields = "marketplace" | "author.profileImage" | "author.marketplace" | "author.stripeAccount" | "author.effectivePermissionSet" | "images" | "currentStock";
|
|
18
|
+
/**
|
|
19
|
+
* Own Listing resource
|
|
20
|
+
*/
|
|
21
|
+
export interface OwnListing {
|
|
22
|
+
id: UUID;
|
|
23
|
+
type: "ownListing";
|
|
24
|
+
attributes: {
|
|
25
|
+
title: string;
|
|
26
|
+
description: string;
|
|
27
|
+
price: Money;
|
|
28
|
+
geolocation: LatLng;
|
|
29
|
+
state: OwnListingState;
|
|
30
|
+
deleted: boolean;
|
|
31
|
+
createdAt: Date;
|
|
32
|
+
availabilityPlan: AvailabilityPlan | null;
|
|
33
|
+
publicData: OwnListingPublicData & OwnListingCustomPublicData;
|
|
34
|
+
privateData: OwnListingPrivateData & OwnListingCustomPrivateData;
|
|
35
|
+
metadata: OwnListingMetadata & OwnListingCustomMetadata;
|
|
36
|
+
};
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* With relationships
|
|
40
|
+
*/
|
|
41
|
+
export interface OwnListingWithRelationships extends OwnListing {
|
|
42
|
+
relationships: {
|
|
43
|
+
marketplace: Relationship<false, "marketplace">;
|
|
44
|
+
author: Relationship<false, "author">;
|
|
45
|
+
images: Relationship<true, "images">;
|
|
46
|
+
currentStock?: Relationship<false, "currentStock">;
|
|
47
|
+
};
|
|
48
|
+
}
|
|
49
|
+
export type OwnListingResource<R extends boolean> = R extends true ? OwnListingWithRelationships : OwnListing;
|
|
50
|
+
/**
|
|
51
|
+
* Base request parameters
|
|
52
|
+
*/
|
|
53
|
+
export interface OwnListingsParameter extends ApiParameter {
|
|
54
|
+
include?: OwnListingsRelationshipsFields[];
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Endpoint-specific parameters
|
|
58
|
+
*/
|
|
59
|
+
export type OwnListingsShowParameter = OwnListingsParameter & {
|
|
60
|
+
id: UUID | string;
|
|
61
|
+
};
|
|
62
|
+
export type OwnListingsQueryParameter = OwnListingsParameter;
|
|
63
|
+
export interface OwnListingsCreateParameter extends OwnListingsParameter {
|
|
64
|
+
title: string;
|
|
65
|
+
description?: string;
|
|
66
|
+
price?: Money;
|
|
67
|
+
geolocation?: LatLng;
|
|
68
|
+
availabilityPlan?: AvailabilityPlan | null;
|
|
69
|
+
publicData?: OwnListingPublicData & OwnListingCustomPublicData;
|
|
70
|
+
privateData?: OwnListingPrivateData & OwnListingCustomPrivateData;
|
|
71
|
+
metadata?: OwnListingMetadata & OwnListingCustomMetadata;
|
|
72
|
+
images?: string[];
|
|
73
|
+
}
|
|
74
|
+
export type OwnListingsCreateDraftParameter = OwnListingsCreateParameter;
|
|
75
|
+
export interface OwnListingsUpdateParameter extends OwnListingsParameter {
|
|
76
|
+
id: UUID | string;
|
|
77
|
+
title?: string;
|
|
78
|
+
description?: string;
|
|
79
|
+
price?: Money;
|
|
80
|
+
geolocation?: LatLng;
|
|
81
|
+
availabilityPlan?: AvailabilityPlan | null;
|
|
82
|
+
publicData?: OwnListingPublicData & OwnListingCustomPublicData;
|
|
83
|
+
privateData?: OwnListingPrivateData & OwnListingCustomPrivateData;
|
|
84
|
+
metadata?: OwnListingMetadata & OwnListingCustomMetadata;
|
|
85
|
+
images?: string[];
|
|
86
|
+
}
|
|
87
|
+
export type OwnListingsPublishDraftParameter = OwnListingsParameter & {
|
|
88
|
+
id: UUID | string;
|
|
89
|
+
};
|
|
90
|
+
export type OwnListingsDiscardDraftParameter = OwnListingsParameter & {
|
|
91
|
+
id: UUID | string;
|
|
92
|
+
};
|
|
93
|
+
export type OwnListingsCloseParameter = OwnListingsParameter & {
|
|
94
|
+
id: UUID | string;
|
|
95
|
+
};
|
|
96
|
+
export type OwnListingsOpenParameter = OwnListingsParameter & {
|
|
97
|
+
id: UUID | string;
|
|
98
|
+
};
|
|
99
|
+
export type OwnListingsAddImageParameter = OwnListingsParameter & {
|
|
100
|
+
id: UUID | string;
|
|
101
|
+
imageId: UUID | string;
|
|
102
|
+
};
|
|
103
|
+
/**
|
|
104
|
+
* Custom data
|
|
105
|
+
*/
|
|
106
|
+
export interface OwnListingPublicData {
|
|
107
|
+
[key: string]: any;
|
|
108
|
+
}
|
|
109
|
+
export interface OwnListingCustomPublicData extends Record<string, unknown> {
|
|
110
|
+
}
|
|
111
|
+
export interface OwnListingPrivateData {
|
|
112
|
+
[key: string]: any;
|
|
113
|
+
}
|
|
114
|
+
export interface OwnListingCustomPrivateData extends Record<string, unknown> {
|
|
115
|
+
}
|
|
116
|
+
export interface OwnListingMetadata {
|
|
117
|
+
[key: string]: any;
|
|
118
|
+
}
|
|
119
|
+
export interface OwnListingCustomMetadata extends Record<string, unknown> {
|
|
120
|
+
}
|
|
121
|
+
/**
|
|
122
|
+
* All parameter types
|
|
123
|
+
*/
|
|
124
|
+
type AllOwnListingsParameter = OwnListingsShowParameter | OwnListingsQueryParameter | OwnListingsCreateParameter | OwnListingsCreateDraftParameter | OwnListingsUpdateParameter | OwnListingsPublishDraftParameter | OwnListingsDiscardDraftParameter | OwnListingsCloseParameter | OwnListingsOpenParameter | OwnListingsAddImageParameter;
|
|
125
|
+
/**
|
|
126
|
+
* Include detection — fixes TS2536
|
|
127
|
+
*/
|
|
128
|
+
type HasInclude<P> = P extends {
|
|
129
|
+
include: infer I extends readonly OwnListingsRelationshipsFields[];
|
|
130
|
+
} ? I : never;
|
|
131
|
+
type IncludesRelationships<P> = HasInclude<P> extends never ? false : true;
|
|
132
|
+
type IncludedResources<P> = HasInclude<P> extends infer Fields extends OwnListingsRelationshipsFields[] ? RelationshipTypeMap[Fields[number]][] : never;
|
|
133
|
+
/**
|
|
134
|
+
* Expand behavior
|
|
135
|
+
*/
|
|
136
|
+
type ExpandResult<T, EP extends ExtraParameterType | undefined> = EP extends {
|
|
137
|
+
expand: true;
|
|
138
|
+
} ? T : EP extends {
|
|
139
|
+
expand: false;
|
|
140
|
+
} ? Omit<T, "attributes"> : Omit<T, "attributes">;
|
|
141
|
+
/**
|
|
142
|
+
* Response data per endpoint
|
|
143
|
+
*/
|
|
144
|
+
type ResponseData<E extends OwnListingsEndpoints, P extends AllOwnListingsParameter, EP extends ExtraParameterType | undefined> = E extends "show" | "create" | "createDraft" | "update" | "publishDraft" | "close" | "open" | "addImage" ? ExpandResult<OwnListingResource<IncludesRelationships<P>>, EP> : E extends "query" ? OwnListingResource<IncludesRelationships<P>>[] : E extends "discardDraft" ? Pick<OwnListing, "id" | "type"> : never;
|
|
145
|
+
/**
|
|
146
|
+
* Final response
|
|
147
|
+
*/
|
|
148
|
+
export type OwnListingsResponse<E extends OwnListingsEndpoints, P extends AllOwnListingsParameter, EP extends ExtraParameterType | undefined = undefined> = {
|
|
149
|
+
data: ResponseData<E, P, EP>;
|
|
150
|
+
} & (IncludesRelationships<P> extends true ? {
|
|
151
|
+
included: IncludedResources<P>;
|
|
152
|
+
} : {}) & (E extends "query" ? {
|
|
153
|
+
meta: ApiMeta;
|
|
154
|
+
} : {});
|
|
155
|
+
export {};
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview Type definitions for Password Reset operations in the Sharetribe Marketplace API.
|
|
3
|
+
*/
|
|
4
|
+
import { ApiParameter, ExtraParameterType, UUID } from "../sharetribe";
|
|
5
|
+
/**
|
|
6
|
+
* Available endpoints
|
|
7
|
+
*/
|
|
8
|
+
export type PasswordResetEndpoints = "request" | "reset";
|
|
9
|
+
/**
|
|
10
|
+
* Password reset resource (usually empty or minimal)
|
|
11
|
+
*/
|
|
12
|
+
export interface PasswordReset {
|
|
13
|
+
id: UUID;
|
|
14
|
+
type: "passwordReset";
|
|
15
|
+
attributes?: Record<string, never>;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Base request parameters
|
|
19
|
+
*/
|
|
20
|
+
export interface PasswordResetParameter extends ApiParameter {
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Request password reset (send email)
|
|
24
|
+
*/
|
|
25
|
+
export interface PasswordResetRequestParameter extends PasswordResetParameter {
|
|
26
|
+
email: string;
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Complete password reset using token
|
|
30
|
+
*/
|
|
31
|
+
export interface PasswordResetResetParameter extends PasswordResetParameter {
|
|
32
|
+
email: string;
|
|
33
|
+
passwordResetToken: string;
|
|
34
|
+
newPassword: string;
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Expand behavior
|
|
38
|
+
*/
|
|
39
|
+
type ExpandResult<EP extends ExtraParameterType | undefined> = EP extends {
|
|
40
|
+
expand: true;
|
|
41
|
+
} ? PasswordReset : EP extends {
|
|
42
|
+
expand: false;
|
|
43
|
+
} ? Omit<PasswordReset, "attributes"> : Omit<PasswordReset, "attributes">;
|
|
44
|
+
/**
|
|
45
|
+
* Response data per endpoint
|
|
46
|
+
*/
|
|
47
|
+
type ResponseData<E extends PasswordResetEndpoints, EP extends ExtraParameterType | undefined> = E extends "request" | "reset" ? ExpandResult<EP> : never;
|
|
48
|
+
/**
|
|
49
|
+
* Final response type
|
|
50
|
+
*/
|
|
51
|
+
export type PasswordResetResponse<E extends PasswordResetEndpoints, EP extends ExtraParameterType | undefined = undefined> = {
|
|
52
|
+
data: ResponseData<E, EP>;
|
|
53
|
+
};
|
|
54
|
+
export {};
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview Type definitions for Process Transitions in the Sharetribe Marketplace API.
|
|
3
|
+
*/
|
|
4
|
+
import { ApiParameter, UUID } from "../sharetribe";
|
|
5
|
+
/**
|
|
6
|
+
* Available endpoints
|
|
7
|
+
*/
|
|
8
|
+
export type ProcessTransitionsEndpoints = "query";
|
|
9
|
+
/**
|
|
10
|
+
* Actors that can trigger a transition
|
|
11
|
+
*/
|
|
12
|
+
type Actor = "customer" | "provider" | "operator" | "system";
|
|
13
|
+
/**
|
|
14
|
+
* Supported parameter types in transition requests
|
|
15
|
+
*/
|
|
16
|
+
type ParamType = "uuid" | "string" | "integer" | "timestamp" | "boolean" | "object" | "money" | ["lineItem"];
|
|
17
|
+
/**
|
|
18
|
+
* Process Transition resource
|
|
19
|
+
*/
|
|
20
|
+
export interface ProcessTransition {
|
|
21
|
+
id: UUID;
|
|
22
|
+
type: "processTransition";
|
|
23
|
+
attributes: {
|
|
24
|
+
name: string;
|
|
25
|
+
actor: Actor[];
|
|
26
|
+
actions: string[];
|
|
27
|
+
params: {
|
|
28
|
+
req: Record<string, ParamType>;
|
|
29
|
+
opt: Record<string, ParamType> | null;
|
|
30
|
+
};
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Base request parameters
|
|
35
|
+
*/
|
|
36
|
+
export interface ProcessTransitionsParameter extends ApiParameter {
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Query parameters
|
|
40
|
+
*/
|
|
41
|
+
export interface ProcessTransitionsQueryParameter extends ProcessTransitionsParameter {
|
|
42
|
+
processAlias?: string;
|
|
43
|
+
lastTransition?: string;
|
|
44
|
+
transactionId?: UUID | string;
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Response data per endpoint
|
|
48
|
+
*/
|
|
49
|
+
type ResponseData<E extends ProcessTransitionsEndpoints> = E extends "query" ? ProcessTransition[] : never;
|
|
50
|
+
/**
|
|
51
|
+
* Final response type
|
|
52
|
+
*/
|
|
53
|
+
export type ProcessTransitionsResponse<E extends ProcessTransitionsEndpoints = "query"> = {
|
|
54
|
+
data: ResponseData<E>;
|
|
55
|
+
};
|
|
56
|
+
export {};
|