expo-iap 3.0.3 → 3.0.4

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 (59) hide show
  1. package/CHANGELOG.md +7 -0
  2. package/CLAUDE.md +2 -0
  3. package/build/helpers/subscription.d.ts +1 -12
  4. package/build/helpers/subscription.d.ts.map +1 -1
  5. package/build/helpers/subscription.js +12 -7
  6. package/build/helpers/subscription.js.map +1 -1
  7. package/build/index.d.ts +8 -6
  8. package/build/index.d.ts.map +1 -1
  9. package/build/index.js +4 -2
  10. package/build/index.js.map +1 -1
  11. package/build/modules/android.d.ts +7 -6
  12. package/build/modules/android.d.ts.map +1 -1
  13. package/build/modules/android.js +19 -4
  14. package/build/modules/android.js.map +1 -1
  15. package/build/modules/ios.d.ts +7 -10
  16. package/build/modules/ios.d.ts.map +1 -1
  17. package/build/modules/ios.js +3 -1
  18. package/build/modules/ios.js.map +1 -1
  19. package/build/purchase-error.d.ts +69 -0
  20. package/build/purchase-error.d.ts.map +1 -0
  21. package/build/purchase-error.js +164 -0
  22. package/build/purchase-error.js.map +1 -0
  23. package/build/types.d.ts +649 -0
  24. package/build/types.d.ts.map +1 -0
  25. package/build/types.js +100 -0
  26. package/build/types.js.map +1 -0
  27. package/build/useIAP.d.ts +5 -4
  28. package/build/useIAP.d.ts.map +1 -1
  29. package/build/useIAP.js +1 -1
  30. package/build/useIAP.js.map +1 -1
  31. package/build/utils/errorMapping.d.ts +1 -1
  32. package/build/utils/errorMapping.d.ts.map +1 -1
  33. package/build/utils/errorMapping.js +19 -3
  34. package/build/utils/errorMapping.js.map +1 -1
  35. package/jest.config.js +1 -1
  36. package/package.json +1 -1
  37. package/src/helpers/subscription.ts +12 -20
  38. package/src/index.ts +14 -14
  39. package/src/modules/android.ts +28 -10
  40. package/src/modules/ios.ts +11 -13
  41. package/src/purchase-error.ts +268 -0
  42. package/src/types.ts +738 -0
  43. package/src/useIAP.ts +8 -8
  44. package/src/utils/errorMapping.ts +24 -3
  45. package/build/ExpoIap.types.d.ts +0 -307
  46. package/build/ExpoIap.types.d.ts.map +0 -1
  47. package/build/ExpoIap.types.js +0 -235
  48. package/build/ExpoIap.types.js.map +0 -1
  49. package/build/types/ExpoIapAndroid.types.d.ts +0 -114
  50. package/build/types/ExpoIapAndroid.types.d.ts.map +0 -1
  51. package/build/types/ExpoIapAndroid.types.js +0 -29
  52. package/build/types/ExpoIapAndroid.types.js.map +0 -1
  53. package/build/types/ExpoIapIOS.types.d.ts +0 -149
  54. package/build/types/ExpoIapIOS.types.d.ts.map +0 -1
  55. package/build/types/ExpoIapIOS.types.js +0 -8
  56. package/build/types/ExpoIapIOS.types.js.map +0 -1
  57. package/src/ExpoIap.types.ts +0 -444
  58. package/src/types/ExpoIapAndroid.types.ts +0 -133
  59. package/src/types/ExpoIapIOS.types.ts +0 -172
@@ -0,0 +1,649 @@
1
+ export interface ActiveSubscription {
2
+ autoRenewingAndroid?: boolean | null;
3
+ daysUntilExpirationIOS?: number | null;
4
+ environmentIOS?: string | null;
5
+ expirationDateIOS?: number | null;
6
+ isActive: boolean;
7
+ productId: string;
8
+ purchaseToken?: string | null;
9
+ transactionDate: number;
10
+ transactionId: string;
11
+ willExpireSoon?: boolean | null;
12
+ }
13
+ export interface AndroidSubscriptionOfferInput {
14
+ /** Offer token */
15
+ offerToken: string;
16
+ /** Product SKU */
17
+ sku: string;
18
+ }
19
+ export interface AppTransaction {
20
+ appId: number;
21
+ appTransactionId?: string | null;
22
+ appVersion: string;
23
+ appVersionId: number;
24
+ bundleId: string;
25
+ deviceVerification: string;
26
+ deviceVerificationNonce: string;
27
+ environment: string;
28
+ originalAppVersion: string;
29
+ originalPlatform?: string | null;
30
+ originalPurchaseDate: number;
31
+ preorderDate?: number | null;
32
+ signedDate: number;
33
+ }
34
+ export interface DeepLinkOptions {
35
+ /** Android package name to target (required on Android) */
36
+ packageNameAndroid?: string | null;
37
+ /** Android SKU to open (required on Android) */
38
+ skuAndroid?: string | null;
39
+ }
40
+ export interface DiscountIOS {
41
+ identifier: string;
42
+ localizedPrice?: string | null;
43
+ numberOfPeriods: number;
44
+ paymentMode: PaymentModeIOS;
45
+ price: string;
46
+ priceAmount: number;
47
+ subscriptionPeriod: string;
48
+ type: string;
49
+ }
50
+ export interface DiscountOfferIOS {
51
+ /** Discount identifier */
52
+ identifier: string;
53
+ /** Key identifier for validation */
54
+ keyIdentifier: string;
55
+ /** Cryptographic nonce */
56
+ nonce: string;
57
+ /** Signature for validation */
58
+ signature: string;
59
+ /** Timestamp of discount offer */
60
+ timestamp: number;
61
+ }
62
+ export interface DiscountOfferInputIOS {
63
+ /** Discount identifier */
64
+ identifier: string;
65
+ /** Key identifier for validation */
66
+ keyIdentifier: string;
67
+ /** Cryptographic nonce */
68
+ nonce: string;
69
+ /** Signature for validation */
70
+ signature: string;
71
+ /** Timestamp of discount offer */
72
+ timestamp: number;
73
+ }
74
+ export interface EntitlementIOS {
75
+ jsonRepresentation: string;
76
+ sku: string;
77
+ transactionId: string;
78
+ }
79
+ export declare enum ErrorCode {
80
+ ActivityUnavailable = "ACTIVITY_UNAVAILABLE",
81
+ AlreadyOwned = "ALREADY_OWNED",
82
+ AlreadyPrepared = "ALREADY_PREPARED",
83
+ BillingResponseJsonParseError = "BILLING_RESPONSE_JSON_PARSE_ERROR",
84
+ BillingUnavailable = "BILLING_UNAVAILABLE",
85
+ ConnectionClosed = "CONNECTION_CLOSED",
86
+ DeferredPayment = "DEFERRED_PAYMENT",
87
+ DeveloperError = "DEVELOPER_ERROR",
88
+ EmptySkuList = "EMPTY_SKU_LIST",
89
+ FeatureNotSupported = "FEATURE_NOT_SUPPORTED",
90
+ IapNotAvailable = "IAP_NOT_AVAILABLE",
91
+ InitConnection = "INIT_CONNECTION",
92
+ Interrupted = "INTERRUPTED",
93
+ ItemNotOwned = "ITEM_NOT_OWNED",
94
+ ItemUnavailable = "ITEM_UNAVAILABLE",
95
+ NetworkError = "NETWORK_ERROR",
96
+ NotEnded = "NOT_ENDED",
97
+ NotPrepared = "NOT_PREPARED",
98
+ Pending = "PENDING",
99
+ PurchaseError = "PURCHASE_ERROR",
100
+ QueryProduct = "QUERY_PRODUCT",
101
+ ReceiptFailed = "RECEIPT_FAILED",
102
+ ReceiptFinished = "RECEIPT_FINISHED",
103
+ ReceiptFinishedFailed = "RECEIPT_FINISHED_FAILED",
104
+ RemoteError = "REMOTE_ERROR",
105
+ ServiceDisconnected = "SERVICE_DISCONNECTED",
106
+ ServiceError = "SERVICE_ERROR",
107
+ SkuNotFound = "SKU_NOT_FOUND",
108
+ SkuOfferMismatch = "SKU_OFFER_MISMATCH",
109
+ SyncError = "SYNC_ERROR",
110
+ TransactionValidationFailed = "TRANSACTION_VALIDATION_FAILED",
111
+ Unknown = "UNKNOWN",
112
+ UserCancelled = "USER_CANCELLED",
113
+ UserError = "USER_ERROR"
114
+ }
115
+ export interface FetchProductsResult {
116
+ products?: Product[] | null;
117
+ subscriptions?: ProductSubscription[] | null;
118
+ }
119
+ export declare enum IapEvent {
120
+ PromotedProductIos = "PROMOTED_PRODUCT_IOS",
121
+ PurchaseError = "PURCHASE_ERROR",
122
+ PurchaseUpdated = "PURCHASE_UPDATED"
123
+ }
124
+ export interface Mutation {
125
+ /** Acknowledge a non-consumable purchase or subscription */
126
+ acknowledgePurchaseAndroid: Promise<VoidResult>;
127
+ /** Initiate a refund request for a product (iOS 15+) */
128
+ beginRefundRequestIOS: Promise<RefundResultIOS>;
129
+ /** Clear pending transactions from the StoreKit payment queue */
130
+ clearTransactionIOS: Promise<VoidResult>;
131
+ /** Consume a purchase token so it can be repurchased */
132
+ consumePurchaseAndroid: Promise<VoidResult>;
133
+ /** Open the native subscription management surface */
134
+ deepLinkToSubscriptions: Promise<VoidResult>;
135
+ /** Close the platform billing connection */
136
+ endConnection: Promise<boolean>;
137
+ /** Finish a transaction after validating receipts */
138
+ finishTransaction: Promise<VoidResult>;
139
+ /** Establish the platform billing connection */
140
+ initConnection: Promise<boolean>;
141
+ /** Present the App Store code redemption sheet */
142
+ presentCodeRedemptionSheetIOS: Promise<VoidResult>;
143
+ /** Initiate a purchase flow; rely on events for final state */
144
+ requestPurchase?: Promise<RequestPurchaseResult | null>;
145
+ /** Purchase the promoted product surfaced by the App Store */
146
+ requestPurchaseOnPromotedProductIOS: Promise<PurchaseIOS>;
147
+ /** Restore completed purchases across platforms */
148
+ restorePurchases: Promise<VoidResult>;
149
+ /** Open subscription management UI and return changed purchases (iOS 15+) */
150
+ showManageSubscriptionsIOS: Promise<PurchaseIOS[]>;
151
+ /** Force a StoreKit sync for transactions (iOS 15+) */
152
+ syncIOS: Promise<VoidResult>;
153
+ /** Validate purchase receipts with the configured providers */
154
+ validateReceipt: Promise<ReceiptValidationResult>;
155
+ }
156
+ export interface MutationAcknowledgePurchaseAndroidArgs {
157
+ purchaseToken: string;
158
+ }
159
+ export interface MutationBeginRefundRequestIosArgs {
160
+ sku: string;
161
+ }
162
+ export interface MutationConsumePurchaseAndroidArgs {
163
+ purchaseToken: string;
164
+ }
165
+ export interface MutationDeepLinkToSubscriptionsArgs {
166
+ options?: DeepLinkOptions | null;
167
+ }
168
+ export interface MutationFinishTransactionArgs {
169
+ isConsumable?: boolean | null;
170
+ purchase: PurchaseInput;
171
+ }
172
+ export interface MutationRequestPurchaseArgs {
173
+ params: PurchaseParams;
174
+ }
175
+ export interface MutationValidateReceiptArgs {
176
+ options: ReceiptValidationProps;
177
+ }
178
+ export declare enum PaymentModeIOS {
179
+ Empty = "EMPTY",
180
+ FreeTrial = "FREE_TRIAL",
181
+ PayAsYouGo = "PAY_AS_YOU_GO",
182
+ PayUpFront = "PAY_UP_FRONT"
183
+ }
184
+ export declare enum Platform {
185
+ Android = "ANDROID",
186
+ Ios = "IOS"
187
+ }
188
+ export interface PricingPhaseAndroid {
189
+ billingCycleCount: number;
190
+ billingPeriod: string;
191
+ formattedPrice: string;
192
+ priceAmountMicros: string;
193
+ priceCurrencyCode: string;
194
+ recurrenceMode: number;
195
+ }
196
+ export interface PricingPhasesAndroid {
197
+ pricingPhaseList: PricingPhaseAndroid[];
198
+ }
199
+ export type Product = ProductAndroid | ProductIOS;
200
+ export interface ProductAndroid extends ProductCommon {
201
+ currency: string;
202
+ debugDescription?: string | null;
203
+ description: string;
204
+ displayName?: string | null;
205
+ displayPrice: string;
206
+ id: string;
207
+ nameAndroid: string;
208
+ oneTimePurchaseOfferDetailsAndroid?: ProductAndroidOneTimePurchaseOfferDetail | null;
209
+ platform: Platform;
210
+ price?: number | null;
211
+ subscriptionOfferDetailsAndroid?: ProductSubscriptionAndroidOfferDetails[] | null;
212
+ title: string;
213
+ type: ProductType;
214
+ }
215
+ export interface ProductAndroidOneTimePurchaseOfferDetail {
216
+ formattedPrice: string;
217
+ priceAmountMicros: string;
218
+ priceCurrencyCode: string;
219
+ }
220
+ export interface ProductCommon {
221
+ currency: string;
222
+ debugDescription?: string | null;
223
+ description: string;
224
+ displayName?: string | null;
225
+ displayPrice: string;
226
+ id: string;
227
+ platform: Platform;
228
+ price?: number | null;
229
+ title: string;
230
+ type: ProductType;
231
+ }
232
+ export interface ProductIOS extends ProductCommon {
233
+ currency: string;
234
+ debugDescription?: string | null;
235
+ description: string;
236
+ displayName?: string | null;
237
+ displayNameIOS: string;
238
+ displayPrice: string;
239
+ id: string;
240
+ isFamilyShareableIOS: boolean;
241
+ jsonRepresentationIOS: string;
242
+ platform: Platform;
243
+ price?: number | null;
244
+ subscriptionInfoIOS?: SubscriptionInfoIOS | null;
245
+ title: string;
246
+ type: ProductType;
247
+ typeIOS: ProductTypeIOS;
248
+ }
249
+ export declare enum ProductQueryType {
250
+ All = "ALL",
251
+ InApp = "IN_APP",
252
+ Subs = "SUBS"
253
+ }
254
+ export interface ProductRequest {
255
+ skus: string[];
256
+ type?: ProductQueryType | null;
257
+ }
258
+ export type ProductSubscription = ProductSubscriptionAndroid | ProductSubscriptionIOS;
259
+ export interface ProductSubscriptionAndroid extends ProductCommon {
260
+ currency: string;
261
+ debugDescription?: string | null;
262
+ description: string;
263
+ displayName?: string | null;
264
+ displayPrice: string;
265
+ id: string;
266
+ nameAndroid: string;
267
+ oneTimePurchaseOfferDetailsAndroid?: ProductAndroidOneTimePurchaseOfferDetail | null;
268
+ platform: Platform;
269
+ price?: number | null;
270
+ subscriptionOfferDetailsAndroid: ProductSubscriptionAndroidOfferDetails[];
271
+ title: string;
272
+ type: ProductType;
273
+ }
274
+ export interface ProductSubscriptionAndroidOfferDetails {
275
+ basePlanId: string;
276
+ offerId?: string | null;
277
+ offerTags: string[];
278
+ offerToken: string;
279
+ pricingPhases: PricingPhasesAndroid;
280
+ }
281
+ export interface ProductSubscriptionIOS extends ProductCommon {
282
+ currency: string;
283
+ debugDescription?: string | null;
284
+ description: string;
285
+ discountsIOS?: DiscountIOS[] | null;
286
+ displayName?: string | null;
287
+ displayNameIOS: string;
288
+ displayPrice: string;
289
+ id: string;
290
+ introductoryPriceAsAmountIOS?: string | null;
291
+ introductoryPriceIOS?: string | null;
292
+ introductoryPriceNumberOfPeriodsIOS?: string | null;
293
+ introductoryPricePaymentModeIOS?: PaymentModeIOS | null;
294
+ introductoryPriceSubscriptionPeriodIOS?: SubscriptionPeriodIOS | null;
295
+ isFamilyShareableIOS: boolean;
296
+ jsonRepresentationIOS: string;
297
+ platform: Platform;
298
+ price?: number | null;
299
+ subscriptionInfoIOS?: SubscriptionInfoIOS | null;
300
+ subscriptionPeriodNumberIOS?: string | null;
301
+ subscriptionPeriodUnitIOS?: SubscriptionPeriodIOS | null;
302
+ title: string;
303
+ type: ProductType;
304
+ typeIOS: ProductTypeIOS;
305
+ }
306
+ export declare enum ProductType {
307
+ InApp = "IN_APP",
308
+ Subs = "SUBS"
309
+ }
310
+ export declare enum ProductTypeIOS {
311
+ AutoRenewableSubscription = "AUTO_RENEWABLE_SUBSCRIPTION",
312
+ Consumable = "CONSUMABLE",
313
+ NonConsumable = "NON_CONSUMABLE",
314
+ NonRenewingSubscription = "NON_RENEWING_SUBSCRIPTION"
315
+ }
316
+ export type Purchase = PurchaseAndroid | PurchaseIOS;
317
+ export interface PurchaseAndroid extends PurchaseCommon {
318
+ autoRenewingAndroid?: boolean | null;
319
+ dataAndroid?: string | null;
320
+ developerPayloadAndroid?: string | null;
321
+ id: string;
322
+ ids?: string[] | null;
323
+ isAcknowledgedAndroid?: boolean | null;
324
+ isAutoRenewing: boolean;
325
+ obfuscatedAccountIdAndroid?: string | null;
326
+ obfuscatedProfileIdAndroid?: string | null;
327
+ packageNameAndroid?: string | null;
328
+ platform: Platform;
329
+ productId: string;
330
+ purchaseState: PurchaseState;
331
+ purchaseToken?: string | null;
332
+ quantity: number;
333
+ signatureAndroid?: string | null;
334
+ transactionDate: number;
335
+ }
336
+ export interface PurchaseCommon {
337
+ id: string;
338
+ ids?: string[] | null;
339
+ isAutoRenewing: boolean;
340
+ platform: Platform;
341
+ productId: string;
342
+ purchaseState: PurchaseState;
343
+ /** Unified purchase token (iOS JWS, Android purchaseToken) */
344
+ purchaseToken?: string | null;
345
+ quantity: number;
346
+ transactionDate: number;
347
+ }
348
+ export interface PurchaseError {
349
+ code: ErrorCode;
350
+ message: string;
351
+ productId?: string | null;
352
+ }
353
+ export interface PurchaseIOS extends PurchaseCommon {
354
+ appAccountToken?: string | null;
355
+ appBundleIdIOS?: string | null;
356
+ countryCodeIOS?: string | null;
357
+ currencyCodeIOS?: string | null;
358
+ currencySymbolIOS?: string | null;
359
+ environmentIOS?: string | null;
360
+ expirationDateIOS?: number | null;
361
+ id: string;
362
+ ids?: string[] | null;
363
+ isAutoRenewing: boolean;
364
+ isUpgradedIOS?: boolean | null;
365
+ offerIOS?: PurchaseOfferIOS | null;
366
+ originalTransactionDateIOS?: number | null;
367
+ originalTransactionIdentifierIOS?: string | null;
368
+ ownershipTypeIOS?: string | null;
369
+ platform: Platform;
370
+ productId: string;
371
+ purchaseState: PurchaseState;
372
+ purchaseToken?: string | null;
373
+ quantity: number;
374
+ quantityIOS?: number | null;
375
+ reasonIOS?: string | null;
376
+ reasonStringRepresentationIOS?: string | null;
377
+ revocationDateIOS?: number | null;
378
+ revocationReasonIOS?: string | null;
379
+ storefrontCountryCodeIOS?: string | null;
380
+ subscriptionGroupIdIOS?: string | null;
381
+ transactionDate: number;
382
+ transactionReasonIOS?: string | null;
383
+ webOrderLineItemIdIOS?: string | null;
384
+ }
385
+ export interface PurchaseInput {
386
+ id: string;
387
+ ids?: string[] | null;
388
+ isAutoRenewing: boolean;
389
+ platform: Platform;
390
+ productId: string;
391
+ purchaseState: PurchaseState;
392
+ purchaseToken?: string | null;
393
+ quantity: number;
394
+ transactionDate: number;
395
+ }
396
+ export interface PurchaseOfferIOS {
397
+ id: string;
398
+ paymentMode: string;
399
+ type: string;
400
+ }
401
+ export interface PurchaseOptions {
402
+ /** Also emit results through the iOS event listeners */
403
+ alsoPublishToEventListenerIOS?: boolean | null;
404
+ /** Limit to currently active items on iOS */
405
+ onlyIncludeActiveItemsIOS?: boolean | null;
406
+ }
407
+ export interface PurchaseParams {
408
+ /** Per-platform purchase request props */
409
+ requestPurchase?: RequestPurchasePropsByPlatforms | null;
410
+ /** Per-platform subscription request props */
411
+ requestSubscription?: RequestSubscriptionPropsByPlatforms | null;
412
+ /** Explicit purchase type hint (defaults to in-app) */
413
+ type?: ProductQueryType | null;
414
+ }
415
+ export declare enum PurchaseState {
416
+ Deferred = "DEFERRED",
417
+ Failed = "FAILED",
418
+ Pending = "PENDING",
419
+ Purchased = "PURCHASED",
420
+ Restored = "RESTORED",
421
+ Unknown = "UNKNOWN"
422
+ }
423
+ export interface Query {
424
+ /** Get current StoreKit 2 entitlements (iOS 15+) */
425
+ currentEntitlementIOS: Promise<EntitlementIOS[]>;
426
+ /** Retrieve products or subscriptions from the store */
427
+ fetchProducts: Promise<FetchProductsResult>;
428
+ /** Get active subscriptions (filters by subscriptionIds when provided) */
429
+ getActiveSubscriptions: Promise<ActiveSubscription[]>;
430
+ /** Fetch the current app transaction (iOS 16+) */
431
+ getAppTransactionIOS?: Promise<AppTransaction | null>;
432
+ /** Get all available purchases for the current user */
433
+ getAvailablePurchases: Promise<Purchase[]>;
434
+ /** Retrieve all pending transactions in the StoreKit queue */
435
+ getPendingTransactionsIOS: Promise<PurchaseIOS[]>;
436
+ /** Get the currently promoted product (iOS 11+) */
437
+ getPromotedProductIOS?: Promise<ProductIOS | null>;
438
+ /** Get base64-encoded receipt data for validation */
439
+ getReceiptDataIOS: Promise<string>;
440
+ /** Get the current App Store storefront country code */
441
+ getStorefrontIOS: Promise<string>;
442
+ /** Get the transaction JWS (StoreKit 2) */
443
+ getTransactionJwsIOS: Promise<string>;
444
+ /** Check whether the user has active subscriptions */
445
+ hasActiveSubscriptions: Promise<boolean>;
446
+ /** Check introductory offer eligibility for specific products */
447
+ isEligibleForIntroOfferIOS: Promise<boolean>;
448
+ /** Verify a StoreKit 2 transaction signature */
449
+ isTransactionVerifiedIOS: Promise<boolean>;
450
+ /** Get the latest transaction for a product using StoreKit 2 */
451
+ latestTransactionIOS?: Promise<PurchaseIOS | null>;
452
+ /** Get StoreKit 2 subscription status details (iOS 15+) */
453
+ subscriptionStatusIOS: Promise<SubscriptionStatusIOS[]>;
454
+ }
455
+ export interface QueryCurrentEntitlementIosArgs {
456
+ skus?: string[] | null;
457
+ }
458
+ export interface QueryFetchProductsArgs {
459
+ params: ProductRequest;
460
+ }
461
+ export interface QueryGetActiveSubscriptionsArgs {
462
+ subscriptionIds?: string[] | null;
463
+ }
464
+ export interface QueryGetAvailablePurchasesArgs {
465
+ options?: PurchaseOptions | null;
466
+ }
467
+ export interface QueryGetTransactionJwsIosArgs {
468
+ transactionId: string;
469
+ }
470
+ export interface QueryHasActiveSubscriptionsArgs {
471
+ subscriptionIds?: string[] | null;
472
+ }
473
+ export interface QueryIsEligibleForIntroOfferIosArgs {
474
+ productIds: string[];
475
+ }
476
+ export interface QueryIsTransactionVerifiedIosArgs {
477
+ transactionId: string;
478
+ }
479
+ export interface QueryLatestTransactionIosArgs {
480
+ sku: string;
481
+ }
482
+ export interface QuerySubscriptionStatusIosArgs {
483
+ skus?: string[] | null;
484
+ }
485
+ export interface ReceiptValidationAndroidOptions {
486
+ accessToken: string;
487
+ isSub?: boolean | null;
488
+ packageName: string;
489
+ productToken: string;
490
+ }
491
+ export interface ReceiptValidationProps {
492
+ /** Android-specific validation options */
493
+ androidOptions?: ReceiptValidationAndroidOptions | null;
494
+ /** Product SKU to validate */
495
+ sku: string;
496
+ }
497
+ export type ReceiptValidationResult = ReceiptValidationResultAndroid | ReceiptValidationResultIOS;
498
+ export interface ReceiptValidationResultAndroid {
499
+ autoRenewing: boolean;
500
+ betaProduct: boolean;
501
+ cancelDate?: number | null;
502
+ cancelReason?: string | null;
503
+ deferredDate?: number | null;
504
+ deferredSku?: string | null;
505
+ freeTrialEndDate: number;
506
+ gracePeriodEndDate: number;
507
+ parentProductId: string;
508
+ productId: string;
509
+ productType: string;
510
+ purchaseDate: number;
511
+ quantity: number;
512
+ receiptId: string;
513
+ renewalDate: number;
514
+ term: string;
515
+ termSku: string;
516
+ testTransaction: boolean;
517
+ }
518
+ export interface ReceiptValidationResultIOS {
519
+ /** Whether the receipt is valid */
520
+ isValid: boolean;
521
+ /** JWS representation */
522
+ jwsRepresentation: string;
523
+ /** Latest transaction if available */
524
+ latestTransaction?: Purchase | null;
525
+ /** Receipt data string */
526
+ receiptData: string;
527
+ }
528
+ export interface RefundResultIOS {
529
+ message?: string | null;
530
+ status: string;
531
+ }
532
+ export interface RenewalInfoIOS {
533
+ autoRenewPreference?: string | null;
534
+ jsonRepresentation?: string | null;
535
+ willAutoRenew: boolean;
536
+ }
537
+ export interface RequestPurchaseAndroidProps {
538
+ /** Personalized offer flag */
539
+ isOfferPersonalized?: boolean | null;
540
+ /** Obfuscated account ID */
541
+ obfuscatedAccountIdAndroid?: string | null;
542
+ /** Obfuscated profile ID */
543
+ obfuscatedProfileIdAndroid?: string | null;
544
+ /** List of product SKUs */
545
+ skus: string[];
546
+ }
547
+ export interface RequestPurchaseIosProps {
548
+ /** Auto-finish transaction (dangerous) */
549
+ andDangerouslyFinishTransactionAutomatically?: boolean | null;
550
+ /** App account token for user tracking */
551
+ appAccountToken?: string | null;
552
+ /** Purchase quantity */
553
+ quantity?: number | null;
554
+ /** Product SKU */
555
+ sku: string;
556
+ /** Discount offer to apply */
557
+ withOffer?: DiscountOfferInputIOS | null;
558
+ }
559
+ export interface RequestPurchaseProps {
560
+ /** Android-specific purchase parameters */
561
+ android?: RequestPurchaseAndroidProps | null;
562
+ /** iOS-specific purchase parameters */
563
+ ios?: RequestPurchaseIosProps | null;
564
+ }
565
+ export interface RequestPurchasePropsByPlatforms {
566
+ /** Android-specific purchase parameters */
567
+ android?: RequestPurchaseAndroidProps | null;
568
+ /** iOS-specific purchase parameters */
569
+ ios?: RequestPurchaseIosProps | null;
570
+ }
571
+ export interface RequestPurchaseResult {
572
+ purchase?: Purchase | null;
573
+ purchases?: Purchase[] | null;
574
+ }
575
+ export interface RequestSubscriptionAndroidProps {
576
+ /** Personalized offer flag */
577
+ isOfferPersonalized?: boolean | null;
578
+ /** Obfuscated account ID */
579
+ obfuscatedAccountIdAndroid?: string | null;
580
+ /** Obfuscated profile ID */
581
+ obfuscatedProfileIdAndroid?: string | null;
582
+ /** Purchase token for upgrades/downgrades */
583
+ purchaseTokenAndroid?: string | null;
584
+ /** Replacement mode for subscription changes */
585
+ replacementModeAndroid?: number | null;
586
+ /** List of subscription SKUs */
587
+ skus: string[];
588
+ /** Subscription offers */
589
+ subscriptionOffers?: AndroidSubscriptionOfferInput[] | null;
590
+ }
591
+ export interface RequestSubscriptionIosProps {
592
+ andDangerouslyFinishTransactionAutomatically?: boolean | null;
593
+ appAccountToken?: string | null;
594
+ quantity?: number | null;
595
+ sku: string;
596
+ withOffer?: DiscountOfferInputIOS | null;
597
+ }
598
+ export interface RequestSubscriptionPropsByPlatforms {
599
+ /** Android-specific subscription parameters */
600
+ android?: RequestSubscriptionAndroidProps | null;
601
+ /** iOS-specific subscription parameters */
602
+ ios?: RequestSubscriptionIosProps | null;
603
+ }
604
+ export interface Subscription {
605
+ /** Fires when the App Store surfaces a promoted product (iOS only) */
606
+ promotedProductIOS: string;
607
+ /** Fires when a purchase fails or is cancelled */
608
+ purchaseError: PurchaseError;
609
+ /** Fires when a purchase completes successfully or a pending purchase resolves */
610
+ purchaseUpdated: Purchase;
611
+ }
612
+ export interface SubscriptionInfoIOS {
613
+ introductoryOffer?: SubscriptionOfferIOS | null;
614
+ promotionalOffers?: SubscriptionOfferIOS[] | null;
615
+ subscriptionGroupId: string;
616
+ subscriptionPeriod: SubscriptionPeriodValueIOS;
617
+ }
618
+ export interface SubscriptionOfferIOS {
619
+ displayPrice: string;
620
+ id: string;
621
+ paymentMode: PaymentModeIOS;
622
+ period: SubscriptionPeriodValueIOS;
623
+ periodCount: number;
624
+ price: number;
625
+ type: SubscriptionOfferTypeIOS;
626
+ }
627
+ export declare enum SubscriptionOfferTypeIOS {
628
+ Introductory = "INTRODUCTORY",
629
+ Promotional = "PROMOTIONAL"
630
+ }
631
+ export declare enum SubscriptionPeriodIOS {
632
+ Day = "DAY",
633
+ Empty = "EMPTY",
634
+ Month = "MONTH",
635
+ Week = "WEEK",
636
+ Year = "YEAR"
637
+ }
638
+ export interface SubscriptionPeriodValueIOS {
639
+ unit: SubscriptionPeriodIOS;
640
+ value: number;
641
+ }
642
+ export interface SubscriptionStatusIOS {
643
+ renewalInfo?: RenewalInfoIOS | null;
644
+ state: string;
645
+ }
646
+ export interface VoidResult {
647
+ success: boolean;
648
+ }
649
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}