Silverlight 5 WinRT

  public abstract sealed class CurrentProduct
  : __ComObject
  static public LicenseInformation LicenseInformation { get; }
  static public Uri LinkUri { get; }
  static public Guid ProductId { get; }
  static public LoadListingOperation LoadListingInformationAsync();
  static public RequestFeaturePurchaseOperation RequestFeaturePurchaseAsync(String featureId);
  static public RequestProductPurchaseOperation RequestProductPurchaseAsync();

  public abstract sealed class CurrentProductSimulator
  : __ComObject
  static public LicenseInformation LicenseInformation { get; }
  static public Uri LinkUri { get; }
  static public Guid ProductId { get; }
  static public LoadListingOperation LoadListingInformationAsync();
  static public RequestFeaturePurchaseOperation RequestFeaturePurchaseAsync(String featureId);
  static public RequestProductPurchaseOperation RequestProductPurchaseAsync();

  public sealed class FeatureLicense
  : __ComObject, IFeatureLicense
  public virtual DateTimeOffset ExpirationDate { get; }
  public virtual String FeatureId { get; }
  public virtual Boolean IsActive { get; }

  public sealed class FeatureListing
  : __ComObject, IFeatureListing
  public virtual String FeatureId { get; }
  public virtual String FormattedPrice { get; }
  public virtual String Name { get; }
  public virtual Double Price { get; }

  public abstract interface ICurrentProduct
 
  public abstract virtual LicenseInformation LicenseInformation { get; }
  public abstract virtual Uri LinkUri { get; }
  public abstract virtual Guid ProductId { get; }
  public abstract virtual LoadListingOperation LoadListingInformationAsync();
  public abstract virtual RequestFeaturePurchaseOperation RequestFeaturePurchaseAsync(String featureId);
  public abstract virtual RequestProductPurchaseOperation RequestProductPurchaseAsync();

  public abstract interface IFeatureLicense
 
  public abstract virtual DateTimeOffset ExpirationDate { get; }
  public abstract virtual String FeatureId { get; }
  public abstract virtual Boolean IsActive { get; }

  public abstract interface IFeatureListing
 
  public abstract virtual String FeatureId { get; }
  public abstract virtual String FormattedPrice { get; }
  public abstract virtual String Name { get; }
  public abstract virtual Double Price { get; }

  public abstract interface ILicenseInformation
 
  public abstract virtual DateTimeOffset ExpirationDate { get; }
  public abstract virtual IReadOnlyDictionary`2<String, IFeatureLicense> FeatureLicenses { get; }
  public abstract virtual Boolean IsActive { get; }
  public abstract virtual Boolean IsTrial { get; }
  public abstract virtual event LicenseChangedEventHandler LicenseChanged;

  public abstract interface IListingInformation
 
  public abstract virtual String CurrentMarket { get; }
  public abstract virtual String Description { get; }
  public abstract virtual IReadOnlyDictionary`2<String, IFeatureListing> FeatureListings { get; }
  public abstract virtual String FormattedPrice { get; }
  public abstract virtual String Name { get; }
  public abstract virtual Double Price { get; }

  public sealed class LicenseChangedEventHandler
  : MulticastDelegate, ICloneable, ISerializable
  public virtual void Invoke();

  public sealed class LicenseInformation
  : __ComObject, ILicenseInformation
  public virtual DateTimeOffset ExpirationDate { get; }
  public virtual IReadOnlyDictionary`2<String, IFeatureLicense> FeatureLicenses { get; }
  public virtual Boolean IsActive { get; }
  public virtual Boolean IsTrial { get; }
  public virtual event LicenseChangedEventHandler LicenseChanged;

  public sealed class ListingInformation
  : __ComObject, IListingInformation
  public virtual String CurrentMarket { get; }
  public virtual String Description { get; }
  public virtual IReadOnlyDictionary`2<String, IFeatureListing> FeatureListings { get; }
  public virtual String FormattedPrice { get; }
  public virtual String Name { get; }
  public virtual Double Price { get; }

  public sealed class LoadListingOperation
  : __ComObject, IAsyncOperation`1<ListingInformation>, IAsyncInfo
  public virtual AsyncOperationCompletedHandler`1<ListingInformation> Completed { get; set; }
  public virtual Exception ErrorCode { get; }
  public virtual UInt32 Id { get; }
  public virtual AsyncStatus Status { get; }
  public virtual void Cancel();
  public virtual void Close();
  public virtual ListingInformation GetResults();
  public virtual void Start();

  public sealed class RequestFeaturePurchaseOperation
  : __ComObject, IAsyncAction, IAsyncInfo
  public virtual AsyncActionCompletedHandler Completed { get; set; }
  public virtual Exception ErrorCode { get; }
  public virtual UInt32 Id { get; }
  public virtual AsyncStatus Status { get; }
  public virtual void Cancel();
  public virtual void Close();
  public virtual void GetResults();
  public virtual void Start();

  public sealed class RequestProductPurchaseOperation
  : __ComObject, IAsyncAction, IAsyncInfo
  public virtual AsyncActionCompletedHandler Completed { get; set; }
  public virtual Exception ErrorCode { get; }
  public virtual UInt32 Id { get; }
  public virtual AsyncStatus Status { get; }
  public virtual void Cancel();
  public virtual void Close();
  public virtual void GetResults();
  public virtual void Start();