Skip to main content

storekit/
lib.rs

1#![doc = include_str!("../README.md")]
2#![cfg_attr(docsrs, feature(doc_cfg))]
3#![allow(
4    clippy::missing_errors_doc,
5    clippy::module_name_repetitions,
6    clippy::must_use_candidate
7)]
8
9pub mod advanced_commerce;
10pub mod app_store;
11pub mod app_transaction;
12pub mod error;
13pub mod external_purchase;
14mod ffi;
15pub mod message;
16mod private;
17pub mod product;
18mod product_helpers;
19pub mod purchase_intent;
20pub mod purchase_option;
21pub mod receipt_validator;
22pub mod refund;
23pub mod renewal_info;
24pub mod renewal_state;
25pub mod store_context;
26pub mod storefront;
27pub mod subscription;
28pub mod subscription_info;
29mod subscription_status_stream;
30pub mod transaction;
31pub mod verification_result;
32pub mod window;
33
34pub use advanced_commerce::{
35    AdvancedCommerceProduct, AdvancedCommercePurchaseOption, AppStoreMerchandisingKind,
36    AppStoreMerchandisingPresentationResult, RenewalInfoAdvancedCommerceInfo,
37    RenewalInfoAdvancedCommerceItem, RenewalInfoAdvancedCommercePriceIncreaseInfo,
38    RenewalInfoAdvancedCommercePriceIncreaseStatus, TransactionAdvancedCommerceInfo,
39    TransactionAdvancedCommerceItem, TransactionAdvancedCommerceItemDetails,
40    TransactionAdvancedCommerceOffer, TransactionAdvancedCommerceOfferReason,
41    TransactionAdvancedCommerceRefund, TransactionAdvancedCommerceRefundReason,
42    TransactionAdvancedCommerceRefundType,
43};
44pub use app_store::{AppStore, AppStoreEnvironment, AppStorePlatform};
45pub use app_transaction::AppTransaction;
46pub use error::{
47    InvalidRequestError, ProductPurchaseError, ProductPurchaseErrorCode, RefundRequestError,
48    RefundRequestErrorCode, StoreKitApiError, StoreKitApiErrorCode, StoreKitError,
49    StoreKitFrameworkError, TypedStoreKitError, VerificationErrorCode, VerificationFailure,
50};
51pub use external_purchase::{
52    ExternalPurchase, ExternalPurchaseCustomLink, ExternalPurchaseCustomLinkNoticeResult,
53    ExternalPurchaseCustomLinkNoticeType, ExternalPurchaseCustomLinkToken, ExternalPurchaseLink,
54    ExternalPurchaseNoticeResult,
55};
56pub use message::{Message, MessageReason, MessageStream};
57pub use product::{Product, ProductType};
58pub use product_helpers::ProductFormatting;
59pub use purchase_intent::{PurchaseIntent, PurchaseIntentStream};
60pub use purchase_option::{PurchaseOption, PurchaseResult};
61pub use receipt_validator::{AppReceipt, ReceiptValidator};
62pub use refund::{Refund, RefundRequestStatus};
63pub use renewal_info::{ExpirationReason, PriceIncreaseStatus, RenewalInfo};
64pub use renewal_state::RenewalState;
65pub use store_context::StoreContext;
66pub use storefront::{Storefront, StorefrontStream};
67pub use subscription::{
68    SubscriptionOffer, SubscriptionOfferType, SubscriptionPaymentMode, SubscriptionPeriod,
69    SubscriptionPeriodUnit,
70};
71pub use subscription_info::{SubscriptionInfo, SubscriptionStatus};
72pub use subscription_status_stream::{
73    SubscriptionGroupStatusStream, SubscriptionGroupStatuses, SubscriptionStatusStream,
74};
75pub use transaction::{
76    OfferPaymentMode, OfferType, OwnershipType, RevocationReason, Transaction, TransactionData,
77    TransactionOffer, TransactionReason, TransactionStream,
78};
79pub use verification_result::{VerificationMetadata, VerificationResult};
80pub use window::NSWindowHandle;
81
82/// Common imports.
83pub mod prelude {
84    pub use crate::advanced_commerce::{
85        AdvancedCommerceProduct, AdvancedCommercePurchaseOption, AppStoreMerchandisingKind,
86        AppStoreMerchandisingPresentationResult, RenewalInfoAdvancedCommerceInfo,
87        RenewalInfoAdvancedCommerceItem, RenewalInfoAdvancedCommercePriceIncreaseInfo,
88        RenewalInfoAdvancedCommercePriceIncreaseStatus, TransactionAdvancedCommerceInfo,
89        TransactionAdvancedCommerceItem, TransactionAdvancedCommerceItemDetails,
90        TransactionAdvancedCommerceOffer, TransactionAdvancedCommerceOfferReason,
91        TransactionAdvancedCommerceRefund, TransactionAdvancedCommerceRefundReason,
92        TransactionAdvancedCommerceRefundType,
93    };
94    pub use crate::app_store::{AppStore, AppStoreEnvironment, AppStorePlatform};
95    pub use crate::app_transaction::AppTransaction;
96    pub use crate::error::{
97        InvalidRequestError, ProductPurchaseError, ProductPurchaseErrorCode, RefundRequestError,
98        RefundRequestErrorCode, StoreKitApiError, StoreKitApiErrorCode, StoreKitError,
99        StoreKitFrameworkError, TypedStoreKitError, VerificationErrorCode, VerificationFailure,
100    };
101    pub use crate::external_purchase::{
102        ExternalPurchase, ExternalPurchaseCustomLink, ExternalPurchaseCustomLinkNoticeResult,
103        ExternalPurchaseCustomLinkNoticeType, ExternalPurchaseCustomLinkToken,
104        ExternalPurchaseLink, ExternalPurchaseNoticeResult,
105    };
106    pub use crate::message::{Message, MessageReason, MessageStream};
107    pub use crate::product::{Product, ProductType};
108    pub use crate::product_helpers::ProductFormatting;
109    pub use crate::purchase_intent::{PurchaseIntent, PurchaseIntentStream};
110    pub use crate::purchase_option::{PurchaseOption, PurchaseResult};
111    pub use crate::receipt_validator::{AppReceipt, ReceiptValidator};
112    pub use crate::refund::{Refund, RefundRequestStatus};
113    pub use crate::renewal_info::{ExpirationReason, PriceIncreaseStatus, RenewalInfo};
114    pub use crate::renewal_state::RenewalState;
115    pub use crate::store_context::StoreContext;
116    pub use crate::storefront::{Storefront, StorefrontStream};
117    pub use crate::subscription::{
118        SubscriptionOffer, SubscriptionOfferType, SubscriptionPaymentMode, SubscriptionPeriod,
119        SubscriptionPeriodUnit,
120    };
121    pub use crate::subscription_info::{SubscriptionInfo, SubscriptionStatus};
122    pub use crate::subscription_status_stream::{
123        SubscriptionGroupStatusStream, SubscriptionGroupStatuses, SubscriptionStatusStream,
124    };
125    pub use crate::transaction::{
126        OfferPaymentMode, OfferType, OwnershipType, RevocationReason, Transaction, TransactionData,
127        TransactionOffer, TransactionReason, TransactionStream,
128    };
129    pub use crate::verification_result::{VerificationMetadata, VerificationResult};
130    pub use crate::window::NSWindowHandle;
131}