<Type Name="DomainInfoArgs" FullName="Avahi.DomainInfoArgs">
  <TypeSignature Language="C#" Value="public class DomainInfoArgs : System.EventArgs" />
  <AssemblyInfo>
    <AssemblyName>avahi-sharp</AssemblyName>
    <AssemblyVersion>1.0.0.0</AssemblyVersion>
  </AssemblyInfo>
  <Base>
    <BaseTypeName>System.EventArgs</BaseTypeName>
  </Base>
  <Interfaces />
  <Members>
    <Member MemberName=".ctor">
      <MemberSignature Language="C#" Value="public DomainInfoArgs (Avahi.DomainInfo domain);" />
      <MemberType>Constructor</MemberType>
      <Parameters>
        <Parameter Name="domain" Type="Avahi.DomainInfo" />
      </Parameters>
      <Docs>
        <param name="domain">To be added.</param>
        <summary>To be added.</summary>
        <remarks>To be added.</remarks>
      </Docs>
    </Member>
    <Member MemberName="Domain">
      <MemberSignature Language="C#" Value="public Avahi.DomainInfo Domain { get; };" />
      <MemberType>Property</MemberType>
      <ReturnValue>
        <ReturnType>Avahi.DomainInfo</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>
