using System;
using System.Collections.Generic;
namespace UnityEngine.Purchasing.Extension
{
///
/// Callback interface for s.
///
public interface IStoreCallback
{
///
/// For querying product information.
///
ProductCollection products { get; }
///
/// Purchasing unavailable.
///
/// The reason the initialization failed.
[Obsolete]
void OnSetupFailed(InitializationFailureReason reason);
///
/// Purchasing unavailable.
///
/// The reason the initialization failed.
/// More information on the failure reason.
void OnSetupFailed(InitializationFailureReason reason, string message);
///
/// Complete setup by providing a list of available products,
/// complete with metadata and any associated purchase receipts
/// and transaction IDs.
///
/// Any previously unseen purchases will be completed by the PurchasingManager.
///
/// The list of product descriptions retrieved.
void OnProductsRetrieved(List products);
///
/// Inform Unity Purchasing of a purchase.
///
/// The product id specific to the store it was purchased from.
/// The receipt provided by the store detailing the purchase
/// The id of the transaction
void OnPurchaseSucceeded(string storeSpecificId, string receipt, string transactionIdentifier);
///
/// Inform Unity Purchasing of all active purchases.
///
/// all active purchased products
void OnAllPurchasesRetrieved(List purchasedProducts);
///
/// Notify a failed purchase with associated details.
///
/// The object detailing the purchase failure
void OnPurchaseFailed(PurchaseFailureDescription desc);
///
/// Stores may opt to disable Unity IAP's transaction log if they offer a robust transaction
/// system of their own (e.g. Apple).
///
/// The default value is 'true'.
///
bool useTransactionLog { get; set; }
}
}