@usehercules/sdk 1.3.0 → 1.5.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/CHANGELOG.md +20 -0
- package/LICENSE +1 -1
- package/package.json +1 -1
- package/resources/beta/beta.d.mts +4 -0
- package/resources/beta/beta.d.mts.map +1 -1
- package/resources/beta/beta.d.ts +4 -0
- package/resources/beta/beta.d.ts.map +1 -1
- package/resources/beta/beta.js +4 -0
- package/resources/beta/beta.js.map +1 -1
- package/resources/beta/beta.mjs +4 -0
- package/resources/beta/beta.mjs.map +1 -1
- package/resources/beta/index.d.mts +1 -0
- package/resources/beta/index.d.mts.map +1 -1
- package/resources/beta/index.d.ts +1 -0
- package/resources/beta/index.d.ts.map +1 -1
- package/resources/beta/index.js +3 -1
- package/resources/beta/index.js.map +1 -1
- package/resources/beta/index.mjs +1 -0
- package/resources/beta/index.mjs.map +1 -1
- package/resources/beta/pay/coupons.d.mts +1 -1
- package/resources/beta/pay/coupons.d.ts +1 -1
- package/resources/beta/pay/customers.d.mts +1 -1
- package/resources/beta/pay/customers.d.ts +1 -1
- package/resources/beta/pay/entitlements.d.mts +4 -22
- package/resources/beta/pay/entitlements.d.mts.map +1 -1
- package/resources/beta/pay/entitlements.d.ts +4 -22
- package/resources/beta/pay/entitlements.d.ts.map +1 -1
- package/resources/beta/pay/entitlements.js +3 -4
- package/resources/beta/pay/entitlements.js.map +1 -1
- package/resources/beta/pay/entitlements.mjs +3 -4
- package/resources/beta/pay/entitlements.mjs.map +1 -1
- package/resources/beta/pay/pay.d.mts +76 -16
- package/resources/beta/pay/pay.d.mts.map +1 -1
- package/resources/beta/pay/pay.d.ts +76 -16
- package/resources/beta/pay/pay.d.ts.map +1 -1
- package/resources/beta/pay/pay.js.map +1 -1
- package/resources/beta/pay/pay.mjs.map +1 -1
- package/resources/beta/pay/products/entitlements.d.mts +1 -1
- package/resources/beta/pay/products/entitlements.d.ts +1 -1
- package/resources/beta/pay/products/index.d.mts +1 -0
- package/resources/beta/pay/products/index.d.mts.map +1 -1
- package/resources/beta/pay/products/index.d.ts +1 -0
- package/resources/beta/pay/products/index.d.ts.map +1 -1
- package/resources/beta/pay/products/index.js +3 -1
- package/resources/beta/pay/products/index.js.map +1 -1
- package/resources/beta/pay/products/index.mjs +1 -0
- package/resources/beta/pay/products/index.mjs.map +1 -1
- package/resources/beta/pay/products/products.d.mts +45 -14
- package/resources/beta/pay/products/products.d.mts.map +1 -1
- package/resources/beta/pay/products/products.d.ts +45 -14
- package/resources/beta/pay/products/products.d.ts.map +1 -1
- package/resources/beta/pay/products/products.js +4 -0
- package/resources/beta/pay/products/products.js.map +1 -1
- package/resources/beta/pay/products/products.mjs +4 -0
- package/resources/beta/pay/products/products.mjs.map +1 -1
- package/resources/beta/pay/products/variants.d.mts +206 -0
- package/resources/beta/pay/products/variants.d.mts.map +1 -0
- package/resources/beta/pay/products/variants.d.ts +206 -0
- package/resources/beta/pay/products/variants.d.ts.map +1 -0
- package/resources/beta/pay/products/variants.js +56 -0
- package/resources/beta/pay/products/variants.js.map +1 -0
- package/resources/beta/pay/products/variants.mjs +52 -0
- package/resources/beta/pay/products/variants.mjs.map +1 -0
- package/resources/beta/push-notifications/index.d.mts +3 -0
- package/resources/beta/push-notifications/index.d.mts.map +1 -0
- package/resources/beta/push-notifications/index.d.ts +3 -0
- package/resources/beta/push-notifications/index.d.ts.map +1 -0
- package/resources/beta/push-notifications/index.js +9 -0
- package/resources/beta/push-notifications/index.js.map +1 -0
- package/resources/beta/push-notifications/index.mjs +4 -0
- package/resources/beta/push-notifications/index.mjs.map +1 -0
- package/resources/beta/push-notifications/push-notifications.d.mts +78 -0
- package/resources/beta/push-notifications/push-notifications.d.mts.map +1 -0
- package/resources/beta/push-notifications/push-notifications.d.ts +78 -0
- package/resources/beta/push-notifications/push-notifications.d.ts.map +1 -0
- package/resources/beta/push-notifications/push-notifications.js +32 -0
- package/resources/beta/push-notifications/push-notifications.js.map +1 -0
- package/resources/beta/push-notifications/push-notifications.mjs +27 -0
- package/resources/beta/push-notifications/push-notifications.mjs.map +1 -0
- package/resources/beta/push-notifications/subscriptions.d.mts +74 -0
- package/resources/beta/push-notifications/subscriptions.d.mts.map +1 -0
- package/resources/beta/push-notifications/subscriptions.d.ts +74 -0
- package/resources/beta/push-notifications/subscriptions.d.ts.map +1 -0
- package/resources/beta/push-notifications/subscriptions.js +23 -0
- package/resources/beta/push-notifications/subscriptions.js.map +1 -0
- package/resources/beta/push-notifications/subscriptions.mjs +19 -0
- package/resources/beta/push-notifications/subscriptions.mjs.map +1 -0
- package/resources/beta/push-notifications.d.mts +2 -0
- package/resources/beta/push-notifications.d.mts.map +1 -0
- package/resources/beta/push-notifications.d.ts +2 -0
- package/resources/beta/push-notifications.d.ts.map +1 -0
- package/resources/beta/push-notifications.js +6 -0
- package/resources/beta/push-notifications.js.map +1 -0
- package/resources/beta/push-notifications.mjs +3 -0
- package/resources/beta/push-notifications.mjs.map +1 -0
- package/src/resources/beta/beta.ts +18 -0
- package/src/resources/beta/index.ts +6 -0
- package/src/resources/beta/pay/coupons.ts +1 -1
- package/src/resources/beta/pay/customers.ts +1 -1
- package/src/resources/beta/pay/entitlements.ts +4 -26
- package/src/resources/beta/pay/pay.ts +87 -17
- package/src/resources/beta/pay/products/entitlements.ts +1 -1
- package/src/resources/beta/pay/products/index.ts +10 -0
- package/src/resources/beta/pay/products/products.ts +70 -14
- package/src/resources/beta/pay/products/variants.ts +279 -0
- package/src/resources/beta/push-notifications/index.ts +14 -0
- package/src/resources/beta/push-notifications/push-notifications.ts +112 -0
- package/src/resources/beta/push-notifications/subscriptions.ts +96 -0
- package/src/resources/beta/push-notifications.ts +3 -0
- package/src/version.ts +1 -1
- package/version.d.mts +1 -1
- package/version.d.ts +1 -1
- package/version.js +1 -1
- package/version.mjs +1 -1
|
@@ -0,0 +1,206 @@
|
|
|
1
|
+
import { APIResource } from "../../../../core/resource.mjs";
|
|
2
|
+
import { APIPromise } from "../../../../core/api-promise.mjs";
|
|
3
|
+
import { CursorIDPage, type CursorIDPageParams, PagePromise } from "../../../../core/pagination.mjs";
|
|
4
|
+
import { RequestOptions } from "../../../../internal/request-options.mjs";
|
|
5
|
+
export declare class Variants extends APIResource {
|
|
6
|
+
/**
|
|
7
|
+
* Creates a new variant with pricing for a product. Use variants to offer multiple
|
|
8
|
+
* pricing tiers or configurations (e.g., Basic at $10/month, Pro at $25/month). A
|
|
9
|
+
* Stripe Price is automatically created.
|
|
10
|
+
*/
|
|
11
|
+
create(productID: string, body: VariantCreateParams, options?: RequestOptions): APIPromise<Variant>;
|
|
12
|
+
/**
|
|
13
|
+
* Updates an existing variant. Use this to modify the name, description, or active
|
|
14
|
+
* status. Pricing cannot be changed after creation—create a new variant instead.
|
|
15
|
+
*/
|
|
16
|
+
update(variantID: string, params: VariantUpdateParams, options?: RequestOptions): APIPromise<Variant>;
|
|
17
|
+
/**
|
|
18
|
+
* Retrieves all variants for a product. Variants represent different pricing tiers
|
|
19
|
+
* or configurations (e.g., Basic, Pro, Enterprise) within a single product.
|
|
20
|
+
*/
|
|
21
|
+
list(productID: string, query?: VariantListParams | null | undefined, options?: RequestOptions): PagePromise<VariantsCursorIDPage, Variant>;
|
|
22
|
+
/**
|
|
23
|
+
* Archives a variant, preventing new subscriptions. The associated Stripe Price is
|
|
24
|
+
* also archived. Existing subscriptions remain active.
|
|
25
|
+
*/
|
|
26
|
+
archive(variantID: string, params: VariantArchiveParams, options?: RequestOptions): APIPromise<Variant>;
|
|
27
|
+
/**
|
|
28
|
+
* Retrieves a variant by ID. Returns the variant object including pricing details
|
|
29
|
+
* and status.
|
|
30
|
+
*/
|
|
31
|
+
get(variantID: string, params: VariantGetParams, options?: RequestOptions): APIPromise<Variant>;
|
|
32
|
+
}
|
|
33
|
+
export type VariantsCursorIDPage = CursorIDPage<Variant>;
|
|
34
|
+
/**
|
|
35
|
+
* A product variant representing a specific tier or configuration. Each variant
|
|
36
|
+
* has its own pricing. Variants allow a single product to have multiple pricing
|
|
37
|
+
* options (e.g., Basic, Pro, Enterprise tiers).
|
|
38
|
+
*/
|
|
39
|
+
export interface Variant {
|
|
40
|
+
/**
|
|
41
|
+
* Unique identifier for the price
|
|
42
|
+
*/
|
|
43
|
+
id: string;
|
|
44
|
+
/**
|
|
45
|
+
* Whether the variant is available for new purchases
|
|
46
|
+
*/
|
|
47
|
+
active: boolean;
|
|
48
|
+
/**
|
|
49
|
+
* Timestamp when the variant was created
|
|
50
|
+
*/
|
|
51
|
+
created: string;
|
|
52
|
+
/**
|
|
53
|
+
* Display name for the variant (e.g., Basic, Standard, Premium)
|
|
54
|
+
*/
|
|
55
|
+
name: string;
|
|
56
|
+
/**
|
|
57
|
+
* Price configuration for a product. Can be one-time or recurring (subscription).
|
|
58
|
+
*/
|
|
59
|
+
default_price?: Variant.DefaultPrice | null;
|
|
60
|
+
/**
|
|
61
|
+
* Detailed description of what this variant includes
|
|
62
|
+
*/
|
|
63
|
+
description?: string | null;
|
|
64
|
+
}
|
|
65
|
+
export declare namespace Variant {
|
|
66
|
+
/**
|
|
67
|
+
* Price configuration for a product. Can be one-time or recurring (subscription).
|
|
68
|
+
*/
|
|
69
|
+
interface DefaultPrice {
|
|
70
|
+
/**
|
|
71
|
+
* Unique identifier for the price
|
|
72
|
+
*/
|
|
73
|
+
id: string;
|
|
74
|
+
/**
|
|
75
|
+
* How to handle the billing cycle when switching plans. 'now' resets to current
|
|
76
|
+
* time, 'unchanged' keeps the original anchor. Null for one-time prices.
|
|
77
|
+
*/
|
|
78
|
+
billing_cycle_anchor: 'now' | 'unchanged' | null;
|
|
79
|
+
/**
|
|
80
|
+
* Three-letter ISO currency code (e.g., usd, eur)
|
|
81
|
+
*/
|
|
82
|
+
currency: string;
|
|
83
|
+
/**
|
|
84
|
+
* Billing frequency for recurring prices: day, week, month, or year. Null for
|
|
85
|
+
* one-time prices.
|
|
86
|
+
*/
|
|
87
|
+
interval: 'day' | 'week' | 'month' | 'year' | null;
|
|
88
|
+
/**
|
|
89
|
+
* Number of intervals between billings for recurring prices. Null for one-time
|
|
90
|
+
* prices.
|
|
91
|
+
*/
|
|
92
|
+
interval_count: number | null;
|
|
93
|
+
/**
|
|
94
|
+
* How to handle prorations when switching plans. 'default' creates prorations,
|
|
95
|
+
* 'none' disables them. Null for one-time prices.
|
|
96
|
+
*/
|
|
97
|
+
proration_behavior: 'default' | 'none' | null;
|
|
98
|
+
/**
|
|
99
|
+
* When to calculate proration. 'now' uses current time, 'start_of_period' uses the
|
|
100
|
+
* billing period start. Null for one-time prices or to use Stripe's default.
|
|
101
|
+
*/
|
|
102
|
+
proration_date: 'now' | 'start_of_period' | null;
|
|
103
|
+
/**
|
|
104
|
+
* Price type: one_time for single purchases, recurring for subscriptions
|
|
105
|
+
*/
|
|
106
|
+
type: 'one_time' | 'recurring';
|
|
107
|
+
/**
|
|
108
|
+
* Price amount in the smallest currency unit (e.g., cents)
|
|
109
|
+
*/
|
|
110
|
+
unit_amount: number | null;
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
export interface VariantCreateParams {
|
|
114
|
+
/**
|
|
115
|
+
* Display name for the variant (e.g., Basic, Standard, Premium)
|
|
116
|
+
*/
|
|
117
|
+
name: string;
|
|
118
|
+
/**
|
|
119
|
+
* Price amount in the smallest currency unit (e.g., cents). Use 0 for free
|
|
120
|
+
* variants.
|
|
121
|
+
*/
|
|
122
|
+
unit_amount: number;
|
|
123
|
+
/**
|
|
124
|
+
* Optional custom ID for the variant. If not provided, one will be generated.
|
|
125
|
+
*/
|
|
126
|
+
id?: string;
|
|
127
|
+
/**
|
|
128
|
+
* Default billing cycle anchor behavior when switching to this price. 'now' resets
|
|
129
|
+
* to current time, 'unchanged' keeps original anchor. Only applies to recurring
|
|
130
|
+
* prices.
|
|
131
|
+
*/
|
|
132
|
+
billing_cycle_anchor?: 'now' | 'unchanged';
|
|
133
|
+
/**
|
|
134
|
+
* Three-letter ISO currency code
|
|
135
|
+
*/
|
|
136
|
+
currency?: string;
|
|
137
|
+
/**
|
|
138
|
+
* Detailed description of what this variant includes
|
|
139
|
+
*/
|
|
140
|
+
description?: string;
|
|
141
|
+
/**
|
|
142
|
+
* Billing frequency for recurring prices: day, week, month, or year. Required for
|
|
143
|
+
* recurring type, ignored for one_time.
|
|
144
|
+
*/
|
|
145
|
+
interval?: 'day' | 'week' | 'month' | 'year';
|
|
146
|
+
/**
|
|
147
|
+
* Number of intervals between billings for recurring prices. Required for
|
|
148
|
+
* recurring type, ignored for one_time.
|
|
149
|
+
*/
|
|
150
|
+
interval_count?: number;
|
|
151
|
+
/**
|
|
152
|
+
* Default proration behavior when switching to this price. 'default' creates
|
|
153
|
+
* prorations, 'none' disables them. Only applies to recurring prices.
|
|
154
|
+
*/
|
|
155
|
+
proration_behavior?: 'default' | 'none';
|
|
156
|
+
/**
|
|
157
|
+
* Default proration date calculation when switching to this price. 'now' uses
|
|
158
|
+
* current time, 'start_of_period' uses billing period start. Only applies to
|
|
159
|
+
* recurring prices.
|
|
160
|
+
*/
|
|
161
|
+
proration_date?: 'now' | 'start_of_period';
|
|
162
|
+
/**
|
|
163
|
+
* Price type: one_time for single purchases, recurring for subscriptions
|
|
164
|
+
*/
|
|
165
|
+
type?: 'one_time' | 'recurring';
|
|
166
|
+
}
|
|
167
|
+
export interface VariantUpdateParams {
|
|
168
|
+
/**
|
|
169
|
+
* Path param: The unique identifier of the product
|
|
170
|
+
*/
|
|
171
|
+
product_id: string;
|
|
172
|
+
/**
|
|
173
|
+
* Body param: Whether the variant is available for new purchases
|
|
174
|
+
*/
|
|
175
|
+
active?: boolean;
|
|
176
|
+
/**
|
|
177
|
+
* Body param: Detailed description of what this variant includes
|
|
178
|
+
*/
|
|
179
|
+
description?: string;
|
|
180
|
+
/**
|
|
181
|
+
* Body param: Display name for the variant
|
|
182
|
+
*/
|
|
183
|
+
name?: string;
|
|
184
|
+
}
|
|
185
|
+
export interface VariantListParams extends CursorIDPageParams {
|
|
186
|
+
/**
|
|
187
|
+
* Filter by active status
|
|
188
|
+
*/
|
|
189
|
+
active?: 'true' | 'false';
|
|
190
|
+
}
|
|
191
|
+
export interface VariantArchiveParams {
|
|
192
|
+
/**
|
|
193
|
+
* The unique identifier of the product
|
|
194
|
+
*/
|
|
195
|
+
product_id: string;
|
|
196
|
+
}
|
|
197
|
+
export interface VariantGetParams {
|
|
198
|
+
/**
|
|
199
|
+
* The unique identifier of the product
|
|
200
|
+
*/
|
|
201
|
+
product_id: string;
|
|
202
|
+
}
|
|
203
|
+
export declare namespace Variants {
|
|
204
|
+
export { type Variant as Variant, type VariantsCursorIDPage as VariantsCursorIDPage, type VariantCreateParams as VariantCreateParams, type VariantUpdateParams as VariantUpdateParams, type VariantListParams as VariantListParams, type VariantArchiveParams as VariantArchiveParams, type VariantGetParams as VariantGetParams, };
|
|
205
|
+
}
|
|
206
|
+
//# sourceMappingURL=variants.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"variants.d.mts","sourceRoot":"","sources":["../../../../src/resources/beta/pay/products/variants.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,206 @@
|
|
|
1
|
+
import { APIResource } from "../../../../core/resource.js";
|
|
2
|
+
import { APIPromise } from "../../../../core/api-promise.js";
|
|
3
|
+
import { CursorIDPage, type CursorIDPageParams, PagePromise } from "../../../../core/pagination.js";
|
|
4
|
+
import { RequestOptions } from "../../../../internal/request-options.js";
|
|
5
|
+
export declare class Variants extends APIResource {
|
|
6
|
+
/**
|
|
7
|
+
* Creates a new variant with pricing for a product. Use variants to offer multiple
|
|
8
|
+
* pricing tiers or configurations (e.g., Basic at $10/month, Pro at $25/month). A
|
|
9
|
+
* Stripe Price is automatically created.
|
|
10
|
+
*/
|
|
11
|
+
create(productID: string, body: VariantCreateParams, options?: RequestOptions): APIPromise<Variant>;
|
|
12
|
+
/**
|
|
13
|
+
* Updates an existing variant. Use this to modify the name, description, or active
|
|
14
|
+
* status. Pricing cannot be changed after creation—create a new variant instead.
|
|
15
|
+
*/
|
|
16
|
+
update(variantID: string, params: VariantUpdateParams, options?: RequestOptions): APIPromise<Variant>;
|
|
17
|
+
/**
|
|
18
|
+
* Retrieves all variants for a product. Variants represent different pricing tiers
|
|
19
|
+
* or configurations (e.g., Basic, Pro, Enterprise) within a single product.
|
|
20
|
+
*/
|
|
21
|
+
list(productID: string, query?: VariantListParams | null | undefined, options?: RequestOptions): PagePromise<VariantsCursorIDPage, Variant>;
|
|
22
|
+
/**
|
|
23
|
+
* Archives a variant, preventing new subscriptions. The associated Stripe Price is
|
|
24
|
+
* also archived. Existing subscriptions remain active.
|
|
25
|
+
*/
|
|
26
|
+
archive(variantID: string, params: VariantArchiveParams, options?: RequestOptions): APIPromise<Variant>;
|
|
27
|
+
/**
|
|
28
|
+
* Retrieves a variant by ID. Returns the variant object including pricing details
|
|
29
|
+
* and status.
|
|
30
|
+
*/
|
|
31
|
+
get(variantID: string, params: VariantGetParams, options?: RequestOptions): APIPromise<Variant>;
|
|
32
|
+
}
|
|
33
|
+
export type VariantsCursorIDPage = CursorIDPage<Variant>;
|
|
34
|
+
/**
|
|
35
|
+
* A product variant representing a specific tier or configuration. Each variant
|
|
36
|
+
* has its own pricing. Variants allow a single product to have multiple pricing
|
|
37
|
+
* options (e.g., Basic, Pro, Enterprise tiers).
|
|
38
|
+
*/
|
|
39
|
+
export interface Variant {
|
|
40
|
+
/**
|
|
41
|
+
* Unique identifier for the price
|
|
42
|
+
*/
|
|
43
|
+
id: string;
|
|
44
|
+
/**
|
|
45
|
+
* Whether the variant is available for new purchases
|
|
46
|
+
*/
|
|
47
|
+
active: boolean;
|
|
48
|
+
/**
|
|
49
|
+
* Timestamp when the variant was created
|
|
50
|
+
*/
|
|
51
|
+
created: string;
|
|
52
|
+
/**
|
|
53
|
+
* Display name for the variant (e.g., Basic, Standard, Premium)
|
|
54
|
+
*/
|
|
55
|
+
name: string;
|
|
56
|
+
/**
|
|
57
|
+
* Price configuration for a product. Can be one-time or recurring (subscription).
|
|
58
|
+
*/
|
|
59
|
+
default_price?: Variant.DefaultPrice | null;
|
|
60
|
+
/**
|
|
61
|
+
* Detailed description of what this variant includes
|
|
62
|
+
*/
|
|
63
|
+
description?: string | null;
|
|
64
|
+
}
|
|
65
|
+
export declare namespace Variant {
|
|
66
|
+
/**
|
|
67
|
+
* Price configuration for a product. Can be one-time or recurring (subscription).
|
|
68
|
+
*/
|
|
69
|
+
interface DefaultPrice {
|
|
70
|
+
/**
|
|
71
|
+
* Unique identifier for the price
|
|
72
|
+
*/
|
|
73
|
+
id: string;
|
|
74
|
+
/**
|
|
75
|
+
* How to handle the billing cycle when switching plans. 'now' resets to current
|
|
76
|
+
* time, 'unchanged' keeps the original anchor. Null for one-time prices.
|
|
77
|
+
*/
|
|
78
|
+
billing_cycle_anchor: 'now' | 'unchanged' | null;
|
|
79
|
+
/**
|
|
80
|
+
* Three-letter ISO currency code (e.g., usd, eur)
|
|
81
|
+
*/
|
|
82
|
+
currency: string;
|
|
83
|
+
/**
|
|
84
|
+
* Billing frequency for recurring prices: day, week, month, or year. Null for
|
|
85
|
+
* one-time prices.
|
|
86
|
+
*/
|
|
87
|
+
interval: 'day' | 'week' | 'month' | 'year' | null;
|
|
88
|
+
/**
|
|
89
|
+
* Number of intervals between billings for recurring prices. Null for one-time
|
|
90
|
+
* prices.
|
|
91
|
+
*/
|
|
92
|
+
interval_count: number | null;
|
|
93
|
+
/**
|
|
94
|
+
* How to handle prorations when switching plans. 'default' creates prorations,
|
|
95
|
+
* 'none' disables them. Null for one-time prices.
|
|
96
|
+
*/
|
|
97
|
+
proration_behavior: 'default' | 'none' | null;
|
|
98
|
+
/**
|
|
99
|
+
* When to calculate proration. 'now' uses current time, 'start_of_period' uses the
|
|
100
|
+
* billing period start. Null for one-time prices or to use Stripe's default.
|
|
101
|
+
*/
|
|
102
|
+
proration_date: 'now' | 'start_of_period' | null;
|
|
103
|
+
/**
|
|
104
|
+
* Price type: one_time for single purchases, recurring for subscriptions
|
|
105
|
+
*/
|
|
106
|
+
type: 'one_time' | 'recurring';
|
|
107
|
+
/**
|
|
108
|
+
* Price amount in the smallest currency unit (e.g., cents)
|
|
109
|
+
*/
|
|
110
|
+
unit_amount: number | null;
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
export interface VariantCreateParams {
|
|
114
|
+
/**
|
|
115
|
+
* Display name for the variant (e.g., Basic, Standard, Premium)
|
|
116
|
+
*/
|
|
117
|
+
name: string;
|
|
118
|
+
/**
|
|
119
|
+
* Price amount in the smallest currency unit (e.g., cents). Use 0 for free
|
|
120
|
+
* variants.
|
|
121
|
+
*/
|
|
122
|
+
unit_amount: number;
|
|
123
|
+
/**
|
|
124
|
+
* Optional custom ID for the variant. If not provided, one will be generated.
|
|
125
|
+
*/
|
|
126
|
+
id?: string;
|
|
127
|
+
/**
|
|
128
|
+
* Default billing cycle anchor behavior when switching to this price. 'now' resets
|
|
129
|
+
* to current time, 'unchanged' keeps original anchor. Only applies to recurring
|
|
130
|
+
* prices.
|
|
131
|
+
*/
|
|
132
|
+
billing_cycle_anchor?: 'now' | 'unchanged';
|
|
133
|
+
/**
|
|
134
|
+
* Three-letter ISO currency code
|
|
135
|
+
*/
|
|
136
|
+
currency?: string;
|
|
137
|
+
/**
|
|
138
|
+
* Detailed description of what this variant includes
|
|
139
|
+
*/
|
|
140
|
+
description?: string;
|
|
141
|
+
/**
|
|
142
|
+
* Billing frequency for recurring prices: day, week, month, or year. Required for
|
|
143
|
+
* recurring type, ignored for one_time.
|
|
144
|
+
*/
|
|
145
|
+
interval?: 'day' | 'week' | 'month' | 'year';
|
|
146
|
+
/**
|
|
147
|
+
* Number of intervals between billings for recurring prices. Required for
|
|
148
|
+
* recurring type, ignored for one_time.
|
|
149
|
+
*/
|
|
150
|
+
interval_count?: number;
|
|
151
|
+
/**
|
|
152
|
+
* Default proration behavior when switching to this price. 'default' creates
|
|
153
|
+
* prorations, 'none' disables them. Only applies to recurring prices.
|
|
154
|
+
*/
|
|
155
|
+
proration_behavior?: 'default' | 'none';
|
|
156
|
+
/**
|
|
157
|
+
* Default proration date calculation when switching to this price. 'now' uses
|
|
158
|
+
* current time, 'start_of_period' uses billing period start. Only applies to
|
|
159
|
+
* recurring prices.
|
|
160
|
+
*/
|
|
161
|
+
proration_date?: 'now' | 'start_of_period';
|
|
162
|
+
/**
|
|
163
|
+
* Price type: one_time for single purchases, recurring for subscriptions
|
|
164
|
+
*/
|
|
165
|
+
type?: 'one_time' | 'recurring';
|
|
166
|
+
}
|
|
167
|
+
export interface VariantUpdateParams {
|
|
168
|
+
/**
|
|
169
|
+
* Path param: The unique identifier of the product
|
|
170
|
+
*/
|
|
171
|
+
product_id: string;
|
|
172
|
+
/**
|
|
173
|
+
* Body param: Whether the variant is available for new purchases
|
|
174
|
+
*/
|
|
175
|
+
active?: boolean;
|
|
176
|
+
/**
|
|
177
|
+
* Body param: Detailed description of what this variant includes
|
|
178
|
+
*/
|
|
179
|
+
description?: string;
|
|
180
|
+
/**
|
|
181
|
+
* Body param: Display name for the variant
|
|
182
|
+
*/
|
|
183
|
+
name?: string;
|
|
184
|
+
}
|
|
185
|
+
export interface VariantListParams extends CursorIDPageParams {
|
|
186
|
+
/**
|
|
187
|
+
* Filter by active status
|
|
188
|
+
*/
|
|
189
|
+
active?: 'true' | 'false';
|
|
190
|
+
}
|
|
191
|
+
export interface VariantArchiveParams {
|
|
192
|
+
/**
|
|
193
|
+
* The unique identifier of the product
|
|
194
|
+
*/
|
|
195
|
+
product_id: string;
|
|
196
|
+
}
|
|
197
|
+
export interface VariantGetParams {
|
|
198
|
+
/**
|
|
199
|
+
* The unique identifier of the product
|
|
200
|
+
*/
|
|
201
|
+
product_id: string;
|
|
202
|
+
}
|
|
203
|
+
export declare namespace Variants {
|
|
204
|
+
export { type Variant as Variant, type VariantsCursorIDPage as VariantsCursorIDPage, type VariantCreateParams as VariantCreateParams, type VariantUpdateParams as VariantUpdateParams, type VariantListParams as VariantListParams, type VariantArchiveParams as VariantArchiveParams, type VariantGetParams as VariantGetParams, };
|
|
205
|
+
}
|
|
206
|
+
//# sourceMappingURL=variants.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"variants.d.ts","sourceRoot":"","sources":["../../../../src/resources/beta/pay/products/variants.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.Variants = void 0;
|
|
5
|
+
const resource_1 = require("../../../../core/resource.js");
|
|
6
|
+
const pagination_1 = require("../../../../core/pagination.js");
|
|
7
|
+
const path_1 = require("../../../../internal/utils/path.js");
|
|
8
|
+
class Variants extends resource_1.APIResource {
|
|
9
|
+
/**
|
|
10
|
+
* Creates a new variant with pricing for a product. Use variants to offer multiple
|
|
11
|
+
* pricing tiers or configurations (e.g., Basic at $10/month, Pro at $25/month). A
|
|
12
|
+
* Stripe Price is automatically created.
|
|
13
|
+
*/
|
|
14
|
+
create(productID, body, options) {
|
|
15
|
+
return this._client.post((0, path_1.path) `/v1/pay/products/${productID}/variants`, { body, ...options });
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Updates an existing variant. Use this to modify the name, description, or active
|
|
19
|
+
* status. Pricing cannot be changed after creation—create a new variant instead.
|
|
20
|
+
*/
|
|
21
|
+
update(variantID, params, options) {
|
|
22
|
+
const { product_id, ...body } = params;
|
|
23
|
+
return this._client.patch((0, path_1.path) `/v1/pay/products/${product_id}/variants/${variantID}`, {
|
|
24
|
+
body,
|
|
25
|
+
...options,
|
|
26
|
+
});
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Retrieves all variants for a product. Variants represent different pricing tiers
|
|
30
|
+
* or configurations (e.g., Basic, Pro, Enterprise) within a single product.
|
|
31
|
+
*/
|
|
32
|
+
list(productID, query = {}, options) {
|
|
33
|
+
return this._client.getAPIList((0, path_1.path) `/v1/pay/products/${productID}/variants`, (pagination_1.CursorIDPage), {
|
|
34
|
+
query,
|
|
35
|
+
...options,
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Archives a variant, preventing new subscriptions. The associated Stripe Price is
|
|
40
|
+
* also archived. Existing subscriptions remain active.
|
|
41
|
+
*/
|
|
42
|
+
archive(variantID, params, options) {
|
|
43
|
+
const { product_id } = params;
|
|
44
|
+
return this._client.delete((0, path_1.path) `/v1/pay/products/${product_id}/variants/${variantID}`, options);
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Retrieves a variant by ID. Returns the variant object including pricing details
|
|
48
|
+
* and status.
|
|
49
|
+
*/
|
|
50
|
+
get(variantID, params, options) {
|
|
51
|
+
const { product_id } = params;
|
|
52
|
+
return this._client.get((0, path_1.path) `/v1/pay/products/${product_id}/variants/${variantID}`, options);
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
exports.Variants = Variants;
|
|
56
|
+
//# sourceMappingURL=variants.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"variants.js","sourceRoot":"","sources":["../../../../src/resources/beta/pay/products/variants.ts"],"names":[],"mappings":";AAAA,sFAAsF;;;AAEtF,2DAAwD;AAExD,+DAAiG;AAEjG,6DAAuD;AAEvD,MAAa,QAAS,SAAQ,sBAAW;IACvC;;;;OAIG;IACH,MAAM,CAAC,SAAiB,EAAE,IAAyB,EAAE,OAAwB;QAC3E,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAA,WAAI,EAAA,oBAAoB,SAAS,WAAW,EAAE,EAAE,IAAI,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;IAC/F,CAAC;IAED;;;OAGG;IACH,MAAM,CAAC,SAAiB,EAAE,MAA2B,EAAE,OAAwB;QAC7E,MAAM,EAAE,UAAU,EAAE,GAAG,IAAI,EAAE,GAAG,MAAM,CAAC;QACvC,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAA,WAAI,EAAA,oBAAoB,UAAU,aAAa,SAAS,EAAE,EAAE;YACpF,IAAI;YACJ,GAAG,OAAO;SACX,CAAC,CAAC;IACL,CAAC;IAED;;;OAGG;IACH,IAAI,CACF,SAAiB,EACjB,QAA8C,EAAE,EAChD,OAAwB;QAExB,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,IAAA,WAAI,EAAA,oBAAoB,SAAS,WAAW,EAAE,CAAA,yBAAqB,CAAA,EAAE;YAClG,KAAK;YACL,GAAG,OAAO;SACX,CAAC,CAAC;IACL,CAAC;IAED;;;OAGG;IACH,OAAO,CAAC,SAAiB,EAAE,MAA4B,EAAE,OAAwB;QAC/E,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,CAAC;QAC9B,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAA,WAAI,EAAA,oBAAoB,UAAU,aAAa,SAAS,EAAE,EAAE,OAAO,CAAC,CAAC;IAClG,CAAC;IAED;;;OAGG;IACH,GAAG,CAAC,SAAiB,EAAE,MAAwB,EAAE,OAAwB;QACvE,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,CAAC;QAC9B,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAA,WAAI,EAAA,oBAAoB,UAAU,aAAa,SAAS,EAAE,EAAE,OAAO,CAAC,CAAC;IAC/F,CAAC;CACF;AAtDD,4BAsDC"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
|
|
2
|
+
import { APIResource } from "../../../../core/resource.mjs";
|
|
3
|
+
import { CursorIDPage } from "../../../../core/pagination.mjs";
|
|
4
|
+
import { path } from "../../../../internal/utils/path.mjs";
|
|
5
|
+
export class Variants extends APIResource {
|
|
6
|
+
/**
|
|
7
|
+
* Creates a new variant with pricing for a product. Use variants to offer multiple
|
|
8
|
+
* pricing tiers or configurations (e.g., Basic at $10/month, Pro at $25/month). A
|
|
9
|
+
* Stripe Price is automatically created.
|
|
10
|
+
*/
|
|
11
|
+
create(productID, body, options) {
|
|
12
|
+
return this._client.post(path `/v1/pay/products/${productID}/variants`, { body, ...options });
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Updates an existing variant. Use this to modify the name, description, or active
|
|
16
|
+
* status. Pricing cannot be changed after creation—create a new variant instead.
|
|
17
|
+
*/
|
|
18
|
+
update(variantID, params, options) {
|
|
19
|
+
const { product_id, ...body } = params;
|
|
20
|
+
return this._client.patch(path `/v1/pay/products/${product_id}/variants/${variantID}`, {
|
|
21
|
+
body,
|
|
22
|
+
...options,
|
|
23
|
+
});
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Retrieves all variants for a product. Variants represent different pricing tiers
|
|
27
|
+
* or configurations (e.g., Basic, Pro, Enterprise) within a single product.
|
|
28
|
+
*/
|
|
29
|
+
list(productID, query = {}, options) {
|
|
30
|
+
return this._client.getAPIList(path `/v1/pay/products/${productID}/variants`, (CursorIDPage), {
|
|
31
|
+
query,
|
|
32
|
+
...options,
|
|
33
|
+
});
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Archives a variant, preventing new subscriptions. The associated Stripe Price is
|
|
37
|
+
* also archived. Existing subscriptions remain active.
|
|
38
|
+
*/
|
|
39
|
+
archive(variantID, params, options) {
|
|
40
|
+
const { product_id } = params;
|
|
41
|
+
return this._client.delete(path `/v1/pay/products/${product_id}/variants/${variantID}`, options);
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Retrieves a variant by ID. Returns the variant object including pricing details
|
|
45
|
+
* and status.
|
|
46
|
+
*/
|
|
47
|
+
get(variantID, params, options) {
|
|
48
|
+
const { product_id } = params;
|
|
49
|
+
return this._client.get(path `/v1/pay/products/${product_id}/variants/${variantID}`, options);
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
//# sourceMappingURL=variants.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"variants.mjs","sourceRoot":"","sources":["../../../../src/resources/beta/pay/products/variants.ts"],"names":[],"mappings":"AAAA,sFAAsF;OAE/E,EAAE,WAAW,EAAE;OAEf,EAAE,YAAY,EAAwC;OAEtD,EAAE,IAAI,EAAE;AAEf,MAAM,OAAO,QAAS,SAAQ,WAAW;IACvC;;;;OAIG;IACH,MAAM,CAAC,SAAiB,EAAE,IAAyB,EAAE,OAAwB;QAC3E,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAA,oBAAoB,SAAS,WAAW,EAAE,EAAE,IAAI,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;IAC/F,CAAC;IAED;;;OAGG;IACH,MAAM,CAAC,SAAiB,EAAE,MAA2B,EAAE,OAAwB;QAC7E,MAAM,EAAE,UAAU,EAAE,GAAG,IAAI,EAAE,GAAG,MAAM,CAAC;QACvC,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAA,oBAAoB,UAAU,aAAa,SAAS,EAAE,EAAE;YACpF,IAAI;YACJ,GAAG,OAAO;SACX,CAAC,CAAC;IACL,CAAC;IAED;;;OAGG;IACH,IAAI,CACF,SAAiB,EACjB,QAA8C,EAAE,EAChD,OAAwB;QAExB,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAA,oBAAoB,SAAS,WAAW,EAAE,CAAA,YAAqB,CAAA,EAAE;YAClG,KAAK;YACL,GAAG,OAAO;SACX,CAAC,CAAC;IACL,CAAC;IAED;;;OAGG;IACH,OAAO,CAAC,SAAiB,EAAE,MAA4B,EAAE,OAAwB;QAC/E,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,CAAC;QAC9B,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAA,oBAAoB,UAAU,aAAa,SAAS,EAAE,EAAE,OAAO,CAAC,CAAC;IAClG,CAAC;IAED;;;OAGG;IACH,GAAG,CAAC,SAAiB,EAAE,MAAwB,EAAE,OAAwB;QACvE,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,CAAC;QAC9B,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAA,oBAAoB,UAAU,aAAa,SAAS,EAAE,EAAE,OAAO,CAAC,CAAC;IAC/F,CAAC;CACF"}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export { PushNotifications, type PushNotificationEnableResponse, type PushNotificationSendResponse, type PushNotificationSendParams, } from "./push-notifications.mjs";
|
|
2
|
+
export { Subscriptions, type SubscriptionCreateResponse, type SubscriptionDeleteResponse, type SubscriptionCreateParams, } from "./subscriptions.mjs";
|
|
3
|
+
//# sourceMappingURL=index.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.mts","sourceRoot":"","sources":["../../../src/resources/beta/push-notifications/index.ts"],"names":[],"mappings":"OAEO,EACL,iBAAiB,EACjB,KAAK,8BAA8B,EACnC,KAAK,4BAA4B,EACjC,KAAK,0BAA0B,GAChC;OACM,EACL,aAAa,EACb,KAAK,0BAA0B,EAC/B,KAAK,0BAA0B,EAC/B,KAAK,wBAAwB,GAC9B"}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export { PushNotifications, type PushNotificationEnableResponse, type PushNotificationSendResponse, type PushNotificationSendParams, } from "./push-notifications.js";
|
|
2
|
+
export { Subscriptions, type SubscriptionCreateResponse, type SubscriptionDeleteResponse, type SubscriptionCreateParams, } from "./subscriptions.js";
|
|
3
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/resources/beta/push-notifications/index.ts"],"names":[],"mappings":"OAEO,EACL,iBAAiB,EACjB,KAAK,8BAA8B,EACnC,KAAK,4BAA4B,EACjC,KAAK,0BAA0B,GAChC;OACM,EACL,aAAa,EACb,KAAK,0BAA0B,EAC/B,KAAK,0BAA0B,EAC/B,KAAK,wBAAwB,GAC9B"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.Subscriptions = exports.PushNotifications = void 0;
|
|
5
|
+
var push_notifications_1 = require("./push-notifications.js");
|
|
6
|
+
Object.defineProperty(exports, "PushNotifications", { enumerable: true, get: function () { return push_notifications_1.PushNotifications; } });
|
|
7
|
+
var subscriptions_1 = require("./subscriptions.js");
|
|
8
|
+
Object.defineProperty(exports, "Subscriptions", { enumerable: true, get: function () { return subscriptions_1.Subscriptions; } });
|
|
9
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/resources/beta/push-notifications/index.ts"],"names":[],"mappings":";AAAA,sFAAsF;;;AAEtF,8DAK8B;AAJ5B,uHAAA,iBAAiB,OAAA;AAKnB,oDAKyB;AAJvB,8GAAA,aAAa,OAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.mjs","sourceRoot":"","sources":["../../../src/resources/beta/push-notifications/index.ts"],"names":[],"mappings":"AAAA,sFAAsF;OAE/E,EACL,iBAAiB,GAIlB;OACM,EACL,aAAa,GAId"}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import { APIResource } from "../../../core/resource.mjs";
|
|
2
|
+
import * as SubscriptionsAPI from "./subscriptions.mjs";
|
|
3
|
+
import { SubscriptionCreateParams, SubscriptionCreateResponse, SubscriptionDeleteResponse, Subscriptions } from "./subscriptions.mjs";
|
|
4
|
+
import { APIPromise } from "../../../core/api-promise.mjs";
|
|
5
|
+
import { RequestOptions } from "../../../internal/request-options.mjs";
|
|
6
|
+
export declare class PushNotifications extends APIResource {
|
|
7
|
+
subscriptions: SubscriptionsAPI.Subscriptions;
|
|
8
|
+
/**
|
|
9
|
+
* Enables push notifications for the app by generating VAPID keys. Idempotent -
|
|
10
|
+
* returns existing keys if already enabled. Hercules recommends calling this
|
|
11
|
+
* during app initialization.
|
|
12
|
+
*/
|
|
13
|
+
enable(options?: RequestOptions): APIPromise<PushNotificationEnableResponse>;
|
|
14
|
+
/**
|
|
15
|
+
* Sends push notifications to specified visitors. Omit visitorIds to broadcast to
|
|
16
|
+
* all subscribers. Returns the count of successful and failed deliveries.
|
|
17
|
+
*/
|
|
18
|
+
send(body: PushNotificationSendParams, options?: RequestOptions): APIPromise<PushNotificationSendResponse>;
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Response containing the VAPID public key for push subscriptions.
|
|
22
|
+
*/
|
|
23
|
+
export interface PushNotificationEnableResponse {
|
|
24
|
+
/**
|
|
25
|
+
* VAPID public key for push subscription (base64url encoded)
|
|
26
|
+
*/
|
|
27
|
+
vapidPublicKey: string;
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Result of the send operation with success and failure counts.
|
|
31
|
+
*/
|
|
32
|
+
export interface PushNotificationSendResponse {
|
|
33
|
+
/**
|
|
34
|
+
* Number of notifications that failed to send
|
|
35
|
+
*/
|
|
36
|
+
failed: number;
|
|
37
|
+
/**
|
|
38
|
+
* Number of notifications successfully sent
|
|
39
|
+
*/
|
|
40
|
+
sent: number;
|
|
41
|
+
}
|
|
42
|
+
export interface PushNotificationSendParams {
|
|
43
|
+
/**
|
|
44
|
+
* Notification title
|
|
45
|
+
*/
|
|
46
|
+
title: string;
|
|
47
|
+
/**
|
|
48
|
+
* Badge URL for mobile devices
|
|
49
|
+
*/
|
|
50
|
+
badge?: string;
|
|
51
|
+
/**
|
|
52
|
+
* Notification body text
|
|
53
|
+
*/
|
|
54
|
+
body?: string;
|
|
55
|
+
/**
|
|
56
|
+
* Custom data payload to include with the notification
|
|
57
|
+
*/
|
|
58
|
+
data?: {
|
|
59
|
+
[key: string]: unknown;
|
|
60
|
+
};
|
|
61
|
+
/**
|
|
62
|
+
* Icon URL
|
|
63
|
+
*/
|
|
64
|
+
icon?: string;
|
|
65
|
+
/**
|
|
66
|
+
* URL to open when notification is clicked
|
|
67
|
+
*/
|
|
68
|
+
url?: string;
|
|
69
|
+
/**
|
|
70
|
+
* Visitor IDs to send to. Omit to broadcast to all subscribers.
|
|
71
|
+
*/
|
|
72
|
+
visitorIds?: Array<string>;
|
|
73
|
+
}
|
|
74
|
+
export declare namespace PushNotifications {
|
|
75
|
+
export { type PushNotificationEnableResponse as PushNotificationEnableResponse, type PushNotificationSendResponse as PushNotificationSendResponse, type PushNotificationSendParams as PushNotificationSendParams, };
|
|
76
|
+
export { Subscriptions as Subscriptions, type SubscriptionCreateResponse as SubscriptionCreateResponse, type SubscriptionDeleteResponse as SubscriptionDeleteResponse, type SubscriptionCreateParams as SubscriptionCreateParams, };
|
|
77
|
+
}
|
|
78
|
+
//# sourceMappingURL=push-notifications.d.mts.map
|