<Type Name="ServiceTypeInfoArgs" FullName="Avahi.ServiceTypeInfoArgs">
  <TypeSignature Language="C#" Value="public class ServiceTypeInfoArgs : 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 ServiceTypeInfoArgs (Avahi.ServiceTypeInfo type);" />
      <MemberType>Constructor</MemberType>
      <Parameters>
        <Parameter Name="type" Type="Avahi.ServiceTypeInfo" />
      </Parameters>
      <Docs>
        <param name="type">To be added.</param>
        <summary>To be added.</summary>
        <remarks>To be added.</remarks>
      </Docs>
    </Member>
    <Member MemberName="ServiceType">
      <MemberSignature Language="C#" Value="public Avahi.ServiceTypeInfo ServiceType { get; };" />
      <MemberType>Property</MemberType>
      <ReturnValue>
        <ReturnType>Avahi.ServiceTypeInfo</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>
