Silverlight 5 WinRT

  public class CustomPeerResolverService
  : IPeerResolverContract
  public TimeSpan CleanupInterval { get; set; }
  public Boolean ControlShape { get; set; }
  public TimeSpan RefreshInterval { get; set; }
  public virtual void Close();
  public virtual ServiceSettingsResponseInfo GetServiceSettings();
  public virtual void Open();
  public virtual RefreshResponseInfo Refresh(RefreshInfo refreshInfo);
  public virtual RegisterResponseInfo Register(Guid clientId, String meshId, PeerNodeAddress address);
  public virtual RegisterResponseInfo Register(RegisterInfo registerInfo);
  public virtual ResolveResponseInfo Resolve(ResolveInfo resolveInfo);
  public virtual void Unregister(UnregisterInfo unregisterInfo);
  public virtual RegisterResponseInfo Update(UpdateInfo updateInfo);

  public abstract interface IPeerResolverContract
 
  public abstract virtual ServiceSettingsResponseInfo GetServiceSettings();
  public abstract virtual RefreshResponseInfo Refresh(RefreshInfo refreshInfo);
  public abstract virtual RegisterResponseInfo Register(RegisterInfo registerInfo);
  public abstract virtual ResolveResponseInfo Resolve(ResolveInfo resolveInfo);
  public abstract virtual void Unregister(UnregisterInfo unregisterInfo);
  public abstract virtual RegisterResponseInfo Update(UpdateInfo updateInfo);

  public class PeerCustomResolverSettings
 
  public EndpointAddress Address { get; set; }
  public Binding Binding { get; set; }
  public Boolean IsBindingSpecified { get; }
  public PeerResolver Resolver { get; set; }

  public sealed enum PeerReferralPolicy
  : IComparable, IFormattable, IConvertible
  { Service, Share, DoNotShare }

  public sealed enum PeerResolverMode
  : IComparable, IFormattable, IConvertible
  { Auto, Pnrp, Custom }

  public class PeerResolverSettings
 
  public PeerCustomResolverSettings Custom { get; }
  public PeerResolverMode Mode { get; set; }
  public PeerReferralPolicy ReferralPolicy { get; set; }

  public class RefreshInfo
 
  public String MeshId { get; }
  public Guid RegistrationId { get; }
  public Boolean HasBody();

  public class RefreshResponseInfo
 
  public TimeSpan RegistrationLifetime { get; set; }
  public RefreshResult Result { get; set; }
  public Boolean HasBody();

  public sealed enum RefreshResult
  : IComparable, IFormattable, IConvertible
  { Success, RegistrationNotFound }

  public class RegisterInfo
 
  public Guid ClientId { get; }
  public String MeshId { get; }
  public PeerNodeAddress NodeAddress { get; }
  public Boolean HasBody();

  public class RegisterResponseInfo
 
  public Guid RegistrationId { get; set; }
  public TimeSpan RegistrationLifetime { get; set; }
  public Boolean HasBody();

  public class ResolveInfo
 
  public Guid ClientId { get; }
  public Int32 MaxAddresses { get; }
  public String MeshId { get; }
  public Boolean HasBody();

  public class ResolveResponseInfo
 
  public IList`1<PeerNodeAddress> Addresses { get; set; }
  public Boolean HasBody();

  public class ServiceSettingsResponseInfo
 
  public Boolean ControlMeshShape { get; set; }
  public Boolean HasBody();

  public class UnregisterInfo
 
  public String MeshId { get; }
  public Guid RegistrationId { get; }
  public Boolean HasBody();

  public class UpdateInfo
 
  public Guid ClientId { get; }
  public String MeshId { get; }
  public PeerNodeAddress NodeAddress { get; }
  public Guid RegistrationId { get; }
  public Boolean HasBody();