Silverlight 5 WinRT

  public sealed class CreatePushNotificationChannelOperation
  : __ComObject, IAsyncOperation`1<PushNotificationChannel>, IAsyncInfo
  public virtual AsyncOperationCompletedHandler`1<PushNotificationChannel> 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 PushNotificationChannel GetResults();
  public virtual void Start();

  public abstract interface IPushNotificationChannel
 
  public abstract virtual DateTimeOffset ExpirationTime { get; }
  public abstract virtual String Uri { get; }
  public abstract virtual event PushNotificationReceivedEventHandler PushNotificationReceived;
  public abstract virtual void Close();

  public abstract interface IPushNotificationChannelManagerStatics
 
  public abstract virtual CreatePushNotificationChannelOperation CreatePushNotificationChannelForApplicationAsync();
  public abstract virtual CreatePushNotificationChannelOperation CreatePushNotificationChannelForApplicationAsync(String applicationId);
  public abstract virtual CreatePushNotificationChannelOperation CreatePushNotificationChannelForSecondaryTileAsync(String tileId);

  public abstract interface IPushNotificationReceivedEventArgs
 
  public abstract virtual BadgeNotification BadgeNotification { get; }
  public abstract virtual Boolean Cancel { get; set; }
  public abstract virtual PushNotificationType NotificationType { get; }
  public abstract virtual TileNotification TileNotification { get; }
  public abstract virtual ToastNotification ToastNotification { get; }

  public abstract interface IRawNotification
 
  public abstract virtual String ContentString { get; }
  public abstract virtual Nullable`1<DateTimeOffset> ExpirationTime { get; }

  public sealed class PushNotificationChannel
  : __ComObject, IPushNotificationChannel
  public virtual DateTimeOffset ExpirationTime { get; }
  public virtual String Uri { get; }
  public virtual event PushNotificationReceivedEventHandler PushNotificationReceived;
  public virtual void Close();

  public abstract sealed class PushNotificationChannelManager
  : __ComObject
  static public CreatePushNotificationChannelOperation CreatePushNotificationChannelForApplicationAsync();
  static public CreatePushNotificationChannelOperation CreatePushNotificationChannelForApplicationAsync(String applicationId);
  static public CreatePushNotificationChannelOperation CreatePushNotificationChannelForSecondaryTileAsync(String tileId);

  public sealed class PushNotificationReceivedEventArgs
  : __ComObject, IPushNotificationReceivedEventArgs
  public virtual BadgeNotification BadgeNotification { get; }
  public virtual Boolean Cancel { get; set; }
  public virtual PushNotificationType NotificationType { get; }
  public virtual TileNotification TileNotification { get; }
  public virtual ToastNotification ToastNotification { get; }

  public sealed class PushNotificationReceivedEventHandler
  : MulticastDelegate, ICloneable, ISerializable
  public virtual void Invoke(PushNotificationChannel sender, PushNotificationReceivedEventArgs e);

  public sealed enum PushNotificationType
  : IComparable, IFormattable, IConvertible
  { Toast, Tile, Badge }