Available on crate feature
async only.Expand description
Async API for StoreKit — Tier 1 Future wrappers.
This module requires the async Cargo feature:
storekit-rs = { version = "0.3", features = ["async"] }Every public type is an executor-agnostic Future backed by a
doom_fish_utils completion handler. The futures work with any async
runtime (tokio, async-std, smol, pollster, …).
§Available types
| Type | Description |
|---|---|
AsyncProducts | Fetch products by identifier |
AsyncPurchase | Purchase a product |
AsyncAppStore | Request review / manage subscriptions |
AsyncAppTransaction | Fetch the app transaction |
AsyncStorefront | Fetch the current storefront |
§AsyncSequence APIs — deferred to Tier 2
The following StoreKit APIs expose AsyncSequence (multi-fire streams).
They are intentionally not included here; they will be wrapped as
Stream types in the Tier 2 rollout:
Transaction.updates— usecrate::transaction::TransactionStreamin the meantimeTransaction.currentEntitlements— usecrate::transaction::TransactionStreamTransaction.unfinished— usecrate::transaction::TransactionStream
§Examples
use storekit::async_api::{AsyncProducts, AsyncAppTransaction};
let products = AsyncProducts::fetch(["com.example.pro"])?.await?;
println!("{} product(s) found", products.len());
let app_tx = AsyncAppTransaction::shared().await?;
println!("bundle: {}", app_tx.payload().bundle_id);Structs§
- AppTransaction
Future - Future for
AsyncAppTransaction::shared. - Async
AppStore - Async wrapper for
AppStoreUI APIs. - Async
AppTransaction - Async wrapper for
AppTransaction.shared. - Async
Products - Async wrapper for
Product.products(for:). - Async
Purchase - Async wrapper for
Product.purchase(options:). - Async
Storefront - Async wrapper for
Storefront.current. - Products
Future - Future for
AsyncProducts::fetch. - Purchase
Future - Future for
AsyncPurchase::buy. - Request
Review Future - Future for
AsyncAppStore::request_review. - Show
Manage Subscriptions Future - Future for
AsyncAppStore::show_manage_subscriptions. - Storefront
Current Future - Future for
AsyncStorefront::current.