expo-iap 4.2.4 → 4.2.6

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/build/types.d.ts CHANGED
@@ -1118,8 +1118,12 @@ export interface PurchaseCommon {
1118
1118
  export interface PurchaseError {
1119
1119
  code: ErrorCode;
1120
1120
  debugMessage?: (string | null);
1121
+ isEmptyProductList?: (boolean | null);
1121
1122
  message: string;
1122
1123
  productId?: (string | null);
1124
+ productIds?: (string[] | null);
1125
+ productType?: (string | null);
1126
+ responseCode?: (number | null);
1123
1127
  }
1124
1128
  export interface PurchaseIOS extends PurchaseCommon {
1125
1129
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,+EAA+E;AAC/E,8CAA8C;AAC9C,mEAAmE;AACnE,+EAA+E;AA+W/E,MAAM,CAAN,IAAY,SAwCX;AAxCD,WAAY,SAAS;IACnB,yDAA4C,CAAA;IAC5C,2CAA8B,CAAA;IAC9B,iDAAoC,CAAA;IACpC,gFAAmE,CAAA;IACnE,uDAA0C,CAAA;IAC1C,mDAAsC,CAAA;IACtC,iDAAoC,CAAA;IACpC,+CAAkC,CAAA;IAClC,qDAAwC,CAAA;IACxC,4CAA+B,CAAA;IAC/B,0DAA6C,CAAA;IAC7C,kDAAqC,CAAA;IACrC,+CAAkC,CAAA;IAClC,wCAA2B,CAAA;IAC3B,4CAA+B,CAAA;IAC/B,iDAAoC,CAAA;IACpC,2CAA8B,CAAA;IAC9B,mCAAsB,CAAA;IACtB,yCAA4B,CAAA;IAC5B,gCAAmB,CAAA;IACnB,6CAAgC,CAAA;IAChC,wEAA2D,CAAA;IAC3D,qFAAwE,CAAA;IACxE,4EAA+D,CAAA;IAC/D,2CAA8B,CAAA;IAC9B,6CAAgC,CAAA;IAChC,iDAAoC,CAAA;IACpC,8DAAiD,CAAA;IACjD,yCAA4B,CAAA;IAC5B,yDAA4C,CAAA;IAC5C,2CAA8B,CAAA;IAC9B,+CAAkC,CAAA;IAClC,0CAA6B,CAAA;IAC7B,oDAAuC,CAAA;IACvC,qCAAwB,CAAA;IACxB,0EAA6D,CAAA;IAC7D,gCAAmB,CAAA;IACnB,6CAAgC,CAAA;IAChC,qCAAwB,CAAA;AAC1B,CAAC,EAxCW,SAAS,KAAT,SAAS,QAwCpB;AA6xDD,mCAAmC","sourcesContent":["// ============================================================================\n// AUTO-GENERATED TYPES — DO NOT EDIT DIRECTLY\n// Run `npm run generate` after updating any *.graphql schema file.\n// ============================================================================\n\nexport interface ActiveSubscription {\n autoRenewingAndroid?: (boolean | null);\n basePlanIdAndroid?: (string | null);\n /**\n * The current plan identifier. This is:\n * - On Android: the basePlanId (e.g., \"premium\", \"premium-year\")\n * - On iOS: the productId (e.g., \"com.example.premium_monthly\", \"com.example.premium_yearly\")\n * This provides a unified way to identify which specific plan/tier the user is subscribed to.\n */\n currentPlanId?: (string | null);\n daysUntilExpirationIOS?: (number | null);\n environmentIOS?: (string | null);\n expirationDateIOS?: (number | null);\n isActive: boolean;\n productId: string;\n purchaseToken?: (string | null);\n /** Required for subscription upgrade/downgrade on Android */\n purchaseTokenAndroid?: (string | null);\n /**\n * Renewal information from StoreKit 2 (iOS only). Contains details about subscription renewal status,\n * pending upgrades/downgrades, and auto-renewal preferences.\n */\n renewalInfoIOS?: (RenewalInfoIOS | null);\n transactionDate: number;\n transactionId: string;\n /**\n * @deprecated iOS only - use daysUntilExpirationIOS instead.\n * Whether the subscription will expire soon (within 7 days).\n * Consider using daysUntilExpirationIOS for more precise control.\n */\n willExpireSoon?: (boolean | null);\n}\n\n/**\n * Advanced Commerce metadata from a transaction (iOS 18.4+).\n * Contains item details, tax information, and refund data for purchases\n * made through the Advanced Commerce API using generic SKUs.\n * Only present for transactions that use the Advanced Commerce API.\n */\nexport interface AdvancedCommerceInfoIOS {\n /** Optional description */\n description?: (string | null);\n /** Optional display name */\n displayName?: (string | null);\n /** Estimated tax amount (decimal string) */\n estimatedTax?: (string | null);\n /** The items purchased as part of this transaction */\n items: AdvancedCommerceItemIOS[];\n /** Request reference identifier for tracking */\n requestReferenceId?: (string | null);\n /** Tax code for the transaction */\n taxCode?: (string | null);\n /** Price excluding tax (decimal string) */\n taxExclusivePrice?: (string | null);\n /** Tax rate applied (decimal string) */\n taxRate?: (string | null);\n}\n\n/** Details of an Advanced Commerce item (iOS 18.4+). */\nexport interface AdvancedCommerceItemDetailsIOS {\n /** JSON representation of the item details */\n jsonRepresentation?: (string | null);\n}\n\n/**\n * An item purchased through the Advanced Commerce API (iOS 18.4+).\n * Represents a developer-defined product within a generic SKU transaction.\n */\nexport interface AdvancedCommerceItemIOS {\n /** The item's detail information */\n details?: (AdvancedCommerceItemDetailsIOS | null);\n /** Refunds issued for this item, if any */\n refunds?: (AdvancedCommerceRefundIOS[] | null);\n /** Date access to this item was revoked (milliseconds since epoch) */\n revocationDate?: (number | null);\n}\n\n/** Refund information for an Advanced Commerce item (iOS 18.4+). */\nexport interface AdvancedCommerceRefundIOS {\n /** JSON representation of the refund details */\n jsonRepresentation?: (string | null);\n}\n\n/**\n * Alternative billing mode for Android\n * Controls which billing system is used\n * @deprecated Use enableBillingProgramAndroid with BillingProgramAndroid instead.\n * Use USER_CHOICE_BILLING for user choice billing, EXTERNAL_OFFER for alternative only.\n */\nexport type AlternativeBillingModeAndroid = 'none' | 'user-choice' | 'alternative-only';\n\nexport interface AndroidSubscriptionOfferInput {\n /** Offer token */\n offerToken: string;\n /** Product SKU */\n sku: string;\n}\n\nexport interface AppTransaction {\n appId: number;\n appTransactionId?: (string | null);\n appVersion: string;\n appVersionId: number;\n bundleId: string;\n deviceVerification: string;\n deviceVerificationNonce: string;\n environment: string;\n originalAppVersion: string;\n originalPlatform?: (string | null);\n originalPurchaseDate: number;\n preorderDate?: (number | null);\n signedDate: number;\n}\n\n/**\n * Billing program types for external content links, external offers, and external payments (Android)\n * Available in Google Play Billing Library 8.2.0+, EXTERNAL_PAYMENTS added in 8.3.0\n */\nexport type BillingProgramAndroid = 'unspecified' | 'user-choice-billing' | 'external-content-link' | 'external-offer' | 'external-payments';\n\n/**\n * Result of checking billing program availability (Android)\n * Available in Google Play Billing Library 8.2.0+\n */\nexport interface BillingProgramAvailabilityResultAndroid {\n /** The billing program that was checked */\n billingProgram: BillingProgramAndroid;\n /** Whether the billing program is available for the user */\n isAvailable: boolean;\n}\n\n/**\n * Reporting details for transactions made outside of Google Play Billing (Android)\n * Contains the external transaction token needed for reporting\n * Available in Google Play Billing Library 8.2.0+\n */\nexport interface BillingProgramReportingDetailsAndroid {\n /** The billing program that the reporting details are associated with */\n billingProgram: BillingProgramAndroid;\n /**\n * External transaction token used to report transactions made outside of Google Play Billing.\n * This token must be used when reporting the external transaction to Google.\n */\n externalTransactionToken: string;\n}\n\n/**\n * Extended billing result with sub-response code (Android)\n * Available in Google Play Billing Library 8.0.0+\n */\nexport interface BillingResultAndroid {\n /** Debug message from the billing library */\n debugMessage?: (string | null);\n /** The response code from the billing operation */\n responseCode: number;\n /**\n * Sub-response code for more granular error information (8.0+).\n * Provides additional context when responseCode indicates an error.\n */\n subResponseCode?: (SubResponseCodeAndroid | null);\n}\n\nexport interface DeepLinkOptions {\n /** Android package name to target (required on Android) */\n packageNameAndroid?: (string | null);\n /** Android SKU to open (required on Android) */\n skuAndroid?: (string | null);\n}\n\n/**\n * Launch mode for developer billing option (Android)\n * Determines how the external payment URL is launched\n * Available in Google Play Billing Library 8.3.0+\n */\nexport type DeveloperBillingLaunchModeAndroid = 'unspecified' | 'launch-in-external-browser-or-app' | 'caller-will-launch-link';\n\n/**\n * Parameters for developer billing option in purchase flow (Android)\n * Used with BillingFlowParams to enable external payments flow\n * Available in Google Play Billing Library 8.3.0+\n */\nexport interface DeveloperBillingOptionParamsAndroid {\n /** The billing program (should be EXTERNAL_PAYMENTS for external payments flow) */\n billingProgram: BillingProgramAndroid;\n /** The launch mode for the external payment link */\n launchMode: DeveloperBillingLaunchModeAndroid;\n /** The URI where the external payment will be processed */\n linkUri: string;\n}\n\n/**\n * Details provided when user selects developer billing option (Android)\n * Received via DeveloperProvidedBillingListener callback\n * Available in Google Play Billing Library 8.3.0+\n */\nexport interface DeveloperProvidedBillingDetailsAndroid {\n /**\n * External transaction token used to report transactions made through developer billing.\n * This token must be used when reporting the external transaction to Google Play.\n * Must be reported within 24 hours of the transaction.\n */\n externalTransactionToken: string;\n}\n\n/**\n * Discount amount details for one-time purchase offers (Android)\n * Available in Google Play Billing Library 7.0+\n */\nexport interface DiscountAmountAndroid {\n /** Discount amount in micro-units (1,000,000 = 1 unit of currency) */\n discountAmountMicros: string;\n /** Formatted discount amount with currency sign (e.g., \"$4.99\") */\n formattedDiscountAmount: string;\n}\n\n/**\n * Discount display information for one-time purchase offers (Android)\n * Available in Google Play Billing Library 7.0+\n */\nexport interface DiscountDisplayInfoAndroid {\n /**\n * Absolute discount amount details\n * Only returned for fixed amount discounts\n */\n discountAmount?: (DiscountAmountAndroid | null);\n /**\n * Percentage discount (e.g., 33 for 33% off)\n * Only returned for percentage-based discounts\n */\n percentageDiscount?: (number | null);\n}\n\n/**\n * Discount information returned from the store.\n * @deprecated Use the standardized SubscriptionOffer type instead for cross-platform compatibility.\n * @see https://openiap.dev/docs/types#subscription-offer\n */\nexport interface DiscountIOS {\n identifier: string;\n localizedPrice?: (string | null);\n numberOfPeriods: number;\n paymentMode: PaymentModeIOS;\n price: string;\n priceAmount: number;\n subscriptionPeriod: string;\n type: string;\n}\n\n/**\n * Standardized one-time product discount offer.\n * Provides a unified interface for one-time purchase discounts across platforms.\n *\n * Currently supported on Android (Google Play Billing 7.0+).\n * iOS does not support one-time purchase discounts in the same way.\n *\n * @see https://openiap.dev/docs/features/discount\n */\nexport interface DiscountOffer {\n /** Currency code (ISO 4217, e.g., \"USD\") */\n currency: string;\n /**\n * [Android] Fixed discount amount in micro-units.\n * Only present for fixed amount discounts.\n */\n discountAmountMicrosAndroid?: (string | null);\n /** Formatted display price string (e.g., \"$4.99\") */\n displayPrice: string;\n /** [Android] Formatted discount amount string (e.g., \"$5.00 OFF\"). */\n formattedDiscountAmountAndroid?: (string | null);\n /**\n * [Android] Original full price in micro-units before discount.\n * Divide by 1,000,000 to get the actual price.\n * Use for displaying strikethrough original price.\n */\n fullPriceMicrosAndroid?: (string | null);\n /**\n * Unique identifier for the offer.\n * - iOS: Not applicable (one-time discounts not supported)\n * - Android: offerId from ProductAndroidOneTimePurchaseOfferDetail\n */\n id?: (string | null);\n /**\n * [Android] Limited quantity information.\n * Contains maximumQuantity and remainingQuantity.\n */\n limitedQuantityInfoAndroid?: (LimitedQuantityInfoAndroid | null);\n /** [Android] List of tags associated with this offer. */\n offerTagsAndroid?: (string[] | null);\n /**\n * [Android] Offer token required for purchase.\n * Must be passed to requestPurchase() when purchasing with this offer.\n */\n offerTokenAndroid?: (string | null);\n /**\n * [Android] Percentage discount (e.g., 33 for 33% off).\n * Only present for percentage-based discounts.\n */\n percentageDiscountAndroid?: (number | null);\n /**\n * [Android] Pre-order details if this is a pre-order offer.\n * Available in Google Play Billing Library 8.1.0+\n */\n preorderDetailsAndroid?: (PreorderDetailsAndroid | null);\n /** Numeric price value */\n price: number;\n /**\n * [Android] Purchase option ID for this offer.\n * Used to identify which purchase option the user selected.\n * Available in Google Play Billing Library 7.0+\n */\n purchaseOptionIdAndroid?: (string | null);\n /** [Android] Rental details if this is a rental offer. */\n rentalDetailsAndroid?: (RentalDetailsAndroid | null);\n /** Type of discount offer */\n type: DiscountOfferType;\n /**\n * [Android] Valid time window for the offer.\n * Contains startTimeMillis and endTimeMillis.\n */\n validTimeWindowAndroid?: (ValidTimeWindowAndroid | null);\n}\n\n/**\n * iOS DiscountOffer (output type).\n * @deprecated Use the standardized SubscriptionOffer type instead for cross-platform compatibility.\n * @see https://openiap.dev/docs/types#subscription-offer\n */\nexport interface DiscountOfferIOS {\n /** Discount identifier */\n identifier: string;\n /** Key identifier for validation */\n keyIdentifier: string;\n /** Cryptographic nonce */\n nonce: string;\n /** Signature for validation */\n signature: string;\n /** Timestamp of discount offer */\n timestamp: number;\n}\n\nexport interface DiscountOfferInputIOS {\n /** Discount identifier */\n identifier: string;\n /** Key identifier for validation */\n keyIdentifier: string;\n /** Cryptographic nonce */\n nonce: string;\n /** Signature for validation */\n signature: string;\n /** Timestamp of discount offer */\n timestamp: number;\n}\n\n/**\n * Discount offer type enumeration.\n * Categorizes the type of discount or promotional offer.\n */\nexport type DiscountOfferType = 'introductory' | 'promotional' | 'one-time';\n\nexport interface EntitlementIOS {\n jsonRepresentation: string;\n sku: string;\n transactionId: string;\n}\n\nexport enum ErrorCode {\n ActivityUnavailable = 'activity-unavailable',\n AlreadyOwned = 'already-owned',\n AlreadyPrepared = 'already-prepared',\n BillingResponseJsonParseError = 'billing-response-json-parse-error',\n BillingUnavailable = 'billing-unavailable',\n ConnectionClosed = 'connection-closed',\n DeferredPayment = 'deferred-payment',\n DeveloperError = 'developer-error',\n DuplicatePurchase = 'duplicate-purchase',\n EmptySkuList = 'empty-sku-list',\n FeatureNotSupported = 'feature-not-supported',\n IapNotAvailable = 'iap-not-available',\n InitConnection = 'init-connection',\n Interrupted = 'interrupted',\n ItemNotOwned = 'item-not-owned',\n ItemUnavailable = 'item-unavailable',\n NetworkError = 'network-error',\n NotEnded = 'not-ended',\n NotPrepared = 'not-prepared',\n Pending = 'pending',\n PurchaseError = 'purchase-error',\n PurchaseVerificationFailed = 'purchase-verification-failed',\n PurchaseVerificationFinishFailed = 'purchase-verification-finish-failed',\n PurchaseVerificationFinished = 'purchase-verification-finished',\n QueryProduct = 'query-product',\n ReceiptFailed = 'receipt-failed',\n ReceiptFinished = 'receipt-finished',\n ReceiptFinishedFailed = 'receipt-finished-failed',\n RemoteError = 'remote-error',\n ServiceDisconnected = 'service-disconnected',\n ServiceError = 'service-error',\n ServiceTimeout = 'service-timeout',\n SkuNotFound = 'sku-not-found',\n SkuOfferMismatch = 'sku-offer-mismatch',\n SyncError = 'sync-error',\n TransactionValidationFailed = 'transaction-validation-failed',\n Unknown = 'unknown',\n UserCancelled = 'user-cancelled',\n UserError = 'user-error'\n}\n\n/**\n * Launch mode for external link flow (Android)\n * Determines how the external URL is launched\n * Available in Google Play Billing Library 8.2.0+\n */\nexport type ExternalLinkLaunchModeAndroid = 'unspecified' | 'launch-in-external-browser-or-app' | 'caller-will-launch-link';\n\n/**\n * Link type for external link flow (Android)\n * Specifies the type of external link destination\n * Available in Google Play Billing Library 8.2.0+\n */\nexport type ExternalLinkTypeAndroid = 'unspecified' | 'link-to-digital-content-offer' | 'link-to-app-download';\n\n/**\n * External offer availability result (Android)\n * @deprecated Use BillingProgramAvailabilityResultAndroid with isBillingProgramAvailableAsync instead\n * Available in Google Play Billing Library 6.2.0+, deprecated in 8.2.0\n */\nexport interface ExternalOfferAvailabilityResultAndroid {\n /** Whether external offers are available for the user */\n isAvailable: boolean;\n}\n\n/**\n * External offer reporting details (Android)\n * @deprecated Use BillingProgramReportingDetailsAndroid with createBillingProgramReportingDetailsAsync instead\n * Available in Google Play Billing Library 6.2.0+, deprecated in 8.2.0\n */\nexport interface ExternalOfferReportingDetailsAndroid {\n /** External transaction token for reporting external offer transactions */\n externalTransactionToken: string;\n}\n\n/** Result of showing ExternalPurchaseCustomLink notice (iOS 18.1+). */\nexport interface ExternalPurchaseCustomLinkNoticeResultIOS {\n /** Whether the user chose to continue to external purchase */\n continued: boolean;\n /** Optional error message if the presentation failed */\n error?: (string | null);\n}\n\n/**\n * Notice types for ExternalPurchaseCustomLink (iOS 18.1+).\n * Determines the style of disclosure notice to display.\n * Reference: https://developer.apple.com/documentation/storekit/externalpurchasecustomlink/noticetype\n */\nexport type ExternalPurchaseCustomLinkNoticeTypeIOS = 'browser';\n\n/** Result of requesting an ExternalPurchaseCustomLink token (iOS 18.1+). */\nexport interface ExternalPurchaseCustomLinkTokenResultIOS {\n /** Optional error message if token retrieval failed */\n error?: (string | null);\n /**\n * The external purchase token string.\n * Report this token to Apple's External Purchase Server API.\n */\n token?: (string | null);\n}\n\n/**\n * Token types for ExternalPurchaseCustomLink (iOS 18.1+).\n * Used to request different types of external purchase tokens for reporting to Apple.\n * Reference: https://developer.apple.com/documentation/storekit/externalpurchasecustomlink/token(for:)\n */\nexport type ExternalPurchaseCustomLinkTokenTypeIOS = 'acquisition' | 'services';\n\n/** Result of presenting an external purchase link */\nexport interface ExternalPurchaseLinkResultIOS {\n /** Optional error message if the presentation failed */\n error?: (string | null);\n /** Whether the user completed the external purchase flow */\n success: boolean;\n}\n\n/** User actions on external purchase notice sheet (iOS 17.4+) */\nexport type ExternalPurchaseNoticeAction = 'continue' | 'dismissed';\n\n/**\n * Result of presenting external purchase notice sheet (iOS 17.4+)\n * Returns the token when user continues to external purchase.\n */\nexport interface ExternalPurchaseNoticeResultIOS {\n /** Optional error message if the presentation failed */\n error?: (string | null);\n /**\n * External purchase token returned when user continues (iOS 17.4+).\n * This token should be reported to Apple's External Purchase Server API.\n * Only present when result is Continue.\n */\n externalPurchaseToken?: (string | null);\n /** Notice result indicating user action */\n result: ExternalPurchaseNoticeAction;\n}\n\nexport type FetchProductsResult = ProductOrSubscription[] | Product[] | ProductSubscription[] | null;\n\nexport type IapEvent = 'purchase-updated' | 'purchase-error' | 'promoted-product-ios' | 'user-choice-billing-android' | 'developer-provided-billing-android' | 'subscription-billing-issue';\n\nexport type IapPlatform = 'ios' | 'android';\n\nexport type IapStore = 'unknown' | 'apple' | 'google' | 'horizon';\n\n/** Unified purchase states from IAPKit verification response. */\nexport type IapkitPurchaseState = 'entitled' | 'pending-acknowledgment' | 'pending' | 'canceled' | 'expired' | 'ready-to-consume' | 'consumed' | 'unknown' | 'inauthentic';\n\n/** Connection initialization configuration */\nexport interface InitConnectionConfig {\n /**\n * Alternative billing mode for Android\n * If not specified, defaults to NONE (standard Google Play billing)\n * @deprecated Use enableBillingProgramAndroid instead.\n * Use USER_CHOICE_BILLING for user choice billing, EXTERNAL_OFFER for alternative only.\n */\n alternativeBillingModeAndroid?: (AlternativeBillingModeAndroid | null);\n /**\n * Enable a specific billing program for Android (7.0+)\n * When set, enables the specified billing program for external transactions.\n * - USER_CHOICE_BILLING: User can select between Google Play or alternative (7.0+)\n * - EXTERNAL_CONTENT_LINK: Link to external content (8.2.0+)\n * - EXTERNAL_OFFER: External offers for digital content (8.2.0+)\n * - EXTERNAL_PAYMENTS: Developer provided billing, Japan only (8.3.0+)\n */\n enableBillingProgramAndroid?: (BillingProgramAndroid | null);\n}\n\n/**\n * Installment plan details for subscription offers (Android)\n * Contains information about the installment plan commitment.\n * Available in Google Play Billing Library 7.0+\n */\nexport interface InstallmentPlanDetailsAndroid {\n /**\n * Committed payments count after a user signs up for this subscription plan.\n * For example, for a monthly subscription with commitmentPaymentsCount of 12,\n * users will be charged monthly for 12 months after signup.\n */\n commitmentPaymentsCount: number;\n /**\n * Subsequent committed payments count after the subscription plan renews.\n * For example, for a monthly subscription with subsequentCommitmentPaymentsCount of 12,\n * users will be committed to another 12 monthly payments when the plan renews.\n * Returns 0 if the installment plan has no subsequent commitment (reverts to normal plan).\n */\n subsequentCommitmentPaymentsCount: number;\n}\n\n/**\n * Parameters for launching an external link (Android)\n * Used with launchExternalLink to initiate external offer or app install flows\n * Available in Google Play Billing Library 8.2.0+\n */\nexport interface LaunchExternalLinkParamsAndroid {\n /** The billing program (EXTERNAL_CONTENT_LINK or EXTERNAL_OFFER) */\n billingProgram: BillingProgramAndroid;\n /** The external link launch mode */\n launchMode: ExternalLinkLaunchModeAndroid;\n /** The type of the external link */\n linkType: ExternalLinkTypeAndroid;\n /** The URI where the content will be accessed from */\n linkUri: string;\n}\n\n/**\n * Limited quantity information for one-time purchase offers (Android)\n * Available in Google Play Billing Library 7.0+\n */\nexport interface LimitedQuantityInfoAndroid {\n /** Maximum quantity a user can purchase */\n maximumQuantity: number;\n /** Remaining quantity the user can still purchase */\n remainingQuantity: number;\n}\n\nexport interface Mutation {\n /**\n * Acknowledge a non-consumable purchase. Required within 3 days or Google auto-refunds.\n * See: https://www.openiap.dev/docs/apis/android/acknowledge-purchase-android\n */\n acknowledgePurchaseAndroid: Promise<boolean>;\n /**\n * Present the refund request sheet (iOS 15+). See also Features → Refund.\n * See: https://www.openiap.dev/docs/apis/ios/begin-refund-request-ios\n */\n beginRefundRequestIOS?: Promise<(string | null)>;\n /**\n * Check whether alternative billing is available for the user. Step 1 of the alternative billing flow.\n *\n * Returns true if available, false otherwise.\n * Throws OpenIapError.NotPrepared if billing client not ready.\n * See: https://www.openiap.dev/docs/apis/android/check-alternative-billing-availability-android\n */\n checkAlternativeBillingAvailabilityAndroid: Promise<boolean>;\n /**\n * Clear pending transactions in the queue (sandbox helper).\n * See: https://www.openiap.dev/docs/apis/ios/clear-transaction-ios\n */\n clearTransactionIOS: Promise<boolean>;\n /**\n * Consume a consumable purchase so it can be re-bought.\n * See: https://www.openiap.dev/docs/apis/android/consume-purchase-android\n */\n consumePurchaseAndroid: Promise<boolean>;\n /**\n * Create a reporting token for an alternative billing flow. Step 3 of the alternative billing flow.\n * Must be called AFTER successful payment in your payment system.\n * Token must be reported to Google Play backend within 24 hours.\n *\n * Returns token string, or null if creation failed.\n * Throws OpenIapError.NotPrepared if billing client not ready.\n * See: https://www.openiap.dev/docs/apis/android/create-alternative-billing-token-android\n */\n createAlternativeBillingTokenAndroid?: Promise<(string | null)>;\n /**\n * Create the reporting payload Google requires after a Developer-Provided Billing transaction (Play Billing 8.3.0+).\n * Replaces the deprecated createExternalOfferReportingDetailsAsync API.\n *\n * Returns external transaction token needed for reporting external transactions.\n * Throws OpenIapError.NotPrepared if billing client not ready.\n * See: https://www.openiap.dev/docs/apis/android/create-billing-program-reporting-details-android\n */\n createBillingProgramReportingDetailsAndroid: Promise<BillingProgramReportingDetailsAndroid>;\n /**\n * Open the platform's subscription management UI.\n * See: https://www.openiap.dev/docs/apis/deep-link-to-subscriptions\n */\n deepLinkToSubscriptions: Promise<void>;\n /**\n * Close the store connection and release resources.\n * See: https://www.openiap.dev/docs/apis/end-connection\n */\n endConnection: Promise<boolean>;\n /**\n * Complete a transaction after server-side verification. Required on Android within 3 days.\n * See: https://www.openiap.dev/docs/apis/finish-transaction\n */\n finishTransaction: Promise<void>;\n /**\n * Initialize the store connection. Call before any IAP API.\n * See: https://www.openiap.dev/docs/apis/init-connection\n */\n initConnection: Promise<boolean>;\n /**\n * Check whether a billing program (e.g., External Payments) is available for the current user.\n * Replaces the deprecated isExternalOfferAvailableAsync API.\n *\n * Available in Google Play Billing Library 8.2.0+.\n * Returns availability result with isAvailable flag.\n * Throws OpenIapError.NotPrepared if billing client not ready.\n * See: https://www.openiap.dev/docs/apis/android/is-billing-program-available-android\n */\n isBillingProgramAvailableAndroid: Promise<BillingProgramAvailabilityResultAndroid>;\n /**\n * Launch an external content/offer link from inside the Billing Programs flow (Play Billing 8.2.0+).\n * Replaces the deprecated showExternalOfferInformationDialog API.\n *\n * Shows Play Store dialog and optionally launches external URL.\n * Throws OpenIapError.NotPrepared if billing client not ready.\n * See: https://www.openiap.dev/docs/apis/android/launch-external-link-android\n */\n launchExternalLinkAndroid: Promise<boolean>;\n /**\n * Show the App Store offer code redemption sheet.\n * See: https://www.openiap.dev/docs/apis/ios/present-code-redemption-sheet-ios\n */\n presentCodeRedemptionSheetIOS: Promise<boolean>;\n /**\n * Present an external purchase link, StoreKit External (iOS 16+).\n * See: https://www.openiap.dev/docs/apis/ios/present-external-purchase-link-ios\n */\n presentExternalPurchaseLinkIOS: Promise<ExternalPurchaseLinkResultIOS>;\n /**\n * Present the external purchase notice sheet (iOS 17.4+).\n * Uses ExternalPurchase.presentNoticeSheet() which returns a token when the user continues.\n * Reference: https://developer.apple.com/documentation/storekit/externalpurchase/presentnoticesheet()\n * See: https://www.openiap.dev/docs/apis/ios/present-external-purchase-notice-sheet-ios\n */\n presentExternalPurchaseNoticeSheetIOS: Promise<ExternalPurchaseNoticeResultIOS>;\n /**\n * Initiate a purchase or subscription flow; rely on events for final state.\n * See: https://www.openiap.dev/docs/apis/request-purchase\n */\n requestPurchase?: Promise<(Purchase | Purchase[] | null)>;\n /**\n * Buy the currently promoted product.\n *\n * @deprecated Use promotedProductListenerIOS to receive the productId,\n * then call requestPurchase with that SKU instead. In StoreKit 2,\n * promoted products can be purchased directly via the standard purchase flow.\n * See: https://www.openiap.dev/docs/apis/ios/request-purchase-on-promoted-product-ios\n * @deprecated Use promotedProductListenerIOS + requestPurchase instead\n */\n requestPurchaseOnPromotedProductIOS: Promise<boolean>;\n /**\n * Restore non-consumable and active subscription purchases.\n * See: https://www.openiap.dev/docs/apis/restore-purchases\n */\n restorePurchases: Promise<void>;\n /**\n * Display Google's alternative billing information dialog. Step 2 of the alternative billing flow.\n * Must be called BEFORE processing payment in your payment system.\n *\n * Returns true if user accepted, false if user canceled.\n * Throws OpenIapError.NotPrepared if billing client not ready.\n * See: https://www.openiap.dev/docs/apis/android/show-alternative-billing-dialog-android\n */\n showAlternativeBillingDialogAndroid: Promise<boolean>;\n /**\n * Present the disclosure sheet required before linking out via ExternalPurchaseCustomLink (iOS 18.1+).\n * Call this after a deliberate customer interaction before linking out to external purchases.\n * Reference: https://developer.apple.com/documentation/storekit/externalpurchasecustomlink/shownotice(type:)\n * See: https://www.openiap.dev/docs/apis/ios/show-external-purchase-custom-link-notice-ios\n */\n showExternalPurchaseCustomLinkNoticeIOS: Promise<ExternalPurchaseCustomLinkNoticeResultIOS>;\n /**\n * Present the manage-subscriptions sheet and return changed purchases (iOS 15+).\n * See: https://www.openiap.dev/docs/apis/ios/show-manage-subscriptions-ios\n */\n showManageSubscriptionsIOS: Promise<PurchaseIOS[]>;\n /**\n * Force sync transactions with the App Store (iOS 15+).\n * See: https://www.openiap.dev/docs/apis/ios/sync-ios\n */\n syncIOS: Promise<boolean>;\n /**\n * Deprecated. Validate purchase receipts with the configured providers — use verifyPurchase instead.\n * See: https://www.openiap.dev/docs/features/validation#verify-purchase\n * @deprecated Use verifyPurchase\n */\n validateReceipt: Promise<VerifyPurchaseResult>;\n /**\n * Verify a purchase against your own backend. Returns a platform-specific\n * variant of VerifyPurchaseResult — VerifyPurchaseResultIOS exposes isValid\n * + receipt/JWS metadata, VerifyPurchaseResultAndroid carries Play Store\n * receipt fields (no isValid), and VerifyPurchaseResultHorizon uses success.\n * Inspect the concrete variant before reading fields.\n * See: https://www.openiap.dev/docs/features/validation#verify-purchase\n */\n verifyPurchase: Promise<VerifyPurchaseResult>;\n /**\n * Verify via a managed provider without standing up your own server. The\n * PurchaseVerificationProvider enum currently exposes only IAPKit; platform\n * availability may differ by implementation.\n * See: https://www.openiap.dev/docs/features/validation#verify-purchase-with-provider\n */\n verifyPurchaseWithProvider: Promise<VerifyPurchaseWithProviderResult>;\n}\n\n\n\nexport type MutationAcknowledgePurchaseAndroidArgs = string;\n\nexport type MutationBeginRefundRequestIosArgs = string;\n\nexport type MutationConsumePurchaseAndroidArgs = string;\n\nexport type MutationCreateBillingProgramReportingDetailsAndroidArgs = BillingProgramAndroid;\n\nexport type MutationDeepLinkToSubscriptionsArgs = (DeepLinkOptions | null) | undefined;\n\nexport interface MutationFinishTransactionArgs {\n isConsumable?: (boolean | null);\n purchase: PurchaseInput;\n}\n\n\nexport type MutationInitConnectionArgs = (InitConnectionConfig | null) | undefined;\n\nexport type MutationIsBillingProgramAvailableAndroidArgs = BillingProgramAndroid;\n\nexport type MutationLaunchExternalLinkAndroidArgs = LaunchExternalLinkParamsAndroid;\n\nexport type MutationPresentExternalPurchaseLinkIosArgs = string;\n\nexport type MutationRequestPurchaseArgs =\n | {\n /** Per-platform purchase request props */\n request: RequestPurchasePropsByPlatforms;\n type: 'in-app';\n /** Use alternative billing (Google Play alternative billing, Apple external purchase link) */\n useAlternativeBilling?: boolean | null;\n }\n | {\n /** Per-platform subscription request props */\n request: RequestSubscriptionPropsByPlatforms;\n type: 'subs';\n /** Use alternative billing (Google Play alternative billing, Apple external purchase link) */\n useAlternativeBilling?: boolean | null;\n };\n\n\nexport type MutationShowExternalPurchaseCustomLinkNoticeIosArgs = ExternalPurchaseCustomLinkNoticeTypeIOS;\n\nexport type MutationValidateReceiptArgs = VerifyPurchaseProps;\n\nexport type MutationVerifyPurchaseArgs = VerifyPurchaseProps;\n\nexport type MutationVerifyPurchaseWithProviderArgs = VerifyPurchaseWithProviderProps;\n\n/**\n * Payment mode for subscription offers.\n * Determines how the user pays during the offer period.\n */\nexport type PaymentMode = 'free-trial' | 'pay-as-you-go' | 'pay-up-front' | 'unknown';\n\nexport type PaymentModeIOS = 'empty' | 'free-trial' | 'pay-as-you-go' | 'pay-up-front';\n\n/**\n * Pending purchase update for subscription upgrades/downgrades (Android)\n * When a user initiates a subscription change (upgrade/downgrade), the new purchase\n * may be pending until the current billing period ends. This type contains the\n * details of the pending change.\n * Available in Google Play Billing Library 5.0+\n */\nexport interface PendingPurchaseUpdateAndroid {\n /**\n * Product IDs for the pending purchase update.\n * These are the new products the user is switching to.\n */\n products: string[];\n /**\n * Purchase token for the pending transaction.\n * Use this token to track or manage the pending purchase update.\n */\n purchaseToken: string;\n}\n\n/**\n * Pre-order details for one-time purchase products (Android)\n * Available in Google Play Billing Library 8.1.0+\n */\nexport interface PreorderDetailsAndroid {\n /**\n * Pre-order presale end time in milliseconds since epoch.\n * This is when the presale period ends and the product will be released.\n */\n preorderPresaleEndTimeMillis: string;\n /**\n * Pre-order release time in milliseconds since epoch.\n * This is when the product will be available to users who pre-ordered.\n */\n preorderReleaseTimeMillis: string;\n}\n\nexport interface PricingPhaseAndroid {\n billingCycleCount: number;\n billingPeriod: string;\n formattedPrice: string;\n priceAmountMicros: string;\n priceCurrencyCode: string;\n recurrenceMode: number;\n}\n\nexport interface PricingPhasesAndroid {\n pricingPhaseList: PricingPhaseAndroid[];\n}\n\nexport type Product = ProductAndroid | ProductIOS;\n\nexport interface ProductAndroid extends ProductCommon {\n currency: string;\n debugDescription?: (string | null);\n description: string;\n /**\n * Standardized discount offers for one-time products.\n * Cross-platform type with Android-specific fields using suffix.\n * @see https://openiap.dev/docs/types#discount-offer\n */\n discountOffers?: (DiscountOffer[] | null);\n displayName?: (string | null);\n displayPrice: string;\n id: string;\n nameAndroid: string;\n /**\n * One-time purchase offer details including discounts (Android)\n * Returns all eligible offers. Available in Google Play Billing Library 7.0+\n * @deprecated Use discountOffers instead for cross-platform compatibility.\n * @deprecated Use discountOffers instead\n */\n oneTimePurchaseOfferDetailsAndroid?: (ProductAndroidOneTimePurchaseOfferDetail[] | null);\n platform: 'android';\n price?: (number | null);\n /**\n * Product-level status code indicating fetch result (Android 8.0+)\n * OK = product fetched successfully\n * NOT_FOUND = SKU doesn't exist\n * NO_OFFERS_AVAILABLE = user not eligible for any offers\n * Available in Google Play Billing Library 8.0.0+\n */\n productStatusAndroid?: (ProductStatusAndroid | null);\n /**\n * @deprecated Use subscriptionOffers instead for cross-platform compatibility.\n * @deprecated Use subscriptionOffers instead\n */\n subscriptionOfferDetailsAndroid?: (ProductSubscriptionAndroidOfferDetails[] | null);\n /**\n * Standardized subscription offers.\n * Cross-platform type with Android-specific fields using suffix.\n * @see https://openiap.dev/docs/types#subscription-offer\n */\n subscriptionOffers?: (SubscriptionOffer[] | null);\n title: string;\n type: 'in-app';\n}\n\n/**\n * One-time purchase offer details (Android).\n * Available in Google Play Billing Library 7.0+\n * @deprecated Use the standardized DiscountOffer type instead for cross-platform compatibility.\n * @see https://openiap.dev/docs/types#discount-offer\n */\nexport interface ProductAndroidOneTimePurchaseOfferDetail {\n /**\n * Discount display information\n * Only available for discounted offers\n */\n discountDisplayInfo?: (DiscountDisplayInfoAndroid | null);\n formattedPrice: string;\n /**\n * Full (non-discounted) price in micro-units\n * Only available for discounted offers\n */\n fullPriceMicros?: (string | null);\n /** Limited quantity information */\n limitedQuantityInfo?: (LimitedQuantityInfoAndroid | null);\n /** Offer ID */\n offerId?: (string | null);\n /** List of offer tags */\n offerTags: string[];\n /** Offer token for use in BillingFlowParams when purchasing */\n offerToken: string;\n /**\n * Pre-order details for products available for pre-order\n * Available in Google Play Billing Library 8.1.0+\n */\n preorderDetailsAndroid?: (PreorderDetailsAndroid | null);\n priceAmountMicros: string;\n priceCurrencyCode: string;\n /**\n * Purchase option ID for this offer (Android)\n * Used to identify which purchase option the user selected.\n * Available in Google Play Billing Library 7.0+\n */\n purchaseOptionId?: (string | null);\n /** Rental details for rental offers */\n rentalDetailsAndroid?: (RentalDetailsAndroid | null);\n /** Valid time window for the offer */\n validTimeWindow?: (ValidTimeWindowAndroid | null);\n}\n\nexport interface ProductCommon {\n currency: string;\n debugDescription?: (string | null);\n description: string;\n displayName?: (string | null);\n displayPrice: string;\n id: string;\n platform: 'android' | 'ios';\n price?: (number | null);\n title: string;\n type: 'in-app' | 'subs';\n} \n\nexport interface ProductIOS extends ProductCommon {\n currency: string;\n debugDescription?: (string | null);\n description: string;\n displayName?: (string | null);\n displayNameIOS: string;\n displayPrice: string;\n id: string;\n isFamilyShareableIOS: boolean;\n jsonRepresentationIOS: string;\n platform: 'ios';\n price?: (number | null);\n /**\n * @deprecated Use subscriptionOffers instead for cross-platform compatibility.\n * @deprecated Use subscriptionOffers instead\n */\n subscriptionInfoIOS?: (SubscriptionInfoIOS | null);\n /**\n * Standardized subscription offers.\n * Cross-platform type with iOS-specific fields using suffix.\n * Note: iOS does not support one-time product discounts.\n * @see https://openiap.dev/docs/types#subscription-offer\n */\n subscriptionOffers?: (SubscriptionOffer[] | null);\n title: string;\n type: 'in-app';\n typeIOS: ProductTypeIOS;\n}\n\nexport type ProductOrSubscription = Product | ProductSubscription;\n\nexport type ProductQueryType = 'in-app' | 'subs' | 'all';\n\nexport interface ProductRequest {\n skus: string[];\n type?: (ProductQueryType | null);\n}\n\n/**\n * Status code for individual products returned from queryProductDetailsAsync (Android)\n * Prior to 8.0, products that couldn't be fetched were simply not returned.\n * With 8.0+, these products are returned with a status code explaining why.\n * Available in Google Play Billing Library 8.0.0+\n */\nexport type ProductStatusAndroid = 'ok' | 'not-found' | 'no-offers-available' | 'unknown';\n\nexport type ProductSubscription = ProductSubscriptionAndroid | ProductSubscriptionIOS;\n\nexport interface ProductSubscriptionAndroid extends ProductCommon {\n currency: string;\n debugDescription?: (string | null);\n description: string;\n /**\n * Standardized discount offers for one-time products.\n * Cross-platform type with Android-specific fields using suffix.\n * @see https://openiap.dev/docs/types#discount-offer\n */\n discountOffers?: (DiscountOffer[] | null);\n displayName?: (string | null);\n displayPrice: string;\n id: string;\n nameAndroid: string;\n /**\n * One-time purchase offer details including discounts (Android)\n * Returns all eligible offers. Available in Google Play Billing Library 7.0+\n * @deprecated Use discountOffers instead for cross-platform compatibility.\n * @deprecated Use discountOffers instead\n */\n oneTimePurchaseOfferDetailsAndroid?: (ProductAndroidOneTimePurchaseOfferDetail[] | null);\n platform: 'android';\n price?: (number | null);\n /**\n * Product-level status code indicating fetch result (Android 8.0+)\n * OK = product fetched successfully\n * NOT_FOUND = SKU doesn't exist\n * NO_OFFERS_AVAILABLE = user not eligible for any offers\n * Available in Google Play Billing Library 8.0.0+\n */\n productStatusAndroid?: (ProductStatusAndroid | null);\n /**\n * @deprecated Use subscriptionOffers instead for cross-platform compatibility.\n * @deprecated Use subscriptionOffers instead\n */\n subscriptionOfferDetailsAndroid: ProductSubscriptionAndroidOfferDetails[];\n /**\n * Standardized subscription offers.\n * Cross-platform type with Android-specific fields using suffix.\n * @see https://openiap.dev/docs/types#subscription-offer\n */\n subscriptionOffers: SubscriptionOffer[];\n title: string;\n type: 'subs';\n}\n\n/**\n * Subscription offer details (Android).\n * @deprecated Use the standardized SubscriptionOffer type instead for cross-platform compatibility.\n * @see https://openiap.dev/docs/types#subscription-offer\n */\nexport interface ProductSubscriptionAndroidOfferDetails {\n basePlanId: string;\n /**\n * Installment plan details for this subscription offer.\n * Only set for installment subscription plans; null for non-installment plans.\n * Available in Google Play Billing Library 7.0+\n */\n installmentPlanDetails?: (InstallmentPlanDetailsAndroid | null);\n offerId?: (string | null);\n offerTags: string[];\n offerToken: string;\n pricingPhases: PricingPhasesAndroid;\n}\n\nexport interface ProductSubscriptionIOS extends ProductCommon {\n currency: string;\n debugDescription?: (string | null);\n description: string;\n /**\n * @deprecated Use subscriptionOffers instead for cross-platform compatibility.\n * @deprecated Use subscriptionOffers instead\n */\n discountsIOS?: (DiscountIOS[] | null);\n displayName?: (string | null);\n displayNameIOS: string;\n displayPrice: string;\n id: string;\n introductoryPriceAsAmountIOS?: (string | null);\n introductoryPriceIOS?: (string | null);\n introductoryPriceNumberOfPeriodsIOS?: (string | null);\n introductoryPricePaymentModeIOS: PaymentModeIOS;\n introductoryPriceSubscriptionPeriodIOS?: (SubscriptionPeriodIOS | null);\n isFamilyShareableIOS: boolean;\n jsonRepresentationIOS: string;\n platform: 'ios';\n price?: (number | null);\n /**\n * @deprecated Use subscriptionOffers instead for cross-platform compatibility.\n * @deprecated Use subscriptionOffers instead\n */\n subscriptionInfoIOS?: (SubscriptionInfoIOS | null);\n /**\n * Standardized subscription offers.\n * Cross-platform type with iOS-specific fields using suffix.\n * @see https://openiap.dev/docs/types#subscription-offer\n */\n subscriptionOffers?: (SubscriptionOffer[] | null);\n subscriptionPeriodNumberIOS?: (string | null);\n subscriptionPeriodUnitIOS?: (SubscriptionPeriodIOS | null);\n title: string;\n type: 'subs';\n typeIOS: ProductTypeIOS;\n}\n\nexport type ProductType = 'in-app' | 'subs';\n\nexport type ProductTypeIOS = 'consumable' | 'non-consumable' | 'auto-renewable-subscription' | 'non-renewing-subscription';\n\n/**\n * JWS promotional offer input for iOS 15+ (StoreKit 2, WWDC 2025).\n * New signature format using compact JWS string for promotional offers.\n * This provides a simpler alternative to the legacy signature-based promotional offers.\n * Back-deployed to iOS 15.\n */\nexport interface PromotionalOfferJwsInputIOS {\n /**\n * Compact JWS string signed by your server.\n * The JWS should contain the promotional offer signature data.\n * Format: header.payload.signature (base64url encoded)\n */\n jws: string;\n /** The promotional offer identifier from App Store Connect */\n offerId: string;\n}\n\nexport type Purchase = PurchaseAndroid | PurchaseIOS;\n\nexport interface PurchaseAndroid extends PurchaseCommon {\n autoRenewingAndroid?: (boolean | null);\n currentPlanId?: (string | null);\n dataAndroid?: (string | null);\n developerPayloadAndroid?: (string | null);\n id: string;\n ids?: (string[] | null);\n isAcknowledgedAndroid?: (boolean | null);\n isAutoRenewing: boolean;\n /**\n * Whether the subscription is suspended (Android)\n * A suspended subscription means the user's payment method failed and they need to fix it.\n * Users should be directed to the subscription center to resolve the issue.\n * Do NOT grant entitlements for suspended subscriptions.\n * Available in Google Play Billing Library 8.1.0+\n */\n isSuspendedAndroid?: (boolean | null);\n obfuscatedAccountIdAndroid?: (string | null);\n obfuscatedProfileIdAndroid?: (string | null);\n packageNameAndroid?: (string | null);\n /**\n * Pending purchase update for uncommitted subscription upgrade/downgrade (Android)\n * Contains the new products and purchase token for the pending transaction.\n * Returns null if no pending update exists.\n * Available in Google Play Billing Library 5.0+\n */\n pendingPurchaseUpdateAndroid?: (PendingPurchaseUpdateAndroid | null);\n /** @deprecated Use store instead */\n platform: IapPlatform;\n productId: string;\n purchaseState: PurchaseState;\n purchaseToken?: (string | null);\n quantity: number;\n signatureAndroid?: (string | null);\n /** Store where purchase was made */\n store: IapStore;\n transactionDate: number;\n transactionId?: (string | null);\n}\n\nexport interface PurchaseCommon {\n /**\n * The current plan identifier. This is:\n * - On Android: the basePlanId (e.g., \"premium\", \"premium-year\")\n * - On iOS: the productId (e.g., \"com.example.premium_monthly\", \"com.example.premium_yearly\")\n * This provides a unified way to identify which specific plan/tier the user is subscribed to.\n */\n currentPlanId?: (string | null);\n id: string;\n ids?: (string[] | null);\n isAutoRenewing: boolean;\n /** @deprecated Use store instead */\n platform: IapPlatform;\n productId: string;\n purchaseState: PurchaseState;\n /** Unified purchase token (iOS JWS, Android purchaseToken) */\n purchaseToken?: (string | null);\n quantity: number;\n /** Store where purchase was made */\n store: IapStore;\n transactionDate: number;\n}\n\nexport interface PurchaseError {\n code: ErrorCode;\n debugMessage?: (string | null);\n message: string;\n productId?: (string | null);\n}\n\nexport interface PurchaseIOS extends PurchaseCommon {\n /**\n * Advanced Commerce API metadata (iOS 18.4+).\n * Present only for transactions that use the Advanced Commerce API.\n * Contains item details, tax information, and refund data for generic SKU purchases.\n */\n advancedCommerceInfoIOS?: (AdvancedCommerceInfoIOS | null);\n appAccountToken?: (string | null);\n appBundleIdIOS?: (string | null);\n countryCodeIOS?: (string | null);\n currencyCodeIOS?: (string | null);\n currencySymbolIOS?: (string | null);\n currentPlanId?: (string | null);\n environmentIOS?: (string | null);\n expirationDateIOS?: (number | null);\n id: string;\n ids?: (string[] | null);\n isAutoRenewing: boolean;\n isUpgradedIOS?: (boolean | null);\n offerIOS?: (PurchaseOfferIOS | null);\n originalTransactionDateIOS?: (number | null);\n originalTransactionIdentifierIOS?: (string | null);\n ownershipTypeIOS?: (string | null);\n /** @deprecated Use store instead */\n platform: IapPlatform;\n productId: string;\n purchaseState: PurchaseState;\n purchaseToken?: (string | null);\n quantity: number;\n quantityIOS?: (number | null);\n reasonIOS?: (string | null);\n reasonStringRepresentationIOS?: (string | null);\n renewalInfoIOS?: (RenewalInfoIOS | null);\n revocationDateIOS?: (number | null);\n revocationReasonIOS?: (string | null);\n /** Store where purchase was made */\n store: IapStore;\n storefrontCountryCodeIOS?: (string | null);\n subscriptionGroupIdIOS?: (string | null);\n transactionDate: number;\n transactionId: string;\n transactionReasonIOS?: (string | null);\n webOrderLineItemIdIOS?: (string | null);\n}\n\nexport type PurchaseInput = Purchase;\n\nexport interface PurchaseOfferIOS {\n id: string;\n paymentMode: string;\n type: string;\n}\n\nexport interface PurchaseOptions {\n /** Also emit results through the iOS event listeners */\n alsoPublishToEventListenerIOS?: (boolean | null);\n /**\n * Include suspended subscriptions in the result (Android 8.1+).\n * Suspended subscriptions have isSuspendedAndroid=true and should NOT be granted entitlements.\n * Users should be directed to the subscription center to resolve payment issues.\n * Default: false (only active subscriptions are returned)\n */\n includeSuspendedAndroid?: (boolean | null);\n /** Limit to currently active items on iOS */\n onlyIncludeActiveItemsIOS?: (boolean | null);\n}\n\nexport type PurchaseState = 'pending' | 'purchased' | 'unknown';\n\nexport type PurchaseVerificationProvider = 'iapkit';\n\nexport interface Query {\n /**\n * Check eligibility for the external purchase notice sheet (iOS 17.4+).\n * Uses ExternalPurchase.canPresent.\n * See: https://www.openiap.dev/docs/apis/ios/can-present-external-purchase-notice-ios\n */\n canPresentExternalPurchaseNoticeIOS: Promise<boolean>;\n /**\n * Get the user's current entitlement for a product, using StoreKit 2 (iOS 15+).\n * See: https://www.openiap.dev/docs/apis/ios/current-entitlement-ios\n */\n currentEntitlementIOS?: Promise<(PurchaseIOS | null)>;\n /**\n * Fetch products or subscriptions from the store.\n * See: https://www.openiap.dev/docs/apis/fetch-products\n */\n fetchProducts: Promise<(ProductOrSubscription[] | Product[] | ProductSubscription[] | null)>;\n /**\n * Get details of all currently active subscriptions (filters by subscriptionIds when provided).\n * See: https://www.openiap.dev/docs/apis/get-active-subscriptions\n */\n getActiveSubscriptions: Promise<ActiveSubscription[]>;\n /**\n * List every StoreKit transaction (finished + unfinished) for the current user.\n * Requires the SK2ConsumableTransactionHistory Info.plist key in the host app\n * for finished consumables to be included (iOS 18+).\n * Unlike getAvailablePurchases, always returns the iOS-specific PurchaseIOS shape.\n * See: https://www.openiap.dev/docs/apis/ios/get-all-transactions-ios\n */\n getAllTransactionsIOS: Promise<PurchaseIOS[]>;\n /**\n * Fetch the app transaction (iOS 16+).\n * See: https://www.openiap.dev/docs/apis/ios/get-app-transaction-ios\n */\n getAppTransactionIOS?: Promise<(AppTransaction | null)>;\n /**\n * List active purchases for the current user.\n * See: https://www.openiap.dev/docs/apis/get-available-purchases\n */\n getAvailablePurchases: Promise<Purchase[]>;\n /**\n * Fetch a token for Apple's External Purchase Server reporting API (iOS 18.1+).\n * Use this token to report transactions made through ExternalPurchaseCustomLink.\n * Reference: https://developer.apple.com/documentation/storekit/externalpurchasecustomlink/token(for:)\n * See: https://www.openiap.dev/docs/apis/ios/get-external-purchase-custom-link-token-ios\n */\n getExternalPurchaseCustomLinkTokenIOS: Promise<ExternalPurchaseCustomLinkTokenResultIOS>;\n /**\n * List unfinished StoreKit transactions in the queue.\n * See: https://www.openiap.dev/docs/apis/ios/get-pending-transactions-ios\n */\n getPendingTransactionsIOS: Promise<PurchaseIOS[]>;\n /**\n * Read the App Store-promoted product, if any (iOS 11+).\n * See: https://www.openiap.dev/docs/apis/ios/get-promoted-product-ios\n */\n getPromotedProductIOS?: Promise<(ProductIOS | null)>;\n /**\n * Get base64-encoded receipt data (legacy validation).\n * See: https://www.openiap.dev/docs/apis/ios/get-receipt-data-ios\n */\n getReceiptDataIOS?: Promise<(string | null)>;\n /**\n * Return the user's storefront country code.\n * See: https://www.openiap.dev/docs/apis/get-storefront\n */\n getStorefront: Promise<string>;\n /**\n * Deprecated. Get the current App Store storefront country code — use cross-platform getStorefront instead.\n * See: https://www.openiap.dev/docs/apis/ios/get-storefront-ios\n * @deprecated Use getStorefront\n */\n getStorefrontIOS: Promise<string>;\n /**\n * Return the JWS string for a transaction (StoreKit 2).\n * See: https://www.openiap.dev/docs/apis/ios/get-transaction-jws-ios\n */\n getTransactionJwsIOS?: Promise<(string | null)>;\n /**\n * Check whether the user has any active subscription.\n * See: https://www.openiap.dev/docs/apis/has-active-subscriptions\n */\n hasActiveSubscriptions: Promise<boolean>;\n /**\n * Check eligibility for the custom-link variant of external purchase (iOS 18.1+).\n * Returns true if the app can use custom external purchase links.\n * Reference: https://developer.apple.com/documentation/storekit/externalpurchasecustomlink/iseligible\n * See: https://www.openiap.dev/docs/apis/ios/is-eligible-for-external-purchase-custom-link-ios\n */\n isEligibleForExternalPurchaseCustomLinkIOS: Promise<boolean>;\n /**\n * Check intro-offer eligibility for a subscription group.\n * See: https://www.openiap.dev/docs/apis/ios/is-eligible-for-intro-offer-ios\n */\n isEligibleForIntroOfferIOS: Promise<boolean>;\n /**\n * Check whether a transaction's JWS verification passed (StoreKit 2).\n * See: https://www.openiap.dev/docs/apis/ios/is-transaction-verified-ios\n */\n isTransactionVerifiedIOS: Promise<boolean>;\n /**\n * Get the latest verified transaction for a product, using StoreKit 2.\n * See: https://www.openiap.dev/docs/apis/ios/latest-transaction-ios\n */\n latestTransactionIOS?: Promise<(PurchaseIOS | null)>;\n /**\n * Get subscription status objects from StoreKit 2 (iOS 15+).\n * See: https://www.openiap.dev/docs/apis/ios/subscription-status-ios\n */\n subscriptionStatusIOS: Promise<SubscriptionStatusIOS[]>;\n /**\n * Deprecated. Legacy App Store receipt validation — use verifyPurchase instead.\n * See: https://www.openiap.dev/docs/apis/ios/validate-receipt-ios\n * @deprecated Use verifyPurchase\n */\n validateReceiptIOS: Promise<VerifyPurchaseResultIOS>;\n}\n\n\n\nexport type QueryCurrentEntitlementIosArgs = string;\n\nexport type QueryFetchProductsArgs = ProductRequest;\n\nexport type QueryGetActiveSubscriptionsArgs = (string[] | null) | undefined;\n\nexport type QueryGetAvailablePurchasesArgs = (PurchaseOptions | null) | undefined;\n\nexport type QueryGetExternalPurchaseCustomLinkTokenIosArgs = ExternalPurchaseCustomLinkTokenTypeIOS;\n\nexport type QueryGetTransactionJwsIosArgs = string;\n\nexport type QueryHasActiveSubscriptionsArgs = (string[] | null) | undefined;\n\nexport type QueryIsEligibleForIntroOfferIosArgs = string;\n\nexport type QueryIsTransactionVerifiedIosArgs = string;\n\nexport type QueryLatestTransactionIosArgs = string;\n\nexport type QuerySubscriptionStatusIosArgs = string;\n\nexport type QueryValidateReceiptIosArgs = VerifyPurchaseProps;\n\nexport interface RefundResultIOS {\n message?: (string | null);\n status: string;\n}\n\n/**\n * Subscription renewal information from Product.SubscriptionInfo.RenewalInfo\n * https://developer.apple.com/documentation/storekit/product/subscriptioninfo/renewalinfo\n */\nexport interface RenewalInfoIOS {\n autoRenewPreference?: (string | null);\n /**\n * When subscription expires due to cancellation/billing issue\n * Possible values: \"VOLUNTARY\", \"BILLING_ERROR\", \"DID_NOT_AGREE_TO_PRICE_INCREASE\", \"PRODUCT_NOT_AVAILABLE\", \"UNKNOWN\"\n */\n expirationReason?: (string | null);\n /**\n * Grace period expiration date (milliseconds since epoch)\n * When set, subscription is in grace period (billing issue but still has access)\n */\n gracePeriodExpirationDate?: (number | null);\n /**\n * True if subscription failed to renew due to billing issue and is retrying\n * Note: Not directly available in RenewalInfo, available in Status\n */\n isInBillingRetry?: (boolean | null);\n jsonRepresentation?: (string | null);\n /**\n * Product ID that will be used on next renewal (when user upgrades/downgrades)\n * If set and different from current productId, subscription will change on expiration\n */\n pendingUpgradeProductId?: (string | null);\n /**\n * User's response to subscription price increase\n * Possible values: \"AGREED\", \"PENDING\", null (no price increase)\n */\n priceIncreaseStatus?: (string | null);\n /**\n * Expected renewal date (milliseconds since epoch)\n * For active subscriptions, when the next renewal/charge will occur\n */\n renewalDate?: (number | null);\n /** Offer ID applied to next renewal (promotional offer, subscription offer code, etc.) */\n renewalOfferId?: (string | null);\n /**\n * Type of offer applied to next renewal\n * Possible values: \"PROMOTIONAL\", \"SUBSCRIPTION_OFFER_CODE\", \"WIN_BACK\", etc.\n */\n renewalOfferType?: (string | null);\n willAutoRenew: boolean;\n}\n\n/**\n * Rental details for one-time purchase products that can be rented (Android)\n * Available in Google Play Billing Library 7.0+\n */\nexport interface RentalDetailsAndroid {\n /**\n * Rental expiration period in ISO 8601 format\n * Time after rental period ends when user can still extend\n */\n rentalExpirationPeriod?: (string | null);\n /** Rental period in ISO 8601 format (e.g., P7D for 7 days) */\n rentalPeriod: string;\n}\n\nexport interface RequestPurchaseAndroidProps {\n /**\n * Developer billing option parameters for external payments flow (8.3.0+).\n * When provided, the purchase flow will show a side-by-side choice between\n * Google Play Billing and the developer's external payment option.\n */\n developerBillingOption?: (DeveloperBillingOptionParamsAndroid | null);\n /**\n * Personalized offer flag.\n * When true, indicates the price was customized for this user.\n */\n isOfferPersonalized?: (boolean | null);\n /** Obfuscated account ID */\n obfuscatedAccountId?: (string | null);\n /** Obfuscated profile ID */\n obfuscatedProfileId?: (string | null);\n /**\n * Offer token for one-time purchase discounts (7.0+).\n * Pass the offerToken from oneTimePurchaseOfferDetailsAndroid or discountOffers\n * to apply a discount offer to the purchase.\n */\n offerToken?: (string | null);\n /** List of product SKUs */\n skus: string[];\n}\n\nexport interface RequestPurchaseIosProps {\n /**\n * Advanced commerce data token (iOS 15+).\n * Used with StoreKit 2's Product.PurchaseOption.custom API for passing\n * campaign tokens, affiliate IDs, or other attribution data.\n * The data is formatted as JSON: {\"signatureInfo\": {\"token\": \"<value>\"}}\n */\n advancedCommerceData?: (string | null);\n /** Auto-finish transaction (dangerous) */\n andDangerouslyFinishTransactionAutomatically?: (boolean | null);\n /** App account token for user tracking */\n appAccountToken?: (string | null);\n /** Purchase quantity */\n quantity?: (number | null);\n /** Product SKU */\n sku: string;\n /**\n * Promotional offer to apply (subscriptions only, ignored for one-time purchases).\n * iOS only supports promotional offers for auto-renewable subscriptions.\n */\n withOffer?: (DiscountOfferInputIOS | null);\n}\n\nexport type RequestPurchaseProps =\n | {\n /** Per-platform purchase request props */\n request: RequestPurchasePropsByPlatforms;\n type: 'in-app';\n /** Use alternative billing (Google Play alternative billing, Apple external purchase link) */\n useAlternativeBilling?: boolean | null;\n }\n | {\n /** Per-platform subscription request props */\n request: RequestSubscriptionPropsByPlatforms;\n type: 'subs';\n /** Use alternative billing (Google Play alternative billing, Apple external purchase link) */\n useAlternativeBilling?: boolean | null;\n };\n\n/**\n * Platform-specific purchase request parameters.\n *\n * Note: \"Platforms\" refers to the SDK/OS level (apple, google), not the store.\n * - apple: Always targets App Store\n * - google: Targets Play Store by default, or Horizon when built with horizon flavor\n * (determined at build time, not runtime)\n */\nexport interface RequestPurchasePropsByPlatforms {\n /** @deprecated Use google instead */\n android?: (RequestPurchaseAndroidProps | null);\n /** Apple-specific purchase parameters */\n apple?: (RequestPurchaseIosProps | null);\n /** Google-specific purchase parameters */\n google?: (RequestPurchaseAndroidProps | null);\n /** @deprecated Use apple instead */\n ios?: (RequestPurchaseIosProps | null);\n}\n\nexport type RequestPurchaseResult = Purchase | Purchase[] | null;\n\nexport interface RequestSubscriptionAndroidProps {\n /**\n * Developer billing option parameters for external payments flow (8.3.0+).\n * When provided, the purchase flow will show a side-by-side choice between\n * Google Play Billing and the developer's external payment option.\n */\n developerBillingOption?: (DeveloperBillingOptionParamsAndroid | null);\n /**\n * Personalized offer flag.\n * When true, indicates the price was customized for this user.\n */\n isOfferPersonalized?: (boolean | null);\n /** Obfuscated account ID */\n obfuscatedAccountId?: (string | null);\n /** Obfuscated profile ID */\n obfuscatedProfileId?: (string | null);\n /** Purchase token for upgrades/downgrades */\n purchaseToken?: (string | null);\n /**\n * Replacement mode for subscription changes\n * @deprecated Use subscriptionProductReplacementParams instead for item-level replacement (8.1.0+)\n */\n replacementMode?: (number | null);\n /** List of subscription SKUs */\n skus: string[];\n /** Subscription offers */\n subscriptionOffers?: (AndroidSubscriptionOfferInput[] | null);\n /**\n * Product-level replacement parameters (8.1.0+)\n * Use this instead of replacementMode for item-level replacement\n */\n subscriptionProductReplacementParams?: (SubscriptionProductReplacementParamsAndroid | null);\n}\n\nexport interface RequestSubscriptionIosProps {\n /**\n * Advanced commerce data token (iOS 15+).\n * Used with StoreKit 2's Product.PurchaseOption.custom API for passing\n * campaign tokens, affiliate IDs, or other attribution data.\n * The data is formatted as JSON: {\"signatureInfo\": {\"token\": \"<value>\"}}\n */\n advancedCommerceData?: (string | null);\n andDangerouslyFinishTransactionAutomatically?: (boolean | null);\n appAccountToken?: (string | null);\n /**\n * Override introductory offer eligibility (iOS 15+, WWDC 2025).\n * Set to true to indicate the user is eligible for introductory offer,\n * or false to indicate they are not. When nil, the system determines eligibility.\n * Back-deployed to iOS 15.\n */\n introductoryOfferEligibility?: (boolean | null);\n /**\n * JWS promotional offer (iOS 15+, WWDC 2025).\n * New signature format using compact JWS string for promotional offers.\n * Back-deployed to iOS 15.\n */\n promotionalOfferJWS?: (PromotionalOfferJwsInputIOS | null);\n quantity?: (number | null);\n sku: string;\n /**\n * Win-back offer to apply (iOS 18+)\n * Used to re-engage churned subscribers with a discount or free trial.\n * The offer is available when the customer is eligible and can be discovered\n * via StoreKit Message (automatic) or subscription offer APIs.\n */\n winBackOffer?: (WinBackOfferInputIOS | null);\n /**\n * Promotional offer to apply for subscription purchases.\n * Requires server-signed offer with nonce, timestamp, keyId, and signature.\n */\n withOffer?: (DiscountOfferInputIOS | null);\n}\n\n/**\n * Platform-specific subscription request parameters.\n *\n * Note: \"Platforms\" refers to the SDK/OS level (apple, google), not the store.\n * - apple: Always targets App Store\n * - google: Targets Play Store by default, or Horizon when built with horizon flavor\n * (determined at build time, not runtime)\n */\nexport interface RequestSubscriptionPropsByPlatforms {\n /** @deprecated Use google instead */\n android?: (RequestSubscriptionAndroidProps | null);\n /** Apple-specific subscription parameters */\n apple?: (RequestSubscriptionIosProps | null);\n /** Google-specific subscription parameters */\n google?: (RequestSubscriptionAndroidProps | null);\n /** @deprecated Use apple instead */\n ios?: (RequestSubscriptionIosProps | null);\n}\n\nexport interface RequestVerifyPurchaseWithIapkitAppleProps {\n /** The JWS token returned with the purchase response. */\n jws: string;\n}\n\nexport interface RequestVerifyPurchaseWithIapkitGoogleProps {\n /** The token provided to the user's device when the product or subscription was purchased. */\n purchaseToken: string;\n}\n\n/**\n * Platform-specific verification parameters for IAPKit.\n *\n * - apple: Verifies via App Store (JWS token)\n * - google: Verifies via Play Store (purchase token)\n */\nexport interface RequestVerifyPurchaseWithIapkitProps {\n /** API key used for the Authorization header (Bearer {apiKey}). */\n apiKey?: (string | null);\n /** Apple App Store verification parameters. */\n apple?: (RequestVerifyPurchaseWithIapkitAppleProps | null);\n /** Google Play Store verification parameters. */\n google?: (RequestVerifyPurchaseWithIapkitGoogleProps | null);\n}\n\nexport interface RequestVerifyPurchaseWithIapkitResult {\n /** Whether the purchase is valid (not falsified). */\n isValid: boolean;\n /** The current state of the purchase. */\n state: IapkitPurchaseState;\n store: IapStore;\n}\n\n/**\n * Sub-response codes for more granular purchase error information (Android)\n * Available in Google Play Billing Library 8.0.0+\n */\nexport type SubResponseCodeAndroid = 'no-applicable-sub-response-code' | 'payment-declined-due-to-insufficient-funds' | 'user-ineligible';\n\nexport interface Subscription {\n /**\n * Fires when a user selects developer billing in the External Payments flow (Android only)\n * Triggered when the user chooses to pay via the developer's external payment option\n * instead of Google Play Billing in the side-by-side choice dialog.\n * Contains the externalTransactionToken needed to report the transaction.\n * Available in Google Play Billing Library 8.3.0+\n */\n developerProvidedBillingAndroid: DeveloperProvidedBillingDetailsAndroid;\n /** Fires when the App Store surfaces a promoted product (iOS only) */\n promotedProductIOS: string;\n /** Fires when a purchase fails or is cancelled */\n purchaseError: PurchaseError;\n /** Fires when a purchase completes successfully or a pending purchase resolves */\n purchaseUpdated: Purchase;\n /**\n * Fires when an active subscription enters a billing-issue state that needs user action\n * (payment method failed, card expired, etc.). Cross-platform unification:\n *\n * - iOS 18+: delivered via StoreKit 2 `Message.Reason.billingIssue`.\n * - Android (Play flavor, Billing 8.1+): emitted when `isSuspended == true` is first detected\n * on a previously healthy subscription. Requires Google Play Billing Library 8.1.0 or newer.\n * - Android (Horizon flavor): NOT emitted. The Horizon Billing Compatibility SDK implements\n * the Play Billing 7.0 API surface which does not expose a suspended-subscription signal.\n *\n * Listeners should not assume the event will fire on every store. Direct users to the\n * platform subscription management UI (`deepLinkToSubscriptions`) to resolve the issue.\n */\n subscriptionBillingIssue: Purchase;\n /**\n * Fires when a user selects alternative billing in the User Choice Billing dialog (Android only)\n * Only triggered when the user selects alternative billing instead of Google Play billing\n */\n userChoiceBillingAndroid: UserChoiceBillingDetails;\n}\n\n\nexport interface SubscriptionInfoIOS {\n introductoryOffer?: (SubscriptionOfferIOS | null);\n promotionalOffers?: (SubscriptionOfferIOS[] | null);\n subscriptionGroupId: string;\n subscriptionPeriod: SubscriptionPeriodValueIOS;\n}\n\n/**\n * Standardized subscription discount/promotional offer.\n * Provides a unified interface for subscription offers across iOS and Android.\n *\n * Both platforms support subscription offers with different implementations:\n * - iOS: Introductory offers, promotional offers with server-side signatures\n * - Android: Offer tokens with pricing phases\n *\n * @see https://openiap.dev/docs/types/ios#discount-offer\n * @see https://openiap.dev/docs/types/android#subscription-offer\n */\nexport interface SubscriptionOffer {\n /**\n * [Android] Base plan identifier.\n * Identifies which base plan this offer belongs to.\n */\n basePlanIdAndroid?: (string | null);\n /** Currency code (ISO 4217, e.g., \"USD\") */\n currency?: (string | null);\n /** Formatted display price string (e.g., \"$9.99/month\") */\n displayPrice: string;\n /**\n * Unique identifier for the offer.\n * - iOS: Discount identifier from App Store Connect\n * - Android: offerId from ProductSubscriptionAndroidOfferDetails\n */\n id: string;\n /**\n * [Android] Installment plan details for this subscription offer.\n * Only set for installment subscription plans; null for non-installment plans.\n * Available in Google Play Billing Library 7.0+\n */\n installmentPlanDetailsAndroid?: (InstallmentPlanDetailsAndroid | null);\n /**\n * [iOS] Key identifier for signature validation.\n * Used with server-side signature generation for promotional offers.\n */\n keyIdentifierIOS?: (string | null);\n /** [iOS] Localized price string. */\n localizedPriceIOS?: (string | null);\n /**\n * [iOS] Cryptographic nonce (UUID) for signature validation.\n * Must be generated server-side for each purchase attempt.\n */\n nonceIOS?: (string | null);\n /** [iOS] Number of billing periods for this discount. */\n numberOfPeriodsIOS?: (number | null);\n /** [Android] List of tags associated with this offer. */\n offerTagsAndroid?: (string[] | null);\n /**\n * [Android] Offer token required for purchase.\n * Must be passed to requestPurchase() when purchasing with this offer.\n */\n offerTokenAndroid?: (string | null);\n /** Payment mode during the offer period */\n paymentMode?: (PaymentMode | null);\n /** Subscription period for this offer */\n period?: (SubscriptionPeriod | null);\n /** Number of periods the offer applies */\n periodCount?: (number | null);\n /** Numeric price value */\n price: number;\n /**\n * [Android] Pricing phases for this subscription offer.\n * Contains detailed pricing information for each phase (trial, intro, regular).\n */\n pricingPhasesAndroid?: (PricingPhasesAndroid | null);\n /**\n * [iOS] Server-generated signature for promotional offer validation.\n * Required when applying promotional offers on iOS.\n */\n signatureIOS?: (string | null);\n /**\n * [iOS] Timestamp when the signature was generated.\n * Used for signature validation.\n */\n timestampIOS?: (number | null);\n /** Type of subscription offer (Introductory or Promotional) */\n type: DiscountOfferType;\n}\n\n/**\n * iOS subscription offer details.\n * @deprecated Use the standardized SubscriptionOffer type instead for cross-platform compatibility.\n * @see https://openiap.dev/docs/types#subscription-offer\n */\nexport interface SubscriptionOfferIOS {\n displayPrice: string;\n id: string;\n paymentMode: PaymentModeIOS;\n period: SubscriptionPeriodValueIOS;\n periodCount: number;\n price: number;\n type: SubscriptionOfferTypeIOS;\n}\n\nexport type SubscriptionOfferTypeIOS = 'introductory' | 'promotional' | 'win-back';\n\n/** Subscription period value combining unit and count. */\nexport interface SubscriptionPeriod {\n /** The period unit (day, week, month, year) */\n unit: SubscriptionPeriodUnit;\n /** The number of units (e.g., 1 for monthly, 3 for quarterly) */\n value: number;\n}\n\nexport type SubscriptionPeriodIOS = 'day' | 'week' | 'month' | 'year' | 'empty';\n\n/** Subscription period unit for cross-platform use. */\nexport type SubscriptionPeriodUnit = 'day' | 'week' | 'month' | 'year' | 'unknown';\n\nexport interface SubscriptionPeriodValueIOS {\n unit: SubscriptionPeriodIOS;\n value: number;\n}\n\n/**\n * Product-level subscription replacement parameters (Android)\n * Used with setSubscriptionProductReplacementParams in BillingFlowParams.ProductDetailsParams\n * Available in Google Play Billing Library 8.1.0+\n */\nexport interface SubscriptionProductReplacementParamsAndroid {\n /** The old product ID that needs to be replaced */\n oldProductId: string;\n /** The replacement mode for this product change */\n replacementMode: SubscriptionReplacementModeAndroid;\n}\n\n/**\n * Replacement mode for subscription changes (Android)\n * These modes determine how the subscription replacement affects billing.\n * Available in Google Play Billing Library 8.1.0+\n */\nexport type SubscriptionReplacementModeAndroid = 'unknown-replacement-mode' | 'with-time-proration' | 'charge-prorated-price' | 'charge-full-price' | 'without-proration' | 'deferred' | 'keep-existing';\n\nexport type SubscriptionState = 'active' | 'expired' | 'in-billing-retry' | 'in-grace-period' | 'paused' | 'refunded' | 'revoked' | 'unknown';\n\nexport interface SubscriptionStatusIOS {\n renewalInfo?: (RenewalInfoIOS | null);\n state: string;\n}\n\n/**\n * User Choice Billing event details (Android)\n * Fired when a user selects alternative billing in the User Choice Billing dialog\n */\nexport interface UserChoiceBillingDetails {\n /** Token that must be reported to Google Play within 24 hours */\n externalTransactionToken: string;\n /** List of product IDs selected by the user */\n products: string[];\n}\n\n/**\n * Valid time window for when an offer is available (Android)\n * Available in Google Play Billing Library 7.0+\n */\nexport interface ValidTimeWindowAndroid {\n /** End time in milliseconds since epoch */\n endTimeMillis: string;\n /** Start time in milliseconds since epoch */\n startTimeMillis: string;\n}\n\n/**\n * Apple App Store verification parameters.\n * Used for server-side receipt validation via App Store Server API.\n */\nexport interface VerifyPurchaseAppleOptions {\n /** Product SKU to validate */\n sku: string;\n}\n\n/**\n * Google Play Store verification parameters.\n * Used for server-side receipt validation via Google Play Developer API.\n *\n * ⚠️ SECURITY: Contains sensitive tokens (accessToken, purchaseToken). Do not log or persist this data.\n */\nexport interface VerifyPurchaseGoogleOptions {\n /**\n * Google OAuth2 access token for API authentication.\n * ⚠️ Sensitive: Do not log this value.\n */\n accessToken: string;\n /** Whether this is a subscription purchase (affects API endpoint used) */\n isSub?: (boolean | null);\n /** Android package name (e.g., com.example.app) */\n packageName: string;\n /**\n * Purchase token from the purchase response.\n * ⚠️ Sensitive: Do not log this value.\n */\n purchaseToken: string;\n /** Product SKU to validate */\n sku: string;\n}\n\n/**\n * Meta Horizon (Quest) verification parameters.\n * Used for server-side entitlement verification via Meta's S2S API.\n * POST https://graph.oculus.com/$APP_ID/verify_entitlement\n *\n * ⚠️ SECURITY: Contains sensitive token (accessToken). Do not log or persist this data.\n */\nexport interface VerifyPurchaseHorizonOptions {\n /**\n * Access token for Meta API authentication (OC|$APP_ID|$APP_SECRET or User Access Token).\n * ⚠️ Sensitive: Do not log this value.\n */\n accessToken: string;\n /** The SKU for the add-on item, defined in Meta Developer Dashboard */\n sku: string;\n /** The user ID of the user whose purchase you want to verify */\n userId: string;\n}\n\n/**\n * Platform-specific purchase verification parameters.\n *\n * - apple: Verifies via App Store Server API\n * - google: Verifies via Google Play Developer API\n * - horizon: Verifies via Meta's S2S API (verify_entitlement endpoint)\n */\nexport interface VerifyPurchaseProps {\n /** Apple App Store verification parameters. */\n apple?: (VerifyPurchaseAppleOptions | null);\n /** Google Play Store verification parameters. */\n google?: (VerifyPurchaseGoogleOptions | null);\n /** Meta Horizon (Quest) verification parameters. */\n horizon?: (VerifyPurchaseHorizonOptions | null);\n}\n\nexport type VerifyPurchaseResult = VerifyPurchaseResultAndroid | VerifyPurchaseResultHorizon | VerifyPurchaseResultIOS;\n\nexport interface VerifyPurchaseResultAndroid {\n autoRenewing: boolean;\n betaProduct: boolean;\n cancelDate?: (number | null);\n cancelReason?: (string | null);\n deferredDate?: (number | null);\n deferredSku?: (string | null);\n freeTrialEndDate: number;\n gracePeriodEndDate: number;\n parentProductId: string;\n productId: string;\n productType: string;\n purchaseDate: number;\n quantity: number;\n receiptId: string;\n renewalDate: number;\n term: string;\n termSku: string;\n testTransaction: boolean;\n}\n\n/**\n * Result from Meta Horizon verify_entitlement API.\n * Returns verification status and grant time for the entitlement.\n */\nexport interface VerifyPurchaseResultHorizon {\n /** Unix timestamp (seconds) when the entitlement was granted. */\n grantTime?: (number | null);\n /** Whether the entitlement verification succeeded. */\n success: boolean;\n}\n\nexport interface VerifyPurchaseResultIOS {\n /** Whether the receipt is valid */\n isValid: boolean;\n /** JWS representation */\n jwsRepresentation: string;\n /** Latest transaction if available */\n latestTransaction?: (Purchase | null);\n /** Receipt data string */\n receiptData: string;\n}\n\nexport interface VerifyPurchaseWithProviderError {\n code?: (string | null);\n message: string;\n}\n\nexport interface VerifyPurchaseWithProviderProps {\n iapkit?: (RequestVerifyPurchaseWithIapkitProps | null);\n provider: PurchaseVerificationProvider;\n}\n\nexport interface VerifyPurchaseWithProviderResult {\n /** Error details if verification failed */\n errors?: (VerifyPurchaseWithProviderError[] | null);\n /** IAPKit verification result */\n iapkit?: (RequestVerifyPurchaseWithIapkitResult | null);\n provider: PurchaseVerificationProvider;\n}\n\nexport type VoidResult = void;\n\nexport type WebhookCancellationReason = 'billing-error' | 'other' | 'price-increase-declined' | 'product-unavailable' | 'refunded' | 'user-canceled';\n\nexport interface WebhookEvent {\n /** Reason for cancellation, when applicable. */\n cancellationReason?: (WebhookCancellationReason | null);\n /** Localized currency code (ISO 4217) at event time, when available. */\n currency?: (string | null);\n environment: WebhookEventEnvironment;\n /** When the current subscription period ends. Epoch milliseconds. */\n expiresAt?: (number | null);\n /**\n * Stable identifier suitable for idempotency. Derived from the source notification\n * UUID where the store provides one (ASN v2 `notificationUUID`, RTDN message id);\n * otherwise hashed from the canonicalized payload.\n */\n id: string;\n /** Time the underlying event occurred at the store. Epoch milliseconds. */\n occurredAt: number;\n platform: IapPlatform;\n /**\n * Price in micros (1/1,000,000 of the currency unit) at event time, when available.\n * Matches Google Play's `priceAmountMicros` convention; iOS values are converted.\n */\n priceAmountMicros?: (number | null);\n /** Product the event pertains to. May be null for account-level events. */\n productId?: (string | null);\n /** kit project that owns the subscription / purchase this event refers to. */\n projectId: string;\n /**\n * Cross-platform purchase identity used to correlate this event with an existing\n * purchase record. iOS: `originalTransactionId`. Android: `purchaseToken`.\n * Null for `TestNotification` events (Apple ASN v2 / Google RTDN test\n * payloads carry no transaction); always present for every other event type.\n */\n purchaseToken?: (string | null);\n /**\n * Original signed payload from the store. ASN v2 events expose the JWS string;\n * RTDN events expose the base64-decoded Pub/Sub message JSON. Provided so that\n * consumers can independently verify or extract platform-specific fields. kit\n * always validates this payload before emitting the event.\n */\n rawSignedPayload?: (string | null);\n /** Time kit ingested and normalized this event. Epoch milliseconds. */\n receivedAt: number;\n /** When auto-renewal will charge again. Epoch milliseconds. */\n renewsAt?: (number | null);\n source: WebhookEventSource;\n /**\n * Normalized subscription state at the time of event, when the event refers to\n * a subscription. Null for one-time purchase events.\n */\n subscriptionState?: (SubscriptionState | null);\n type: WebhookEventType;\n}\n\nexport type WebhookEventEnvironment = 'production' | 'sandbox' | 'xcode';\n\nexport type WebhookEventSource = 'apple-app-store-server-notifications-v2' | 'google-play-real-time-developer-notifications' | 'meta-horizon-reconciler';\n\nexport type WebhookEventType = 'purchase-consumption-request' | 'purchase-refunded' | 'subscription-canceled' | 'subscription-expired' | 'subscription-in-billing-retry' | 'subscription-in-grace-period' | 'subscription-paused' | 'subscription-price-change' | 'subscription-product-changed' | 'subscription-recovered' | 'subscription-renewed' | 'subscription-resumed' | 'subscription-revoked' | 'subscription-started' | 'subscription-uncanceled' | 'test-notification';\n\n/**\n * Win-back offer input for iOS 18+ (StoreKit 2)\n * Win-back offers are used to re-engage churned subscribers.\n * The offer is automatically presented via StoreKit Message when eligible,\n * or can be applied programmatically during purchase.\n */\nexport interface WinBackOfferInputIOS {\n /** The win-back offer ID from App Store Connect */\n offerId: string;\n}\n// -- Query helper types (auto-generated)\nexport type QueryArgsMap = {\n canPresentExternalPurchaseNoticeIOS: never;\n currentEntitlementIOS: QueryCurrentEntitlementIosArgs;\n fetchProducts: QueryFetchProductsArgs;\n getActiveSubscriptions: QueryGetActiveSubscriptionsArgs;\n getAllTransactionsIOS: never;\n getAppTransactionIOS: never;\n getAvailablePurchases: QueryGetAvailablePurchasesArgs;\n getExternalPurchaseCustomLinkTokenIOS: QueryGetExternalPurchaseCustomLinkTokenIosArgs;\n getPendingTransactionsIOS: never;\n getPromotedProductIOS: never;\n getReceiptDataIOS: never;\n getStorefront: never;\n getStorefrontIOS: never;\n getTransactionJwsIOS: QueryGetTransactionJwsIosArgs;\n hasActiveSubscriptions: QueryHasActiveSubscriptionsArgs;\n isEligibleForExternalPurchaseCustomLinkIOS: never;\n isEligibleForIntroOfferIOS: QueryIsEligibleForIntroOfferIosArgs;\n isTransactionVerifiedIOS: QueryIsTransactionVerifiedIosArgs;\n latestTransactionIOS: QueryLatestTransactionIosArgs;\n subscriptionStatusIOS: QuerySubscriptionStatusIosArgs;\n validateReceiptIOS: QueryValidateReceiptIosArgs;\n};\n\nexport type QueryField<K extends keyof Query> =\n QueryArgsMap[K] extends never\n ? () => NonNullable<Query[K]>\n : undefined extends QueryArgsMap[K]\n ? (args?: QueryArgsMap[K]) => NonNullable<Query[K]>\n : (args: QueryArgsMap[K]) => NonNullable<Query[K]>;\n\nexport type QueryFieldMap = {\n [K in keyof Query]?: QueryField<K>;\n};\n// -- End query helper types\n\n// -- Mutation helper types (auto-generated)\nexport type MutationArgsMap = {\n acknowledgePurchaseAndroid: MutationAcknowledgePurchaseAndroidArgs;\n beginRefundRequestIOS: MutationBeginRefundRequestIosArgs;\n checkAlternativeBillingAvailabilityAndroid: never;\n clearTransactionIOS: never;\n consumePurchaseAndroid: MutationConsumePurchaseAndroidArgs;\n createAlternativeBillingTokenAndroid: never;\n createBillingProgramReportingDetailsAndroid: MutationCreateBillingProgramReportingDetailsAndroidArgs;\n deepLinkToSubscriptions: MutationDeepLinkToSubscriptionsArgs;\n endConnection: never;\n finishTransaction: MutationFinishTransactionArgs;\n initConnection: MutationInitConnectionArgs;\n isBillingProgramAvailableAndroid: MutationIsBillingProgramAvailableAndroidArgs;\n launchExternalLinkAndroid: MutationLaunchExternalLinkAndroidArgs;\n presentCodeRedemptionSheetIOS: never;\n presentExternalPurchaseLinkIOS: MutationPresentExternalPurchaseLinkIosArgs;\n presentExternalPurchaseNoticeSheetIOS: never;\n requestPurchase: MutationRequestPurchaseArgs;\n requestPurchaseOnPromotedProductIOS: never;\n restorePurchases: never;\n showAlternativeBillingDialogAndroid: never;\n showExternalPurchaseCustomLinkNoticeIOS: MutationShowExternalPurchaseCustomLinkNoticeIosArgs;\n showManageSubscriptionsIOS: never;\n syncIOS: never;\n validateReceipt: MutationValidateReceiptArgs;\n verifyPurchase: MutationVerifyPurchaseArgs;\n verifyPurchaseWithProvider: MutationVerifyPurchaseWithProviderArgs;\n};\n\nexport type MutationField<K extends keyof Mutation> =\n MutationArgsMap[K] extends never\n ? () => NonNullable<Mutation[K]>\n : undefined extends MutationArgsMap[K]\n ? (args?: MutationArgsMap[K]) => NonNullable<Mutation[K]>\n : (args: MutationArgsMap[K]) => NonNullable<Mutation[K]>;\n\nexport type MutationFieldMap = {\n [K in keyof Mutation]?: MutationField<K>;\n};\n// -- End mutation helper types\n\n// -- Subscription helper types (auto-generated)\nexport type SubscriptionArgsMap = {\n developerProvidedBillingAndroid: never;\n promotedProductIOS: never;\n purchaseError: never;\n purchaseUpdated: never;\n subscriptionBillingIssue: never;\n userChoiceBillingAndroid: never;\n};\n\nexport type SubscriptionField<K extends keyof Subscription> =\n SubscriptionArgsMap[K] extends never\n ? () => NonNullable<Subscription[K]>\n : undefined extends SubscriptionArgsMap[K]\n ? (args?: SubscriptionArgsMap[K]) => NonNullable<Subscription[K]>\n : (args: SubscriptionArgsMap[K]) => NonNullable<Subscription[K]>;\n\nexport type SubscriptionFieldMap = {\n [K in keyof Subscription]?: SubscriptionField<K>;\n};\n// -- End subscription helper types\n"]}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,+EAA+E;AAC/E,8CAA8C;AAC9C,mEAAmE;AACnE,+EAA+E;AA+W/E,MAAM,CAAN,IAAY,SAwCX;AAxCD,WAAY,SAAS;IACnB,yDAA4C,CAAA;IAC5C,2CAA8B,CAAA;IAC9B,iDAAoC,CAAA;IACpC,gFAAmE,CAAA;IACnE,uDAA0C,CAAA;IAC1C,mDAAsC,CAAA;IACtC,iDAAoC,CAAA;IACpC,+CAAkC,CAAA;IAClC,qDAAwC,CAAA;IACxC,4CAA+B,CAAA;IAC/B,0DAA6C,CAAA;IAC7C,kDAAqC,CAAA;IACrC,+CAAkC,CAAA;IAClC,wCAA2B,CAAA;IAC3B,4CAA+B,CAAA;IAC/B,iDAAoC,CAAA;IACpC,2CAA8B,CAAA;IAC9B,mCAAsB,CAAA;IACtB,yCAA4B,CAAA;IAC5B,gCAAmB,CAAA;IACnB,6CAAgC,CAAA;IAChC,wEAA2D,CAAA;IAC3D,qFAAwE,CAAA;IACxE,4EAA+D,CAAA;IAC/D,2CAA8B,CAAA;IAC9B,6CAAgC,CAAA;IAChC,iDAAoC,CAAA;IACpC,8DAAiD,CAAA;IACjD,yCAA4B,CAAA;IAC5B,yDAA4C,CAAA;IAC5C,2CAA8B,CAAA;IAC9B,+CAAkC,CAAA;IAClC,0CAA6B,CAAA;IAC7B,oDAAuC,CAAA;IACvC,qCAAwB,CAAA;IACxB,0EAA6D,CAAA;IAC7D,gCAAmB,CAAA;IACnB,6CAAgC,CAAA;IAChC,qCAAwB,CAAA;AAC1B,CAAC,EAxCW,SAAS,KAAT,SAAS,QAwCpB;AAiyDD,mCAAmC","sourcesContent":["// ============================================================================\n// AUTO-GENERATED TYPES — DO NOT EDIT DIRECTLY\n// Run `npm run generate` after updating any *.graphql schema file.\n// ============================================================================\n\nexport interface ActiveSubscription {\n autoRenewingAndroid?: (boolean | null);\n basePlanIdAndroid?: (string | null);\n /**\n * The current plan identifier. This is:\n * - On Android: the basePlanId (e.g., \"premium\", \"premium-year\")\n * - On iOS: the productId (e.g., \"com.example.premium_monthly\", \"com.example.premium_yearly\")\n * This provides a unified way to identify which specific plan/tier the user is subscribed to.\n */\n currentPlanId?: (string | null);\n daysUntilExpirationIOS?: (number | null);\n environmentIOS?: (string | null);\n expirationDateIOS?: (number | null);\n isActive: boolean;\n productId: string;\n purchaseToken?: (string | null);\n /** Required for subscription upgrade/downgrade on Android */\n purchaseTokenAndroid?: (string | null);\n /**\n * Renewal information from StoreKit 2 (iOS only). Contains details about subscription renewal status,\n * pending upgrades/downgrades, and auto-renewal preferences.\n */\n renewalInfoIOS?: (RenewalInfoIOS | null);\n transactionDate: number;\n transactionId: string;\n /**\n * @deprecated iOS only - use daysUntilExpirationIOS instead.\n * Whether the subscription will expire soon (within 7 days).\n * Consider using daysUntilExpirationIOS for more precise control.\n */\n willExpireSoon?: (boolean | null);\n}\n\n/**\n * Advanced Commerce metadata from a transaction (iOS 18.4+).\n * Contains item details, tax information, and refund data for purchases\n * made through the Advanced Commerce API using generic SKUs.\n * Only present for transactions that use the Advanced Commerce API.\n */\nexport interface AdvancedCommerceInfoIOS {\n /** Optional description */\n description?: (string | null);\n /** Optional display name */\n displayName?: (string | null);\n /** Estimated tax amount (decimal string) */\n estimatedTax?: (string | null);\n /** The items purchased as part of this transaction */\n items: AdvancedCommerceItemIOS[];\n /** Request reference identifier for tracking */\n requestReferenceId?: (string | null);\n /** Tax code for the transaction */\n taxCode?: (string | null);\n /** Price excluding tax (decimal string) */\n taxExclusivePrice?: (string | null);\n /** Tax rate applied (decimal string) */\n taxRate?: (string | null);\n}\n\n/** Details of an Advanced Commerce item (iOS 18.4+). */\nexport interface AdvancedCommerceItemDetailsIOS {\n /** JSON representation of the item details */\n jsonRepresentation?: (string | null);\n}\n\n/**\n * An item purchased through the Advanced Commerce API (iOS 18.4+).\n * Represents a developer-defined product within a generic SKU transaction.\n */\nexport interface AdvancedCommerceItemIOS {\n /** The item's detail information */\n details?: (AdvancedCommerceItemDetailsIOS | null);\n /** Refunds issued for this item, if any */\n refunds?: (AdvancedCommerceRefundIOS[] | null);\n /** Date access to this item was revoked (milliseconds since epoch) */\n revocationDate?: (number | null);\n}\n\n/** Refund information for an Advanced Commerce item (iOS 18.4+). */\nexport interface AdvancedCommerceRefundIOS {\n /** JSON representation of the refund details */\n jsonRepresentation?: (string | null);\n}\n\n/**\n * Alternative billing mode for Android\n * Controls which billing system is used\n * @deprecated Use enableBillingProgramAndroid with BillingProgramAndroid instead.\n * Use USER_CHOICE_BILLING for user choice billing, EXTERNAL_OFFER for alternative only.\n */\nexport type AlternativeBillingModeAndroid = 'none' | 'user-choice' | 'alternative-only';\n\nexport interface AndroidSubscriptionOfferInput {\n /** Offer token */\n offerToken: string;\n /** Product SKU */\n sku: string;\n}\n\nexport interface AppTransaction {\n appId: number;\n appTransactionId?: (string | null);\n appVersion: string;\n appVersionId: number;\n bundleId: string;\n deviceVerification: string;\n deviceVerificationNonce: string;\n environment: string;\n originalAppVersion: string;\n originalPlatform?: (string | null);\n originalPurchaseDate: number;\n preorderDate?: (number | null);\n signedDate: number;\n}\n\n/**\n * Billing program types for external content links, external offers, and external payments (Android)\n * Available in Google Play Billing Library 8.2.0+, EXTERNAL_PAYMENTS added in 8.3.0\n */\nexport type BillingProgramAndroid = 'unspecified' | 'user-choice-billing' | 'external-content-link' | 'external-offer' | 'external-payments';\n\n/**\n * Result of checking billing program availability (Android)\n * Available in Google Play Billing Library 8.2.0+\n */\nexport interface BillingProgramAvailabilityResultAndroid {\n /** The billing program that was checked */\n billingProgram: BillingProgramAndroid;\n /** Whether the billing program is available for the user */\n isAvailable: boolean;\n}\n\n/**\n * Reporting details for transactions made outside of Google Play Billing (Android)\n * Contains the external transaction token needed for reporting\n * Available in Google Play Billing Library 8.2.0+\n */\nexport interface BillingProgramReportingDetailsAndroid {\n /** The billing program that the reporting details are associated with */\n billingProgram: BillingProgramAndroid;\n /**\n * External transaction token used to report transactions made outside of Google Play Billing.\n * This token must be used when reporting the external transaction to Google.\n */\n externalTransactionToken: string;\n}\n\n/**\n * Extended billing result with sub-response code (Android)\n * Available in Google Play Billing Library 8.0.0+\n */\nexport interface BillingResultAndroid {\n /** Debug message from the billing library */\n debugMessage?: (string | null);\n /** The response code from the billing operation */\n responseCode: number;\n /**\n * Sub-response code for more granular error information (8.0+).\n * Provides additional context when responseCode indicates an error.\n */\n subResponseCode?: (SubResponseCodeAndroid | null);\n}\n\nexport interface DeepLinkOptions {\n /** Android package name to target (required on Android) */\n packageNameAndroid?: (string | null);\n /** Android SKU to open (required on Android) */\n skuAndroid?: (string | null);\n}\n\n/**\n * Launch mode for developer billing option (Android)\n * Determines how the external payment URL is launched\n * Available in Google Play Billing Library 8.3.0+\n */\nexport type DeveloperBillingLaunchModeAndroid = 'unspecified' | 'launch-in-external-browser-or-app' | 'caller-will-launch-link';\n\n/**\n * Parameters for developer billing option in purchase flow (Android)\n * Used with BillingFlowParams to enable external payments flow\n * Available in Google Play Billing Library 8.3.0+\n */\nexport interface DeveloperBillingOptionParamsAndroid {\n /** The billing program (should be EXTERNAL_PAYMENTS for external payments flow) */\n billingProgram: BillingProgramAndroid;\n /** The launch mode for the external payment link */\n launchMode: DeveloperBillingLaunchModeAndroid;\n /** The URI where the external payment will be processed */\n linkUri: string;\n}\n\n/**\n * Details provided when user selects developer billing option (Android)\n * Received via DeveloperProvidedBillingListener callback\n * Available in Google Play Billing Library 8.3.0+\n */\nexport interface DeveloperProvidedBillingDetailsAndroid {\n /**\n * External transaction token used to report transactions made through developer billing.\n * This token must be used when reporting the external transaction to Google Play.\n * Must be reported within 24 hours of the transaction.\n */\n externalTransactionToken: string;\n}\n\n/**\n * Discount amount details for one-time purchase offers (Android)\n * Available in Google Play Billing Library 7.0+\n */\nexport interface DiscountAmountAndroid {\n /** Discount amount in micro-units (1,000,000 = 1 unit of currency) */\n discountAmountMicros: string;\n /** Formatted discount amount with currency sign (e.g., \"$4.99\") */\n formattedDiscountAmount: string;\n}\n\n/**\n * Discount display information for one-time purchase offers (Android)\n * Available in Google Play Billing Library 7.0+\n */\nexport interface DiscountDisplayInfoAndroid {\n /**\n * Absolute discount amount details\n * Only returned for fixed amount discounts\n */\n discountAmount?: (DiscountAmountAndroid | null);\n /**\n * Percentage discount (e.g., 33 for 33% off)\n * Only returned for percentage-based discounts\n */\n percentageDiscount?: (number | null);\n}\n\n/**\n * Discount information returned from the store.\n * @deprecated Use the standardized SubscriptionOffer type instead for cross-platform compatibility.\n * @see https://openiap.dev/docs/types#subscription-offer\n */\nexport interface DiscountIOS {\n identifier: string;\n localizedPrice?: (string | null);\n numberOfPeriods: number;\n paymentMode: PaymentModeIOS;\n price: string;\n priceAmount: number;\n subscriptionPeriod: string;\n type: string;\n}\n\n/**\n * Standardized one-time product discount offer.\n * Provides a unified interface for one-time purchase discounts across platforms.\n *\n * Currently supported on Android (Google Play Billing 7.0+).\n * iOS does not support one-time purchase discounts in the same way.\n *\n * @see https://openiap.dev/docs/features/discount\n */\nexport interface DiscountOffer {\n /** Currency code (ISO 4217, e.g., \"USD\") */\n currency: string;\n /**\n * [Android] Fixed discount amount in micro-units.\n * Only present for fixed amount discounts.\n */\n discountAmountMicrosAndroid?: (string | null);\n /** Formatted display price string (e.g., \"$4.99\") */\n displayPrice: string;\n /** [Android] Formatted discount amount string (e.g., \"$5.00 OFF\"). */\n formattedDiscountAmountAndroid?: (string | null);\n /**\n * [Android] Original full price in micro-units before discount.\n * Divide by 1,000,000 to get the actual price.\n * Use for displaying strikethrough original price.\n */\n fullPriceMicrosAndroid?: (string | null);\n /**\n * Unique identifier for the offer.\n * - iOS: Not applicable (one-time discounts not supported)\n * - Android: offerId from ProductAndroidOneTimePurchaseOfferDetail\n */\n id?: (string | null);\n /**\n * [Android] Limited quantity information.\n * Contains maximumQuantity and remainingQuantity.\n */\n limitedQuantityInfoAndroid?: (LimitedQuantityInfoAndroid | null);\n /** [Android] List of tags associated with this offer. */\n offerTagsAndroid?: (string[] | null);\n /**\n * [Android] Offer token required for purchase.\n * Must be passed to requestPurchase() when purchasing with this offer.\n */\n offerTokenAndroid?: (string | null);\n /**\n * [Android] Percentage discount (e.g., 33 for 33% off).\n * Only present for percentage-based discounts.\n */\n percentageDiscountAndroid?: (number | null);\n /**\n * [Android] Pre-order details if this is a pre-order offer.\n * Available in Google Play Billing Library 8.1.0+\n */\n preorderDetailsAndroid?: (PreorderDetailsAndroid | null);\n /** Numeric price value */\n price: number;\n /**\n * [Android] Purchase option ID for this offer.\n * Used to identify which purchase option the user selected.\n * Available in Google Play Billing Library 7.0+\n */\n purchaseOptionIdAndroid?: (string | null);\n /** [Android] Rental details if this is a rental offer. */\n rentalDetailsAndroid?: (RentalDetailsAndroid | null);\n /** Type of discount offer */\n type: DiscountOfferType;\n /**\n * [Android] Valid time window for the offer.\n * Contains startTimeMillis and endTimeMillis.\n */\n validTimeWindowAndroid?: (ValidTimeWindowAndroid | null);\n}\n\n/**\n * iOS DiscountOffer (output type).\n * @deprecated Use the standardized SubscriptionOffer type instead for cross-platform compatibility.\n * @see https://openiap.dev/docs/types#subscription-offer\n */\nexport interface DiscountOfferIOS {\n /** Discount identifier */\n identifier: string;\n /** Key identifier for validation */\n keyIdentifier: string;\n /** Cryptographic nonce */\n nonce: string;\n /** Signature for validation */\n signature: string;\n /** Timestamp of discount offer */\n timestamp: number;\n}\n\nexport interface DiscountOfferInputIOS {\n /** Discount identifier */\n identifier: string;\n /** Key identifier for validation */\n keyIdentifier: string;\n /** Cryptographic nonce */\n nonce: string;\n /** Signature for validation */\n signature: string;\n /** Timestamp of discount offer */\n timestamp: number;\n}\n\n/**\n * Discount offer type enumeration.\n * Categorizes the type of discount or promotional offer.\n */\nexport type DiscountOfferType = 'introductory' | 'promotional' | 'one-time';\n\nexport interface EntitlementIOS {\n jsonRepresentation: string;\n sku: string;\n transactionId: string;\n}\n\nexport enum ErrorCode {\n ActivityUnavailable = 'activity-unavailable',\n AlreadyOwned = 'already-owned',\n AlreadyPrepared = 'already-prepared',\n BillingResponseJsonParseError = 'billing-response-json-parse-error',\n BillingUnavailable = 'billing-unavailable',\n ConnectionClosed = 'connection-closed',\n DeferredPayment = 'deferred-payment',\n DeveloperError = 'developer-error',\n DuplicatePurchase = 'duplicate-purchase',\n EmptySkuList = 'empty-sku-list',\n FeatureNotSupported = 'feature-not-supported',\n IapNotAvailable = 'iap-not-available',\n InitConnection = 'init-connection',\n Interrupted = 'interrupted',\n ItemNotOwned = 'item-not-owned',\n ItemUnavailable = 'item-unavailable',\n NetworkError = 'network-error',\n NotEnded = 'not-ended',\n NotPrepared = 'not-prepared',\n Pending = 'pending',\n PurchaseError = 'purchase-error',\n PurchaseVerificationFailed = 'purchase-verification-failed',\n PurchaseVerificationFinishFailed = 'purchase-verification-finish-failed',\n PurchaseVerificationFinished = 'purchase-verification-finished',\n QueryProduct = 'query-product',\n ReceiptFailed = 'receipt-failed',\n ReceiptFinished = 'receipt-finished',\n ReceiptFinishedFailed = 'receipt-finished-failed',\n RemoteError = 'remote-error',\n ServiceDisconnected = 'service-disconnected',\n ServiceError = 'service-error',\n ServiceTimeout = 'service-timeout',\n SkuNotFound = 'sku-not-found',\n SkuOfferMismatch = 'sku-offer-mismatch',\n SyncError = 'sync-error',\n TransactionValidationFailed = 'transaction-validation-failed',\n Unknown = 'unknown',\n UserCancelled = 'user-cancelled',\n UserError = 'user-error'\n}\n\n/**\n * Launch mode for external link flow (Android)\n * Determines how the external URL is launched\n * Available in Google Play Billing Library 8.2.0+\n */\nexport type ExternalLinkLaunchModeAndroid = 'unspecified' | 'launch-in-external-browser-or-app' | 'caller-will-launch-link';\n\n/**\n * Link type for external link flow (Android)\n * Specifies the type of external link destination\n * Available in Google Play Billing Library 8.2.0+\n */\nexport type ExternalLinkTypeAndroid = 'unspecified' | 'link-to-digital-content-offer' | 'link-to-app-download';\n\n/**\n * External offer availability result (Android)\n * @deprecated Use BillingProgramAvailabilityResultAndroid with isBillingProgramAvailableAsync instead\n * Available in Google Play Billing Library 6.2.0+, deprecated in 8.2.0\n */\nexport interface ExternalOfferAvailabilityResultAndroid {\n /** Whether external offers are available for the user */\n isAvailable: boolean;\n}\n\n/**\n * External offer reporting details (Android)\n * @deprecated Use BillingProgramReportingDetailsAndroid with createBillingProgramReportingDetailsAsync instead\n * Available in Google Play Billing Library 6.2.0+, deprecated in 8.2.0\n */\nexport interface ExternalOfferReportingDetailsAndroid {\n /** External transaction token for reporting external offer transactions */\n externalTransactionToken: string;\n}\n\n/** Result of showing ExternalPurchaseCustomLink notice (iOS 18.1+). */\nexport interface ExternalPurchaseCustomLinkNoticeResultIOS {\n /** Whether the user chose to continue to external purchase */\n continued: boolean;\n /** Optional error message if the presentation failed */\n error?: (string | null);\n}\n\n/**\n * Notice types for ExternalPurchaseCustomLink (iOS 18.1+).\n * Determines the style of disclosure notice to display.\n * Reference: https://developer.apple.com/documentation/storekit/externalpurchasecustomlink/noticetype\n */\nexport type ExternalPurchaseCustomLinkNoticeTypeIOS = 'browser';\n\n/** Result of requesting an ExternalPurchaseCustomLink token (iOS 18.1+). */\nexport interface ExternalPurchaseCustomLinkTokenResultIOS {\n /** Optional error message if token retrieval failed */\n error?: (string | null);\n /**\n * The external purchase token string.\n * Report this token to Apple's External Purchase Server API.\n */\n token?: (string | null);\n}\n\n/**\n * Token types for ExternalPurchaseCustomLink (iOS 18.1+).\n * Used to request different types of external purchase tokens for reporting to Apple.\n * Reference: https://developer.apple.com/documentation/storekit/externalpurchasecustomlink/token(for:)\n */\nexport type ExternalPurchaseCustomLinkTokenTypeIOS = 'acquisition' | 'services';\n\n/** Result of presenting an external purchase link */\nexport interface ExternalPurchaseLinkResultIOS {\n /** Optional error message if the presentation failed */\n error?: (string | null);\n /** Whether the user completed the external purchase flow */\n success: boolean;\n}\n\n/** User actions on external purchase notice sheet (iOS 17.4+) */\nexport type ExternalPurchaseNoticeAction = 'continue' | 'dismissed';\n\n/**\n * Result of presenting external purchase notice sheet (iOS 17.4+)\n * Returns the token when user continues to external purchase.\n */\nexport interface ExternalPurchaseNoticeResultIOS {\n /** Optional error message if the presentation failed */\n error?: (string | null);\n /**\n * External purchase token returned when user continues (iOS 17.4+).\n * This token should be reported to Apple's External Purchase Server API.\n * Only present when result is Continue.\n */\n externalPurchaseToken?: (string | null);\n /** Notice result indicating user action */\n result: ExternalPurchaseNoticeAction;\n}\n\nexport type FetchProductsResult = ProductOrSubscription[] | Product[] | ProductSubscription[] | null;\n\nexport type IapEvent = 'purchase-updated' | 'purchase-error' | 'promoted-product-ios' | 'user-choice-billing-android' | 'developer-provided-billing-android' | 'subscription-billing-issue';\n\nexport type IapPlatform = 'ios' | 'android';\n\nexport type IapStore = 'unknown' | 'apple' | 'google' | 'horizon';\n\n/** Unified purchase states from IAPKit verification response. */\nexport type IapkitPurchaseState = 'entitled' | 'pending-acknowledgment' | 'pending' | 'canceled' | 'expired' | 'ready-to-consume' | 'consumed' | 'unknown' | 'inauthentic';\n\n/** Connection initialization configuration */\nexport interface InitConnectionConfig {\n /**\n * Alternative billing mode for Android\n * If not specified, defaults to NONE (standard Google Play billing)\n * @deprecated Use enableBillingProgramAndroid instead.\n * Use USER_CHOICE_BILLING for user choice billing, EXTERNAL_OFFER for alternative only.\n */\n alternativeBillingModeAndroid?: (AlternativeBillingModeAndroid | null);\n /**\n * Enable a specific billing program for Android (7.0+)\n * When set, enables the specified billing program for external transactions.\n * - USER_CHOICE_BILLING: User can select between Google Play or alternative (7.0+)\n * - EXTERNAL_CONTENT_LINK: Link to external content (8.2.0+)\n * - EXTERNAL_OFFER: External offers for digital content (8.2.0+)\n * - EXTERNAL_PAYMENTS: Developer provided billing, Japan only (8.3.0+)\n */\n enableBillingProgramAndroid?: (BillingProgramAndroid | null);\n}\n\n/**\n * Installment plan details for subscription offers (Android)\n * Contains information about the installment plan commitment.\n * Available in Google Play Billing Library 7.0+\n */\nexport interface InstallmentPlanDetailsAndroid {\n /**\n * Committed payments count after a user signs up for this subscription plan.\n * For example, for a monthly subscription with commitmentPaymentsCount of 12,\n * users will be charged monthly for 12 months after signup.\n */\n commitmentPaymentsCount: number;\n /**\n * Subsequent committed payments count after the subscription plan renews.\n * For example, for a monthly subscription with subsequentCommitmentPaymentsCount of 12,\n * users will be committed to another 12 monthly payments when the plan renews.\n * Returns 0 if the installment plan has no subsequent commitment (reverts to normal plan).\n */\n subsequentCommitmentPaymentsCount: number;\n}\n\n/**\n * Parameters for launching an external link (Android)\n * Used with launchExternalLink to initiate external offer or app install flows\n * Available in Google Play Billing Library 8.2.0+\n */\nexport interface LaunchExternalLinkParamsAndroid {\n /** The billing program (EXTERNAL_CONTENT_LINK or EXTERNAL_OFFER) */\n billingProgram: BillingProgramAndroid;\n /** The external link launch mode */\n launchMode: ExternalLinkLaunchModeAndroid;\n /** The type of the external link */\n linkType: ExternalLinkTypeAndroid;\n /** The URI where the content will be accessed from */\n linkUri: string;\n}\n\n/**\n * Limited quantity information for one-time purchase offers (Android)\n * Available in Google Play Billing Library 7.0+\n */\nexport interface LimitedQuantityInfoAndroid {\n /** Maximum quantity a user can purchase */\n maximumQuantity: number;\n /** Remaining quantity the user can still purchase */\n remainingQuantity: number;\n}\n\nexport interface Mutation {\n /**\n * Acknowledge a non-consumable purchase. Required within 3 days or Google auto-refunds.\n * See: https://www.openiap.dev/docs/apis/android/acknowledge-purchase-android\n */\n acknowledgePurchaseAndroid: Promise<boolean>;\n /**\n * Present the refund request sheet (iOS 15+). See also Features → Refund.\n * See: https://www.openiap.dev/docs/apis/ios/begin-refund-request-ios\n */\n beginRefundRequestIOS?: Promise<(string | null)>;\n /**\n * Check whether alternative billing is available for the user. Step 1 of the alternative billing flow.\n *\n * Returns true if available, false otherwise.\n * Throws OpenIapError.NotPrepared if billing client not ready.\n * See: https://www.openiap.dev/docs/apis/android/check-alternative-billing-availability-android\n */\n checkAlternativeBillingAvailabilityAndroid: Promise<boolean>;\n /**\n * Clear pending transactions in the queue (sandbox helper).\n * See: https://www.openiap.dev/docs/apis/ios/clear-transaction-ios\n */\n clearTransactionIOS: Promise<boolean>;\n /**\n * Consume a consumable purchase so it can be re-bought.\n * See: https://www.openiap.dev/docs/apis/android/consume-purchase-android\n */\n consumePurchaseAndroid: Promise<boolean>;\n /**\n * Create a reporting token for an alternative billing flow. Step 3 of the alternative billing flow.\n * Must be called AFTER successful payment in your payment system.\n * Token must be reported to Google Play backend within 24 hours.\n *\n * Returns token string, or null if creation failed.\n * Throws OpenIapError.NotPrepared if billing client not ready.\n * See: https://www.openiap.dev/docs/apis/android/create-alternative-billing-token-android\n */\n createAlternativeBillingTokenAndroid?: Promise<(string | null)>;\n /**\n * Create the reporting payload Google requires after a Developer-Provided Billing transaction (Play Billing 8.3.0+).\n * Replaces the deprecated createExternalOfferReportingDetailsAsync API.\n *\n * Returns external transaction token needed for reporting external transactions.\n * Throws OpenIapError.NotPrepared if billing client not ready.\n * See: https://www.openiap.dev/docs/apis/android/create-billing-program-reporting-details-android\n */\n createBillingProgramReportingDetailsAndroid: Promise<BillingProgramReportingDetailsAndroid>;\n /**\n * Open the platform's subscription management UI.\n * See: https://www.openiap.dev/docs/apis/deep-link-to-subscriptions\n */\n deepLinkToSubscriptions: Promise<void>;\n /**\n * Close the store connection and release resources.\n * See: https://www.openiap.dev/docs/apis/end-connection\n */\n endConnection: Promise<boolean>;\n /**\n * Complete a transaction after server-side verification. Required on Android within 3 days.\n * See: https://www.openiap.dev/docs/apis/finish-transaction\n */\n finishTransaction: Promise<void>;\n /**\n * Initialize the store connection. Call before any IAP API.\n * See: https://www.openiap.dev/docs/apis/init-connection\n */\n initConnection: Promise<boolean>;\n /**\n * Check whether a billing program (e.g., External Payments) is available for the current user.\n * Replaces the deprecated isExternalOfferAvailableAsync API.\n *\n * Available in Google Play Billing Library 8.2.0+.\n * Returns availability result with isAvailable flag.\n * Throws OpenIapError.NotPrepared if billing client not ready.\n * See: https://www.openiap.dev/docs/apis/android/is-billing-program-available-android\n */\n isBillingProgramAvailableAndroid: Promise<BillingProgramAvailabilityResultAndroid>;\n /**\n * Launch an external content/offer link from inside the Billing Programs flow (Play Billing 8.2.0+).\n * Replaces the deprecated showExternalOfferInformationDialog API.\n *\n * Shows Play Store dialog and optionally launches external URL.\n * Throws OpenIapError.NotPrepared if billing client not ready.\n * See: https://www.openiap.dev/docs/apis/android/launch-external-link-android\n */\n launchExternalLinkAndroid: Promise<boolean>;\n /**\n * Show the App Store offer code redemption sheet.\n * See: https://www.openiap.dev/docs/apis/ios/present-code-redemption-sheet-ios\n */\n presentCodeRedemptionSheetIOS: Promise<boolean>;\n /**\n * Present an external purchase link, StoreKit External (iOS 16+).\n * See: https://www.openiap.dev/docs/apis/ios/present-external-purchase-link-ios\n */\n presentExternalPurchaseLinkIOS: Promise<ExternalPurchaseLinkResultIOS>;\n /**\n * Present the external purchase notice sheet (iOS 17.4+).\n * Uses ExternalPurchase.presentNoticeSheet() which returns a token when the user continues.\n * Reference: https://developer.apple.com/documentation/storekit/externalpurchase/presentnoticesheet()\n * See: https://www.openiap.dev/docs/apis/ios/present-external-purchase-notice-sheet-ios\n */\n presentExternalPurchaseNoticeSheetIOS: Promise<ExternalPurchaseNoticeResultIOS>;\n /**\n * Initiate a purchase or subscription flow; rely on events for final state.\n * See: https://www.openiap.dev/docs/apis/request-purchase\n */\n requestPurchase?: Promise<(Purchase | Purchase[] | null)>;\n /**\n * Buy the currently promoted product.\n *\n * @deprecated Use promotedProductListenerIOS to receive the productId,\n * then call requestPurchase with that SKU instead. In StoreKit 2,\n * promoted products can be purchased directly via the standard purchase flow.\n * See: https://www.openiap.dev/docs/apis/ios/request-purchase-on-promoted-product-ios\n * @deprecated Use promotedProductListenerIOS + requestPurchase instead\n */\n requestPurchaseOnPromotedProductIOS: Promise<boolean>;\n /**\n * Restore non-consumable and active subscription purchases.\n * See: https://www.openiap.dev/docs/apis/restore-purchases\n */\n restorePurchases: Promise<void>;\n /**\n * Display Google's alternative billing information dialog. Step 2 of the alternative billing flow.\n * Must be called BEFORE processing payment in your payment system.\n *\n * Returns true if user accepted, false if user canceled.\n * Throws OpenIapError.NotPrepared if billing client not ready.\n * See: https://www.openiap.dev/docs/apis/android/show-alternative-billing-dialog-android\n */\n showAlternativeBillingDialogAndroid: Promise<boolean>;\n /**\n * Present the disclosure sheet required before linking out via ExternalPurchaseCustomLink (iOS 18.1+).\n * Call this after a deliberate customer interaction before linking out to external purchases.\n * Reference: https://developer.apple.com/documentation/storekit/externalpurchasecustomlink/shownotice(type:)\n * See: https://www.openiap.dev/docs/apis/ios/show-external-purchase-custom-link-notice-ios\n */\n showExternalPurchaseCustomLinkNoticeIOS: Promise<ExternalPurchaseCustomLinkNoticeResultIOS>;\n /**\n * Present the manage-subscriptions sheet and return changed purchases (iOS 15+).\n * See: https://www.openiap.dev/docs/apis/ios/show-manage-subscriptions-ios\n */\n showManageSubscriptionsIOS: Promise<PurchaseIOS[]>;\n /**\n * Force sync transactions with the App Store (iOS 15+).\n * See: https://www.openiap.dev/docs/apis/ios/sync-ios\n */\n syncIOS: Promise<boolean>;\n /**\n * Deprecated. Validate purchase receipts with the configured providers — use verifyPurchase instead.\n * See: https://www.openiap.dev/docs/features/validation#verify-purchase\n * @deprecated Use verifyPurchase\n */\n validateReceipt: Promise<VerifyPurchaseResult>;\n /**\n * Verify a purchase against your own backend. Returns a platform-specific\n * variant of VerifyPurchaseResult — VerifyPurchaseResultIOS exposes isValid\n * + receipt/JWS metadata, VerifyPurchaseResultAndroid carries Play Store\n * receipt fields (no isValid), and VerifyPurchaseResultHorizon uses success.\n * Inspect the concrete variant before reading fields.\n * See: https://www.openiap.dev/docs/features/validation#verify-purchase\n */\n verifyPurchase: Promise<VerifyPurchaseResult>;\n /**\n * Verify via a managed provider without standing up your own server. The\n * PurchaseVerificationProvider enum currently exposes only IAPKit; platform\n * availability may differ by implementation.\n * See: https://www.openiap.dev/docs/features/validation#verify-purchase-with-provider\n */\n verifyPurchaseWithProvider: Promise<VerifyPurchaseWithProviderResult>;\n}\n\n\n\nexport type MutationAcknowledgePurchaseAndroidArgs = string;\n\nexport type MutationBeginRefundRequestIosArgs = string;\n\nexport type MutationConsumePurchaseAndroidArgs = string;\n\nexport type MutationCreateBillingProgramReportingDetailsAndroidArgs = BillingProgramAndroid;\n\nexport type MutationDeepLinkToSubscriptionsArgs = (DeepLinkOptions | null) | undefined;\n\nexport interface MutationFinishTransactionArgs {\n isConsumable?: (boolean | null);\n purchase: PurchaseInput;\n}\n\n\nexport type MutationInitConnectionArgs = (InitConnectionConfig | null) | undefined;\n\nexport type MutationIsBillingProgramAvailableAndroidArgs = BillingProgramAndroid;\n\nexport type MutationLaunchExternalLinkAndroidArgs = LaunchExternalLinkParamsAndroid;\n\nexport type MutationPresentExternalPurchaseLinkIosArgs = string;\n\nexport type MutationRequestPurchaseArgs =\n | {\n /** Per-platform purchase request props */\n request: RequestPurchasePropsByPlatforms;\n type: 'in-app';\n /** Use alternative billing (Google Play alternative billing, Apple external purchase link) */\n useAlternativeBilling?: boolean | null;\n }\n | {\n /** Per-platform subscription request props */\n request: RequestSubscriptionPropsByPlatforms;\n type: 'subs';\n /** Use alternative billing (Google Play alternative billing, Apple external purchase link) */\n useAlternativeBilling?: boolean | null;\n };\n\n\nexport type MutationShowExternalPurchaseCustomLinkNoticeIosArgs = ExternalPurchaseCustomLinkNoticeTypeIOS;\n\nexport type MutationValidateReceiptArgs = VerifyPurchaseProps;\n\nexport type MutationVerifyPurchaseArgs = VerifyPurchaseProps;\n\nexport type MutationVerifyPurchaseWithProviderArgs = VerifyPurchaseWithProviderProps;\n\n/**\n * Payment mode for subscription offers.\n * Determines how the user pays during the offer period.\n */\nexport type PaymentMode = 'free-trial' | 'pay-as-you-go' | 'pay-up-front' | 'unknown';\n\nexport type PaymentModeIOS = 'empty' | 'free-trial' | 'pay-as-you-go' | 'pay-up-front';\n\n/**\n * Pending purchase update for subscription upgrades/downgrades (Android)\n * When a user initiates a subscription change (upgrade/downgrade), the new purchase\n * may be pending until the current billing period ends. This type contains the\n * details of the pending change.\n * Available in Google Play Billing Library 5.0+\n */\nexport interface PendingPurchaseUpdateAndroid {\n /**\n * Product IDs for the pending purchase update.\n * These are the new products the user is switching to.\n */\n products: string[];\n /**\n * Purchase token for the pending transaction.\n * Use this token to track or manage the pending purchase update.\n */\n purchaseToken: string;\n}\n\n/**\n * Pre-order details for one-time purchase products (Android)\n * Available in Google Play Billing Library 8.1.0+\n */\nexport interface PreorderDetailsAndroid {\n /**\n * Pre-order presale end time in milliseconds since epoch.\n * This is when the presale period ends and the product will be released.\n */\n preorderPresaleEndTimeMillis: string;\n /**\n * Pre-order release time in milliseconds since epoch.\n * This is when the product will be available to users who pre-ordered.\n */\n preorderReleaseTimeMillis: string;\n}\n\nexport interface PricingPhaseAndroid {\n billingCycleCount: number;\n billingPeriod: string;\n formattedPrice: string;\n priceAmountMicros: string;\n priceCurrencyCode: string;\n recurrenceMode: number;\n}\n\nexport interface PricingPhasesAndroid {\n pricingPhaseList: PricingPhaseAndroid[];\n}\n\nexport type Product = ProductAndroid | ProductIOS;\n\nexport interface ProductAndroid extends ProductCommon {\n currency: string;\n debugDescription?: (string | null);\n description: string;\n /**\n * Standardized discount offers for one-time products.\n * Cross-platform type with Android-specific fields using suffix.\n * @see https://openiap.dev/docs/types#discount-offer\n */\n discountOffers?: (DiscountOffer[] | null);\n displayName?: (string | null);\n displayPrice: string;\n id: string;\n nameAndroid: string;\n /**\n * One-time purchase offer details including discounts (Android)\n * Returns all eligible offers. Available in Google Play Billing Library 7.0+\n * @deprecated Use discountOffers instead for cross-platform compatibility.\n * @deprecated Use discountOffers instead\n */\n oneTimePurchaseOfferDetailsAndroid?: (ProductAndroidOneTimePurchaseOfferDetail[] | null);\n platform: 'android';\n price?: (number | null);\n /**\n * Product-level status code indicating fetch result (Android 8.0+)\n * OK = product fetched successfully\n * NOT_FOUND = SKU doesn't exist\n * NO_OFFERS_AVAILABLE = user not eligible for any offers\n * Available in Google Play Billing Library 8.0.0+\n */\n productStatusAndroid?: (ProductStatusAndroid | null);\n /**\n * @deprecated Use subscriptionOffers instead for cross-platform compatibility.\n * @deprecated Use subscriptionOffers instead\n */\n subscriptionOfferDetailsAndroid?: (ProductSubscriptionAndroidOfferDetails[] | null);\n /**\n * Standardized subscription offers.\n * Cross-platform type with Android-specific fields using suffix.\n * @see https://openiap.dev/docs/types#subscription-offer\n */\n subscriptionOffers?: (SubscriptionOffer[] | null);\n title: string;\n type: 'in-app';\n}\n\n/**\n * One-time purchase offer details (Android).\n * Available in Google Play Billing Library 7.0+\n * @deprecated Use the standardized DiscountOffer type instead for cross-platform compatibility.\n * @see https://openiap.dev/docs/types#discount-offer\n */\nexport interface ProductAndroidOneTimePurchaseOfferDetail {\n /**\n * Discount display information\n * Only available for discounted offers\n */\n discountDisplayInfo?: (DiscountDisplayInfoAndroid | null);\n formattedPrice: string;\n /**\n * Full (non-discounted) price in micro-units\n * Only available for discounted offers\n */\n fullPriceMicros?: (string | null);\n /** Limited quantity information */\n limitedQuantityInfo?: (LimitedQuantityInfoAndroid | null);\n /** Offer ID */\n offerId?: (string | null);\n /** List of offer tags */\n offerTags: string[];\n /** Offer token for use in BillingFlowParams when purchasing */\n offerToken: string;\n /**\n * Pre-order details for products available for pre-order\n * Available in Google Play Billing Library 8.1.0+\n */\n preorderDetailsAndroid?: (PreorderDetailsAndroid | null);\n priceAmountMicros: string;\n priceCurrencyCode: string;\n /**\n * Purchase option ID for this offer (Android)\n * Used to identify which purchase option the user selected.\n * Available in Google Play Billing Library 7.0+\n */\n purchaseOptionId?: (string | null);\n /** Rental details for rental offers */\n rentalDetailsAndroid?: (RentalDetailsAndroid | null);\n /** Valid time window for the offer */\n validTimeWindow?: (ValidTimeWindowAndroid | null);\n}\n\nexport interface ProductCommon {\n currency: string;\n debugDescription?: (string | null);\n description: string;\n displayName?: (string | null);\n displayPrice: string;\n id: string;\n platform: 'android' | 'ios';\n price?: (number | null);\n title: string;\n type: 'in-app' | 'subs';\n} \n\nexport interface ProductIOS extends ProductCommon {\n currency: string;\n debugDescription?: (string | null);\n description: string;\n displayName?: (string | null);\n displayNameIOS: string;\n displayPrice: string;\n id: string;\n isFamilyShareableIOS: boolean;\n jsonRepresentationIOS: string;\n platform: 'ios';\n price?: (number | null);\n /**\n * @deprecated Use subscriptionOffers instead for cross-platform compatibility.\n * @deprecated Use subscriptionOffers instead\n */\n subscriptionInfoIOS?: (SubscriptionInfoIOS | null);\n /**\n * Standardized subscription offers.\n * Cross-platform type with iOS-specific fields using suffix.\n * Note: iOS does not support one-time product discounts.\n * @see https://openiap.dev/docs/types#subscription-offer\n */\n subscriptionOffers?: (SubscriptionOffer[] | null);\n title: string;\n type: 'in-app';\n typeIOS: ProductTypeIOS;\n}\n\nexport type ProductOrSubscription = Product | ProductSubscription;\n\nexport type ProductQueryType = 'in-app' | 'subs' | 'all';\n\nexport interface ProductRequest {\n skus: string[];\n type?: (ProductQueryType | null);\n}\n\n/**\n * Status code for individual products returned from queryProductDetailsAsync (Android)\n * Prior to 8.0, products that couldn't be fetched were simply not returned.\n * With 8.0+, these products are returned with a status code explaining why.\n * Available in Google Play Billing Library 8.0.0+\n */\nexport type ProductStatusAndroid = 'ok' | 'not-found' | 'no-offers-available' | 'unknown';\n\nexport type ProductSubscription = ProductSubscriptionAndroid | ProductSubscriptionIOS;\n\nexport interface ProductSubscriptionAndroid extends ProductCommon {\n currency: string;\n debugDescription?: (string | null);\n description: string;\n /**\n * Standardized discount offers for one-time products.\n * Cross-platform type with Android-specific fields using suffix.\n * @see https://openiap.dev/docs/types#discount-offer\n */\n discountOffers?: (DiscountOffer[] | null);\n displayName?: (string | null);\n displayPrice: string;\n id: string;\n nameAndroid: string;\n /**\n * One-time purchase offer details including discounts (Android)\n * Returns all eligible offers. Available in Google Play Billing Library 7.0+\n * @deprecated Use discountOffers instead for cross-platform compatibility.\n * @deprecated Use discountOffers instead\n */\n oneTimePurchaseOfferDetailsAndroid?: (ProductAndroidOneTimePurchaseOfferDetail[] | null);\n platform: 'android';\n price?: (number | null);\n /**\n * Product-level status code indicating fetch result (Android 8.0+)\n * OK = product fetched successfully\n * NOT_FOUND = SKU doesn't exist\n * NO_OFFERS_AVAILABLE = user not eligible for any offers\n * Available in Google Play Billing Library 8.0.0+\n */\n productStatusAndroid?: (ProductStatusAndroid | null);\n /**\n * @deprecated Use subscriptionOffers instead for cross-platform compatibility.\n * @deprecated Use subscriptionOffers instead\n */\n subscriptionOfferDetailsAndroid: ProductSubscriptionAndroidOfferDetails[];\n /**\n * Standardized subscription offers.\n * Cross-platform type with Android-specific fields using suffix.\n * @see https://openiap.dev/docs/types#subscription-offer\n */\n subscriptionOffers: SubscriptionOffer[];\n title: string;\n type: 'subs';\n}\n\n/**\n * Subscription offer details (Android).\n * @deprecated Use the standardized SubscriptionOffer type instead for cross-platform compatibility.\n * @see https://openiap.dev/docs/types#subscription-offer\n */\nexport interface ProductSubscriptionAndroidOfferDetails {\n basePlanId: string;\n /**\n * Installment plan details for this subscription offer.\n * Only set for installment subscription plans; null for non-installment plans.\n * Available in Google Play Billing Library 7.0+\n */\n installmentPlanDetails?: (InstallmentPlanDetailsAndroid | null);\n offerId?: (string | null);\n offerTags: string[];\n offerToken: string;\n pricingPhases: PricingPhasesAndroid;\n}\n\nexport interface ProductSubscriptionIOS extends ProductCommon {\n currency: string;\n debugDescription?: (string | null);\n description: string;\n /**\n * @deprecated Use subscriptionOffers instead for cross-platform compatibility.\n * @deprecated Use subscriptionOffers instead\n */\n discountsIOS?: (DiscountIOS[] | null);\n displayName?: (string | null);\n displayNameIOS: string;\n displayPrice: string;\n id: string;\n introductoryPriceAsAmountIOS?: (string | null);\n introductoryPriceIOS?: (string | null);\n introductoryPriceNumberOfPeriodsIOS?: (string | null);\n introductoryPricePaymentModeIOS: PaymentModeIOS;\n introductoryPriceSubscriptionPeriodIOS?: (SubscriptionPeriodIOS | null);\n isFamilyShareableIOS: boolean;\n jsonRepresentationIOS: string;\n platform: 'ios';\n price?: (number | null);\n /**\n * @deprecated Use subscriptionOffers instead for cross-platform compatibility.\n * @deprecated Use subscriptionOffers instead\n */\n subscriptionInfoIOS?: (SubscriptionInfoIOS | null);\n /**\n * Standardized subscription offers.\n * Cross-platform type with iOS-specific fields using suffix.\n * @see https://openiap.dev/docs/types#subscription-offer\n */\n subscriptionOffers?: (SubscriptionOffer[] | null);\n subscriptionPeriodNumberIOS?: (string | null);\n subscriptionPeriodUnitIOS?: (SubscriptionPeriodIOS | null);\n title: string;\n type: 'subs';\n typeIOS: ProductTypeIOS;\n}\n\nexport type ProductType = 'in-app' | 'subs';\n\nexport type ProductTypeIOS = 'consumable' | 'non-consumable' | 'auto-renewable-subscription' | 'non-renewing-subscription';\n\n/**\n * JWS promotional offer input for iOS 15+ (StoreKit 2, WWDC 2025).\n * New signature format using compact JWS string for promotional offers.\n * This provides a simpler alternative to the legacy signature-based promotional offers.\n * Back-deployed to iOS 15.\n */\nexport interface PromotionalOfferJwsInputIOS {\n /**\n * Compact JWS string signed by your server.\n * The JWS should contain the promotional offer signature data.\n * Format: header.payload.signature (base64url encoded)\n */\n jws: string;\n /** The promotional offer identifier from App Store Connect */\n offerId: string;\n}\n\nexport type Purchase = PurchaseAndroid | PurchaseIOS;\n\nexport interface PurchaseAndroid extends PurchaseCommon {\n autoRenewingAndroid?: (boolean | null);\n currentPlanId?: (string | null);\n dataAndroid?: (string | null);\n developerPayloadAndroid?: (string | null);\n id: string;\n ids?: (string[] | null);\n isAcknowledgedAndroid?: (boolean | null);\n isAutoRenewing: boolean;\n /**\n * Whether the subscription is suspended (Android)\n * A suspended subscription means the user's payment method failed and they need to fix it.\n * Users should be directed to the subscription center to resolve the issue.\n * Do NOT grant entitlements for suspended subscriptions.\n * Available in Google Play Billing Library 8.1.0+\n */\n isSuspendedAndroid?: (boolean | null);\n obfuscatedAccountIdAndroid?: (string | null);\n obfuscatedProfileIdAndroid?: (string | null);\n packageNameAndroid?: (string | null);\n /**\n * Pending purchase update for uncommitted subscription upgrade/downgrade (Android)\n * Contains the new products and purchase token for the pending transaction.\n * Returns null if no pending update exists.\n * Available in Google Play Billing Library 5.0+\n */\n pendingPurchaseUpdateAndroid?: (PendingPurchaseUpdateAndroid | null);\n /** @deprecated Use store instead */\n platform: IapPlatform;\n productId: string;\n purchaseState: PurchaseState;\n purchaseToken?: (string | null);\n quantity: number;\n signatureAndroid?: (string | null);\n /** Store where purchase was made */\n store: IapStore;\n transactionDate: number;\n transactionId?: (string | null);\n}\n\nexport interface PurchaseCommon {\n /**\n * The current plan identifier. This is:\n * - On Android: the basePlanId (e.g., \"premium\", \"premium-year\")\n * - On iOS: the productId (e.g., \"com.example.premium_monthly\", \"com.example.premium_yearly\")\n * This provides a unified way to identify which specific plan/tier the user is subscribed to.\n */\n currentPlanId?: (string | null);\n id: string;\n ids?: (string[] | null);\n isAutoRenewing: boolean;\n /** @deprecated Use store instead */\n platform: IapPlatform;\n productId: string;\n purchaseState: PurchaseState;\n /** Unified purchase token (iOS JWS, Android purchaseToken) */\n purchaseToken?: (string | null);\n quantity: number;\n /** Store where purchase was made */\n store: IapStore;\n transactionDate: number;\n}\n\nexport interface PurchaseError {\n code: ErrorCode;\n debugMessage?: (string | null);\n isEmptyProductList?: (boolean | null);\n message: string;\n productId?: (string | null);\n productIds?: (string[] | null);\n productType?: (string | null);\n responseCode?: (number | null);\n}\n\nexport interface PurchaseIOS extends PurchaseCommon {\n /**\n * Advanced Commerce API metadata (iOS 18.4+).\n * Present only for transactions that use the Advanced Commerce API.\n * Contains item details, tax information, and refund data for generic SKU purchases.\n */\n advancedCommerceInfoIOS?: (AdvancedCommerceInfoIOS | null);\n appAccountToken?: (string | null);\n appBundleIdIOS?: (string | null);\n countryCodeIOS?: (string | null);\n currencyCodeIOS?: (string | null);\n currencySymbolIOS?: (string | null);\n currentPlanId?: (string | null);\n environmentIOS?: (string | null);\n expirationDateIOS?: (number | null);\n id: string;\n ids?: (string[] | null);\n isAutoRenewing: boolean;\n isUpgradedIOS?: (boolean | null);\n offerIOS?: (PurchaseOfferIOS | null);\n originalTransactionDateIOS?: (number | null);\n originalTransactionIdentifierIOS?: (string | null);\n ownershipTypeIOS?: (string | null);\n /** @deprecated Use store instead */\n platform: IapPlatform;\n productId: string;\n purchaseState: PurchaseState;\n purchaseToken?: (string | null);\n quantity: number;\n quantityIOS?: (number | null);\n reasonIOS?: (string | null);\n reasonStringRepresentationIOS?: (string | null);\n renewalInfoIOS?: (RenewalInfoIOS | null);\n revocationDateIOS?: (number | null);\n revocationReasonIOS?: (string | null);\n /** Store where purchase was made */\n store: IapStore;\n storefrontCountryCodeIOS?: (string | null);\n subscriptionGroupIdIOS?: (string | null);\n transactionDate: number;\n transactionId: string;\n transactionReasonIOS?: (string | null);\n webOrderLineItemIdIOS?: (string | null);\n}\n\nexport type PurchaseInput = Purchase;\n\nexport interface PurchaseOfferIOS {\n id: string;\n paymentMode: string;\n type: string;\n}\n\nexport interface PurchaseOptions {\n /** Also emit results through the iOS event listeners */\n alsoPublishToEventListenerIOS?: (boolean | null);\n /**\n * Include suspended subscriptions in the result (Android 8.1+).\n * Suspended subscriptions have isSuspendedAndroid=true and should NOT be granted entitlements.\n * Users should be directed to the subscription center to resolve payment issues.\n * Default: false (only active subscriptions are returned)\n */\n includeSuspendedAndroid?: (boolean | null);\n /** Limit to currently active items on iOS */\n onlyIncludeActiveItemsIOS?: (boolean | null);\n}\n\nexport type PurchaseState = 'pending' | 'purchased' | 'unknown';\n\nexport type PurchaseVerificationProvider = 'iapkit';\n\nexport interface Query {\n /**\n * Check eligibility for the external purchase notice sheet (iOS 17.4+).\n * Uses ExternalPurchase.canPresent.\n * See: https://www.openiap.dev/docs/apis/ios/can-present-external-purchase-notice-ios\n */\n canPresentExternalPurchaseNoticeIOS: Promise<boolean>;\n /**\n * Get the user's current entitlement for a product, using StoreKit 2 (iOS 15+).\n * See: https://www.openiap.dev/docs/apis/ios/current-entitlement-ios\n */\n currentEntitlementIOS?: Promise<(PurchaseIOS | null)>;\n /**\n * Fetch products or subscriptions from the store.\n * See: https://www.openiap.dev/docs/apis/fetch-products\n */\n fetchProducts: Promise<(ProductOrSubscription[] | Product[] | ProductSubscription[] | null)>;\n /**\n * Get details of all currently active subscriptions (filters by subscriptionIds when provided).\n * See: https://www.openiap.dev/docs/apis/get-active-subscriptions\n */\n getActiveSubscriptions: Promise<ActiveSubscription[]>;\n /**\n * List every StoreKit transaction (finished + unfinished) for the current user.\n * Requires the SK2ConsumableTransactionHistory Info.plist key in the host app\n * for finished consumables to be included (iOS 18+).\n * Unlike getAvailablePurchases, always returns the iOS-specific PurchaseIOS shape.\n * See: https://www.openiap.dev/docs/apis/ios/get-all-transactions-ios\n */\n getAllTransactionsIOS: Promise<PurchaseIOS[]>;\n /**\n * Fetch the app transaction (iOS 16+).\n * See: https://www.openiap.dev/docs/apis/ios/get-app-transaction-ios\n */\n getAppTransactionIOS?: Promise<(AppTransaction | null)>;\n /**\n * List active purchases for the current user.\n * See: https://www.openiap.dev/docs/apis/get-available-purchases\n */\n getAvailablePurchases: Promise<Purchase[]>;\n /**\n * Fetch a token for Apple's External Purchase Server reporting API (iOS 18.1+).\n * Use this token to report transactions made through ExternalPurchaseCustomLink.\n * Reference: https://developer.apple.com/documentation/storekit/externalpurchasecustomlink/token(for:)\n * See: https://www.openiap.dev/docs/apis/ios/get-external-purchase-custom-link-token-ios\n */\n getExternalPurchaseCustomLinkTokenIOS: Promise<ExternalPurchaseCustomLinkTokenResultIOS>;\n /**\n * List unfinished StoreKit transactions in the queue.\n * See: https://www.openiap.dev/docs/apis/ios/get-pending-transactions-ios\n */\n getPendingTransactionsIOS: Promise<PurchaseIOS[]>;\n /**\n * Read the App Store-promoted product, if any (iOS 11+).\n * See: https://www.openiap.dev/docs/apis/ios/get-promoted-product-ios\n */\n getPromotedProductIOS?: Promise<(ProductIOS | null)>;\n /**\n * Get base64-encoded receipt data (legacy validation).\n * See: https://www.openiap.dev/docs/apis/ios/get-receipt-data-ios\n */\n getReceiptDataIOS?: Promise<(string | null)>;\n /**\n * Return the user's storefront country code.\n * See: https://www.openiap.dev/docs/apis/get-storefront\n */\n getStorefront: Promise<string>;\n /**\n * Deprecated. Get the current App Store storefront country code — use cross-platform getStorefront instead.\n * See: https://www.openiap.dev/docs/apis/ios/get-storefront-ios\n * @deprecated Use getStorefront\n */\n getStorefrontIOS: Promise<string>;\n /**\n * Return the JWS string for a transaction (StoreKit 2).\n * See: https://www.openiap.dev/docs/apis/ios/get-transaction-jws-ios\n */\n getTransactionJwsIOS?: Promise<(string | null)>;\n /**\n * Check whether the user has any active subscription.\n * See: https://www.openiap.dev/docs/apis/has-active-subscriptions\n */\n hasActiveSubscriptions: Promise<boolean>;\n /**\n * Check eligibility for the custom-link variant of external purchase (iOS 18.1+).\n * Returns true if the app can use custom external purchase links.\n * Reference: https://developer.apple.com/documentation/storekit/externalpurchasecustomlink/iseligible\n * See: https://www.openiap.dev/docs/apis/ios/is-eligible-for-external-purchase-custom-link-ios\n */\n isEligibleForExternalPurchaseCustomLinkIOS: Promise<boolean>;\n /**\n * Check intro-offer eligibility for a subscription group.\n * See: https://www.openiap.dev/docs/apis/ios/is-eligible-for-intro-offer-ios\n */\n isEligibleForIntroOfferIOS: Promise<boolean>;\n /**\n * Check whether a transaction's JWS verification passed (StoreKit 2).\n * See: https://www.openiap.dev/docs/apis/ios/is-transaction-verified-ios\n */\n isTransactionVerifiedIOS: Promise<boolean>;\n /**\n * Get the latest verified transaction for a product, using StoreKit 2.\n * See: https://www.openiap.dev/docs/apis/ios/latest-transaction-ios\n */\n latestTransactionIOS?: Promise<(PurchaseIOS | null)>;\n /**\n * Get subscription status objects from StoreKit 2 (iOS 15+).\n * See: https://www.openiap.dev/docs/apis/ios/subscription-status-ios\n */\n subscriptionStatusIOS: Promise<SubscriptionStatusIOS[]>;\n /**\n * Deprecated. Legacy App Store receipt validation — use verifyPurchase instead.\n * See: https://www.openiap.dev/docs/apis/ios/validate-receipt-ios\n * @deprecated Use verifyPurchase\n */\n validateReceiptIOS: Promise<VerifyPurchaseResultIOS>;\n}\n\n\n\nexport type QueryCurrentEntitlementIosArgs = string;\n\nexport type QueryFetchProductsArgs = ProductRequest;\n\nexport type QueryGetActiveSubscriptionsArgs = (string[] | null) | undefined;\n\nexport type QueryGetAvailablePurchasesArgs = (PurchaseOptions | null) | undefined;\n\nexport type QueryGetExternalPurchaseCustomLinkTokenIosArgs = ExternalPurchaseCustomLinkTokenTypeIOS;\n\nexport type QueryGetTransactionJwsIosArgs = string;\n\nexport type QueryHasActiveSubscriptionsArgs = (string[] | null) | undefined;\n\nexport type QueryIsEligibleForIntroOfferIosArgs = string;\n\nexport type QueryIsTransactionVerifiedIosArgs = string;\n\nexport type QueryLatestTransactionIosArgs = string;\n\nexport type QuerySubscriptionStatusIosArgs = string;\n\nexport type QueryValidateReceiptIosArgs = VerifyPurchaseProps;\n\nexport interface RefundResultIOS {\n message?: (string | null);\n status: string;\n}\n\n/**\n * Subscription renewal information from Product.SubscriptionInfo.RenewalInfo\n * https://developer.apple.com/documentation/storekit/product/subscriptioninfo/renewalinfo\n */\nexport interface RenewalInfoIOS {\n autoRenewPreference?: (string | null);\n /**\n * When subscription expires due to cancellation/billing issue\n * Possible values: \"VOLUNTARY\", \"BILLING_ERROR\", \"DID_NOT_AGREE_TO_PRICE_INCREASE\", \"PRODUCT_NOT_AVAILABLE\", \"UNKNOWN\"\n */\n expirationReason?: (string | null);\n /**\n * Grace period expiration date (milliseconds since epoch)\n * When set, subscription is in grace period (billing issue but still has access)\n */\n gracePeriodExpirationDate?: (number | null);\n /**\n * True if subscription failed to renew due to billing issue and is retrying\n * Note: Not directly available in RenewalInfo, available in Status\n */\n isInBillingRetry?: (boolean | null);\n jsonRepresentation?: (string | null);\n /**\n * Product ID that will be used on next renewal (when user upgrades/downgrades)\n * If set and different from current productId, subscription will change on expiration\n */\n pendingUpgradeProductId?: (string | null);\n /**\n * User's response to subscription price increase\n * Possible values: \"AGREED\", \"PENDING\", null (no price increase)\n */\n priceIncreaseStatus?: (string | null);\n /**\n * Expected renewal date (milliseconds since epoch)\n * For active subscriptions, when the next renewal/charge will occur\n */\n renewalDate?: (number | null);\n /** Offer ID applied to next renewal (promotional offer, subscription offer code, etc.) */\n renewalOfferId?: (string | null);\n /**\n * Type of offer applied to next renewal\n * Possible values: \"PROMOTIONAL\", \"SUBSCRIPTION_OFFER_CODE\", \"WIN_BACK\", etc.\n */\n renewalOfferType?: (string | null);\n willAutoRenew: boolean;\n}\n\n/**\n * Rental details for one-time purchase products that can be rented (Android)\n * Available in Google Play Billing Library 7.0+\n */\nexport interface RentalDetailsAndroid {\n /**\n * Rental expiration period in ISO 8601 format\n * Time after rental period ends when user can still extend\n */\n rentalExpirationPeriod?: (string | null);\n /** Rental period in ISO 8601 format (e.g., P7D for 7 days) */\n rentalPeriod: string;\n}\n\nexport interface RequestPurchaseAndroidProps {\n /**\n * Developer billing option parameters for external payments flow (8.3.0+).\n * When provided, the purchase flow will show a side-by-side choice between\n * Google Play Billing and the developer's external payment option.\n */\n developerBillingOption?: (DeveloperBillingOptionParamsAndroid | null);\n /**\n * Personalized offer flag.\n * When true, indicates the price was customized for this user.\n */\n isOfferPersonalized?: (boolean | null);\n /** Obfuscated account ID */\n obfuscatedAccountId?: (string | null);\n /** Obfuscated profile ID */\n obfuscatedProfileId?: (string | null);\n /**\n * Offer token for one-time purchase discounts (7.0+).\n * Pass the offerToken from oneTimePurchaseOfferDetailsAndroid or discountOffers\n * to apply a discount offer to the purchase.\n */\n offerToken?: (string | null);\n /** List of product SKUs */\n skus: string[];\n}\n\nexport interface RequestPurchaseIosProps {\n /**\n * Advanced commerce data token (iOS 15+).\n * Used with StoreKit 2's Product.PurchaseOption.custom API for passing\n * campaign tokens, affiliate IDs, or other attribution data.\n * The data is formatted as JSON: {\"signatureInfo\": {\"token\": \"<value>\"}}\n */\n advancedCommerceData?: (string | null);\n /** Auto-finish transaction (dangerous) */\n andDangerouslyFinishTransactionAutomatically?: (boolean | null);\n /** App account token for user tracking */\n appAccountToken?: (string | null);\n /** Purchase quantity */\n quantity?: (number | null);\n /** Product SKU */\n sku: string;\n /**\n * Promotional offer to apply (subscriptions only, ignored for one-time purchases).\n * iOS only supports promotional offers for auto-renewable subscriptions.\n */\n withOffer?: (DiscountOfferInputIOS | null);\n}\n\nexport type RequestPurchaseProps =\n | {\n /** Per-platform purchase request props */\n request: RequestPurchasePropsByPlatforms;\n type: 'in-app';\n /** Use alternative billing (Google Play alternative billing, Apple external purchase link) */\n useAlternativeBilling?: boolean | null;\n }\n | {\n /** Per-platform subscription request props */\n request: RequestSubscriptionPropsByPlatforms;\n type: 'subs';\n /** Use alternative billing (Google Play alternative billing, Apple external purchase link) */\n useAlternativeBilling?: boolean | null;\n };\n\n/**\n * Platform-specific purchase request parameters.\n *\n * Note: \"Platforms\" refers to the SDK/OS level (apple, google), not the store.\n * - apple: Always targets App Store\n * - google: Targets Play Store by default, or Horizon when built with horizon flavor\n * (determined at build time, not runtime)\n */\nexport interface RequestPurchasePropsByPlatforms {\n /** @deprecated Use google instead */\n android?: (RequestPurchaseAndroidProps | null);\n /** Apple-specific purchase parameters */\n apple?: (RequestPurchaseIosProps | null);\n /** Google-specific purchase parameters */\n google?: (RequestPurchaseAndroidProps | null);\n /** @deprecated Use apple instead */\n ios?: (RequestPurchaseIosProps | null);\n}\n\nexport type RequestPurchaseResult = Purchase | Purchase[] | null;\n\nexport interface RequestSubscriptionAndroidProps {\n /**\n * Developer billing option parameters for external payments flow (8.3.0+).\n * When provided, the purchase flow will show a side-by-side choice between\n * Google Play Billing and the developer's external payment option.\n */\n developerBillingOption?: (DeveloperBillingOptionParamsAndroid | null);\n /**\n * Personalized offer flag.\n * When true, indicates the price was customized for this user.\n */\n isOfferPersonalized?: (boolean | null);\n /** Obfuscated account ID */\n obfuscatedAccountId?: (string | null);\n /** Obfuscated profile ID */\n obfuscatedProfileId?: (string | null);\n /** Purchase token for upgrades/downgrades */\n purchaseToken?: (string | null);\n /**\n * Replacement mode for subscription changes\n * @deprecated Use subscriptionProductReplacementParams instead for item-level replacement (8.1.0+)\n */\n replacementMode?: (number | null);\n /** List of subscription SKUs */\n skus: string[];\n /** Subscription offers */\n subscriptionOffers?: (AndroidSubscriptionOfferInput[] | null);\n /**\n * Product-level replacement parameters (8.1.0+)\n * Use this instead of replacementMode for item-level replacement\n */\n subscriptionProductReplacementParams?: (SubscriptionProductReplacementParamsAndroid | null);\n}\n\nexport interface RequestSubscriptionIosProps {\n /**\n * Advanced commerce data token (iOS 15+).\n * Used with StoreKit 2's Product.PurchaseOption.custom API for passing\n * campaign tokens, affiliate IDs, or other attribution data.\n * The data is formatted as JSON: {\"signatureInfo\": {\"token\": \"<value>\"}}\n */\n advancedCommerceData?: (string | null);\n andDangerouslyFinishTransactionAutomatically?: (boolean | null);\n appAccountToken?: (string | null);\n /**\n * Override introductory offer eligibility (iOS 15+, WWDC 2025).\n * Set to true to indicate the user is eligible for introductory offer,\n * or false to indicate they are not. When nil, the system determines eligibility.\n * Back-deployed to iOS 15.\n */\n introductoryOfferEligibility?: (boolean | null);\n /**\n * JWS promotional offer (iOS 15+, WWDC 2025).\n * New signature format using compact JWS string for promotional offers.\n * Back-deployed to iOS 15.\n */\n promotionalOfferJWS?: (PromotionalOfferJwsInputIOS | null);\n quantity?: (number | null);\n sku: string;\n /**\n * Win-back offer to apply (iOS 18+)\n * Used to re-engage churned subscribers with a discount or free trial.\n * The offer is available when the customer is eligible and can be discovered\n * via StoreKit Message (automatic) or subscription offer APIs.\n */\n winBackOffer?: (WinBackOfferInputIOS | null);\n /**\n * Promotional offer to apply for subscription purchases.\n * Requires server-signed offer with nonce, timestamp, keyId, and signature.\n */\n withOffer?: (DiscountOfferInputIOS | null);\n}\n\n/**\n * Platform-specific subscription request parameters.\n *\n * Note: \"Platforms\" refers to the SDK/OS level (apple, google), not the store.\n * - apple: Always targets App Store\n * - google: Targets Play Store by default, or Horizon when built with horizon flavor\n * (determined at build time, not runtime)\n */\nexport interface RequestSubscriptionPropsByPlatforms {\n /** @deprecated Use google instead */\n android?: (RequestSubscriptionAndroidProps | null);\n /** Apple-specific subscription parameters */\n apple?: (RequestSubscriptionIosProps | null);\n /** Google-specific subscription parameters */\n google?: (RequestSubscriptionAndroidProps | null);\n /** @deprecated Use apple instead */\n ios?: (RequestSubscriptionIosProps | null);\n}\n\nexport interface RequestVerifyPurchaseWithIapkitAppleProps {\n /** The JWS token returned with the purchase response. */\n jws: string;\n}\n\nexport interface RequestVerifyPurchaseWithIapkitGoogleProps {\n /** The token provided to the user's device when the product or subscription was purchased. */\n purchaseToken: string;\n}\n\n/**\n * Platform-specific verification parameters for IAPKit.\n *\n * - apple: Verifies via App Store (JWS token)\n * - google: Verifies via Play Store (purchase token)\n */\nexport interface RequestVerifyPurchaseWithIapkitProps {\n /** API key used for the Authorization header (Bearer {apiKey}). */\n apiKey?: (string | null);\n /** Apple App Store verification parameters. */\n apple?: (RequestVerifyPurchaseWithIapkitAppleProps | null);\n /** Google Play Store verification parameters. */\n google?: (RequestVerifyPurchaseWithIapkitGoogleProps | null);\n}\n\nexport interface RequestVerifyPurchaseWithIapkitResult {\n /** Whether the purchase is valid (not falsified). */\n isValid: boolean;\n /** The current state of the purchase. */\n state: IapkitPurchaseState;\n store: IapStore;\n}\n\n/**\n * Sub-response codes for more granular purchase error information (Android)\n * Available in Google Play Billing Library 8.0.0+\n */\nexport type SubResponseCodeAndroid = 'no-applicable-sub-response-code' | 'payment-declined-due-to-insufficient-funds' | 'user-ineligible';\n\nexport interface Subscription {\n /**\n * Fires when a user selects developer billing in the External Payments flow (Android only)\n * Triggered when the user chooses to pay via the developer's external payment option\n * instead of Google Play Billing in the side-by-side choice dialog.\n * Contains the externalTransactionToken needed to report the transaction.\n * Available in Google Play Billing Library 8.3.0+\n */\n developerProvidedBillingAndroid: DeveloperProvidedBillingDetailsAndroid;\n /** Fires when the App Store surfaces a promoted product (iOS only) */\n promotedProductIOS: string;\n /** Fires when a purchase fails or is cancelled */\n purchaseError: PurchaseError;\n /** Fires when a purchase completes successfully or a pending purchase resolves */\n purchaseUpdated: Purchase;\n /**\n * Fires when an active subscription enters a billing-issue state that needs user action\n * (payment method failed, card expired, etc.). Cross-platform unification:\n *\n * - iOS 18+: delivered via StoreKit 2 `Message.Reason.billingIssue`.\n * - Android (Play flavor, Billing 8.1+): emitted when `isSuspended == true` is first detected\n * on a previously healthy subscription. Requires Google Play Billing Library 8.1.0 or newer.\n * - Android (Horizon flavor): NOT emitted. The Horizon Billing Compatibility SDK implements\n * the Play Billing 7.0 API surface which does not expose a suspended-subscription signal.\n *\n * Listeners should not assume the event will fire on every store. Direct users to the\n * platform subscription management UI (`deepLinkToSubscriptions`) to resolve the issue.\n */\n subscriptionBillingIssue: Purchase;\n /**\n * Fires when a user selects alternative billing in the User Choice Billing dialog (Android only)\n * Only triggered when the user selects alternative billing instead of Google Play billing\n */\n userChoiceBillingAndroid: UserChoiceBillingDetails;\n}\n\n\nexport interface SubscriptionInfoIOS {\n introductoryOffer?: (SubscriptionOfferIOS | null);\n promotionalOffers?: (SubscriptionOfferIOS[] | null);\n subscriptionGroupId: string;\n subscriptionPeriod: SubscriptionPeriodValueIOS;\n}\n\n/**\n * Standardized subscription discount/promotional offer.\n * Provides a unified interface for subscription offers across iOS and Android.\n *\n * Both platforms support subscription offers with different implementations:\n * - iOS: Introductory offers, promotional offers with server-side signatures\n * - Android: Offer tokens with pricing phases\n *\n * @see https://openiap.dev/docs/types/ios#discount-offer\n * @see https://openiap.dev/docs/types/android#subscription-offer\n */\nexport interface SubscriptionOffer {\n /**\n * [Android] Base plan identifier.\n * Identifies which base plan this offer belongs to.\n */\n basePlanIdAndroid?: (string | null);\n /** Currency code (ISO 4217, e.g., \"USD\") */\n currency?: (string | null);\n /** Formatted display price string (e.g., \"$9.99/month\") */\n displayPrice: string;\n /**\n * Unique identifier for the offer.\n * - iOS: Discount identifier from App Store Connect\n * - Android: offerId from ProductSubscriptionAndroidOfferDetails\n */\n id: string;\n /**\n * [Android] Installment plan details for this subscription offer.\n * Only set for installment subscription plans; null for non-installment plans.\n * Available in Google Play Billing Library 7.0+\n */\n installmentPlanDetailsAndroid?: (InstallmentPlanDetailsAndroid | null);\n /**\n * [iOS] Key identifier for signature validation.\n * Used with server-side signature generation for promotional offers.\n */\n keyIdentifierIOS?: (string | null);\n /** [iOS] Localized price string. */\n localizedPriceIOS?: (string | null);\n /**\n * [iOS] Cryptographic nonce (UUID) for signature validation.\n * Must be generated server-side for each purchase attempt.\n */\n nonceIOS?: (string | null);\n /** [iOS] Number of billing periods for this discount. */\n numberOfPeriodsIOS?: (number | null);\n /** [Android] List of tags associated with this offer. */\n offerTagsAndroid?: (string[] | null);\n /**\n * [Android] Offer token required for purchase.\n * Must be passed to requestPurchase() when purchasing with this offer.\n */\n offerTokenAndroid?: (string | null);\n /** Payment mode during the offer period */\n paymentMode?: (PaymentMode | null);\n /** Subscription period for this offer */\n period?: (SubscriptionPeriod | null);\n /** Number of periods the offer applies */\n periodCount?: (number | null);\n /** Numeric price value */\n price: number;\n /**\n * [Android] Pricing phases for this subscription offer.\n * Contains detailed pricing information for each phase (trial, intro, regular).\n */\n pricingPhasesAndroid?: (PricingPhasesAndroid | null);\n /**\n * [iOS] Server-generated signature for promotional offer validation.\n * Required when applying promotional offers on iOS.\n */\n signatureIOS?: (string | null);\n /**\n * [iOS] Timestamp when the signature was generated.\n * Used for signature validation.\n */\n timestampIOS?: (number | null);\n /** Type of subscription offer (Introductory or Promotional) */\n type: DiscountOfferType;\n}\n\n/**\n * iOS subscription offer details.\n * @deprecated Use the standardized SubscriptionOffer type instead for cross-platform compatibility.\n * @see https://openiap.dev/docs/types#subscription-offer\n */\nexport interface SubscriptionOfferIOS {\n displayPrice: string;\n id: string;\n paymentMode: PaymentModeIOS;\n period: SubscriptionPeriodValueIOS;\n periodCount: number;\n price: number;\n type: SubscriptionOfferTypeIOS;\n}\n\nexport type SubscriptionOfferTypeIOS = 'introductory' | 'promotional' | 'win-back';\n\n/** Subscription period value combining unit and count. */\nexport interface SubscriptionPeriod {\n /** The period unit (day, week, month, year) */\n unit: SubscriptionPeriodUnit;\n /** The number of units (e.g., 1 for monthly, 3 for quarterly) */\n value: number;\n}\n\nexport type SubscriptionPeriodIOS = 'day' | 'week' | 'month' | 'year' | 'empty';\n\n/** Subscription period unit for cross-platform use. */\nexport type SubscriptionPeriodUnit = 'day' | 'week' | 'month' | 'year' | 'unknown';\n\nexport interface SubscriptionPeriodValueIOS {\n unit: SubscriptionPeriodIOS;\n value: number;\n}\n\n/**\n * Product-level subscription replacement parameters (Android)\n * Used with setSubscriptionProductReplacementParams in BillingFlowParams.ProductDetailsParams\n * Available in Google Play Billing Library 8.1.0+\n */\nexport interface SubscriptionProductReplacementParamsAndroid {\n /** The old product ID that needs to be replaced */\n oldProductId: string;\n /** The replacement mode for this product change */\n replacementMode: SubscriptionReplacementModeAndroid;\n}\n\n/**\n * Replacement mode for subscription changes (Android)\n * These modes determine how the subscription replacement affects billing.\n * Available in Google Play Billing Library 8.1.0+\n */\nexport type SubscriptionReplacementModeAndroid = 'unknown-replacement-mode' | 'with-time-proration' | 'charge-prorated-price' | 'charge-full-price' | 'without-proration' | 'deferred' | 'keep-existing';\n\nexport type SubscriptionState = 'active' | 'expired' | 'in-billing-retry' | 'in-grace-period' | 'paused' | 'refunded' | 'revoked' | 'unknown';\n\nexport interface SubscriptionStatusIOS {\n renewalInfo?: (RenewalInfoIOS | null);\n state: string;\n}\n\n/**\n * User Choice Billing event details (Android)\n * Fired when a user selects alternative billing in the User Choice Billing dialog\n */\nexport interface UserChoiceBillingDetails {\n /** Token that must be reported to Google Play within 24 hours */\n externalTransactionToken: string;\n /** List of product IDs selected by the user */\n products: string[];\n}\n\n/**\n * Valid time window for when an offer is available (Android)\n * Available in Google Play Billing Library 7.0+\n */\nexport interface ValidTimeWindowAndroid {\n /** End time in milliseconds since epoch */\n endTimeMillis: string;\n /** Start time in milliseconds since epoch */\n startTimeMillis: string;\n}\n\n/**\n * Apple App Store verification parameters.\n * Used for server-side receipt validation via App Store Server API.\n */\nexport interface VerifyPurchaseAppleOptions {\n /** Product SKU to validate */\n sku: string;\n}\n\n/**\n * Google Play Store verification parameters.\n * Used for server-side receipt validation via Google Play Developer API.\n *\n * ⚠️ SECURITY: Contains sensitive tokens (accessToken, purchaseToken). Do not log or persist this data.\n */\nexport interface VerifyPurchaseGoogleOptions {\n /**\n * Google OAuth2 access token for API authentication.\n * ⚠️ Sensitive: Do not log this value.\n */\n accessToken: string;\n /** Whether this is a subscription purchase (affects API endpoint used) */\n isSub?: (boolean | null);\n /** Android package name (e.g., com.example.app) */\n packageName: string;\n /**\n * Purchase token from the purchase response.\n * ⚠️ Sensitive: Do not log this value.\n */\n purchaseToken: string;\n /** Product SKU to validate */\n sku: string;\n}\n\n/**\n * Meta Horizon (Quest) verification parameters.\n * Used for server-side entitlement verification via Meta's S2S API.\n * POST https://graph.oculus.com/$APP_ID/verify_entitlement\n *\n * ⚠️ SECURITY: Contains sensitive token (accessToken). Do not log or persist this data.\n */\nexport interface VerifyPurchaseHorizonOptions {\n /**\n * Access token for Meta API authentication (OC|$APP_ID|$APP_SECRET or User Access Token).\n * ⚠️ Sensitive: Do not log this value.\n */\n accessToken: string;\n /** The SKU for the add-on item, defined in Meta Developer Dashboard */\n sku: string;\n /** The user ID of the user whose purchase you want to verify */\n userId: string;\n}\n\n/**\n * Platform-specific purchase verification parameters.\n *\n * - apple: Verifies via App Store Server API\n * - google: Verifies via Google Play Developer API\n * - horizon: Verifies via Meta's S2S API (verify_entitlement endpoint)\n */\nexport interface VerifyPurchaseProps {\n /** Apple App Store verification parameters. */\n apple?: (VerifyPurchaseAppleOptions | null);\n /** Google Play Store verification parameters. */\n google?: (VerifyPurchaseGoogleOptions | null);\n /** Meta Horizon (Quest) verification parameters. */\n horizon?: (VerifyPurchaseHorizonOptions | null);\n}\n\nexport type VerifyPurchaseResult = VerifyPurchaseResultAndroid | VerifyPurchaseResultHorizon | VerifyPurchaseResultIOS;\n\nexport interface VerifyPurchaseResultAndroid {\n autoRenewing: boolean;\n betaProduct: boolean;\n cancelDate?: (number | null);\n cancelReason?: (string | null);\n deferredDate?: (number | null);\n deferredSku?: (string | null);\n freeTrialEndDate: number;\n gracePeriodEndDate: number;\n parentProductId: string;\n productId: string;\n productType: string;\n purchaseDate: number;\n quantity: number;\n receiptId: string;\n renewalDate: number;\n term: string;\n termSku: string;\n testTransaction: boolean;\n}\n\n/**\n * Result from Meta Horizon verify_entitlement API.\n * Returns verification status and grant time for the entitlement.\n */\nexport interface VerifyPurchaseResultHorizon {\n /** Unix timestamp (seconds) when the entitlement was granted. */\n grantTime?: (number | null);\n /** Whether the entitlement verification succeeded. */\n success: boolean;\n}\n\nexport interface VerifyPurchaseResultIOS {\n /** Whether the receipt is valid */\n isValid: boolean;\n /** JWS representation */\n jwsRepresentation: string;\n /** Latest transaction if available */\n latestTransaction?: (Purchase | null);\n /** Receipt data string */\n receiptData: string;\n}\n\nexport interface VerifyPurchaseWithProviderError {\n code?: (string | null);\n message: string;\n}\n\nexport interface VerifyPurchaseWithProviderProps {\n iapkit?: (RequestVerifyPurchaseWithIapkitProps | null);\n provider: PurchaseVerificationProvider;\n}\n\nexport interface VerifyPurchaseWithProviderResult {\n /** Error details if verification failed */\n errors?: (VerifyPurchaseWithProviderError[] | null);\n /** IAPKit verification result */\n iapkit?: (RequestVerifyPurchaseWithIapkitResult | null);\n provider: PurchaseVerificationProvider;\n}\n\nexport type VoidResult = void;\n\nexport type WebhookCancellationReason = 'billing-error' | 'other' | 'price-increase-declined' | 'product-unavailable' | 'refunded' | 'user-canceled';\n\nexport interface WebhookEvent {\n /** Reason for cancellation, when applicable. */\n cancellationReason?: (WebhookCancellationReason | null);\n /** Localized currency code (ISO 4217) at event time, when available. */\n currency?: (string | null);\n environment: WebhookEventEnvironment;\n /** When the current subscription period ends. Epoch milliseconds. */\n expiresAt?: (number | null);\n /**\n * Stable identifier suitable for idempotency. Derived from the source notification\n * UUID where the store provides one (ASN v2 `notificationUUID`, RTDN message id);\n * otherwise hashed from the canonicalized payload.\n */\n id: string;\n /** Time the underlying event occurred at the store. Epoch milliseconds. */\n occurredAt: number;\n platform: IapPlatform;\n /**\n * Price in micros (1/1,000,000 of the currency unit) at event time, when available.\n * Matches Google Play's `priceAmountMicros` convention; iOS values are converted.\n */\n priceAmountMicros?: (number | null);\n /** Product the event pertains to. May be null for account-level events. */\n productId?: (string | null);\n /** kit project that owns the subscription / purchase this event refers to. */\n projectId: string;\n /**\n * Cross-platform purchase identity used to correlate this event with an existing\n * purchase record. iOS: `originalTransactionId`. Android: `purchaseToken`.\n * Null for `TestNotification` events (Apple ASN v2 / Google RTDN test\n * payloads carry no transaction); always present for every other event type.\n */\n purchaseToken?: (string | null);\n /**\n * Original signed payload from the store. ASN v2 events expose the JWS string;\n * RTDN events expose the base64-decoded Pub/Sub message JSON. Provided so that\n * consumers can independently verify or extract platform-specific fields. kit\n * always validates this payload before emitting the event.\n */\n rawSignedPayload?: (string | null);\n /** Time kit ingested and normalized this event. Epoch milliseconds. */\n receivedAt: number;\n /** When auto-renewal will charge again. Epoch milliseconds. */\n renewsAt?: (number | null);\n source: WebhookEventSource;\n /**\n * Normalized subscription state at the time of event, when the event refers to\n * a subscription. Null for one-time purchase events.\n */\n subscriptionState?: (SubscriptionState | null);\n type: WebhookEventType;\n}\n\nexport type WebhookEventEnvironment = 'production' | 'sandbox' | 'xcode';\n\nexport type WebhookEventSource = 'apple-app-store-server-notifications-v2' | 'google-play-real-time-developer-notifications' | 'meta-horizon-reconciler';\n\nexport type WebhookEventType = 'purchase-consumption-request' | 'purchase-refunded' | 'subscription-canceled' | 'subscription-expired' | 'subscription-in-billing-retry' | 'subscription-in-grace-period' | 'subscription-paused' | 'subscription-price-change' | 'subscription-product-changed' | 'subscription-recovered' | 'subscription-renewed' | 'subscription-resumed' | 'subscription-revoked' | 'subscription-started' | 'subscription-uncanceled' | 'test-notification';\n\n/**\n * Win-back offer input for iOS 18+ (StoreKit 2)\n * Win-back offers are used to re-engage churned subscribers.\n * The offer is automatically presented via StoreKit Message when eligible,\n * or can be applied programmatically during purchase.\n */\nexport interface WinBackOfferInputIOS {\n /** The win-back offer ID from App Store Connect */\n offerId: string;\n}\n// -- Query helper types (auto-generated)\nexport type QueryArgsMap = {\n canPresentExternalPurchaseNoticeIOS: never;\n currentEntitlementIOS: QueryCurrentEntitlementIosArgs;\n fetchProducts: QueryFetchProductsArgs;\n getActiveSubscriptions: QueryGetActiveSubscriptionsArgs;\n getAllTransactionsIOS: never;\n getAppTransactionIOS: never;\n getAvailablePurchases: QueryGetAvailablePurchasesArgs;\n getExternalPurchaseCustomLinkTokenIOS: QueryGetExternalPurchaseCustomLinkTokenIosArgs;\n getPendingTransactionsIOS: never;\n getPromotedProductIOS: never;\n getReceiptDataIOS: never;\n getStorefront: never;\n getStorefrontIOS: never;\n getTransactionJwsIOS: QueryGetTransactionJwsIosArgs;\n hasActiveSubscriptions: QueryHasActiveSubscriptionsArgs;\n isEligibleForExternalPurchaseCustomLinkIOS: never;\n isEligibleForIntroOfferIOS: QueryIsEligibleForIntroOfferIosArgs;\n isTransactionVerifiedIOS: QueryIsTransactionVerifiedIosArgs;\n latestTransactionIOS: QueryLatestTransactionIosArgs;\n subscriptionStatusIOS: QuerySubscriptionStatusIosArgs;\n validateReceiptIOS: QueryValidateReceiptIosArgs;\n};\n\nexport type QueryField<K extends keyof Query> =\n QueryArgsMap[K] extends never\n ? () => NonNullable<Query[K]>\n : undefined extends QueryArgsMap[K]\n ? (args?: QueryArgsMap[K]) => NonNullable<Query[K]>\n : (args: QueryArgsMap[K]) => NonNullable<Query[K]>;\n\nexport type QueryFieldMap = {\n [K in keyof Query]?: QueryField<K>;\n};\n// -- End query helper types\n\n// -- Mutation helper types (auto-generated)\nexport type MutationArgsMap = {\n acknowledgePurchaseAndroid: MutationAcknowledgePurchaseAndroidArgs;\n beginRefundRequestIOS: MutationBeginRefundRequestIosArgs;\n checkAlternativeBillingAvailabilityAndroid: never;\n clearTransactionIOS: never;\n consumePurchaseAndroid: MutationConsumePurchaseAndroidArgs;\n createAlternativeBillingTokenAndroid: never;\n createBillingProgramReportingDetailsAndroid: MutationCreateBillingProgramReportingDetailsAndroidArgs;\n deepLinkToSubscriptions: MutationDeepLinkToSubscriptionsArgs;\n endConnection: never;\n finishTransaction: MutationFinishTransactionArgs;\n initConnection: MutationInitConnectionArgs;\n isBillingProgramAvailableAndroid: MutationIsBillingProgramAvailableAndroidArgs;\n launchExternalLinkAndroid: MutationLaunchExternalLinkAndroidArgs;\n presentCodeRedemptionSheetIOS: never;\n presentExternalPurchaseLinkIOS: MutationPresentExternalPurchaseLinkIosArgs;\n presentExternalPurchaseNoticeSheetIOS: never;\n requestPurchase: MutationRequestPurchaseArgs;\n requestPurchaseOnPromotedProductIOS: never;\n restorePurchases: never;\n showAlternativeBillingDialogAndroid: never;\n showExternalPurchaseCustomLinkNoticeIOS: MutationShowExternalPurchaseCustomLinkNoticeIosArgs;\n showManageSubscriptionsIOS: never;\n syncIOS: never;\n validateReceipt: MutationValidateReceiptArgs;\n verifyPurchase: MutationVerifyPurchaseArgs;\n verifyPurchaseWithProvider: MutationVerifyPurchaseWithProviderArgs;\n};\n\nexport type MutationField<K extends keyof Mutation> =\n MutationArgsMap[K] extends never\n ? () => NonNullable<Mutation[K]>\n : undefined extends MutationArgsMap[K]\n ? (args?: MutationArgsMap[K]) => NonNullable<Mutation[K]>\n : (args: MutationArgsMap[K]) => NonNullable<Mutation[K]>;\n\nexport type MutationFieldMap = {\n [K in keyof Mutation]?: MutationField<K>;\n};\n// -- End mutation helper types\n\n// -- Subscription helper types (auto-generated)\nexport type SubscriptionArgsMap = {\n developerProvidedBillingAndroid: never;\n promotedProductIOS: never;\n purchaseError: never;\n purchaseUpdated: never;\n subscriptionBillingIssue: never;\n userChoiceBillingAndroid: never;\n};\n\nexport type SubscriptionField<K extends keyof Subscription> =\n SubscriptionArgsMap[K] extends never\n ? () => NonNullable<Subscription[K]>\n : undefined extends SubscriptionArgsMap[K]\n ? (args?: SubscriptionArgsMap[K]) => NonNullable<Subscription[K]>\n : (args: SubscriptionArgsMap[K]) => NonNullable<Subscription[K]>;\n\nexport type SubscriptionFieldMap = {\n [K in keyof Subscription]?: SubscriptionField<K>;\n};\n// -- End subscription helper types\n"]}
@@ -1,5 +1,5 @@
1
1
  {
2
2
  "spec": "2.0.1",
3
- "google": "2.1.2",
4
- "apple": "2.1.5"
3
+ "google": "2.1.4",
4
+ "apple": "2.1.7"
5
5
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "expo-iap",
3
- "version": "4.2.4",
3
+ "version": "4.2.6",
4
4
  "description": "In App Purchase module in Expo",
5
5
  "main": "build/index.js",
6
6
  "types": "build/index.d.ts",
package/src/types.ts CHANGED
@@ -1215,8 +1215,12 @@ export interface PurchaseCommon {
1215
1215
  export interface PurchaseError {
1216
1216
  code: ErrorCode;
1217
1217
  debugMessage?: (string | null);
1218
+ isEmptyProductList?: (boolean | null);
1218
1219
  message: string;
1219
1220
  productId?: (string | null);
1221
+ productIds?: (string[] | null);
1222
+ productType?: (string | null);
1223
+ responseCode?: (number | null);
1220
1224
  }
1221
1225
 
1222
1226
  export interface PurchaseIOS extends PurchaseCommon {