<Type Name="ClientException" FullName="Avahi.ClientException">
  <TypeSignature Language="C#" Value="public class ClientException : System.ApplicationException" />
  <AssemblyInfo>
    <AssemblyName>avahi-sharp</AssemblyName>
    <AssemblyVersion>1.0.0.0</AssemblyVersion>
  </AssemblyInfo>
  <Base>
    <BaseTypeName>System.ApplicationException</BaseTypeName>
  </Base>
  <Interfaces />
  <Members>
    <Member MemberName="ErrorCode">
      <MemberSignature Language="C#" Value="public Avahi.ErrorCode ErrorCode { get; };" />
      <MemberType>Property</MemberType>
      <ReturnValue>
        <ReturnType>Avahi.ErrorCode</ReturnType>
      </ReturnValue>
      <Docs>
        <summary>To be added.</summary>
        <value>To be added.</value>
        <remarks>To be added.</remarks>
      </Docs>
    </Member>
  </Members>
  <Docs>
    <summary>To be added.</summary>
    <remarks>To be added.</remarks>
  </Docs>
</Type>
