expo-iap 5.4.1 → 5.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/build/types.d.ts CHANGED
@@ -1691,11 +1691,18 @@ export interface RequestVerifyPurchaseWithIapkitGoogleProps {
1691
1691
  /** The token provided to the user's device when the product or subscription was purchased. */
1692
1692
  purchaseToken: string;
1693
1693
  }
1694
+ export interface RequestVerifyPurchaseWithIapkitHorizonProps {
1695
+ /** Meta Horizon product or subscription SKU. */
1696
+ sku: string;
1697
+ /** Meta app-scoped user ID. The openiap-google Horizon module resolves the logged-in user when omitted. */
1698
+ userId?: (string | null);
1699
+ }
1694
1700
  /**
1695
1701
  * Platform-specific verification parameters for IAPKit.
1696
1702
  *
1697
1703
  * - apple: Verifies via App Store (JWS token)
1698
1704
  * - google: Verifies via Play Store (purchase token)
1705
+ * - horizon: Verifies via Meta Horizon (app-scoped user ID + SKU)
1699
1706
  * - amazon: Verifies via Amazon Appstore RVS (userId + receiptId)
1700
1707
  */
1701
1708
  export interface RequestVerifyPurchaseWithIapkitProps {
@@ -1714,10 +1721,12 @@ export interface RequestVerifyPurchaseWithIapkitProps {
1714
1721
  baseUrl?: (string | null);
1715
1722
  /** Google Play Store verification parameters. */
1716
1723
  google?: (RequestVerifyPurchaseWithIapkitGoogleProps | null);
1724
+ /** Meta Horizon verification parameters. */
1725
+ horizon?: (RequestVerifyPurchaseWithIapkitHorizonProps | null);
1717
1726
  /**
1718
1727
  * Available in OpenIAP Spec 2.4.0 / openiap-apple 2.4.1 / openiap-google 2.4.1.
1719
- * Include the product's public IAPKit client payload in a valid Apple or
1720
- * Google verification response. Defaults to false so existing response
1728
+ * Include the product's public IAPKit client payload in a valid verification
1729
+ * response. Defaults to false so existing response
1721
1730
  * shapes and bandwidth remain unchanged.
1722
1731
  */
1723
1732
  includeClientPayload?: (boolean | null);
@@ -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,oFAAoF;AACpF,+EAA+E;AAmc/E,MAAM,CAAN,IAAY,SAqCX;AArCD,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,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,EArCW,SAAS,KAAT,SAAS,QAqCpB;AAm3DD,mCAAmC","sourcesContent":["// ============================================================================\n// AUTO-GENERATED TYPES — DO NOT EDIT DIRECTLY\n// Refresh this file with the generated-types workflow documented for your checkout.\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 /** Unix timestamp in milliseconds since January 1, 1970 UTC. */\n transactionDate: number;\n transactionId: string;\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 /**\n * Subscription period for this transaction.\n * Available in OpenIAP Spec 3.1.0 / openiap-apple 3.1.0\n * (requires iOS 18.4+, macOS 15.4+, tvOS 18.4+, watchOS 11.4+,\n * or visionOS 2.4+).\n */\n period?: (SubscriptionPeriodValueIOS | null);\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\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 /**\n * Original App Store platform raw value. Xcode 27 adds the back-deployed managed\n * acquisition-platform value.\n */\n originalPlatform?: (string | null);\n originalPurchaseDate: number;\n preorderDate?: (number | null);\n /**\n * Date the app-acquisition transaction was revoked (epoch milliseconds).\n * Available through the Xcode 27 SDK and back-deployed to Apple 16+.\n */\n revocationDate?: (number | null);\n signedDate: number;\n /**\n * Store channel of the original app purchase: consumer, education, enterprise,\n * or another future StoreKit value (Apple 27+ beta).\n */\n storeType?: (string | null);\n}\n\n/**\n * Play Billing choice image layout (Android)\n * Available in OpenIAP Spec 2.1.0 / openiap-google 2.3.0 (requires Play Billing 9.1.0+).\n */\nexport type BillingChoiceImageLayoutAndroid = 'rectangular-four-by-one' | 'rectangular-three-by-one' | 'rectangular-two-by-two';\n\n/**\n * Display information for developer-rendered Billing Choice screens (Android)\n * Available in OpenIAP Spec 2.1.0 / openiap-google 2.3.0 (requires Play Billing 9.1.0+).\n */\nexport interface BillingChoiceInfoAndroid {\n /** URL for the Play Billing choice image matching the requested layout. */\n playBillingChoiceImageUrl: string;\n /** Play Loyalty information for the user. */\n playBillingLoyaltyInfo?: (string | null);\n}\n\n/**\n * Choice screen renderer for Billing Choice availability (Android)\n * Available in OpenIAP Spec 2.1.0 / openiap-google 2.3.0 (requires Play Billing 9.1.0+).\n */\nexport type BillingChoiceScreenTypeAndroid = 'unspecified' | 'developer-rendered' | 'google-rendered';\n\n/**\n * Billing program types for Google Play Billing Programs (Android)\n * Available in Google Play Billing Library 8.2.0 (External Offer and External Content Link\n * integrations require 8.2.1+), EXTERNAL_PAYMENTS added in 8.3.0,\n * BILLING_CHOICE added in OpenIAP Spec 2.1.0 / openiap-google 2.3.0\n * (requires Play Billing 9.1.0+).\n */\nexport type BillingProgramAndroid = 'unspecified' | 'user-choice-billing' | 'external-content-link' | 'external-offer' | 'external-payments' | 'billing-choice';\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 /**\n * Billing Choice screen renderer. Populated only for available BILLING_CHOICE results.\n * Available in OpenIAP Spec 2.1.0 / openiap-google 2.3.0.\n */\n choiceScreenType?: (BillingChoiceScreenTypeAndroid | null);\n /** Whether the billing program is available for the user */\n isAvailable: boolean;\n /**\n * Whether external-link payment is available for Billing Choice.\n * Populated only for available BILLING_CHOICE results.\n * Available in OpenIAP Spec 2.1.0 / openiap-google 2.3.0.\n */\n isExternalLinkAvailable?: (boolean | null);\n}\n\n/**\n * Parameters for showing a billing program information dialog (Android)\n * Available in OpenIAP Spec 2.1.0 / openiap-google 2.3.0 (requires Play Billing 9.1.0+).\n */\nexport interface BillingProgramInformationDialogParamsAndroid {\n /** Billing program. Currently only BILLING_CHOICE is supported. */\n billingProgram?: BillingProgramAndroid;\n /** External transaction token returned by the Billing Choice reporting-details flow. */\n externalTransactionToken: string;\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 * Do not cache it for a later redirect session. For External Offer, the same token may report\n * multiple purchases made during the session that generated it.\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\n/**\n * Metadata for one auto-renewable subscription included in an Apple\n * subscription bundle (Apple 27+ beta).\n */\nexport interface BundledSubscriptionIOS {\n description: string;\n displayName: string;\n displayPrice: string;\n id: string;\n isFamilyShareable: boolean;\n price: number;\n subscriptionGroupDisplayName: string;\n subscriptionGroupId: string;\n subscriptionGroupLevel: number;\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 a developer billing option in a purchase flow (Android).\n * Used with BillingFlowParams for external payments (8.3.0+) and Billing Choice\n * (OpenIAP Spec 2.1.0 / openiap-google 2.3.0; requires Play Billing 9.1.0+).\n * Only billingProgram is required; link fields are used when the selected program\n * links outside the app.\n */\nexport interface DeveloperBillingOptionParamsAndroid {\n /** The billing program. Use EXTERNAL_PAYMENTS or BILLING_CHOICE. */\n billingProgram: BillingProgramAndroid;\n /**\n * A pre-generated external transaction token for a Billing Choice external-link\n * flow. Omit it when Google Play should provide the token in the callback.\n */\n externalTransactionToken?: (string | null);\n /**\n * The launch mode for the external payment link.\n * Required only when the selected billing program links outside the app.\n */\n launchMode?: (DeveloperBillingLaunchModeAndroid | null);\n /**\n * The URI where the external payment will be processed.\n * Required only when the selected billing program links outside the app.\n */\n linkUri?: (string | null);\n}\n\n/**\n * Developer-provided billing destination type for Billing Program reporting details (Android)\n * Available in OpenIAP Spec 2.1.0 / openiap-google 2.3.0 (requires Play Billing 9.1.0+).\n */\nexport type DeveloperBillingTypeAndroid = 'developer-billing-type-unspecified' | 'in-app' | 'external-link';\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 * Nullable for flows such as external payments where no token is returned.\n */\n externalTransactionToken?: (string | null);\n /**\n * URI to launch for an external-link Billing Choice flow, when provided by\n * Google Play.\n */\n linkUri?: (string | null);\n /**\n * Original external transaction ID when replacing a subscription that was\n * purchased through developer billing.\n */\n originalExternalTransactionId?: (string | null);\n /** Products selected for the developer billing flow. */\n products: DeveloperProvidedBillingProductAndroid[];\n}\n\n/** Product selected for developer-provided billing (Android 9.0+). */\nexport interface DeveloperProvidedBillingProductAndroid {\n /** Product identifier. */\n id: string;\n /** Subscription offer token, when applicable. */\n offerToken?: (string | null);\n /** Google Play product type (in-app or subscription). */\n type: ProductType;\n}\n\n/**\n * Discount amount details for one-time purchase offers (Android)\n * Available in Google Play Billing Library 8.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 8.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 * Standardized one-time product discount offer.\n * Provides a platform-neutral OpenIAP shape for Google Play one-time product\n * purchase options and offers.\n *\n * Currently populated only on Android (Google Play Billing 8.0+).\n * iOS does not populate this type.\n *\n * @see https://openiap.dev/docs/types/discount-offer\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 including its currency sign (e.g., \"$5.00\"). */\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 the Google Play one-time purchase option\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 8.0+\n */\n purchaseOptionIdAndroid?: (string | null);\n /** [Android] Rental details if this is a rental offer. */\n rentalDetailsAndroid?: (RentalDetailsAndroid | null);\n /**\n * Offer category. DiscountOffer currently represents Android one-time product\n * offers and is populated as OneTime. Introductory and Promotional are used by\n * SubscriptionOffer.\n */\n type: DiscountOfferType;\n /**\n * [Android] Valid time window for the offer.\n * Contains startTimeMillis and endTimeMillis.\n */\n validTimeWindowAndroid?: (ValidTimeWindowAndroid | null);\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 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 * Introduced in Google Play Billing Library 8.2.0. External Offer and External Content Link\n * integrations require 8.2.1+ and fresh details immediately before every redirect session.\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/** 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\n/**\n * Parameters for fetching Billing Choice display information (Android)\n * Available in OpenIAP Spec 2.1.0 / openiap-google 2.3.0 (requires Play Billing 9.1.0+).\n */\nexport interface GetBillingChoiceInfoParamsAndroid {\n /** Billing program. Currently only BILLING_CHOICE is supported. */\n billingProgram?: BillingProgramAndroid;\n /** Desired Play Billing choice image layout. */\n playBillingChoiceImageLayout?: BillingChoiceImageLayoutAndroid;\n /** BCP 47 locale tag. If omitted, Play Billing uses the user's default locale. */\n userLocale?: (string | null);\n}\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' | 'amazon';\n\n/** Serialization format of a public IAPKit product client payload. */\nexport type IapkitClientPayloadFormat = 'toml' | 'json' | 'text';\n\n/**\n * Public app-facing data attached to one store product in IAPKit.\n * Never place credentials, signing keys, or server-authoritative rules here.\n */\nexport interface IapkitProductClientPayload {\n body: string;\n format: IapkitClientPayloadFormat;\n updatedAt: number;\n version: number;\n}\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/**\n * High-level in-app message category (Android)\n * Available in OpenIAP Spec 2.1.0 / openiap-google 2.3.0\n * (upstream API available since Play Billing 4.1.0).\n */\nexport type InAppMessageCategoryAndroid = 'unknown-in-app-message-category-id' | 'transactional';\n\n/**\n * Parameters for showing Play billing in-app messages (Android)\n * Available in OpenIAP Spec 2.1.0 / openiap-google 2.3.0\n * (upstream API available since Play Billing 4.1.0).\n */\nexport interface InAppMessageParamsAndroid {\n /** In-app message categories to show. Defaults to transactional messages. */\n categories?: (InAppMessageCategoryAndroid[] | null);\n}\n\n/**\n * Response code from Play billing in-app messages (Android)\n * Available in OpenIAP Spec 2.1.0 / openiap-google 2.3.0\n * (upstream API available since Play Billing 4.1.0).\n */\nexport type InAppMessageResponseCodeAndroid = 'no-action-needed' | 'subscription-status-updated';\n\n/**\n * Result from showing Play billing in-app messages (Android)\n * Available in OpenIAP Spec 2.1.0 / openiap-google 2.3.0\n * (upstream API available since Play Billing 4.1.0).\n */\nexport interface InAppMessageResultAndroid {\n /** Purchase token returned when a subscription status changed. */\n purchaseToken?: (string | null);\n /** Response code for the in-app messaging flow. */\n responseCode: InAppMessageResponseCodeAndroid;\n}\n\n/** Connection initialization configuration */\nexport interface InitConnectionConfig {\n /**\n * Billing Choice renderer configured in Play Console. Available in OpenIAP\n * Spec 2.1.0 / openiap-google 2.3.0 (requires Play Billing 9.1.0+).\n * GOOGLE_RENDERED registers the developer-provided billing listener so OpenIAP\n * can emit the selection event. DEVELOPER_RENDERED omits that listener so the\n * app can render its own choice screen and use the reporting/dialog/link APIs.\n * Must match choiceScreenType returned by isBillingProgramAvailableAndroid.\n * Defaults to GOOGLE_RENDERED.\n */\n billingChoiceScreenTypeAndroid?: (BillingChoiceScreenTypeAndroid | 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 (introduced in 8.2.0; use 8.2.1+)\n * - EXTERNAL_OFFER: External offers for digital content (introduced in 8.2.0; use 8.2.1+)\n * - EXTERNAL_PAYMENTS: Developer provided billing, Japan only (8.3.0+)\n * - BILLING_CHOICE: Google-rendered or developer-rendered billing choice\n * (OpenIAP Spec 2.1.0 / openiap-google 2.3.0; requires Play Billing 9.1.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, app install, or\n * developer-rendered Billing Choice flows\n * Available in Google Play Billing Library 8.2.0+\n */\nexport interface LaunchExternalLinkParamsAndroid {\n /** The billing program (EXTERNAL_CONTENT_LINK, EXTERNAL_OFFER, or BILLING_CHOICE) */\n billingProgram: BillingProgramAndroid;\n /**\n * External transaction token for a developer-rendered Billing Choice external-link\n * flow. Available in OpenIAP Spec 2.1.0 / openiap-google 2.3.0\n * (requires Play Billing 9.1.0+). Generate it with createBillingProgramReportingDetailsAndroid.\n */\n externalTransactionToken?: (string | null);\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 8.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://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://openiap.dev/docs/apis/ios/begin-refund-request-ios\n */\n beginRefundRequestIOS?: Promise<(string | null)>;\n /**\n * Clear pending transactions in the queue (sandbox helper).\n * See: https://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://openiap.dev/docs/apis/android/consume-purchase-android\n */\n consumePurchaseAndroid: Promise<boolean>;\n /**\n * Create the reporting details and external transaction token required by a billing program.\n * Introduced in Play Billing 8.2.0. External Offer and External Content Link integrations\n * must use 8.2.1+ and create fresh details immediately before every redirect session;\n * do not cache the token for a later redirect. The same token may report multiple purchases\n * made during one External Offer session.\n * Replaces the deprecated createExternalOfferReportingDetailsAsync API.\n * Returns external transaction token needed for reporting external transactions.\n * developerBillingType is optional. When program is BILLING_CHOICE and developerBillingType is omitted,\n * native Android defaults it to IN_APP.\n * The Billing Choice extension is available in OpenIAP Spec 2.1.0 /\n * openiap-google 2.3.0 (requires Play Billing 9.1.0+).\n * Throws OpenIapError.NotPrepared if billing client not ready.\n * See: https://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://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://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://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://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 * Introduced in Google Play Billing Library 8.2.0. External Offer and External\n * Content Link integrations must use 8.2.1+ because 8.2.1 fixes this API.\n * Returns availability result with isAvailable flag.\n * Throws OpenIapError.NotPrepared if billing client not ready.\n * See: https://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 (introduced in\n * Play Billing 8.2.0; External Offer and External Content Link require 8.2.1+),\n * including developer-rendered Billing Choice external-link flows.\n * Billing Choice availability: OpenIAP Spec 2.1.0 / openiap-google 2.3.0\n * (requires Play Billing 9.1.0+).\n * Replaces the deprecated showExternalOfferInformationDialog API.\n * Shows Play Store dialog and optionally launches external URL.\n * Throws OpenIapError.NotPrepared if billing client not ready.\n * See: https://openiap.dev/docs/apis/android/launch-external-link-android\n */\n launchExternalLinkAndroid: Promise<boolean>;\n /**\n * Open the platform's offer/promo code redemption flow.\n * Resolves the redeemed purchase only when the store reports it synchronously;\n * every other path resolves null, so reconcile through the purchase listeners.\n * Throws when a redemption flow exists but cannot be opened.\n * Available in OpenIAP Spec 3.3.0 / openiap-apple 3.3.0 / openiap-google 3.4.0.\n * Replaces presentCodeRedemptionSheetIOS and openRedeemOfferCodeAndroid.\n * See: https://openiap.dev/docs/apis/open-redeem-offer-code\n */\n openRedeemOfferCode?: Promise<(Purchase | null)>;\n /**\n * Deprecated. Open the Google Play offer/promo code redemption flow — use\n * openRedeemOfferCode instead.\n * On Google Play builds, launches the Play Store redeem page\n * (https://play.google.com/redeem). A purchase listener can receive the redeemed\n * purchase while the app is running with an active billing connection; always\n * reconcile with getAvailablePurchases when the app resumes.\n * Does not require the billing client to be initialized (no Play Billing version requirement).\n * Available in OpenIAP Spec 2.4.2 / openiap-google 2.5.0.\n * Android counterpart of presentCodeRedemptionSheetIOS.\n * Returns true when the redemption flow was launched, or false when the current\n * store flavor does not provide an equivalent redemption flow.\n * See: https://openiap.dev/docs/apis/android/open-redeem-offer-code-android\n * @deprecated Use openRedeemOfferCode. Scheduled for removal in OpenIAP 4.0.\n */\n openRedeemOfferCodeAndroid: Promise<boolean>;\n /**\n * Deprecated. Show the App Store offer code redemption sheet — use\n * openRedeemOfferCode instead.\n * When built with Xcode 27+ and running on iOS 27+, Mac Catalyst 27+, or\n * visionOS 27+, returns the verified transaction produced by the redemption.\n * StoreKit 2's scene-based sheet returns null after presentation on iOS 16–26,\n * visionOS 1–26, and those platforms on Apple 27 when built with an older SDK.\n * iOS 15 uses the StoreKit 1 sheet and also returns null. On Mac Catalyst, the\n * scene-based API throws StoreKitError.unknown, while the Catalyst 15 StoreKit 1\n * call has no effect and returns null. Reconcile null results from a presented\n * sheet through the normal transaction listener or an explicit\n * available-purchases refresh.\n * See: https://openiap.dev/docs/apis/ios/present-code-redemption-sheet-ios\n * @deprecated Use openRedeemOfferCode. Scheduled for removal in OpenIAP 4.0.\n */\n presentCodeRedemptionSheetIOS?: Promise<(PurchaseIOS | null)>;\n /**\n * Present an external purchase link, StoreKit External (iOS 16+).\n * See: https://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://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://openiap.dev/docs/apis/request-purchase\n */\n requestPurchase?: Promise<(Purchase | Purchase[] | null)>;\n /**\n * Restore non-consumable and active subscription purchases.\n * See: https://openiap.dev/docs/apis/restore-purchases\n */\n restorePurchases: Promise<void>;\n /**\n * Show Google's mandatory information dialog before a developer-rendered,\n * in-app Billing Choice screen.\n * OpenIAP availability: Spec 2.1.0 / openiap-google 2.3.0 (requires Play Billing 9.1.0+).\n * Throws OpenIapError.NotPrepared if billing client not ready.\n * See: https://openiap.dev/docs/apis/android/show-billing-program-information-dialog-android\n */\n showBillingProgramInformationDialogAndroid: Promise<BillingResultAndroid>;\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://openiap.dev/docs/apis/ios/show-external-purchase-custom-link-notice-ios\n */\n showExternalPurchaseCustomLinkNoticeIOS: Promise<ExternalPurchaseCustomLinkNoticeResultIOS>;\n /**\n * Overlay Play billing in-app messages, such as payment issues or subscription price-change confirmations.\n * OpenIAP availability: Spec 2.1.0 / openiap-google 2.3.0\n * (upstream API available since Play Billing 4.1.0).\n * Returns a response code and, when the subscription status changes, the related purchase token.\n * Throws OpenIapError.NotPrepared if billing client not ready.\n * See: https://openiap.dev/docs/apis/android/show-in-app-messages-android\n */\n showInAppMessagesAndroid: Promise<InAppMessageResultAndroid>;\n /**\n * Present the manage-subscriptions sheet and return changed purchases (iOS 15+).\n * See: https://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://openiap.dev/docs/apis/ios/sync-ios\n */\n syncIOS: Promise<boolean>;\n /**\n * Verify a purchase against your own backend. Every VerifyPurchaseResult\n * variant exposes isValid, so entitlement can be gated without inspecting the\n * concrete type. Variants add their own metadata on top: IOS carries\n * receipt/JWS fields, Android carries Play Store receipt fields, and Horizon\n * carries grantTime.\n * See: https://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://openiap.dev/docs/features/validation#verify-purchase-with-provider\n */\n verifyPurchaseWithProvider: Promise<VerifyPurchaseWithProviderResult>;\n}\n\nexport type MutationAcknowledgePurchaseAndroidArgs = string;\n\nexport type MutationBeginRefundRequestIosArgs = string;\n\nexport type MutationConsumePurchaseAndroidArgs = string;\n\nexport interface MutationCreateBillingProgramReportingDetailsAndroidArgs {\n developerBillingType?: (DeveloperBillingTypeAndroid | null);\n program: BillingProgramAndroid;\n}\n\nexport type MutationDeepLinkToSubscriptionsArgs = (DeepLinkOptions | null) | undefined;\n\nexport interface MutationFinishTransactionArgs {\n isConsumable?: (boolean | null);\n purchase: PurchaseInput;\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 = RequestPurchaseProps;\n\nexport type MutationShowBillingProgramInformationDialogAndroidArgs = BillingProgramInformationDialogParamsAndroid;\n\nexport type MutationShowExternalPurchaseCustomLinkNoticeIosArgs = ExternalPurchaseCustomLinkNoticeTypeIOS;\n\nexport type MutationShowInAppMessagesAndroidArgs = (InAppMessageParamsAndroid | null) | undefined;\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 Android one-time product purchase options and offers.\n * Native metadata uses Android-suffixed fields.\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 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 * 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\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 * iOS 26.4+ subscription pricing terms, including billing plan metadata for\n * monthly subscriptions with a 12-month commitment.\n */\n pricingTermsIOS?: (SubscriptionPricingTermsIOS[] | 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 displayName?: (string | null);\n displayPrice: string;\n id: string;\n nameAndroid: string;\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 * 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\nexport interface ProductSubscriptionIOS extends ProductCommon {\n /**\n * Subscriptions included in this Apple subscription bundle. Empty or null for\n * every other product type (Apple 27+ beta).\n */\n bundledSubscriptionsIOS?: (BundledSubscriptionIOS[] | null);\n currency: string;\n debugDescription?: (string | null);\n description: string;\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 * iOS 26.4+ subscription pricing terms, including billing plan metadata for\n * monthly subscriptions with a 12-month commitment.\n */\n pricingTermsIOS?: (SubscriptionPricingTermsIOS[] | null);\n /** App Store subscription group identifier for intro-offer eligibility checks. */\n subscriptionGroupIdIOS?: (string | 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' | 'subscription-bundle' | 'subscription-suite';\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 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 /** Unix timestamp in milliseconds since January 1, 1970 UTC. */\n transactionDate: number;\n transactionId?: (string | null);\n /**\n * Amazon Appstore user id (PurchaseResponse.getUserData().getUserId()).\n * Only populated on the Amazon flavor; required for server-side Amazon RVS\n * receipt verification (userId + receiptId). Null on Google Play and Horizon.\n */\n userIdAmazon?: (string | null);\n /**\n * Amazon Appstore marketplace (PurchaseResponse.getUserData().getMarketplace()),\n * for example \"US\" or \"FR\". Only populated on the Amazon flavor.\n */\n userMarketplaceAmazon?: (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 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 /** Unix timestamp in milliseconds since January 1, 1970 UTC. */\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 subResponseCodeAndroid?: (SubResponseCodeAndroid | 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 /** iOS 26.4+ billing plan selected for this transaction. */\n billingPlanTypeIOS?: (SubscriptionBillingPlanTypeIOS | null);\n /**\n * Original transaction identifier for the subscription bundle that produced\n * this transaction (Apple 27+ SDK; back-deployed by StoreKit).\n */\n bundleOriginalTransactionIdIOS?: (string | null);\n /** Product identifier of the subscription bundle that produced this transaction. */\n bundleProductIdIOS?: (string | null);\n /** Subscription-group identifier of the bundle that produced this transaction. */\n bundleSubscriptionGroupIdIOS?: (string | null);\n /** Bundle transaction identifier associated with this component transaction. */\n bundleTransactionIdIOS?: (string | null);\n /** iOS 26.4+ progress information for monthly subscriptions with a 12-month commitment. */\n commitmentInfoIOS?: (TransactionCommitmentInfoIOS | 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 /** StoreKit ownership raw value. Xcode 27 adds the back-deployed assigned value. */\n ownershipTypeIOS?: (string | null);\n /**\n * Original transaction identifier replaced when moving between a standalone\n * subscription and a subscription bundle.\n */\n previousOriginalTransactionIdIOS?: (string | null);\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 /** Normalized StoreKit revocation reason, including upgraded_to_bundle. */\n revocationReasonIOS?: (string | null);\n /**\n * StoreKit revocation type, including assignment-revocation on Apple 26.4+\n * when compiled with the Xcode 27 SDK.\n */\n revocationTypeIOS?: (string | null);\n /** Store where purchase was made */\n store: IapStore;\n storefrontCountryCodeIOS?: (string | null);\n subscriptionGroupIdIOS?: (string | null);\n /** Unix timestamp in milliseconds since January 1, 1970 UTC. */\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 interface PurchaseUpdatedListenerOptions {\n /**\n * iOS only. Defaults to true. When false, listener callbacks also receive\n * StoreKit replay events for a transaction ID that was already emitted during\n * the current connection session. Android ignores this option.\n */\n dedupeTransactionIOS?: (boolean | null);\n}\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://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://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://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://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 SKIncludeConsumableInAppPurchaseHistory 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://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://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://openiap.dev/docs/apis/get-available-purchases\n */\n getAvailablePurchases: Promise<Purchase[]>;\n /**\n * Fetch Play Billing assets and loyalty text for developer-rendered Billing Choice screens.\n * OpenIAP availability: Spec 2.1.0 / openiap-google 2.3.0 (requires Play Billing 9.1.0+).\n * Throws OpenIapError.NotPrepared if billing client is not ready.\n * See: https://openiap.dev/docs/apis/android/get-billing-choice-info-android\n */\n getBillingChoiceInfoAndroid: Promise<BillingChoiceInfoAndroid>;\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://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://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 15+).\n * OpenIAP consumes PurchaseIntent.intents on iOS 16.4+ and uses the\n * StoreKit 1 observer only on iOS 15–16.3. When PurchaseIntent carries an\n * externally redeemed win-back offer, OpenIAP preserves it for the next\n * matching requestPurchase unless the caller supplies an explicit win-back or\n * promotional offer.\n * See: https://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://openiap.dev/docs/apis/ios/get-receipt-data-ios\n */\n getReceiptDataIOS?: Promise<(string | null)>;\n /**\n * Return the store-authoritative country code: ISO 3166-1 alpha-3 on Apple\n * platforms and alpha-2 on Android. The operation fails when the store cannot\n * provide a value; implementations must not synthesize a locale fallback.\n * See: https://openiap.dev/docs/apis/get-storefront\n */\n getStorefront: Promise<string>;\n /**\n * Return the JWS string for a transaction (StoreKit 2).\n * See: https://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://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://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://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://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://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://openiap.dev/docs/apis/ios/subscription-status-ios\n */\n subscriptionStatusIOS: Promise<SubscriptionStatusIOS[]>;\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 QueryGetBillingChoiceInfoAndroidArgs = GetBillingChoiceInfoParamsAndroid;\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 interface RefundResultIOS {\n message?: (string | null);\n status: string;\n}\n\nexport interface RenewalCommitmentInfoIOS {\n commitmentAutoRenewProductId: string;\n commitmentAutoRenewStatus: boolean;\n commitmentRenewalBillingPlanType: SubscriptionBillingPlanTypeIOS;\n commitmentRenewalDate: number;\n commitmentRenewalPrice: number;\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 /** Original transaction identifier for the bundle used by the next renewal. */\n bundleOriginalTransactionId?: (string | null);\n /** Product identifier for the bundle used by the next renewal. */\n bundleProductId?: (string | null);\n /** Subscription-group identifier for the bundle used by the next renewal. */\n bundleSubscriptionGroupId?: (string | null);\n /**\n * iOS 26.4+ renewal commitment metadata for monthly subscriptions with a\n * 12-month commitment.\n */\n commitmentInfo?: (RenewalCommitmentInfoIOS | null);\n /**\n * StoreKit's raw integer expiration-reason value represented as a string.\n * Xcode 27 adds the back-deployed unbundled case. Preserve unknown future values.\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 * StoreKit exposes this directly as RenewalInfo.isInBillingRetry.\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 /** iOS 26.4+ billing plan that will renew after the current period. */\n renewalBillingPlanType?: (SubscriptionBillingPlanTypeIOS | 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 /** Whether this subscription will leave its bundle and renew standalone. */\n willUnbundle?: (boolean | null);\n}\n\n/**\n * Rental details for one-time purchase products that can be rented (Android)\n * Available in Google Play Billing Library 8.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 and Billing Choice.\n * Billing Choice is available in OpenIAP Spec 2.1.0 / openiap-google 2.3.0\n * (requires Play Billing 9.1.0+).\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 (8.0+).\n * Pass the offerToken from 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 /** Explicit purchase type hint (defaults to in-app) */\n type: 'in-app';\n }\n | {\n /** Per-platform subscription request props */\n request: RequestSubscriptionPropsByPlatforms;\n /** Explicit purchase type hint (defaults to in-app) */\n type: 'subs';\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, Horizon when built with horizon flavor,\n * or Fire OS when built with amazon flavor\n * (determined at build time, not runtime)\n */\nexport interface RequestPurchasePropsByPlatforms {\n /** Apple-specific purchase parameters */\n apple?: (RequestPurchaseIosProps | null);\n /** Google-specific purchase parameters */\n google?: (RequestPurchaseAndroidProps | null);\n}\n\nexport type RequestPurchaseResult = Purchase | Purchase[] | null;\n\nexport interface RequestSubscriptionAndroidProps {\n /**\n * Developer billing option parameters for external payments and Billing Choice.\n * Billing Choice is available in OpenIAP Spec 2.1.0 / openiap-google 2.3.0\n * (requires Play Billing 9.1.0+).\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 * Original external transaction ID for replacing a subscription that was\n * purchased through developer billing. Available in OpenIAP Spec 2.1.0 /\n * openiap-google 2.3.0 (requires Play Billing 9.1.0+).\n */\n originalExternalTransactionId?: (string | null);\n /** Purchase token for upgrades/downgrades */\n purchaseToken?: (string | 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 * This singular form requires skus to contain exactly one target product.\n * Multi-item subscription changes need a per-target replacement mapping and\n * are rejected rather than applying one oldProductId to multiple products.\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 * Billing plan to use when purchasing an annual subscription that offers\n * monthly billing with a 12-month commitment (iOS 26.4+).\n */\n billingPlanType?: (SubscriptionBillingPlanTypeIOS | null);\n /**\n * Compact JWS string for overriding introductory offer eligibility\n * (iOS 15+, WWDC 2025). When nil, the system determines eligibility.\n * Generate the JWS on your server and pass it to StoreKit's\n * introductoryOfferEligibility(compactJWS:) purchase option.\n */\n compactJWS?: (string | 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, Horizon when built with horizon flavor,\n * or Fire OS when built with amazon flavor\n * (determined at build time, not runtime)\n */\nexport interface RequestSubscriptionPropsByPlatforms {\n /** Apple-specific subscription parameters */\n apple?: (RequestSubscriptionIosProps | null);\n /** Google-specific subscription parameters */\n google?: (RequestSubscriptionAndroidProps | null);\n}\n\nexport interface RequestVerifyPurchaseWithIapkitAmazonProps {\n /**\n * Available in OpenIAP Spec 3.2.0 / openiap-apple 3.2.0 / openiap-google 3.3.0.\n * Optional Amazon product id that must match the product id verified by RVS.\n */\n expectedProductId?: (string | null);\n /** Amazon Appstore receipt id returned by PurchaseResponse.getReceipt().getReceiptId(). */\n receiptId: string;\n /** Use Amazon RVS Cloud Sandbox for App Tester receipts. */\n sandbox?: (boolean | null);\n /** Amazon Appstore user id returned by PurchaseResponse.getUserData().getUserId(). */\n userId?: (string | 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 * - amazon: Verifies via Amazon Appstore RVS (userId + receiptId)\n */\nexport interface RequestVerifyPurchaseWithIapkitProps {\n /** Amazon Appstore verification parameters. */\n amazon?: (RequestVerifyPurchaseWithIapkitAmazonProps | null);\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 /**\n * Available in OpenIAP Spec 2.3.1 / openiap-apple 2.4.0 / openiap-google 2.4.0.\n * Base URL for the IAPKit server. Defaults to https://kit.openiap.dev.\n * Set this to a reachable HTTP(S) origin when self-hosting or testing a local IAPKit server.\n * The apiKey must be issued by the same IAPKit/Convex deployment as this server.\n */\n baseUrl?: (string | null);\n /** Google Play Store verification parameters. */\n google?: (RequestVerifyPurchaseWithIapkitGoogleProps | null);\n /**\n * Available in OpenIAP Spec 2.4.0 / openiap-apple 2.4.1 / openiap-google 2.4.1.\n * Include the product's public IAPKit client payload in a valid Apple or\n * Google verification response. Defaults to false so existing response\n * shapes and bandwidth remain unchanged.\n */\n includeClientPayload?: (boolean | null);\n}\n\nexport interface RequestVerifyPurchaseWithIapkitResult {\n /**\n * Available in OpenIAP Spec 2.4.0 / openiap-apple 2.4.1 / openiap-google 2.4.1.\n * Public product payload when includeClientPayload was requested, the\n * Apple or Google receipt is valid, and a payload exists for that product.\n */\n clientPayload?: (IapkitProductClientPayload | null);\n /**\n * Available in OpenIAP Spec 3.2.0 / openiap-apple 3.2.0 / openiap-google 3.3.0.\n * Amazon RVS environment selected by IAPKit. Present as `Sandbox` or\n * `Production` on handled Amazon verification results.\n *\n * Deliberately String, not an enum: the value space belongs to IAPKit and the\n * stores behind it, and Apple's App Store Server alone also names `Xcode` and\n * `LocalTesting`. SDKs must forward this value opaquely. Never reject a\n * verification because the environment is unrecognised — that fails a purchase\n * the store already confirmed.\n */\n environment?: (string | null);\n /**\n * True when the purchase is valid and actionable.\n * Only entitled, pending-acknowledgment, or ready-to-consume return true.\n * Callers must still match productId and use the platform plus app-owned product\n * type to choose the fulfillment path.\n */\n isValid: boolean;\n /**\n * Available in OpenIAP Spec 2.4.0 / openiap-apple 2.4.1 / openiap-google 2.4.1.\n * Store-verified product identifier when the provider returns one.\n */\n productId?: (string | null);\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 an External Payments or\n * Billing Choice flow (Android only). The payload can contain an external\n * transaction token, link URI, original transaction ID, and selected products.\n * Billing Choice payload fields are available in OpenIAP Spec 2.1.0 /\n * openiap-google 2.3.0 (requires Play Billing 9.1.0+).\n */\n developerProvidedBillingAndroid: DeveloperProvidedBillingDetailsAndroid;\n /**\n * Fires when the App Store surfaces a promoted product (iOS only).\n * A win-back offer attached to PurchaseIntent is preserved for the next\n * matching requestPurchase unless the caller supplies an explicit win-back or\n * promotional offer.\n */\n promotedProductIOS: string;\n /** Fires when a purchase fails or is cancelled */\n purchaseError: PurchaseError;\n /**\n * Fires when a purchase completes successfully or a pending purchase resolves\n * Options can opt iOS listeners into duplicate StoreKit transaction replays\n * for diagnostics; default listeners receive one event per transaction ID\n * during a single connection session.\n */\n purchaseUpdated: Purchase;\n /**\n * Fires when a subscription enters a billing-issue state that needs user action\n * (payment method failed, card expired, etc.). Cross-platform unification:\n *\n * - iOS 16.4+ / Mac Catalyst 16.4+ / visionOS 1.0+: delivered via StoreKit 2\n * `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 * - Android (Amazon flavor): NOT emitted. Amazon Appstore IAP does not expose an\n * equivalent subscription billing-issue 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\nexport type SubscriptionPurchaseUpdatedArgs = (PurchaseUpdatedListenerOptions | null) | undefined;\n\nexport type SubscriptionBillingPlanTypeIOS = 'unknown' | 'monthly' | 'up-front';\n\nexport interface SubscriptionCommitmentInfoIOS {\n displayPrice: string;\n period: SubscriptionPeriodValueIOS;\n price: number;\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/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 the Google Play subscription offer\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\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\nexport interface SubscriptionPricingTermsIOS {\n billingDisplayPrice: string;\n billingPeriod: SubscriptionPeriodValueIOS;\n billingPlanType: SubscriptionBillingPlanTypeIOS;\n billingPrice: number;\n commitmentInfo: SubscriptionCommitmentInfoIOS;\n subscriptionOffers?: (SubscriptionOffer[] | null);\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 interface SubscriptionStatusIOS {\n renewalInfo?: (RenewalInfoIOS | null);\n state: string;\n}\n\nexport interface TransactionCommitmentInfoIOS {\n billingPeriodNumber: number;\n commitmentExpiresDate: number;\n commitmentPrice: number;\n totalBillingPeriods: number;\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 /**\n * External transaction ID of the originating subscription when the user is\n * upgrading or downgrading a developer-billed subscription. Available in\n * OpenIAP Spec 2.3.0 / openiap-google 2.3.1 (requires Play Billing 9.1+).\n */\n originalExternalTransactionId?: (string | null);\n /**\n * Structured product details selected in the user-choice flow, including the\n * product type and offer token. Legacy payloads may omit this field; use\n * products as the product-ID fallback. Available in OpenIAP Spec 2.3.0 /\n * openiap-google 2.3.1 (requires Play Billing 9.1+).\n */\n productDetailsAndroid?: (DeveloperProvidedBillingProductAndroid[] | null);\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 8.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 extends VerifyPurchaseResultCommon {\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 /**\n * Whether the purchase is valid. Uniform across every VerifyPurchaseResult\n * variant so callers can gate entitlement without inspecting the concrete type.\n */\n isValid: boolean;\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/** Validity shared by every store-specific purchase verification result. */\nexport interface VerifyPurchaseResultCommon {\n /** Whether the purchase is valid, without inspecting the concrete result variant. */\n isValid: 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 extends VerifyPurchaseResultCommon {\n /** Unix timestamp (seconds) when the entitlement was granted. */\n grantTime?: (number | null);\n /**\n * Whether the purchase is valid. Uniform across every VerifyPurchaseResult\n * variant so callers can gate entitlement without inspecting the concrete type.\n */\n isValid: boolean;\n /**\n * Whether the entitlement verification succeeded.\n * @deprecated Renamed to isValid so every VerifyPurchaseResult variant answers validity the same way. Scheduled for removal in OpenIAP 4.0.\n */\n success: boolean;\n}\n\nexport interface VerifyPurchaseResultIOS extends VerifyPurchaseResultCommon {\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\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// -- Mutation helper types (auto-generated)\nexport type MutationArgsMap = {\n acknowledgePurchaseAndroid: MutationAcknowledgePurchaseAndroidArgs;\n beginRefundRequestIOS: MutationBeginRefundRequestIosArgs;\n clearTransactionIOS: never;\n consumePurchaseAndroid: MutationConsumePurchaseAndroidArgs;\n createBillingProgramReportingDetailsAndroid: MutationCreateBillingProgramReportingDetailsAndroidArgs;\n deepLinkToSubscriptions: MutationDeepLinkToSubscriptionsArgs;\n endConnection: never;\n finishTransaction: MutationFinishTransactionArgs;\n initConnection: MutationInitConnectionArgs;\n isBillingProgramAvailableAndroid: MutationIsBillingProgramAvailableAndroidArgs;\n launchExternalLinkAndroid: MutationLaunchExternalLinkAndroidArgs;\n openRedeemOfferCode: never;\n openRedeemOfferCodeAndroid: never;\n presentCodeRedemptionSheetIOS: never;\n presentExternalPurchaseLinkIOS: MutationPresentExternalPurchaseLinkIosArgs;\n presentExternalPurchaseNoticeSheetIOS: never;\n requestPurchase: MutationRequestPurchaseArgs;\n restorePurchases: never;\n showBillingProgramInformationDialogAndroid: MutationShowBillingProgramInformationDialogAndroidArgs;\n showExternalPurchaseCustomLinkNoticeIOS: MutationShowExternalPurchaseCustomLinkNoticeIosArgs;\n showInAppMessagesAndroid: MutationShowInAppMessagesAndroidArgs;\n showManageSubscriptionsIOS: never;\n syncIOS: never;\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// -- 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 getBillingChoiceInfoAndroid: QueryGetBillingChoiceInfoAndroidArgs;\n getExternalPurchaseCustomLinkTokenIOS: QueryGetExternalPurchaseCustomLinkTokenIosArgs;\n getPendingTransactionsIOS: never;\n getPromotedProductIOS: never;\n getReceiptDataIOS: never;\n getStorefront: never;\n getTransactionJwsIOS: QueryGetTransactionJwsIosArgs;\n hasActiveSubscriptions: QueryHasActiveSubscriptionsArgs;\n isEligibleForExternalPurchaseCustomLinkIOS: never;\n isEligibleForIntroOfferIOS: QueryIsEligibleForIntroOfferIosArgs;\n isTransactionVerifiedIOS: QueryIsTransactionVerifiedIosArgs;\n latestTransactionIOS: QueryLatestTransactionIosArgs;\n subscriptionStatusIOS: QuerySubscriptionStatusIosArgs;\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// -- Subscription helper types (auto-generated)\nexport type SubscriptionArgsMap = {\n developerProvidedBillingAndroid: never;\n promotedProductIOS: never;\n purchaseError: never;\n purchaseUpdated: SubscriptionPurchaseUpdatedArgs;\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,oFAAoF;AACpF,+EAA+E;AAmc/E,MAAM,CAAN,IAAY,SAqCX;AArCD,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,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,EArCW,SAAS,KAAT,SAAS,QAqCpB;AA63DD,mCAAmC","sourcesContent":["// ============================================================================\n// AUTO-GENERATED TYPES — DO NOT EDIT DIRECTLY\n// Refresh this file with the generated-types workflow documented for your checkout.\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 /** Unix timestamp in milliseconds since January 1, 1970 UTC. */\n transactionDate: number;\n transactionId: string;\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 /**\n * Subscription period for this transaction.\n * Available in OpenIAP Spec 3.1.0 / openiap-apple 3.1.0\n * (requires iOS 18.4+, macOS 15.4+, tvOS 18.4+, watchOS 11.4+,\n * or visionOS 2.4+).\n */\n period?: (SubscriptionPeriodValueIOS | null);\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\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 /**\n * Original App Store platform raw value. Xcode 27 adds the back-deployed managed\n * acquisition-platform value.\n */\n originalPlatform?: (string | null);\n originalPurchaseDate: number;\n preorderDate?: (number | null);\n /**\n * Date the app-acquisition transaction was revoked (epoch milliseconds).\n * Available through the Xcode 27 SDK and back-deployed to Apple 16+.\n */\n revocationDate?: (number | null);\n signedDate: number;\n /**\n * Store channel of the original app purchase: consumer, education, enterprise,\n * or another future StoreKit value (Apple 27+ beta).\n */\n storeType?: (string | null);\n}\n\n/**\n * Play Billing choice image layout (Android)\n * Available in OpenIAP Spec 2.1.0 / openiap-google 2.3.0 (requires Play Billing 9.1.0+).\n */\nexport type BillingChoiceImageLayoutAndroid = 'rectangular-four-by-one' | 'rectangular-three-by-one' | 'rectangular-two-by-two';\n\n/**\n * Display information for developer-rendered Billing Choice screens (Android)\n * Available in OpenIAP Spec 2.1.0 / openiap-google 2.3.0 (requires Play Billing 9.1.0+).\n */\nexport interface BillingChoiceInfoAndroid {\n /** URL for the Play Billing choice image matching the requested layout. */\n playBillingChoiceImageUrl: string;\n /** Play Loyalty information for the user. */\n playBillingLoyaltyInfo?: (string | null);\n}\n\n/**\n * Choice screen renderer for Billing Choice availability (Android)\n * Available in OpenIAP Spec 2.1.0 / openiap-google 2.3.0 (requires Play Billing 9.1.0+).\n */\nexport type BillingChoiceScreenTypeAndroid = 'unspecified' | 'developer-rendered' | 'google-rendered';\n\n/**\n * Billing program types for Google Play Billing Programs (Android)\n * Available in Google Play Billing Library 8.2.0 (External Offer and External Content Link\n * integrations require 8.2.1+), EXTERNAL_PAYMENTS added in 8.3.0,\n * BILLING_CHOICE added in OpenIAP Spec 2.1.0 / openiap-google 2.3.0\n * (requires Play Billing 9.1.0+).\n */\nexport type BillingProgramAndroid = 'unspecified' | 'user-choice-billing' | 'external-content-link' | 'external-offer' | 'external-payments' | 'billing-choice';\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 /**\n * Billing Choice screen renderer. Populated only for available BILLING_CHOICE results.\n * Available in OpenIAP Spec 2.1.0 / openiap-google 2.3.0.\n */\n choiceScreenType?: (BillingChoiceScreenTypeAndroid | null);\n /** Whether the billing program is available for the user */\n isAvailable: boolean;\n /**\n * Whether external-link payment is available for Billing Choice.\n * Populated only for available BILLING_CHOICE results.\n * Available in OpenIAP Spec 2.1.0 / openiap-google 2.3.0.\n */\n isExternalLinkAvailable?: (boolean | null);\n}\n\n/**\n * Parameters for showing a billing program information dialog (Android)\n * Available in OpenIAP Spec 2.1.0 / openiap-google 2.3.0 (requires Play Billing 9.1.0+).\n */\nexport interface BillingProgramInformationDialogParamsAndroid {\n /** Billing program. Currently only BILLING_CHOICE is supported. */\n billingProgram?: BillingProgramAndroid;\n /** External transaction token returned by the Billing Choice reporting-details flow. */\n externalTransactionToken: string;\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 * Do not cache it for a later redirect session. For External Offer, the same token may report\n * multiple purchases made during the session that generated it.\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\n/**\n * Metadata for one auto-renewable subscription included in an Apple\n * subscription bundle (Apple 27+ beta).\n */\nexport interface BundledSubscriptionIOS {\n description: string;\n displayName: string;\n displayPrice: string;\n id: string;\n isFamilyShareable: boolean;\n price: number;\n subscriptionGroupDisplayName: string;\n subscriptionGroupId: string;\n subscriptionGroupLevel: number;\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 a developer billing option in a purchase flow (Android).\n * Used with BillingFlowParams for external payments (8.3.0+) and Billing Choice\n * (OpenIAP Spec 2.1.0 / openiap-google 2.3.0; requires Play Billing 9.1.0+).\n * Only billingProgram is required; link fields are used when the selected program\n * links outside the app.\n */\nexport interface DeveloperBillingOptionParamsAndroid {\n /** The billing program. Use EXTERNAL_PAYMENTS or BILLING_CHOICE. */\n billingProgram: BillingProgramAndroid;\n /**\n * A pre-generated external transaction token for a Billing Choice external-link\n * flow. Omit it when Google Play should provide the token in the callback.\n */\n externalTransactionToken?: (string | null);\n /**\n * The launch mode for the external payment link.\n * Required only when the selected billing program links outside the app.\n */\n launchMode?: (DeveloperBillingLaunchModeAndroid | null);\n /**\n * The URI where the external payment will be processed.\n * Required only when the selected billing program links outside the app.\n */\n linkUri?: (string | null);\n}\n\n/**\n * Developer-provided billing destination type for Billing Program reporting details (Android)\n * Available in OpenIAP Spec 2.1.0 / openiap-google 2.3.0 (requires Play Billing 9.1.0+).\n */\nexport type DeveloperBillingTypeAndroid = 'developer-billing-type-unspecified' | 'in-app' | 'external-link';\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 * Nullable for flows such as external payments where no token is returned.\n */\n externalTransactionToken?: (string | null);\n /**\n * URI to launch for an external-link Billing Choice flow, when provided by\n * Google Play.\n */\n linkUri?: (string | null);\n /**\n * Original external transaction ID when replacing a subscription that was\n * purchased through developer billing.\n */\n originalExternalTransactionId?: (string | null);\n /** Products selected for the developer billing flow. */\n products: DeveloperProvidedBillingProductAndroid[];\n}\n\n/** Product selected for developer-provided billing (Android 9.0+). */\nexport interface DeveloperProvidedBillingProductAndroid {\n /** Product identifier. */\n id: string;\n /** Subscription offer token, when applicable. */\n offerToken?: (string | null);\n /** Google Play product type (in-app or subscription). */\n type: ProductType;\n}\n\n/**\n * Discount amount details for one-time purchase offers (Android)\n * Available in Google Play Billing Library 8.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 8.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 * Standardized one-time product discount offer.\n * Provides a platform-neutral OpenIAP shape for Google Play one-time product\n * purchase options and offers.\n *\n * Currently populated only on Android (Google Play Billing 8.0+).\n * iOS does not populate this type.\n *\n * @see https://openiap.dev/docs/types/discount-offer\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 including its currency sign (e.g., \"$5.00\"). */\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 the Google Play one-time purchase option\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 8.0+\n */\n purchaseOptionIdAndroid?: (string | null);\n /** [Android] Rental details if this is a rental offer. */\n rentalDetailsAndroid?: (RentalDetailsAndroid | null);\n /**\n * Offer category. DiscountOffer currently represents Android one-time product\n * offers and is populated as OneTime. Introductory and Promotional are used by\n * SubscriptionOffer.\n */\n type: DiscountOfferType;\n /**\n * [Android] Valid time window for the offer.\n * Contains startTimeMillis and endTimeMillis.\n */\n validTimeWindowAndroid?: (ValidTimeWindowAndroid | null);\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 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 * Introduced in Google Play Billing Library 8.2.0. External Offer and External Content Link\n * integrations require 8.2.1+ and fresh details immediately before every redirect session.\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/** 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\n/**\n * Parameters for fetching Billing Choice display information (Android)\n * Available in OpenIAP Spec 2.1.0 / openiap-google 2.3.0 (requires Play Billing 9.1.0+).\n */\nexport interface GetBillingChoiceInfoParamsAndroid {\n /** Billing program. Currently only BILLING_CHOICE is supported. */\n billingProgram?: BillingProgramAndroid;\n /** Desired Play Billing choice image layout. */\n playBillingChoiceImageLayout?: BillingChoiceImageLayoutAndroid;\n /** BCP 47 locale tag. If omitted, Play Billing uses the user's default locale. */\n userLocale?: (string | null);\n}\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' | 'amazon';\n\n/** Serialization format of a public IAPKit product client payload. */\nexport type IapkitClientPayloadFormat = 'toml' | 'json' | 'text';\n\n/**\n * Public app-facing data attached to one store product in IAPKit.\n * Never place credentials, signing keys, or server-authoritative rules here.\n */\nexport interface IapkitProductClientPayload {\n body: string;\n format: IapkitClientPayloadFormat;\n updatedAt: number;\n version: number;\n}\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/**\n * High-level in-app message category (Android)\n * Available in OpenIAP Spec 2.1.0 / openiap-google 2.3.0\n * (upstream API available since Play Billing 4.1.0).\n */\nexport type InAppMessageCategoryAndroid = 'unknown-in-app-message-category-id' | 'transactional';\n\n/**\n * Parameters for showing Play billing in-app messages (Android)\n * Available in OpenIAP Spec 2.1.0 / openiap-google 2.3.0\n * (upstream API available since Play Billing 4.1.0).\n */\nexport interface InAppMessageParamsAndroid {\n /** In-app message categories to show. Defaults to transactional messages. */\n categories?: (InAppMessageCategoryAndroid[] | null);\n}\n\n/**\n * Response code from Play billing in-app messages (Android)\n * Available in OpenIAP Spec 2.1.0 / openiap-google 2.3.0\n * (upstream API available since Play Billing 4.1.0).\n */\nexport type InAppMessageResponseCodeAndroid = 'no-action-needed' | 'subscription-status-updated';\n\n/**\n * Result from showing Play billing in-app messages (Android)\n * Available in OpenIAP Spec 2.1.0 / openiap-google 2.3.0\n * (upstream API available since Play Billing 4.1.0).\n */\nexport interface InAppMessageResultAndroid {\n /** Purchase token returned when a subscription status changed. */\n purchaseToken?: (string | null);\n /** Response code for the in-app messaging flow. */\n responseCode: InAppMessageResponseCodeAndroid;\n}\n\n/** Connection initialization configuration */\nexport interface InitConnectionConfig {\n /**\n * Billing Choice renderer configured in Play Console. Available in OpenIAP\n * Spec 2.1.0 / openiap-google 2.3.0 (requires Play Billing 9.1.0+).\n * GOOGLE_RENDERED registers the developer-provided billing listener so OpenIAP\n * can emit the selection event. DEVELOPER_RENDERED omits that listener so the\n * app can render its own choice screen and use the reporting/dialog/link APIs.\n * Must match choiceScreenType returned by isBillingProgramAvailableAndroid.\n * Defaults to GOOGLE_RENDERED.\n */\n billingChoiceScreenTypeAndroid?: (BillingChoiceScreenTypeAndroid | 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 (introduced in 8.2.0; use 8.2.1+)\n * - EXTERNAL_OFFER: External offers for digital content (introduced in 8.2.0; use 8.2.1+)\n * - EXTERNAL_PAYMENTS: Developer provided billing, Japan only (8.3.0+)\n * - BILLING_CHOICE: Google-rendered or developer-rendered billing choice\n * (OpenIAP Spec 2.1.0 / openiap-google 2.3.0; requires Play Billing 9.1.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, app install, or\n * developer-rendered Billing Choice flows\n * Available in Google Play Billing Library 8.2.0+\n */\nexport interface LaunchExternalLinkParamsAndroid {\n /** The billing program (EXTERNAL_CONTENT_LINK, EXTERNAL_OFFER, or BILLING_CHOICE) */\n billingProgram: BillingProgramAndroid;\n /**\n * External transaction token for a developer-rendered Billing Choice external-link\n * flow. Available in OpenIAP Spec 2.1.0 / openiap-google 2.3.0\n * (requires Play Billing 9.1.0+). Generate it with createBillingProgramReportingDetailsAndroid.\n */\n externalTransactionToken?: (string | null);\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 8.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://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://openiap.dev/docs/apis/ios/begin-refund-request-ios\n */\n beginRefundRequestIOS?: Promise<(string | null)>;\n /**\n * Clear pending transactions in the queue (sandbox helper).\n * See: https://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://openiap.dev/docs/apis/android/consume-purchase-android\n */\n consumePurchaseAndroid: Promise<boolean>;\n /**\n * Create the reporting details and external transaction token required by a billing program.\n * Introduced in Play Billing 8.2.0. External Offer and External Content Link integrations\n * must use 8.2.1+ and create fresh details immediately before every redirect session;\n * do not cache the token for a later redirect. The same token may report multiple purchases\n * made during one External Offer session.\n * Replaces the deprecated createExternalOfferReportingDetailsAsync API.\n * Returns external transaction token needed for reporting external transactions.\n * developerBillingType is optional. When program is BILLING_CHOICE and developerBillingType is omitted,\n * native Android defaults it to IN_APP.\n * The Billing Choice extension is available in OpenIAP Spec 2.1.0 /\n * openiap-google 2.3.0 (requires Play Billing 9.1.0+).\n * Throws OpenIapError.NotPrepared if billing client not ready.\n * See: https://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://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://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://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://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 * Introduced in Google Play Billing Library 8.2.0. External Offer and External\n * Content Link integrations must use 8.2.1+ because 8.2.1 fixes this API.\n * Returns availability result with isAvailable flag.\n * Throws OpenIapError.NotPrepared if billing client not ready.\n * See: https://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 (introduced in\n * Play Billing 8.2.0; External Offer and External Content Link require 8.2.1+),\n * including developer-rendered Billing Choice external-link flows.\n * Billing Choice availability: OpenIAP Spec 2.1.0 / openiap-google 2.3.0\n * (requires Play Billing 9.1.0+).\n * Replaces the deprecated showExternalOfferInformationDialog API.\n * Shows Play Store dialog and optionally launches external URL.\n * Throws OpenIapError.NotPrepared if billing client not ready.\n * See: https://openiap.dev/docs/apis/android/launch-external-link-android\n */\n launchExternalLinkAndroid: Promise<boolean>;\n /**\n * Open the platform's offer/promo code redemption flow.\n * Resolves the redeemed purchase only when the store reports it synchronously;\n * every other path resolves null, so reconcile through the purchase listeners.\n * Throws when a redemption flow exists but cannot be opened.\n * Available in OpenIAP Spec 3.3.0 / openiap-apple 3.3.0 / openiap-google 3.4.0.\n * Replaces presentCodeRedemptionSheetIOS and openRedeemOfferCodeAndroid.\n * See: https://openiap.dev/docs/apis/open-redeem-offer-code\n */\n openRedeemOfferCode?: Promise<(Purchase | null)>;\n /**\n * Deprecated. Open the Google Play offer/promo code redemption flow — use\n * openRedeemOfferCode instead.\n * On Google Play builds, launches the Play Store redeem page\n * (https://play.google.com/redeem). A purchase listener can receive the redeemed\n * purchase while the app is running with an active billing connection; always\n * reconcile with getAvailablePurchases when the app resumes.\n * Does not require the billing client to be initialized (no Play Billing version requirement).\n * Available in OpenIAP Spec 2.4.2 / openiap-google 2.5.0.\n * Android counterpart of presentCodeRedemptionSheetIOS.\n * Returns true when the redemption flow was launched, or false when the current\n * store flavor does not provide an equivalent redemption flow.\n * See: https://openiap.dev/docs/apis/android/open-redeem-offer-code-android\n * @deprecated Use openRedeemOfferCode. Scheduled for removal in OpenIAP 4.0.\n */\n openRedeemOfferCodeAndroid: Promise<boolean>;\n /**\n * Deprecated. Show the App Store offer code redemption sheet — use\n * openRedeemOfferCode instead.\n * When built with Xcode 27+ and running on iOS 27+, Mac Catalyst 27+, or\n * visionOS 27+, returns the verified transaction produced by the redemption.\n * StoreKit 2's scene-based sheet returns null after presentation on iOS 16–26,\n * visionOS 1–26, and those platforms on Apple 27 when built with an older SDK.\n * iOS 15 uses the StoreKit 1 sheet and also returns null. On Mac Catalyst, the\n * scene-based API throws StoreKitError.unknown, while the Catalyst 15 StoreKit 1\n * call has no effect and returns null. Reconcile null results from a presented\n * sheet through the normal transaction listener or an explicit\n * available-purchases refresh.\n * See: https://openiap.dev/docs/apis/ios/present-code-redemption-sheet-ios\n * @deprecated Use openRedeemOfferCode. Scheduled for removal in OpenIAP 4.0.\n */\n presentCodeRedemptionSheetIOS?: Promise<(PurchaseIOS | null)>;\n /**\n * Present an external purchase link, StoreKit External (iOS 16+).\n * See: https://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://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://openiap.dev/docs/apis/request-purchase\n */\n requestPurchase?: Promise<(Purchase | Purchase[] | null)>;\n /**\n * Restore non-consumable and active subscription purchases.\n * See: https://openiap.dev/docs/apis/restore-purchases\n */\n restorePurchases: Promise<void>;\n /**\n * Show Google's mandatory information dialog before a developer-rendered,\n * in-app Billing Choice screen.\n * OpenIAP availability: Spec 2.1.0 / openiap-google 2.3.0 (requires Play Billing 9.1.0+).\n * Throws OpenIapError.NotPrepared if billing client not ready.\n * See: https://openiap.dev/docs/apis/android/show-billing-program-information-dialog-android\n */\n showBillingProgramInformationDialogAndroid: Promise<BillingResultAndroid>;\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://openiap.dev/docs/apis/ios/show-external-purchase-custom-link-notice-ios\n */\n showExternalPurchaseCustomLinkNoticeIOS: Promise<ExternalPurchaseCustomLinkNoticeResultIOS>;\n /**\n * Overlay Play billing in-app messages, such as payment issues or subscription price-change confirmations.\n * OpenIAP availability: Spec 2.1.0 / openiap-google 2.3.0\n * (upstream API available since Play Billing 4.1.0).\n * Returns a response code and, when the subscription status changes, the related purchase token.\n * Throws OpenIapError.NotPrepared if billing client not ready.\n * See: https://openiap.dev/docs/apis/android/show-in-app-messages-android\n */\n showInAppMessagesAndroid: Promise<InAppMessageResultAndroid>;\n /**\n * Present the manage-subscriptions sheet and return changed purchases (iOS 15+).\n * See: https://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://openiap.dev/docs/apis/ios/sync-ios\n */\n syncIOS: Promise<boolean>;\n /**\n * Verify a purchase against your own backend. Every VerifyPurchaseResult\n * variant exposes isValid, so entitlement can be gated without inspecting the\n * concrete type. Variants add their own metadata on top: IOS carries\n * receipt/JWS fields, Android carries Play Store receipt fields, and Horizon\n * carries grantTime.\n * See: https://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://openiap.dev/docs/features/validation#verify-purchase-with-provider\n */\n verifyPurchaseWithProvider: Promise<VerifyPurchaseWithProviderResult>;\n}\n\nexport type MutationAcknowledgePurchaseAndroidArgs = string;\n\nexport type MutationBeginRefundRequestIosArgs = string;\n\nexport type MutationConsumePurchaseAndroidArgs = string;\n\nexport interface MutationCreateBillingProgramReportingDetailsAndroidArgs {\n developerBillingType?: (DeveloperBillingTypeAndroid | null);\n program: BillingProgramAndroid;\n}\n\nexport type MutationDeepLinkToSubscriptionsArgs = (DeepLinkOptions | null) | undefined;\n\nexport interface MutationFinishTransactionArgs {\n isConsumable?: (boolean | null);\n purchase: PurchaseInput;\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 = RequestPurchaseProps;\n\nexport type MutationShowBillingProgramInformationDialogAndroidArgs = BillingProgramInformationDialogParamsAndroid;\n\nexport type MutationShowExternalPurchaseCustomLinkNoticeIosArgs = ExternalPurchaseCustomLinkNoticeTypeIOS;\n\nexport type MutationShowInAppMessagesAndroidArgs = (InAppMessageParamsAndroid | null) | undefined;\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 Android one-time product purchase options and offers.\n * Native metadata uses Android-suffixed fields.\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 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 * 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\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 * iOS 26.4+ subscription pricing terms, including billing plan metadata for\n * monthly subscriptions with a 12-month commitment.\n */\n pricingTermsIOS?: (SubscriptionPricingTermsIOS[] | 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 displayName?: (string | null);\n displayPrice: string;\n id: string;\n nameAndroid: string;\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 * 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\nexport interface ProductSubscriptionIOS extends ProductCommon {\n /**\n * Subscriptions included in this Apple subscription bundle. Empty or null for\n * every other product type (Apple 27+ beta).\n */\n bundledSubscriptionsIOS?: (BundledSubscriptionIOS[] | null);\n currency: string;\n debugDescription?: (string | null);\n description: string;\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 * iOS 26.4+ subscription pricing terms, including billing plan metadata for\n * monthly subscriptions with a 12-month commitment.\n */\n pricingTermsIOS?: (SubscriptionPricingTermsIOS[] | null);\n /** App Store subscription group identifier for intro-offer eligibility checks. */\n subscriptionGroupIdIOS?: (string | 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' | 'subscription-bundle' | 'subscription-suite';\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 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 /** Unix timestamp in milliseconds since January 1, 1970 UTC. */\n transactionDate: number;\n transactionId?: (string | null);\n /**\n * Amazon Appstore user id (PurchaseResponse.getUserData().getUserId()).\n * Only populated on the Amazon flavor; required for server-side Amazon RVS\n * receipt verification (userId + receiptId). Null on Google Play and Horizon.\n */\n userIdAmazon?: (string | null);\n /**\n * Amazon Appstore marketplace (PurchaseResponse.getUserData().getMarketplace()),\n * for example \"US\" or \"FR\". Only populated on the Amazon flavor.\n */\n userMarketplaceAmazon?: (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 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 /** Unix timestamp in milliseconds since January 1, 1970 UTC. */\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 subResponseCodeAndroid?: (SubResponseCodeAndroid | 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 /** iOS 26.4+ billing plan selected for this transaction. */\n billingPlanTypeIOS?: (SubscriptionBillingPlanTypeIOS | null);\n /**\n * Original transaction identifier for the subscription bundle that produced\n * this transaction (Apple 27+ SDK; back-deployed by StoreKit).\n */\n bundleOriginalTransactionIdIOS?: (string | null);\n /** Product identifier of the subscription bundle that produced this transaction. */\n bundleProductIdIOS?: (string | null);\n /** Subscription-group identifier of the bundle that produced this transaction. */\n bundleSubscriptionGroupIdIOS?: (string | null);\n /** Bundle transaction identifier associated with this component transaction. */\n bundleTransactionIdIOS?: (string | null);\n /** iOS 26.4+ progress information for monthly subscriptions with a 12-month commitment. */\n commitmentInfoIOS?: (TransactionCommitmentInfoIOS | 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 /** StoreKit ownership raw value. Xcode 27 adds the back-deployed assigned value. */\n ownershipTypeIOS?: (string | null);\n /**\n * Original transaction identifier replaced when moving between a standalone\n * subscription and a subscription bundle.\n */\n previousOriginalTransactionIdIOS?: (string | null);\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 /** Normalized StoreKit revocation reason, including upgraded_to_bundle. */\n revocationReasonIOS?: (string | null);\n /**\n * StoreKit revocation type, including assignment-revocation on Apple 26.4+\n * when compiled with the Xcode 27 SDK.\n */\n revocationTypeIOS?: (string | null);\n /** Store where purchase was made */\n store: IapStore;\n storefrontCountryCodeIOS?: (string | null);\n subscriptionGroupIdIOS?: (string | null);\n /** Unix timestamp in milliseconds since January 1, 1970 UTC. */\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 interface PurchaseUpdatedListenerOptions {\n /**\n * iOS only. Defaults to true. When false, listener callbacks also receive\n * StoreKit replay events for a transaction ID that was already emitted during\n * the current connection session. Android ignores this option.\n */\n dedupeTransactionIOS?: (boolean | null);\n}\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://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://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://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://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 SKIncludeConsumableInAppPurchaseHistory 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://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://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://openiap.dev/docs/apis/get-available-purchases\n */\n getAvailablePurchases: Promise<Purchase[]>;\n /**\n * Fetch Play Billing assets and loyalty text for developer-rendered Billing Choice screens.\n * OpenIAP availability: Spec 2.1.0 / openiap-google 2.3.0 (requires Play Billing 9.1.0+).\n * Throws OpenIapError.NotPrepared if billing client is not ready.\n * See: https://openiap.dev/docs/apis/android/get-billing-choice-info-android\n */\n getBillingChoiceInfoAndroid: Promise<BillingChoiceInfoAndroid>;\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://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://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 15+).\n * OpenIAP consumes PurchaseIntent.intents on iOS 16.4+ and uses the\n * StoreKit 1 observer only on iOS 15–16.3. When PurchaseIntent carries an\n * externally redeemed win-back offer, OpenIAP preserves it for the next\n * matching requestPurchase unless the caller supplies an explicit win-back or\n * promotional offer.\n * See: https://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://openiap.dev/docs/apis/ios/get-receipt-data-ios\n */\n getReceiptDataIOS?: Promise<(string | null)>;\n /**\n * Return the store-authoritative country code: ISO 3166-1 alpha-3 on Apple\n * platforms and alpha-2 on Android. The operation fails when the store cannot\n * provide a value; implementations must not synthesize a locale fallback.\n * See: https://openiap.dev/docs/apis/get-storefront\n */\n getStorefront: Promise<string>;\n /**\n * Return the JWS string for a transaction (StoreKit 2).\n * See: https://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://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://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://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://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://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://openiap.dev/docs/apis/ios/subscription-status-ios\n */\n subscriptionStatusIOS: Promise<SubscriptionStatusIOS[]>;\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 QueryGetBillingChoiceInfoAndroidArgs = GetBillingChoiceInfoParamsAndroid;\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 interface RefundResultIOS {\n message?: (string | null);\n status: string;\n}\n\nexport interface RenewalCommitmentInfoIOS {\n commitmentAutoRenewProductId: string;\n commitmentAutoRenewStatus: boolean;\n commitmentRenewalBillingPlanType: SubscriptionBillingPlanTypeIOS;\n commitmentRenewalDate: number;\n commitmentRenewalPrice: number;\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 /** Original transaction identifier for the bundle used by the next renewal. */\n bundleOriginalTransactionId?: (string | null);\n /** Product identifier for the bundle used by the next renewal. */\n bundleProductId?: (string | null);\n /** Subscription-group identifier for the bundle used by the next renewal. */\n bundleSubscriptionGroupId?: (string | null);\n /**\n * iOS 26.4+ renewal commitment metadata for monthly subscriptions with a\n * 12-month commitment.\n */\n commitmentInfo?: (RenewalCommitmentInfoIOS | null);\n /**\n * StoreKit's raw integer expiration-reason value represented as a string.\n * Xcode 27 adds the back-deployed unbundled case. Preserve unknown future values.\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 * StoreKit exposes this directly as RenewalInfo.isInBillingRetry.\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 /** iOS 26.4+ billing plan that will renew after the current period. */\n renewalBillingPlanType?: (SubscriptionBillingPlanTypeIOS | 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 /** Whether this subscription will leave its bundle and renew standalone. */\n willUnbundle?: (boolean | null);\n}\n\n/**\n * Rental details for one-time purchase products that can be rented (Android)\n * Available in Google Play Billing Library 8.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 and Billing Choice.\n * Billing Choice is available in OpenIAP Spec 2.1.0 / openiap-google 2.3.0\n * (requires Play Billing 9.1.0+).\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 (8.0+).\n * Pass the offerToken from 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 /** Explicit purchase type hint (defaults to in-app) */\n type: 'in-app';\n }\n | {\n /** Per-platform subscription request props */\n request: RequestSubscriptionPropsByPlatforms;\n /** Explicit purchase type hint (defaults to in-app) */\n type: 'subs';\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, Horizon when built with horizon flavor,\n * or Fire OS when built with amazon flavor\n * (determined at build time, not runtime)\n */\nexport interface RequestPurchasePropsByPlatforms {\n /** Apple-specific purchase parameters */\n apple?: (RequestPurchaseIosProps | null);\n /** Google-specific purchase parameters */\n google?: (RequestPurchaseAndroidProps | null);\n}\n\nexport type RequestPurchaseResult = Purchase | Purchase[] | null;\n\nexport interface RequestSubscriptionAndroidProps {\n /**\n * Developer billing option parameters for external payments and Billing Choice.\n * Billing Choice is available in OpenIAP Spec 2.1.0 / openiap-google 2.3.0\n * (requires Play Billing 9.1.0+).\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 * Original external transaction ID for replacing a subscription that was\n * purchased through developer billing. Available in OpenIAP Spec 2.1.0 /\n * openiap-google 2.3.0 (requires Play Billing 9.1.0+).\n */\n originalExternalTransactionId?: (string | null);\n /** Purchase token for upgrades/downgrades */\n purchaseToken?: (string | 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 * This singular form requires skus to contain exactly one target product.\n * Multi-item subscription changes need a per-target replacement mapping and\n * are rejected rather than applying one oldProductId to multiple products.\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 * Billing plan to use when purchasing an annual subscription that offers\n * monthly billing with a 12-month commitment (iOS 26.4+).\n */\n billingPlanType?: (SubscriptionBillingPlanTypeIOS | null);\n /**\n * Compact JWS string for overriding introductory offer eligibility\n * (iOS 15+, WWDC 2025). When nil, the system determines eligibility.\n * Generate the JWS on your server and pass it to StoreKit's\n * introductoryOfferEligibility(compactJWS:) purchase option.\n */\n compactJWS?: (string | 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, Horizon when built with horizon flavor,\n * or Fire OS when built with amazon flavor\n * (determined at build time, not runtime)\n */\nexport interface RequestSubscriptionPropsByPlatforms {\n /** Apple-specific subscription parameters */\n apple?: (RequestSubscriptionIosProps | null);\n /** Google-specific subscription parameters */\n google?: (RequestSubscriptionAndroidProps | null);\n}\n\nexport interface RequestVerifyPurchaseWithIapkitAmazonProps {\n /**\n * Available in OpenIAP Spec 3.2.0 / openiap-apple 3.2.0 / openiap-google 3.3.0.\n * Optional Amazon product id that must match the product id verified by RVS.\n */\n expectedProductId?: (string | null);\n /** Amazon Appstore receipt id returned by PurchaseResponse.getReceipt().getReceiptId(). */\n receiptId: string;\n /** Use Amazon RVS Cloud Sandbox for App Tester receipts. */\n sandbox?: (boolean | null);\n /** Amazon Appstore user id returned by PurchaseResponse.getUserData().getUserId(). */\n userId?: (string | 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\nexport interface RequestVerifyPurchaseWithIapkitHorizonProps {\n /** Meta Horizon product or subscription SKU. */\n sku: string;\n /** Meta app-scoped user ID. The openiap-google Horizon module resolves the logged-in user when omitted. */\n userId?: (string | null);\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 * - horizon: Verifies via Meta Horizon (app-scoped user ID + SKU)\n * - amazon: Verifies via Amazon Appstore RVS (userId + receiptId)\n */\nexport interface RequestVerifyPurchaseWithIapkitProps {\n /** Amazon Appstore verification parameters. */\n amazon?: (RequestVerifyPurchaseWithIapkitAmazonProps | null);\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 /**\n * Available in OpenIAP Spec 2.3.1 / openiap-apple 2.4.0 / openiap-google 2.4.0.\n * Base URL for the IAPKit server. Defaults to https://kit.openiap.dev.\n * Set this to a reachable HTTP(S) origin when self-hosting or testing a local IAPKit server.\n * The apiKey must be issued by the same IAPKit/Convex deployment as this server.\n */\n baseUrl?: (string | null);\n /** Google Play Store verification parameters. */\n google?: (RequestVerifyPurchaseWithIapkitGoogleProps | null);\n /** Meta Horizon verification parameters. */\n horizon?: (RequestVerifyPurchaseWithIapkitHorizonProps | null);\n /**\n * Available in OpenIAP Spec 2.4.0 / openiap-apple 2.4.1 / openiap-google 2.4.1.\n * Include the product's public IAPKit client payload in a valid verification\n * response. Defaults to false so existing response\n * shapes and bandwidth remain unchanged.\n */\n includeClientPayload?: (boolean | null);\n}\n\nexport interface RequestVerifyPurchaseWithIapkitResult {\n /**\n * Available in OpenIAP Spec 2.4.0 / openiap-apple 2.4.1 / openiap-google 2.4.1.\n * Public product payload when includeClientPayload was requested, the\n * Apple or Google receipt is valid, and a payload exists for that product.\n */\n clientPayload?: (IapkitProductClientPayload | null);\n /**\n * Available in OpenIAP Spec 3.2.0 / openiap-apple 3.2.0 / openiap-google 3.3.0.\n * Amazon RVS environment selected by IAPKit. Present as `Sandbox` or\n * `Production` on handled Amazon verification results.\n *\n * Deliberately String, not an enum: the value space belongs to IAPKit and the\n * stores behind it, and Apple's App Store Server alone also names `Xcode` and\n * `LocalTesting`. SDKs must forward this value opaquely. Never reject a\n * verification because the environment is unrecognised — that fails a purchase\n * the store already confirmed.\n */\n environment?: (string | null);\n /**\n * True when the purchase is valid and actionable.\n * Only entitled, pending-acknowledgment, or ready-to-consume return true.\n * Callers must still match productId and use the platform plus app-owned product\n * type to choose the fulfillment path.\n */\n isValid: boolean;\n /**\n * Available in OpenIAP Spec 2.4.0 / openiap-apple 2.4.1 / openiap-google 2.4.1.\n * Store-verified product identifier when the provider returns one.\n */\n productId?: (string | null);\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 an External Payments or\n * Billing Choice flow (Android only). The payload can contain an external\n * transaction token, link URI, original transaction ID, and selected products.\n * Billing Choice payload fields are available in OpenIAP Spec 2.1.0 /\n * openiap-google 2.3.0 (requires Play Billing 9.1.0+).\n */\n developerProvidedBillingAndroid: DeveloperProvidedBillingDetailsAndroid;\n /**\n * Fires when the App Store surfaces a promoted product (iOS only).\n * A win-back offer attached to PurchaseIntent is preserved for the next\n * matching requestPurchase unless the caller supplies an explicit win-back or\n * promotional offer.\n */\n promotedProductIOS: string;\n /** Fires when a purchase fails or is cancelled */\n purchaseError: PurchaseError;\n /**\n * Fires when a purchase completes successfully or a pending purchase resolves\n * Options can opt iOS listeners into duplicate StoreKit transaction replays\n * for diagnostics; default listeners receive one event per transaction ID\n * during a single connection session.\n */\n purchaseUpdated: Purchase;\n /**\n * Fires when a subscription enters a billing-issue state that needs user action\n * (payment method failed, card expired, etc.). Cross-platform unification:\n *\n * - iOS 16.4+ / Mac Catalyst 16.4+ / visionOS 1.0+: delivered via StoreKit 2\n * `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 * - Android (Amazon flavor): NOT emitted. Amazon Appstore IAP does not expose an\n * equivalent subscription billing-issue 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\nexport type SubscriptionPurchaseUpdatedArgs = (PurchaseUpdatedListenerOptions | null) | undefined;\n\nexport type SubscriptionBillingPlanTypeIOS = 'unknown' | 'monthly' | 'up-front';\n\nexport interface SubscriptionCommitmentInfoIOS {\n displayPrice: string;\n period: SubscriptionPeriodValueIOS;\n price: number;\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/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 the Google Play subscription offer\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\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\nexport interface SubscriptionPricingTermsIOS {\n billingDisplayPrice: string;\n billingPeriod: SubscriptionPeriodValueIOS;\n billingPlanType: SubscriptionBillingPlanTypeIOS;\n billingPrice: number;\n commitmentInfo: SubscriptionCommitmentInfoIOS;\n subscriptionOffers?: (SubscriptionOffer[] | null);\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 interface SubscriptionStatusIOS {\n renewalInfo?: (RenewalInfoIOS | null);\n state: string;\n}\n\nexport interface TransactionCommitmentInfoIOS {\n billingPeriodNumber: number;\n commitmentExpiresDate: number;\n commitmentPrice: number;\n totalBillingPeriods: number;\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 /**\n * External transaction ID of the originating subscription when the user is\n * upgrading or downgrading a developer-billed subscription. Available in\n * OpenIAP Spec 2.3.0 / openiap-google 2.3.1 (requires Play Billing 9.1+).\n */\n originalExternalTransactionId?: (string | null);\n /**\n * Structured product details selected in the user-choice flow, including the\n * product type and offer token. Legacy payloads may omit this field; use\n * products as the product-ID fallback. Available in OpenIAP Spec 2.3.0 /\n * openiap-google 2.3.1 (requires Play Billing 9.1+).\n */\n productDetailsAndroid?: (DeveloperProvidedBillingProductAndroid[] | null);\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 8.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 extends VerifyPurchaseResultCommon {\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 /**\n * Whether the purchase is valid. Uniform across every VerifyPurchaseResult\n * variant so callers can gate entitlement without inspecting the concrete type.\n */\n isValid: boolean;\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/** Validity shared by every store-specific purchase verification result. */\nexport interface VerifyPurchaseResultCommon {\n /** Whether the purchase is valid, without inspecting the concrete result variant. */\n isValid: 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 extends VerifyPurchaseResultCommon {\n /** Unix timestamp (seconds) when the entitlement was granted. */\n grantTime?: (number | null);\n /**\n * Whether the purchase is valid. Uniform across every VerifyPurchaseResult\n * variant so callers can gate entitlement without inspecting the concrete type.\n */\n isValid: boolean;\n /**\n * Whether the entitlement verification succeeded.\n * @deprecated Renamed to isValid so every VerifyPurchaseResult variant answers validity the same way. Scheduled for removal in OpenIAP 4.0.\n */\n success: boolean;\n}\n\nexport interface VerifyPurchaseResultIOS extends VerifyPurchaseResultCommon {\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\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// -- Mutation helper types (auto-generated)\nexport type MutationArgsMap = {\n acknowledgePurchaseAndroid: MutationAcknowledgePurchaseAndroidArgs;\n beginRefundRequestIOS: MutationBeginRefundRequestIosArgs;\n clearTransactionIOS: never;\n consumePurchaseAndroid: MutationConsumePurchaseAndroidArgs;\n createBillingProgramReportingDetailsAndroid: MutationCreateBillingProgramReportingDetailsAndroidArgs;\n deepLinkToSubscriptions: MutationDeepLinkToSubscriptionsArgs;\n endConnection: never;\n finishTransaction: MutationFinishTransactionArgs;\n initConnection: MutationInitConnectionArgs;\n isBillingProgramAvailableAndroid: MutationIsBillingProgramAvailableAndroidArgs;\n launchExternalLinkAndroid: MutationLaunchExternalLinkAndroidArgs;\n openRedeemOfferCode: never;\n openRedeemOfferCodeAndroid: never;\n presentCodeRedemptionSheetIOS: never;\n presentExternalPurchaseLinkIOS: MutationPresentExternalPurchaseLinkIosArgs;\n presentExternalPurchaseNoticeSheetIOS: never;\n requestPurchase: MutationRequestPurchaseArgs;\n restorePurchases: never;\n showBillingProgramInformationDialogAndroid: MutationShowBillingProgramInformationDialogAndroidArgs;\n showExternalPurchaseCustomLinkNoticeIOS: MutationShowExternalPurchaseCustomLinkNoticeIosArgs;\n showInAppMessagesAndroid: MutationShowInAppMessagesAndroidArgs;\n showManageSubscriptionsIOS: never;\n syncIOS: never;\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// -- 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 getBillingChoiceInfoAndroid: QueryGetBillingChoiceInfoAndroidArgs;\n getExternalPurchaseCustomLinkTokenIOS: QueryGetExternalPurchaseCustomLinkTokenIosArgs;\n getPendingTransactionsIOS: never;\n getPromotedProductIOS: never;\n getReceiptDataIOS: never;\n getStorefront: never;\n getTransactionJwsIOS: QueryGetTransactionJwsIosArgs;\n hasActiveSubscriptions: QueryHasActiveSubscriptionsArgs;\n isEligibleForExternalPurchaseCustomLinkIOS: never;\n isEligibleForIntroOfferIOS: QueryIsEligibleForIntroOfferIosArgs;\n isTransactionVerifiedIOS: QueryIsTransactionVerifiedIosArgs;\n latestTransactionIOS: QueryLatestTransactionIosArgs;\n subscriptionStatusIOS: QuerySubscriptionStatusIosArgs;\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// -- Subscription helper types (auto-generated)\nexport type SubscriptionArgsMap = {\n developerProvidedBillingAndroid: never;\n promotedProductIOS: never;\n purchaseError: never;\n purchaseUpdated: SubscriptionPurchaseUpdatedArgs;\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
- "spec": "3.3.1",
3
- "google": "3.4.0",
4
- "apple": "3.3.1"
2
+ "spec": "3.4.0",
3
+ "google": "3.5.0",
4
+ "apple": "3.4.0"
5
5
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "expo-iap",
3
- "version": "5.4.1",
3
+ "version": "5.5.0",
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
@@ -1828,11 +1828,19 @@ export interface RequestVerifyPurchaseWithIapkitGoogleProps {
1828
1828
  purchaseToken: string;
1829
1829
  }
1830
1830
 
1831
+ export interface RequestVerifyPurchaseWithIapkitHorizonProps {
1832
+ /** Meta Horizon product or subscription SKU. */
1833
+ sku: string;
1834
+ /** Meta app-scoped user ID. The openiap-google Horizon module resolves the logged-in user when omitted. */
1835
+ userId?: (string | null);
1836
+ }
1837
+
1831
1838
  /**
1832
1839
  * Platform-specific verification parameters for IAPKit.
1833
1840
  *
1834
1841
  * - apple: Verifies via App Store (JWS token)
1835
1842
  * - google: Verifies via Play Store (purchase token)
1843
+ * - horizon: Verifies via Meta Horizon (app-scoped user ID + SKU)
1836
1844
  * - amazon: Verifies via Amazon Appstore RVS (userId + receiptId)
1837
1845
  */
1838
1846
  export interface RequestVerifyPurchaseWithIapkitProps {
@@ -1851,10 +1859,12 @@ export interface RequestVerifyPurchaseWithIapkitProps {
1851
1859
  baseUrl?: (string | null);
1852
1860
  /** Google Play Store verification parameters. */
1853
1861
  google?: (RequestVerifyPurchaseWithIapkitGoogleProps | null);
1862
+ /** Meta Horizon verification parameters. */
1863
+ horizon?: (RequestVerifyPurchaseWithIapkitHorizonProps | null);
1854
1864
  /**
1855
1865
  * Available in OpenIAP Spec 2.4.0 / openiap-apple 2.4.1 / openiap-google 2.4.1.
1856
- * Include the product's public IAPKit client payload in a valid Apple or
1857
- * Google verification response. Defaults to false so existing response
1866
+ * Include the product's public IAPKit client payload in a valid verification
1867
+ * response. Defaults to false so existing response
1858
1868
  * shapes and bandwidth remain unchanged.
1859
1869
  */
1860
1870
  includeClientPayload?: (boolean | null);