<?xml version="1.0"?>
<!-- This file was automatically generated from C sources - DO NOT EDIT!
To affect the contents of this file, edit the original C definitions,
and/or use gtk-doc annotations.  -->
<repository version="1.2"
            xmlns="http://www.gtk.org/introspection/core/1.0"
            xmlns:c="http://www.gtk.org/introspection/c/1.0"
            xmlns:doc="http://www.gtk.org/introspection/doc/1.0"
            xmlns:glib="http://www.gtk.org/introspection/glib/1.0">
  <include name="GObject" version="2.0"/>
  <include name="GdkPixbuf" version="2.0"/>
  <include name="Gio" version="2.0"/>
  <package name="appstream-glib"/>
  <doc:format name="unknown"/>
  <namespace name="AppStreamGlib"
             version="1.0"
             shared-library="libappstream-glib.so.8"
             c:identifier-prefixes="As"
             c:symbol-prefixes="as_">
    <alias name="AppSourceKind" c:type="AsAppSourceKind">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-app.h"
           line="261">The source kind.

This has been deprecated since 0.6.9 in favour of using AsFormatKind.</doc>
      <source-position filename="libappstream-glib/as-app.h" line="274"/>
      <type name="FormatKind" c:type="AsFormatKind"/>
    </alias>
    <alias name="ImageAlphaFlags" c:type="AsImageAlphaFlags">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-image.h"
           line="92">The flags used for reporting the alpha cutouts in the image.</doc>
      <source-position filename="libappstream-glib/as-image.h" line="109"/>
      <type name="guint" c:type="guint"/>
    </alias>
    <alias name="Node" c:type="AsNode">
      <source-position filename="libappstream-glib/as-node.h" line="104"/>
      <type name="GLib.Node" c:type="GNode"/>
    </alias>
    <constant name="APP_SUBSUME_FLAG_DEDUPE"
              value="6208094264"
              c:type="AS_APP_SUBSUME_FLAG_DEDUPE">
      <source-position filename="libappstream-glib/as-app.h" line="175"/>
      <type name="gint" c:type="gint"/>
    </constant>
    <constant name="APP_SUBSUME_FLAG_MERGE"
              value="266555883456"
              c:type="AS_APP_SUBSUME_FLAG_MERGE">
      <source-position filename="libappstream-glib/as-app.h" line="169"/>
      <type name="gint" c:type="gint"/>
    </constant>
    <class name="Agreement"
           c:symbol-prefix="agreement"
           c:type="AsAgreement"
           parent="GObject.Object"
           glib:type-name="AsAgreement"
           glib:get-type="as_agreement_get_type"
           glib:type-struct="AgreementClass">
      <source-position filename="libappstream-glib/as-agreement.h" line="35"/>
      <constructor name="new" c:identifier="as_agreement_new" version="0.7.8">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-agreement.c"
             line="309">Creates a new #AsAgreement.</doc>
        <source-position filename="libappstream-glib/as-agreement.h"
                         line="55"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-agreement.c"
               line="314">a #AsAgreement</doc>
          <type name="Agreement" c:type="AsAgreement*"/>
        </return-value>
      </constructor>
      <function name="kind_from_string"
                c:identifier="as_agreement_kind_from_string"
                version="0.7.8">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-agreement.c"
             line="86">Converts the text representation to an enumerated value.</doc>
        <source-position filename="libappstream-glib/as-agreement.h"
                         line="58"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-agreement.c"
               line="92">a #AsAgreementKind or %AS_AGREEMENT_KIND_UNKNOWN for unknown</doc>
          <type name="AgreementKind" c:type="AsAgreementKind"/>
        </return-value>
        <parameters>
          <parameter name="value" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-agreement.c"
                 line="88">the string.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </function>
      <function name="kind_to_string"
                c:identifier="as_agreement_kind_to_string"
                version="0.7.8">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-agreement.c"
             line="64">Converts the enumerated value to an text representation.</doc>
        <source-position filename="libappstream-glib/as-agreement.h"
                         line="57"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-agreement.c"
               line="70">string version of @value</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <parameter name="value" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-agreement.c"
                 line="66">the #AsAgreementKind.</doc>
            <type name="AgreementKind" c:type="AsAgreementKind"/>
          </parameter>
        </parameters>
      </function>
      <method name="add_section" c:identifier="as_agreement_add_section">
        <source-position filename="libappstream-glib/as-agreement.h"
                         line="68"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="agreement" transfer-ownership="none">
            <type name="Agreement" c:type="AsAgreement*"/>
          </instance-parameter>
          <parameter name="agreement_section" transfer-ownership="none">
            <type name="AgreementSection" c:type="AsAgreementSection*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_kind"
              c:identifier="as_agreement_get_kind"
              version="0.7.8">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-agreement.c"
             line="108">Gets the agreement kind.</doc>
        <source-position filename="libappstream-glib/as-agreement.h"
                         line="60"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-agreement.c"
               line="114">a string, e.g. %AS_AGREEMENT_KIND_EULA</doc>
          <type name="AgreementKind" c:type="AsAgreementKind"/>
        </return-value>
        <parameters>
          <instance-parameter name="agreement" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-agreement.c"
                 line="110">a #AsAgreement instance.</doc>
            <type name="Agreement" c:type="AsAgreement*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_section_default"
              c:identifier="as_agreement_get_section_default"
              version="0.7.8">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-agreement.c"
             line="196">Gets the first section in the agreement.</doc>
        <source-position filename="libappstream-glib/as-agreement.h"
                         line="66"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-agreement.c"
               line="202">agreement section, or %NULL</doc>
          <type name="AgreementSection" c:type="AsAgreementSection*"/>
        </return-value>
        <parameters>
          <instance-parameter name="agreement" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-agreement.c"
                 line="198">a #AsAgreement instance.</doc>
            <type name="Agreement" c:type="AsAgreement*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_sections"
              c:identifier="as_agreement_get_sections"
              version="0.7.8">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-agreement.c"
             line="178">Gets all the sections in the agreement.</doc>
        <source-position filename="libappstream-glib/as-agreement.h"
                         line="67"/>
        <return-value transfer-ownership="container">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-agreement.c"
               line="184">array</doc>
          <array name="GLib.PtrArray" c:type="GPtrArray*">
            <type name="AgreementSection"/>
          </array>
        </return-value>
        <parameters>
          <instance-parameter name="agreement" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-agreement.c"
                 line="180">a #AsAgreement instance.</doc>
            <type name="Agreement" c:type="AsAgreement*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_version_id"
              c:identifier="as_agreement_get_version_id"
              version="0.7.8">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-agreement.c"
             line="143">Gets the agreement version_id.</doc>
        <source-position filename="libappstream-glib/as-agreement.h"
                         line="63"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-agreement.c"
               line="149">a string, e.g. "1.4a", or NULL</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="agreement" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-agreement.c"
                 line="145">a #AsAgreement instance.</doc>
            <type name="Agreement" c:type="AsAgreement*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="set_kind"
              c:identifier="as_agreement_set_kind"
              version="0.7.8">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-agreement.c"
             line="126">Sets the agreement kind.</doc>
        <source-position filename="libappstream-glib/as-agreement.h"
                         line="61"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="agreement" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-agreement.c"
                 line="128">a #AsAgreement instance.</doc>
            <type name="Agreement" c:type="AsAgreement*"/>
          </instance-parameter>
          <parameter name="kind" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-agreement.c"
                 line="129">the agreement kind, e.g. %AS_AGREEMENT_KIND_EULA</doc>
            <type name="AgreementKind" c:type="AsAgreementKind"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_version_id"
              c:identifier="as_agreement_set_version_id"
              version="0.7.8">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-agreement.c"
             line="161">Sets the agreement version identifier.</doc>
        <source-position filename="libappstream-glib/as-agreement.h"
                         line="64"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="agreement" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-agreement.c"
                 line="163">a #AsAgreement instance.</doc>
            <type name="Agreement" c:type="AsAgreement*"/>
          </instance-parameter>
          <parameter name="version_id" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-agreement.c"
                 line="164">the agreement version ID, e.g. "1.4a"</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <field name="parent_instance">
        <type name="GObject.Object" c:type="GObject"/>
      </field>
    </class>
    <record name="AgreementClass"
            c:type="AsAgreementClass"
            glib:is-gtype-struct-for="Agreement">
      <source-position filename="libappstream-glib/as-agreement.h" line="35"/>
      <field name="parent_class">
        <type name="GObject.ObjectClass" c:type="GObjectClass"/>
      </field>
      <field name="_as_reserved1" introspectable="0">
        <callback name="_as_reserved1">
          <source-position filename="libappstream-glib/as-agreement.h"
                           line="27"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved2" introspectable="0">
        <callback name="_as_reserved2">
          <source-position filename="libappstream-glib/as-agreement.h"
                           line="28"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved3" introspectable="0">
        <callback name="_as_reserved3">
          <source-position filename="libappstream-glib/as-agreement.h"
                           line="29"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved4" introspectable="0">
        <callback name="_as_reserved4">
          <source-position filename="libappstream-glib/as-agreement.h"
                           line="30"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved5" introspectable="0">
        <callback name="_as_reserved5">
          <source-position filename="libappstream-glib/as-agreement.h"
                           line="31"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved6" introspectable="0">
        <callback name="_as_reserved6">
          <source-position filename="libappstream-glib/as-agreement.h"
                           line="32"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved7" introspectable="0">
        <callback name="_as_reserved7">
          <source-position filename="libappstream-glib/as-agreement.h"
                           line="33"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved8" introspectable="0">
        <callback name="_as_reserved8">
          <source-position filename="libappstream-glib/as-agreement.h"
                           line="34"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
    </record>
    <enumeration name="AgreementKind" c:type="AsAgreementKind">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-agreement.h"
           line="37">The kind of the agreement.</doc>
      <source-position filename="libappstream-glib/as-agreement.h" line="53"/>
      <member name="unknown"
              value="0"
              c:identifier="AS_AGREEMENT_KIND_UNKNOWN">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-agreement.h"
             line="39">Unknown value</doc>
      </member>
      <member name="generic"
              value="1"
              c:identifier="AS_AGREEMENT_KIND_GENERIC">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-agreement.h"
             line="40">A generic agreement without a specific type</doc>
      </member>
      <member name="eula" value="2" c:identifier="AS_AGREEMENT_KIND_EULA">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-agreement.h"
             line="41">An End User License Agreement</doc>
      </member>
      <member name="privacy"
              value="3"
              c:identifier="AS_AGREEMENT_KIND_PRIVACY">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-agreement.h"
             line="42">A privacy agreement, typically a GDPR statement</doc>
      </member>
    </enumeration>
    <class name="AgreementSection"
           c:symbol-prefix="agreement_section"
           c:type="AsAgreementSection"
           parent="GObject.Object"
           glib:type-name="AsAgreementSection"
           glib:get-type="as_agreement_section_get_type"
           glib:type-struct="AgreementSectionClass">
      <source-position filename="libappstream-glib/as-agreement-section.h"
                       line="33"/>
      <constructor name="new"
                   c:identifier="as_agreement_section_new"
                   version="0.7.8">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-agreement-section.c"
             line="301">Creates a new #AsAgreementSection.</doc>
        <source-position filename="libappstream-glib/as-agreement-section.h"
                         line="35"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-agreement-section.c"
               line="306">a #AsAgreementSection</doc>
          <type name="AgreementSection" c:type="AsAgreementSection*"/>
        </return-value>
      </constructor>
      <method name="get_description"
              c:identifier="as_agreement_section_get_description"
              version="0.7.8">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-agreement-section.c"
             line="153">Gets the agreement section desc.</doc>
        <source-position filename="libappstream-glib/as-agreement-section.h"
                         line="45"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-agreement-section.c"
               line="160">a string, e.g. "GDPR", or NULL</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="agreement_section"
                              transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-agreement-section.c"
                 line="155">a #AsAgreementSection instance.</doc>
            <type name="AgreementSection" c:type="AsAgreementSection*"/>
          </instance-parameter>
          <parameter name="locale"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-agreement-section.c"
                 line="156">the locale. e.g. "en_GB"</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_kind"
              c:identifier="as_agreement_section_get_kind"
              version="0.7.8">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-agreement-section.c"
             line="70">Gets the agreement section kind.</doc>
        <source-position filename="libappstream-glib/as-agreement-section.h"
                         line="37"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-agreement-section.c"
               line="76">a string, e.g. "GDPR", or NULL</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="agreement_section"
                              transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-agreement-section.c"
                 line="72">a #AsAgreementSection instance.</doc>
            <type name="AgreementSection" c:type="AsAgreementSection*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_name"
              c:identifier="as_agreement_section_get_name"
              version="0.7.8">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-agreement-section.c"
             line="105">Gets the agreement section name.</doc>
        <source-position filename="libappstream-glib/as-agreement-section.h"
                         line="40"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-agreement-section.c"
               line="112">a string, e.g. "GDPR", or NULL</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="agreement_section"
                              transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-agreement-section.c"
                 line="107">a #AsAgreementSection instance.</doc>
            <type name="AgreementSection" c:type="AsAgreementSection*"/>
          </instance-parameter>
          <parameter name="locale"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-agreement-section.c"
                 line="108">the locale. e.g. "en_GB"</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_description"
              c:identifier="as_agreement_section_set_description"
              version="0.7.8">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-agreement-section.c"
             line="173">Sets the agreement section description.</doc>
        <source-position filename="libappstream-glib/as-agreement-section.h"
                         line="47"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="agreement_section"
                              transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-agreement-section.c"
                 line="175">a #AsAgreementSection instance.</doc>
            <type name="AgreementSection" c:type="AsAgreementSection*"/>
          </instance-parameter>
          <parameter name="locale"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-agreement-section.c"
                 line="176">the locale. e.g. "en_GB"</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="desc" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-agreement-section.c"
                 line="177">the rating desc, e.g. "GDPR"</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_kind"
              c:identifier="as_agreement_section_set_kind"
              version="0.7.8">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-agreement-section.c"
             line="88">Sets the agreement section kind.</doc>
        <source-position filename="libappstream-glib/as-agreement-section.h"
                         line="38"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="agreement_section"
                              transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-agreement-section.c"
                 line="90">a #AsAgreementSection instance.</doc>
            <type name="AgreementSection" c:type="AsAgreementSection*"/>
          </instance-parameter>
          <parameter name="kind" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-agreement-section.c"
                 line="91">the rating kind, e.g. "GDPR"</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_name"
              c:identifier="as_agreement_section_set_name"
              version="0.7.8">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-agreement-section.c"
             line="124">Sets the agreement section name.</doc>
        <source-position filename="libappstream-glib/as-agreement-section.h"
                         line="42"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="agreement_section"
                              transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-agreement-section.c"
                 line="126">a #AsAgreementSection instance.</doc>
            <type name="AgreementSection" c:type="AsAgreementSection*"/>
          </instance-parameter>
          <parameter name="locale"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-agreement-section.c"
                 line="127">the locale. e.g. "en_GB"</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="name" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-agreement-section.c"
                 line="128">the rating name, e.g. "GDPR"</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <field name="parent_instance">
        <type name="GObject.Object" c:type="GObject"/>
      </field>
    </class>
    <record name="AgreementSectionClass"
            c:type="AsAgreementSectionClass"
            glib:is-gtype-struct-for="AgreementSection">
      <source-position filename="libappstream-glib/as-agreement-section.h"
                       line="33"/>
      <field name="parent_class">
        <type name="GObject.ObjectClass" c:type="GObjectClass"/>
      </field>
      <field name="_as_reserved1" introspectable="0">
        <callback name="_as_reserved1">
          <source-position filename="libappstream-glib/as-agreement-section.h"
                           line="25"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved2" introspectable="0">
        <callback name="_as_reserved2">
          <source-position filename="libappstream-glib/as-agreement-section.h"
                           line="26"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved3" introspectable="0">
        <callback name="_as_reserved3">
          <source-position filename="libappstream-glib/as-agreement-section.h"
                           line="27"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved4" introspectable="0">
        <callback name="_as_reserved4">
          <source-position filename="libappstream-glib/as-agreement-section.h"
                           line="28"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved5" introspectable="0">
        <callback name="_as_reserved5">
          <source-position filename="libappstream-glib/as-agreement-section.h"
                           line="29"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved6" introspectable="0">
        <callback name="_as_reserved6">
          <source-position filename="libappstream-glib/as-agreement-section.h"
                           line="30"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved7" introspectable="0">
        <callback name="_as_reserved7">
          <source-position filename="libappstream-glib/as-agreement-section.h"
                           line="31"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved8" introspectable="0">
        <callback name="_as_reserved8">
          <source-position filename="libappstream-glib/as-agreement-section.h"
                           line="32"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
    </record>
    <class name="App"
           c:symbol-prefix="app"
           c:type="AsApp"
           parent="GObject.Object"
           glib:type-name="AsApp"
           glib:get-type="as_app_get_type"
           glib:type-struct="AppClass">
      <source-position filename="libappstream-glib/as-app.h" line="48"/>
      <constructor name="new" c:identifier="as_app_new" version="0.1.0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="6758">Creates a new #AsApp.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="463"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="6763">a #AsApp</doc>
          <type name="App" c:type="AsApp*"/>
        </return-value>
      </constructor>
      <function name="error_quark"
                c:identifier="as_app_error_quark"
                version="0.1.2">
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="121">An error quark.</doc>
          <type name="GLib.Quark" c:type="GQuark"/>
        </return-value>
      </function>
      <function name="guess_source_kind"
                c:identifier="as_app_guess_source_kind"
                version="0.1.8">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="390">Guesses the source kind based from the filename.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="757"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="396">A #AsFormatKind, e.g. %AS_FORMAT_KIND_APPSTREAM.</doc>
          <type name="FormatKind" c:type="AsFormatKind"/>
        </return-value>
        <parameters>
          <parameter name="filename" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="392">a file name</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </function>
      <function name="kind_from_string"
                c:identifier="as_app_kind_from_string"
                version="0.5.10">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="175">Converts the text representation to an enumerated value.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="467"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="181">a #AsAppKind or %AS_APP_KIND_UNKNOWN for unknown</doc>
          <type name="AppKind" c:type="AsAppKind"/>
        </return-value>
        <parameters>
          <parameter name="kind" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="177">the string.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </function>
      <function name="kind_to_string"
                c:identifier="as_app_kind_to_string"
                version="0.5.10">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="127">Converts the enumerated value to an text representation.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="466"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="133">string version of @kind</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <parameter name="kind" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="129">the #AsAppKind.</doc>
            <type name="AppKind" c:type="AsAppKind"/>
          </parameter>
        </parameters>
      </function>
      <function name="merge_kind_from_string"
                c:identifier="as_app_merge_kind_from_string"
                version="0.6.1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="346">Converts the text representation to an enumerated value.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="470"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="352">A #AsAppMergeKind, e.g. %AS_APP_MERGE_KIND_REPLACE.</doc>
          <type name="AppMergeKind" c:type="AsAppMergeKind"/>
        </return-value>
        <parameters>
          <parameter name="merge_kind" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="348">a source kind string</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </function>
      <function name="merge_kind_to_string"
                c:identifier="as_app_merge_kind_to_string"
                version="0.6.1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="368">Converts the enumerated value to an text representation.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="471"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="374">string version of @merge_kind, or %NULL for unknown</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <parameter name="merge_kind" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="370">the #AsAppMergeKind, e.g. %AS_APP_MERGE_KIND_REPLACE</doc>
            <type name="AppMergeKind" c:type="AsAppMergeKind"/>
          </parameter>
        </parameters>
      </function>
      <function name="scope_from_string"
                c:identifier="as_app_scope_from_string"
                version="0.6.1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="306">Converts the text representation to an enumerated value.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="468"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="312">A #AsAppScope, e.g. %AS_APP_SCOPE_SYSTEM.</doc>
          <type name="AppScope" c:type="AsAppScope"/>
        </return-value>
        <parameters>
          <parameter name="scope" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="308">a source kind string</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </function>
      <function name="scope_to_string"
                c:identifier="as_app_scope_to_string"
                version="0.6.1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="326">Converts the enumerated value to an text representation.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="469"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="332">string version of @scope, or %NULL for unknown</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <parameter name="scope" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="328">the #AsAppScope, e.g. %AS_APP_SCOPE_SYSTEM</doc>
            <type name="AppScope" c:type="AsAppScope"/>
          </parameter>
        </parameters>
      </function>
      <function name="source_kind_from_string"
                c:identifier="as_app_source_kind_from_string"
                version="0.2.2">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="234">Converts the text representation to an enumerated value.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="752"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="240">A #AsFormatKind, e.g. %AS_FORMAT_KIND_APPSTREAM.</doc>
          <type name="FormatKind" c:type="AsFormatKind"/>
        </return-value>
        <parameters>
          <parameter name="source_kind" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="236">a source kind string</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </function>
      <function name="source_kind_to_string"
                c:identifier="as_app_source_kind_to_string"
                version="0.2.2">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="250">Converts the enumerated value to an text representation.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="754"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="256">string version of @source_kind, or %NULL for unknown</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <parameter name="source_kind" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="252">the #AsFormatKind.</doc>
            <type name="FormatKind" c:type="AsFormatKind"/>
          </parameter>
        </parameters>
      </function>
      <function name="state_to_string"
                c:identifier="as_app_state_to_string"
                version="0.2.2">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="266">Converts the enumerated value to an text representation.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="465"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="272">string version of @state, or %NULL for unknown</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <parameter name="state" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="268">the #AsAppState.</doc>
            <type name="AppState" c:type="AsAppState"/>
          </parameter>
        </parameters>
      </function>
      <method name="add_addon" c:identifier="as_app_add_addon" version="0.1.7">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="3923">Adds a addon to an application.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="667"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="3925">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="addon" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="3926">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </parameter>
        </parameters>
      </method>
      <method name="add_agreement"
              c:identifier="as_app_add_agreement"
              version="0.7.8">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="3486">Adds a agreement to an application.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="642"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="3488">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="agreement" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="3489">a #AsAgreement instance.</doc>
            <type name="Agreement" c:type="AsAgreement*"/>
          </parameter>
        </parameters>
      </method>
      <method name="add_arch" c:identifier="as_app_add_arch" version="0.1.1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="3751">Adds a package name to an application.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="628"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="3753">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="arch" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="3754">the package name.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="add_bundle"
              c:identifier="as_app_add_bundle"
              version="0.3.5">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="3610">Adds a bundle to an application.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="646"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="3612">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="bundle" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="3613">a #AsBundle instance.</doc>
            <type name="Bundle" c:type="AsBundle*"/>
          </parameter>
        </parameters>
      </method>
      <method name="add_category"
              c:identifier="as_app_add_category"
              version="0.1.0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="2889">Adds a menu category to the application.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="605"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="2891">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="category" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="2892">the category.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="add_compulsory_for_desktop"
              c:identifier="as_app_add_compulsory_for_desktop"
              version="0.1.0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="2941">Adds a desktop that requires this application to be installed.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="657"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="2943">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="compulsory_for_desktop" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="2944">the desktop string, e.g. "GNOME".</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="add_content_rating"
              c:identifier="as_app_add_content_rating"
              version="0.5.12">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="3458">Adds a content_rating to an application.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="640"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="3460">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="content_rating" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="3461">a #AsContentRating instance.</doc>
            <type name="ContentRating" c:type="AsContentRating*"/>
          </parameter>
        </parameters>
      </method>
      <method name="add_extends"
              c:identifier="as_app_add_extends"
              version="0.1.7">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="3891">Adds a parent ID to the application.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="669"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="3893">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="extends" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="3894">the full ID, e.g. "eclipse.desktop".</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="add_format"
              c:identifier="as_app_add_format"
              version="0.6.9">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="3146">Add a format the application has been built from.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="620"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="3148">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="format" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="3149">the #AsFormat.</doc>
            <type name="Format" c:type="AsFormat*"/>
          </parameter>
        </parameters>
      </method>
      <method name="add_icon" c:identifier="as_app_add_icon" version="0.3.1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="3548">Adds a icon to an application.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="644"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="3550">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="icon" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="3551">a #AsIcon instance.</doc>
            <type name="Icon" c:type="AsIcon*"/>
          </parameter>
        </parameters>
      </method>
      <method name="add_keyword"
              c:identifier="as_app_add_keyword"
              version="0.3.0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="2999">Add a keyword the application should match against.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="609"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="3001">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="locale"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="3002">the locale. e.g. "en_GB"</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="keyword" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="3003">the keyword.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="add_kudo" c:identifier="as_app_add_kudo" version="0.2.2">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="3036">Add a kudo the application has obtained.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="612"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="3038">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="kudo" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="3039">the kudo.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="add_kudo_kind"
              c:identifier="as_app_add_kudo_kind"
              version="0.2.2">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="3193">Add a kudo the application has obtained.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="616"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="3195">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="kudo_kind" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="3196">the #AsKudoKind.</doc>
            <type name="KudoKind" c:type="AsKudoKind"/>
          </parameter>
        </parameters>
      </method>
      <method name="add_language"
              c:identifier="as_app_add_language"
              version="0.1.0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="3781">Adds a language to the application.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="654"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="3783">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="percentage" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="3784">the percentage completion of the translation, or 0 for unknown</doc>
            <type name="gint" c:type="gint"/>
          </parameter>
          <parameter name="locale"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="3785">the locale. e.g. "en_GB"</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="add_launchable"
              c:identifier="as_app_add_launchable"
              version="0.6.13">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="3347">Adds a launchable to an application.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="634"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="3349">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="launchable" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="3350">a #AsLaunchable instance.</doc>
            <type name="Launchable" c:type="AsLaunchable*"/>
          </parameter>
        </parameters>
      </method>
      <method name="add_metadata"
              c:identifier="as_app_add_metadata"
              version="0.1.0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="3844">Adds a metadata entry to the application.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="662"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="3846">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="key" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="3847">the metadata key.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="value"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="3848">the value to store.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="add_mimetype"
              c:identifier="as_app_add_mimetype"
              version="0.1.0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="3209">Adds a mimetype the application can process.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="624"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="3211">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="mimetype" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="3212">the mimetype.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="add_permission"
              c:identifier="as_app_add_permission"
              version="0.3.5">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="3086">Add a permission the application has obtained.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="618"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="3088">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="permission" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="3089">the permission.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="add_pkgname"
              c:identifier="as_app_add_pkgname"
              version="0.1.0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="3718">Adds a package name to an application.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="626"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="3720">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="pkgname" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="3721">the package name.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="add_provide"
              c:identifier="as_app_add_provide"
              version="0.1.6">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="3317">Adds a provide to an application.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="632"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="3319">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="provide" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="3320">a #AsProvide instance.</doc>
            <type name="Provide" c:type="AsProvide*"/>
          </parameter>
        </parameters>
      </method>
      <method name="add_quirk"
              c:identifier="as_app_add_quirk"
              version="0.5.10">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="2417">Adds a specific attribute to an application.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="671"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="2419">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="quirk" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="2420">the #AsAppQuirk, e.g. %AS_APP_QUIRK_PROVENANCE</doc>
            <type name="AppQuirk" c:type="AsAppQuirk"/>
          </parameter>
        </parameters>
      </method>
      <method name="add_release"
              c:identifier="as_app_add_release"
              version="0.1.0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="3287">Adds a release to an application.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="630"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="3289">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="release" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="3290">a #AsRelease instance.</doc>
            <type name="Release" c:type="AsRelease*"/>
          </parameter>
        </parameters>
      </method>
      <method name="add_require"
              c:identifier="as_app_add_require"
              version="0.6.7">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="3693">Adds a require to an application.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="652"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="3695">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="require" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="3696">a #AsRequire instance.</doc>
            <type name="Require" c:type="AsRequire*"/>
          </parameter>
        </parameters>
      </method>
      <method name="add_review"
              c:identifier="as_app_add_review"
              version="0.6.1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="3431">Adds a review to an application.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="638"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="3433">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="review" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="3434">a #AsReview instance.</doc>
            <type name="Review" c:type="AsReview*"/>
          </parameter>
        </parameters>
      </method>
      <method name="add_screenshot"
              c:identifier="as_app_add_screenshot"
              version="0.1.0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="3392">Adds a screenshot to an application.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="636"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="3394">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="screenshot" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="3395">a #AsScreenshot instance.</doc>
            <type name="Screenshot" c:type="AsScreenshot*"/>
          </parameter>
        </parameters>
      </method>
      <method name="add_suggest"
              c:identifier="as_app_add_suggest"
              version="0.6.1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="3677">Adds a suggest to an application.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="650"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="3679">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="suggest" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="3680">a #AsSuggest instance.</doc>
            <type name="Suggest" c:type="AsSuggest*"/>
          </parameter>
        </parameters>
      </method>
      <method name="add_translation"
              c:identifier="as_app_add_translation"
              version="0.5.8">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="3650">Adds a translation to an application.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="648"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="3652">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="translation" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="3653">a #AsTranslation instance.</doc>
            <type name="Translation" c:type="AsTranslation*"/>
          </parameter>
        </parameters>
      </method>
      <method name="add_url" c:identifier="as_app_add_url" version="0.1.0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="3812">Adds some URL data to the application.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="659"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="3814">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="url_kind" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="3815">the URL kind, e.g. %AS_URL_KIND_HOMEPAGE</doc>
            <type name="UrlKind" c:type="AsUrlKind"/>
          </parameter>
          <parameter name="url" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="3816">the full URL.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="add_veto"
              c:identifier="as_app_add_veto"
              version="0.2.5"
              introspectable="0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="6654">Adds a reason to not include the application in the metadata.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="683"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="6656">A #AsApp</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="fmt" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="6657">format string</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="..." transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="6658">varargs</doc>
            <varargs/>
          </parameter>
        </parameters>
      </method>
      <method name="convert_icons"
              c:identifier="as_app_convert_icons"
              version="0.3.1"
              throws="1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="6626">Converts all the icons in the application to a specific kind.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="726"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="6634">%TRUE for success</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="6628">A #AsApp.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="kind" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="6629">the AsIconKind, e.g. %AS_ICON_KIND_EMBEDDED.</doc>
            <type name="IconKind" c:type="AsIconKind"/>
          </parameter>
        </parameters>
      </method>
      <method name="equal" c:identifier="as_app_equal" version="0.6.1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="588">Compare one application with another for equality using the following
properties:

 1. scope, e.g. `system` or `user`
 2. bundle kind, e.g. `package` or `flatpak`
 3. origin, e.g. `fedora` or `gnome-apps-nightly`
 4. kind, e.g. `app` or `runtime`
 5. AppStream ID, e.g. `gimp.desktop`
 6. branch, e.g. `stable` or `master`</doc>
        <source-position filename="libappstream-glib/as-app.h" line="729"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="603">%TRUE if the applications are equal</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="app1" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="590">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="app2" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="591">another #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_addons"
              c:identifier="as_app_get_addons"
              version="0.1.7">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="1650">Gets all the addons the application has.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="481"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="1656">an array</doc>
          <array name="GLib.PtrArray" c:type="GPtrArray*">
            <type name="App"/>
          </array>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="1652">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_agreement_by_kind"
              c:identifier="as_app_get_agreement_by_kind"
              version="0.7.8">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="1339">Gets a agreement the application has defined of a specific type.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="709"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="1346">a #AsAgreement or NULL for not found</doc>
          <type name="Agreement" c:type="AsAgreement*"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="1341">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="kind" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="1342">an agreement kind, e.g. %AS_AGREEMENT_KIND_EULA</doc>
            <type name="AgreementKind" c:type="AsAgreementKind"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_agreement_default"
              c:identifier="as_app_get_agreement_default"
              version="0.7.8">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="1365">Gets a privacy policys the application has defined of a specific type.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="711"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="1371">a #AsAgreement or NULL for not found</doc>
          <type name="Agreement" c:type="AsAgreement*"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="1367">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_architectures"
              c:identifier="as_app_get_architectures"
              version="0.1.1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="1615">Gets the supported architectures for the application, or an empty list
if all architectures are supported.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="492"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="1622">an array</doc>
          <array name="GLib.PtrArray" c:type="GPtrArray*">
            <type name="utf8"/>
          </array>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="1617">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_branch"
              c:identifier="as_app_get_branch"
              version="0.6.1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="2204">Gets the branch for the application.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="523"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="2210">string, or %NULL if unset</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="2206">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_bundle_default"
              c:identifier="as_app_get_bundle_default"
              version="0.3.5">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="6577">Finds the default bundle.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="717"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="6583">a #AsBundle, or %NULL</doc>
          <type name="Bundle" c:type="AsBundle*"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="6579">A #AsApp</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_bundles"
              c:identifier="as_app_get_bundles"
              version="0.3.5">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="1401">Gets any bundles the application has defined.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="500"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="1407">an array</doc>
          <array name="GLib.PtrArray" c:type="GPtrArray*">
            <type name="Bundle"/>
          </array>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="1403">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_categories"
              c:identifier="as_app_get_categories"
              version="0.1.0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="736">Get the application categories.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="482"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="742">an array</doc>
          <array name="GLib.PtrArray" c:type="GPtrArray*">
            <type name="utf8"/>
          </array>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="738">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_comment"
              c:identifier="as_app_get_comment"
              version="0.1.0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="1933">Gets the application summary for a specific locale.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="526"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="1940">string, or %NULL if unset</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="1935">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="locale"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="1936">the locale. e.g. "en_GB"</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_comments"
              c:identifier="as_app_get_comments"
              version="0.1.6">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="1513">Gets the comments set for the application.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="505"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="1519">hash table of comments</doc>
          <type name="GLib.HashTable" c:type="GHashTable*">
            <type name="gpointer" c:type="gpointer"/>
            <type name="gpointer" c:type="gpointer"/>
          </type>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="1515">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_compulsory_for_desktops"
              c:identifier="as_app_get_compulsory_for_desktops"
              version="0.1.0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="831">Returns the desktops where this application is compulsory.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="483"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="837">an array</doc>
          <array name="GLib.PtrArray" c:type="GPtrArray*">
            <type name="utf8"/>
          </array>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="833">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_content_rating"
              c:identifier="as_app_get_content_rating"
              version="0.5.12">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="1296">Gets a content ratings the application has defined of a specific type.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="707"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="1303">a #AsContentRating or NULL for not found</doc>
          <type name="ContentRating" c:type="AsContentRating*"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="1298">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="kind" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="1299">a ratings kind, e.g. "oars-1.0"</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_content_ratings"
              c:identifier="as_app_get_content_ratings"
              version="0.5.12">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="1279">Gets any content_ratings the application has defined.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="498"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="1285">an array</doc>
          <array name="GLib.PtrArray" c:type="GPtrArray*">
            <type name="ContentRating"/>
          </array>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="1281">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_description"
              c:identifier="as_app_get_description"
              version="0.1.0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="1969">Gets the application description markup for a specific locale.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="530"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="1976">string, or %NULL if unset</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="1971">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="locale"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="1972">the locale. e.g. "en_GB"</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_descriptions"
              c:identifier="as_app_get_descriptions"
              version="0.1.6">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="1564">Gets the descriptions set for the application.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="508"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="1570">hash table of descriptions</doc>
          <type name="GLib.HashTable" c:type="GHashTable*">
            <type name="gpointer" c:type="gpointer"/>
            <type name="gpointer" c:type="gpointer"/>
          </type>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="1566">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_developer_name"
              c:identifier="as_app_get_developer_name"
              version="0.1.8">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="1951">Gets the application developer name for a specific locale.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="528"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="1958">string, or %NULL if unset</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="1953">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="locale"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="1954">the locale. e.g. "en_GB"</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_developer_names"
              c:identifier="as_app_get_developer_names"
              version="0.1.8">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="1530">Gets the developer_names set for the application.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="506"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="1536">hash table of developer_names</doc>
          <type name="GLib.HashTable" c:type="GHashTable*">
            <type name="gpointer" c:type="gpointer"/>
            <type name="gpointer" c:type="gpointer"/>
          </type>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="1532">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_extends"
              c:identifier="as_app_get_extends"
              version="0.1.7">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="1633">Gets the IDs that are extended from the addon.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="484"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="1639">an array</doc>
          <array name="GLib.PtrArray" c:type="GPtrArray*">
            <type name="utf8"/>
          </array>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="1635">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_format_by_filename"
              c:identifier="as_app_get_format_by_filename"
              version="0.6.9">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="921">Searches the list of formats for a specific filename.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="550"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="928">A #AsFormat, or %NULL if not found</doc>
          <type name="Format" c:type="AsFormat*"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="923">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="filename" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="924">a filename, e.g. "/home/hughsie/dave.desktop"</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_format_by_kind"
              c:identifier="as_app_get_format_by_kind"
              version="0.6.9">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="944">Searches the list of formats for a specific format kind.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="548"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="951">A #AsFormat, or %NULL if not found</doc>
          <type name="Format" c:type="AsFormat*"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="946">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="kind" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="947">a #AsFormatKind, e.g. %AS_FORMAT_KIND_APPDATA</doc>
            <type name="FormatKind" c:type="AsFormatKind"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_format_default"
              c:identifier="as_app_get_format_default"
              version="0.6.9">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="900">Returns the default format.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="547"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="906">A #AsFormat, or %NULL if not found</doc>
          <type name="Format" c:type="AsFormat*"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="902">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_formats"
              c:identifier="as_app_get_formats"
              version="0.6.9">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="1021">Gets any formats that make up the application.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="489"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="1027">an array</doc>
          <array name="GLib.PtrArray" c:type="GPtrArray*">
            <type name="utf8"/>
          </array>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="1023">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_icon_default"
              c:identifier="as_app_get_icon_default"
              version="0.3.1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="6528">Finds the default icon.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="713"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="6534">a #AsIcon, or %NULL</doc>
          <type name="Icon" c:type="AsIcon*"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="6530">A #AsApp</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_icon_for_size"
              c:identifier="as_app_get_icon_for_size"
              version="0.3.1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="6599">Finds an icon of a specific size.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="714"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="6607">a #AsIcon, or %NULL</doc>
          <type name="Icon" c:type="AsIcon*"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="6601">A #AsApp</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="width" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="6602">Size in pixels</doc>
            <type name="guint" c:type="guint"/>
          </parameter>
          <parameter name="height" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="6603">Size in pixels</doc>
            <type name="guint" c:type="guint"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_icon_path"
              c:identifier="as_app_get_icon_path"
              version="0.1.0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="1898">Gets the application icon path.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="511"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="1904">string, or %NULL if unset</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="1900">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_icons" c:identifier="as_app_get_icons" version="0.3.1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="1384">Gets any icons the application has defined.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="499"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="1390">an array</doc>
          <array name="GLib.PtrArray" c:type="GPtrArray*">
            <type name="Icon"/>
          </array>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="1386">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_id" c:identifier="as_app_get_id" version="0.1.0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="678">Gets the full ID value.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="513"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="684">the ID, e.g. "org.gnome.Software.desktop"</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="680">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_id_filename"
              c:identifier="as_app_get_id_filename"
              version="0.3.0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="718">Returns a filename which represents the applications ID, e.g. "gimp.desktop"
becomes "gimp" and is used for cache directories.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="512"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="725">A utf8 filename</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="720">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_id_kind"
              c:identifier="as_app_get_id_kind"
              version="0.1.0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="1668">Gets the ID kind.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="734"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="1674">enumerated value</doc>
          <type name="IdKind" c:type="AsIdKind"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="1670">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_id_no_prefix"
              c:identifier="as_app_get_id_no_prefix"
              version="0.5.12">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="695">Gets the full ID value, stripping any prefix.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="514"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="701">the ID, e.g. "org.gnome.Software.desktop"</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="697">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_keywords"
              c:identifier="as_app_get_keywords"
              version="0.3.0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="967">Gets any keywords the application should match against.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="485"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="974">an array, or %NULL</doc>
          <array name="GLib.PtrArray" c:type="GPtrArray*">
            <type name="utf8"/>
          </array>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="969">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="locale"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="970">the locale. e.g. "en_GB"</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_kind" c:identifier="as_app_get_kind" version="0.5.10">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="1686">Gets the ID kind.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="474"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="1692">enumerated value</doc>
          <type name="AppKind" c:type="AsAppKind"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="1688">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_kudos" c:identifier="as_app_get_kudos" version="0.2.2">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="987">Gets any kudos the application has obtained.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="487"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="993">an array</doc>
          <array name="GLib.PtrArray" c:type="GPtrArray*">
            <type name="utf8"/>
          </array>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="989">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_language"
              c:identifier="as_app_get_language"
              version="0.1.0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="1987">Gets the language coverage for the specific language.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="533"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="1994">a percentage value where 0 is unspecified, or -1 for not found</doc>
          <type name="gint" c:type="gint"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="1989">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="locale"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="1990">the locale. e.g. "en_GB"</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_languages"
              c:identifier="as_app_get_languages"
              version="0.1.0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="2044">Get a list of all languages.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="480"/>
        <return-value transfer-ownership="container">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="2050">list of language values</doc>
          <type name="GLib.List" c:type="GList*">
            <type name="utf8"/>
          </type>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="2046">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_launchable_by_kind"
              c:identifier="as_app_get_launchable_by_kind"
              version="0.6.13">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="1182">Searches the list of launchables for a specific launchable kind.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="557"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="1189">A #AsLaunchable, or %NULL if not found</doc>
          <type name="Launchable" c:type="AsLaunchable*"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="1184">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="kind" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="1185">a #AsLaunchableKind, e.g. %AS_FORMAT_KIND_APPDATA</doc>
            <type name="LaunchableKind" c:type="AsLaunchableKind"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_launchable_default"
              c:identifier="as_app_get_launchable_default"
              version="0.6.13">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="1205">Returns the default launchable.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="556"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="1211">A #AsLaunchable, or %NULL if not found</doc>
          <type name="Launchable" c:type="AsLaunchable*"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="1207">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_launchables"
              c:identifier="as_app_get_launchables"
              version="0.6.13">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="1165">Gets all the launchables the application has.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="495"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="1171">an array</doc>
          <array name="GLib.PtrArray" c:type="GPtrArray*">
            <type name="Launchable"/>
          </array>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="1167">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_merge_kind"
              c:identifier="as_app_get_merge_kind"
              version="0.6.1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="1792">Gets the merge_kind of the application.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="476"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="1798">enumerated value</doc>
          <type name="AppMergeKind" c:type="AsAppMergeKind"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="1794">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_metadata"
              c:identifier="as_app_get_metadata"
              version="0.1.6">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="1547">Gets the metadata set for the application.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="507"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="1553">hash table of metadata</doc>
          <type name="GLib.HashTable" c:type="GHashTable*">
            <type name="utf8"/>
            <type name="utf8"/>
          </type>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="1549">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_metadata_item"
              c:identifier="as_app_get_metadata_item"
              version="0.1.0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="2080">Gets some metadata item.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="535"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="2087">string, or %NULL if unset</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="2082">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="key" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="2083">the metadata key.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_metadata_license"
              c:identifier="as_app_get_metadata_license"
              version="0.1.4">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="2132">Gets the application project license.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="521"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="2138">string, or %NULL if unset</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="2134">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_mimetypes"
              c:identifier="as_app_get_mimetypes"
              version="0.2.0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="1038">Gets any mimetypes the application will register.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="490"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="1044">an array</doc>
          <array name="GLib.PtrArray" c:type="GPtrArray*">
            <type name="utf8"/>
          </array>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="1040">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_name" c:identifier="as_app_get_name" version="0.1.0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="1915">Gets the application name for a specific locale.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="524"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="1922">string, or %NULL if unset</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="1917">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="locale"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="1918">the locale. e.g. "en_GB"</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_names" c:identifier="as_app_get_names" version="0.1.6">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="1496">Gets the names set for the application.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="504"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="1502">hash table of names</doc>
          <type name="GLib.HashTable" c:type="GHashTable*">
            <type name="gpointer" c:type="gpointer"/>
            <type name="gpointer" c:type="gpointer"/>
          </type>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="1498">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_origin"
              c:identifier="as_app_get_origin"
              version="0.3.2">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="2166">Gets the application origin.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="518"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="2172">the origin string, or %NULL if unset</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="2168">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_permissions"
              c:identifier="as_app_get_permissions"
              version="0.3.5">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="1004">Gets any permissions the application has obtained.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="488"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="1010">an array</doc>
          <array name="GLib.PtrArray" c:type="GPtrArray*">
            <type name="utf8"/>
          </array>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="1006">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_pkgname_default"
              c:identifier="as_app_get_pkgname_default"
              version="0.2.0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="1860">Gets the default package name.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="516"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="1866">string, or %NULL if unset</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="1862">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_pkgnames"
              c:identifier="as_app_get_pkgnames"
              version="0.1.0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="1598">Gets the package names (if any) for the application.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="491"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="1604">an array</doc>
          <array name="GLib.PtrArray" c:type="GPtrArray*">
            <type name="utf8"/>
          </array>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="1600">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_priority"
              c:identifier="as_app_get_priority"
              version="0.1.0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="2027">Gets the application priority. Larger values trump smaller values.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="532"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="2033">priority value</doc>
          <type name="gint" c:type="gint"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="2029">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_project_group"
              c:identifier="as_app_get_project_group"
              version="0.1.0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="2098">Gets an application project group.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="519"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="2104">string, or %NULL if unset</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="2100">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_project_license"
              c:identifier="as_app_get_project_license"
              version="0.1.0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="2115">Gets the application project license.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="520"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="2121">string, or %NULL if unset</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="2117">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_provides"
              c:identifier="as_app_get_provides"
              version="0.1.6">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="1148">Gets all the provides the application has.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="494"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="1154">an array</doc>
          <array name="GLib.PtrArray" c:type="GPtrArray*">
            <type name="Provide"/>
          </array>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="1150">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_release"
              c:identifier="as_app_get_release"
              version="0.3.5">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="1072">Gets a specific release from the application.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="718"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="1079">a release, or %NULL</doc>
          <type name="Release" c:type="AsRelease*"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="1074">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="version" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="1075">a version string</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_release_by_version"
              c:identifier="as_app_get_release_by_version"
              version="0.7.3">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="1125">Gets a specific release from the application.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="721"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="1132">a release, or %NULL</doc>
          <type name="Release" c:type="AsRelease*"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="1127">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="version" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="1128">a release version number, e.g. "1.2.3"</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_release_default"
              c:identifier="as_app_get_release_default"
              version="0.3.5">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="1098">Gets the default (newest) release from the application.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="720"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="1104">a release, or %NULL</doc>
          <type name="Release" c:type="AsRelease*"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="1100">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_releases"
              c:identifier="as_app_get_releases"
              version="0.1.0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="1055">Gets all the releases the application has had.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="493"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="1061">an array</doc>
          <array name="GLib.PtrArray" c:type="GPtrArray*">
            <type name="Release"/>
          </array>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="1057">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_require_by_value"
              c:identifier="as_app_get_require_by_value"
              version="0.6.7">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="1471">Gets a specific requirement for the application.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="723"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="1479">A #AsRequire, or %NULL for not found</doc>
          <type name="Require" c:type="AsRequire*"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="1473">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="kind" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="1474">a #AsRequireKind, e.g. %AS_REQUIRE_KIND_FIRMWARE</doc>
            <type name="RequireKind" c:type="AsRequireKind"/>
          </parameter>
          <parameter name="value" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="1475">a string, or NULL, e.g. `bootloader`</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_requires"
              c:identifier="as_app_get_requires"
              version="0.6.7">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="1452">Gets any requires the application has defined. A requirement could be that
a firmware version has to be below a defined version or that another
application is required to be installed.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="503"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="1460">an array</doc>
          <array name="GLib.PtrArray" c:type="GPtrArray*">
            <type name="Require"/>
          </array>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="1454">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_reviews"
              c:identifier="as_app_get_reviews"
              version="0.6.1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="1262">Gets any reviews the application has defined.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="497"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="1268">an array</doc>
          <array name="GLib.PtrArray" c:type="GPtrArray*">
            <type name="Screenshot"/>
          </array>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="1264">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_scope" c:identifier="as_app_get_scope" version="0.6.1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="1775">Gets the scope of the application.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="475"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="1781">enumerated value</doc>
          <type name="AppScope" c:type="AsAppScope"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="1777">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_screenshot_default"
              c:identifier="as_app_get_screenshot_default"
              version="0.7.3">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="1243">Gets the default screenshot for the component.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="712"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="1249">a screenshot or %NULL</doc>
          <type name="Screenshot" c:type="AsScreenshot*"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="1245">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_screenshots"
              c:identifier="as_app_get_screenshots"
              version="0.1.0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="1226">Gets any screenshots the application has defined.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="496"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="1232">an array</doc>
          <array name="GLib.PtrArray" c:type="GPtrArray*">
            <type name="Screenshot"/>
          </array>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="1228">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_search_match"
              c:identifier="as_app_get_search_match"
              version="0.6.13">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="6740">Gets the token match fields. The bitfield given here is used to choose what
is included in the token cache.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="479"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="6747">a #AsAppSearchMatch, e.g. %AS_APP_SEARCH_MATCH_PKGNAME</doc>
          <type name="guint16" c:type="guint16"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="6742">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_source_file"
              c:identifier="as_app_get_source_file"
              version="0.2.2">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="2183">Gets the default source filename the instance was populated from.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="743"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="2189">string, or %NULL if unset</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="2185">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_source_kind"
              c:identifier="as_app_get_source_kind"
              version="0.1.4">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="1754">Gets the source kind, i.e. where the AsApp came from.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="746"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="1760">enumerated value</doc>
          <type name="FormatKind" c:type="AsFormatKind"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="1756">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_source_pkgname"
              c:identifier="as_app_get_source_pkgname"
              version="0.2.4">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="1879">Gets the source package name that produced the binary package.
Only source packages producing more than one binary package will have this
entry set.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="517"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="1887">string, or %NULL if unset</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="1881">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_state" c:identifier="as_app_get_state" version="0.2.2">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="1809">Gets the application state.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="477"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="1815">enumerated value</doc>
          <type name="AppState" c:type="AsAppState"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="1811">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_suggests"
              c:identifier="as_app_get_suggests"
              version="0.6.1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="1435">Gets any suggests the application has defined.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="502"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="1441">an array</doc>
          <array name="GLib.PtrArray" c:type="GPtrArray*">
            <type name="Suggest"/>
          </array>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="1437">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_translations"
              c:identifier="as_app_get_translations"
              version="0.5.8">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="1418">Gets any translations the application has defined.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="501"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="1424">an array</doc>
          <array name="GLib.PtrArray" c:type="GPtrArray*">
            <type name="Translation"/>
          </array>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="1420">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_trust_flags"
              c:identifier="as_app_get_trust_flags"
              version="0.2.2">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="1826">Gets the trust flags, i.e. how trusted the incoming data is.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="478"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="1832">bitfield</doc>
          <type name="guint32" c:type="guint32"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="1828">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_unique_id"
              c:identifier="as_app_get_unique_id"
              version="0.6.1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="637">Gets the unique ID value to represent the component.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="515"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="643">the unique ID, e.g. `system/package/fedora/desktop/gimp.desktop/master`</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="639">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_update_contact"
              c:identifier="as_app_get_update_contact"
              version="0.1.4">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="2149">Gets the application upstream update contact email.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="522"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="2155">string, or %NULL if unset</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="2151">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_url_item"
              c:identifier="as_app_get_url_item"
              version="0.1.0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="2061">Gets a URL.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="537"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="2068">string, or %NULL if unset</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="2063">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="url_kind" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="2064">the URL kind, e.g. %AS_URL_KIND_HOMEPAGE.</doc>
            <type name="UrlKind" c:type="AsUrlKind"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_urls" c:identifier="as_app_get_urls" version="0.1.0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="1581">Gets the URLs set for the application.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="509"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="1587">hash table of URLs</doc>
          <type name="GLib.HashTable" c:type="GHashTable*">
            <type name="gpointer" c:type="gpointer"/>
            <type name="gpointer" c:type="gpointer"/>
          </type>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="1583">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_vetos" c:identifier="as_app_get_vetos" version="0.2.5">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="6511">Gets the list of vetos.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="510"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="6517">A list of vetos</doc>
          <array name="GLib.PtrArray" c:type="GPtrArray*">
            <type name="utf8"/>
          </array>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="6513">A #AsApp</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="has_category"
              c:identifier="as_app_has_category"
              version="0.1.5">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="753">Searches the category list for a specific item.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="539"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="760">%TRUE if the application has got the specified category</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="755">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="category" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="756">a category string, e.g. "DesktopSettings"</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="has_compulsory_for_desktop"
              c:identifier="as_app_has_compulsory_for_desktop"
              version="0.5.12">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="848">Searches the compulsory for desktop list for a specific item.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="552"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="855">%TRUE if the application is compulsory for a specific desktop</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="850">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="desktop" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="851">a desktop string, e.g. "GNOME"</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="has_kudo" c:identifier="as_app_has_kudo" version="0.2.2">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="779">Searches the kudo list for a specific item.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="541"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="786">%TRUE if the application has got the specified kudo</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="781">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="kudo" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="782">a kudo string, e.g. "SearchProvider"</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="has_kudo_kind"
              c:identifier="as_app_has_kudo_kind"
              version="0.2.2">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="805">Searches the kudo list for a specific item.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="543"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="812">%TRUE if the application has got the specified kudo</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="807">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="kudo" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="808">a #AsKudoKind, e.g. %AS_KUDO_KIND_SEARCH_PROVIDER</doc>
            <type name="KudoKind" c:type="AsKudoKind"/>
          </parameter>
        </parameters>
      </method>
      <method name="has_permission"
              c:identifier="as_app_has_permission"
              version="0.3.5">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="874">Searches the permission list for a specific item.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="545"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="881">%TRUE if the application has got the specified permission</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="876">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="permission" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="877">a permission string, e.g. "Network"</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="has_quirk"
              c:identifier="as_app_has_quirk"
              version="0.5.10">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="2399">Queries to see if an application has a specific attribute.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="554"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="2406">%TRUE if the application has the attribute</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="2401">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="quirk" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="2402">the #AsAppQuirk, e.g. %AS_APP_QUIRK_PROVENANCE</doc>
            <type name="AppQuirk" c:type="AsAppQuirk"/>
          </parameter>
        </parameters>
      </method>
      <method name="parse_data"
              c:identifier="as_app_parse_data"
              version="0.7.5"
              throws="1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="6253">Parses an AppData file and populates the application state.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="697"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="6262">%TRUE for success</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="6255">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="data" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="6256">data to parse.</doc>
            <type name="GLib.Bytes" c:type="GBytes*"/>
          </parameter>
          <parameter name="flags" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="6257">#AsAppParseFlags, e.g. %AS_APP_PARSE_FLAG_USE_HEURISTICS</doc>
            <type name="guint32" c:type="guint32"/>
          </parameter>
        </parameters>
      </method>
      <method name="parse_file"
              c:identifier="as_app_parse_file"
              version="0.1.2"
              throws="1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="6375">Parses a desktop or AppData file and populates the application state.

Applications that are not suitable for the store will have vetos added.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="693"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="6386">%TRUE for success</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="6377">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="filename" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="6378">file to load.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="flags" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="6379">#AsAppParseFlags, e.g. %AS_APP_PARSE_FLAG_USE_HEURISTICS</doc>
            <type name="guint32" c:type="guint32"/>
          </parameter>
        </parameters>
      </method>
      <method name="remove_category"
              c:identifier="as_app_remove_category"
              version="0.6.13">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="2919">Removed a menu category from the application.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="607"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="2921">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="category" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="2922">the category.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="remove_format"
              c:identifier="as_app_remove_format"
              version="0.6.9">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="3174">Removes a format the application has been built from.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="622"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="3176">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="format" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="3177">the #AsFormat.</doc>
            <type name="Format" c:type="AsFormat*"/>
          </parameter>
        </parameters>
      </method>
      <method name="remove_kudo"
              c:identifier="as_app_remove_kudo"
              version="0.6.13">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="3064">Remove a kudo the application has obtained.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="614"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="3066">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="kudo" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="3067">the kudo.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="remove_metadata"
              c:identifier="as_app_remove_metadata"
              version="0.1.0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="3875">Removes a metadata item from the application.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="665"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="3877">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="key" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="3878">the metadata key.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="remove_veto"
              c:identifier="as_app_remove_veto"
              version="0.4.1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="6676">Removes a reason to not include the application in the metadata.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="687"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="6678">A #AsApp</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="description" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="6679">veto string</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="search_matches"
              c:identifier="as_app_search_matches"
              version="0.1.0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="6036">Searches application data for a specific keyword.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="691"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="6043">a match scrore, where 0 is no match and 100 is the best match.</doc>
          <type name="guint" c:type="guint"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="6038">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="search" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="6039">the search term.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="search_matches_all"
              c:identifier="as_app_search_matches_all"
              version="0.1.3">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="6120">Searches application data for all the specific keywords.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="689"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="6127">a match scrore, where 0 is no match and larger numbers are better
matches.

It's probably a good idea to use as_utils_search_tokenize() to populate
search as very short or common keywords will return a lot of matches.</doc>
          <type name="guint" c:type="guint"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="6122">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="search" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="6123">the search terms.</doc>
            <type name="utf8" c:type="gchar**"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_branch"
              c:identifier="as_app_set_branch"
              version="0.6.1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="2596">Set the branch that the instance was sourced from.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="601"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="2598">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="branch" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="2599">the branch, e.g. "master" or "3-16".</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_comment"
              c:identifier="as_app_set_comment"
              version="0.1.0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="2764">Sets the application summary for a specific locale.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="592"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="2766">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="locale"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="2767">the locale. e.g. "en_GB"</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="comment" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="2768">the application summary.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_description"
              c:identifier="as_app_set_description"
              version="0.1.0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="2836">Sets the application description markup for a specific locale.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="598"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="2838">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="locale"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="2839">the locale. e.g. "en_GB"</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="description" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="2840">the application description.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_developer_name"
              c:identifier="as_app_set_developer_name"
              version="0.1.0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="2800">Sets the application developer name for a specific locale.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="595"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="2802">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="locale"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="2803">the locale. e.g. "en_GB"</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="developer_name" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="2804">the application developer name.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_icon_path"
              c:identifier="as_app_set_icon_path"
              version="0.1.0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="2706">Sets the icon path, where local icons would be found.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="587"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="2708">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="icon_path" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="2709">the local path.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_id" c:identifier="as_app_set_id" version="0.1.0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="2253">Sets a new application ID. Any invalid characters will be automatically replaced.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="561"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="2255">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="id" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="2256">the new _full_ application ID, e.g. "org.gnome.Software.desktop".</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_id_kind"
              c:identifier="as_app_set_id_kind"
              version="0.1.0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="2453">Sets the application kind.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="736"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="2455">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="id_kind" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="2456">the #AsAppKind.</doc>
            <type name="IdKind" c:type="AsIdKind"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_kind" c:identifier="as_app_set_kind" version="0.5.10">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="2433">Sets the application kind.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="563"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="2435">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="kind" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="2436">the #AsAppKind.</doc>
            <type name="AppKind" c:type="AsAppKind"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_merge_kind"
              c:identifier="as_app_set_merge_kind"
              version="0.6.1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="2350">Sets the merge kind of the application.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="567"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="2352">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="merge_kind" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="2353">the #AsAppMergeKind.</doc>
            <type name="AppMergeKind" c:type="AsAppMergeKind"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_metadata_license"
              c:identifier="as_app_set_metadata_license"
              version="0.1.4">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="2526">Set the project license.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="581"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="2528">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="metadata_license" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="2529">the project license string.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_name" c:identifier="as_app_set_name" version="0.1.0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="2730">Sets the application name for a specific locale.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="589"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="2732">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="locale"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="2733">the locale. e.g. "en_GB"</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="name" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="2734">the application name.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_origin"
              c:identifier="as_app_set_origin"
              version="0.3.2">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="2675">Sets the application origin.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="575"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="2677">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="origin" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="2678">the origin, e.g. "fedora-21"</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_priority"
              c:identifier="as_app_set_priority"
              version="0.1.0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="2872">Sets the application priority, where 0 is default and positive numbers
are better than negative numbers.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="603"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="2874">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="priority" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="2875">the priority.</doc>
            <type name="gint" c:type="gint"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_project_group"
              c:identifier="as_app_set_project_group"
              version="0.1.0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="2470">Set any project affiliation.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="577"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="2472">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="project_group" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="2473">the project group, e.g. "GNOME".</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_project_license"
              c:identifier="as_app_set_project_license"
              version="0.1.0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="2502">Set the project license.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="579"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="2504">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="project_license" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="2505">the project license string.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_scope" c:identifier="as_app_set_scope" version="0.6.1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="2331">Sets the scope of the application.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="565"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="2333">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="scope" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="2334">the #AsAppScope.</doc>
            <type name="AppScope" c:type="AsAppScope"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_search_match"
              c:identifier="as_app_set_search_match"
              version="0.6.13">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="6723">Sets the token match fields. The bitfield given here is used to choose what
is included in the token cache.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="573"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="6725">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="search_match" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="6726">the #AsAppSearchMatch, e.g. %AS_APP_SEARCH_MATCH_PKGNAME</doc>
            <type name="guint16" c:type="guint16"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_source_file"
              c:identifier="as_app_set_source_file"
              version="0.2.2">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="2579">Set the file that the instance was sourced from.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="740"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="2581">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="source_file" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="2582">the filename.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_source_kind"
              c:identifier="as_app_set_source_kind"
              version="0.1.4">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="2303">Sets the source kind.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="748"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="2305">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="source_kind" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="2306">the #AsFormatKind.</doc>
            <type name="FormatKind" c:type="AsFormatKind"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_source_pkgname"
              c:identifier="as_app_set_source_pkgname"
              version="0.2.4">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="2555">Set the project license.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="583"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="2557">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="source_pkgname" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="2558">the project license string.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_state" c:identifier="as_app_set_state" version="0.2.2">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="2366">Sets the application state.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="569"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="2368">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="state" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="2369">the #AsAppState.</doc>
            <type name="AppState" c:type="AsAppState"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_trust_flags"
              c:identifier="as_app_set_trust_flags"
              version="0.2.2">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="2382">Sets the check flags, where %AS_APP_TRUST_FLAG_COMPLETE is completely
trusted input.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="571"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="2384">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="trust_flags" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="2385">the #AsAppTrustFlags.</doc>
            <type name="guint32" c:type="guint32"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_update_contact"
              c:identifier="as_app_set_update_contact"
              version="0.1.4">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="2615">Set the project license.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="585"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="2617">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="update_contact" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="2618">the project license string.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="subsume" c:identifier="as_app_subsume" version="0.1.0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="4369">Copies information from the donor to the application object.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="678"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="4371">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="donor" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="4372">the donor.</doc>
            <type name="App" c:type="AsApp*"/>
          </parameter>
        </parameters>
      </method>
      <method name="subsume_full"
              c:identifier="as_app_subsume_full"
              version="0.1.4">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="4342">Copies information from the donor to the application object.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="680"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="4344">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="donor" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="4345">the donor.</doc>
            <type name="App" c:type="AsApp*"/>
          </parameter>
          <parameter name="flags" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="4346">any optional #AsAppSubsumeFlags, e.g. %AS_APP_SUBSUME_FLAG_NO_OVERWRITE</doc>
            <type name="guint64" c:type="guint64"/>
          </parameter>
        </parameters>
      </method>
      <method name="to_file"
              c:identifier="as_app_to_file"
              version="0.2.0"
              throws="1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="6478">Exports a DOM tree to an XML file.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="701"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="6487">%TRUE for success</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="6480">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="file" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="6481">a #GFile</doc>
            <type name="Gio.File" c:type="GFile*"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="6482">A #GCancellable</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
        </parameters>
      </method>
      <method name="to_xml"
              c:identifier="as_app_to_xml"
              version="0.7.14"
              throws="1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.c"
             line="6453">Exports a DOM tree to an XML string.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="705"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app.c"
               line="6460">an XML string, or %NULL</doc>
          <type name="GLib.String" c:type="GString*"/>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app.c"
                 line="6455">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="validate"
              c:identifier="as_app_validate"
              version="0.1.4"
              throws="1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app-validate.c"
             line="1213">Validates data in the instance for style and consistency.</doc>
        <source-position filename="libappstream-glib/as-app.h" line="675"/>
        <return-value transfer-ownership="container">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-app-validate.c"
               line="1221">A list of problems, or %NULL</doc>
          <array name="GLib.PtrArray" c:type="GPtrArray*">
            <type name="Problem"/>
          </array>
        </return-value>
        <parameters>
          <instance-parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app-validate.c"
                 line="1215">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </instance-parameter>
          <parameter name="flags" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-app-validate.c"
                 line="1216">the #AsAppValidateFlags to use, e.g. %AS_APP_VALIDATE_FLAG_NONE</doc>
            <type name="guint32" c:type="guint32"/>
          </parameter>
        </parameters>
      </method>
      <field name="parent_instance">
        <type name="GObject.Object" c:type="GObject"/>
      </field>
    </class>
    <record name="AppClass" c:type="AsAppClass" glib:is-gtype-struct-for="App">
      <source-position filename="libappstream-glib/as-app.h" line="48"/>
      <field name="parent_class">
        <type name="GObject.ObjectClass" c:type="GObjectClass"/>
      </field>
      <field name="_as_reserved1" introspectable="0">
        <callback name="_as_reserved1">
          <source-position filename="libappstream-glib/as-app.h" line="40"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved2" introspectable="0">
        <callback name="_as_reserved2">
          <source-position filename="libappstream-glib/as-app.h" line="41"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved3" introspectable="0">
        <callback name="_as_reserved3">
          <source-position filename="libappstream-glib/as-app.h" line="42"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved4" introspectable="0">
        <callback name="_as_reserved4">
          <source-position filename="libappstream-glib/as-app.h" line="43"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved5" introspectable="0">
        <callback name="_as_reserved5">
          <source-position filename="libappstream-glib/as-app.h" line="44"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved6" introspectable="0">
        <callback name="_as_reserved6">
          <source-position filename="libappstream-glib/as-app.h" line="45"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved7" introspectable="0">
        <callback name="_as_reserved7">
          <source-position filename="libappstream-glib/as-app.h" line="46"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved8" introspectable="0">
        <callback name="_as_reserved8">
          <source-position filename="libappstream-glib/as-app.h" line="47"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
    </record>
    <enumeration name="AppError" c:type="AsAppError">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-app.h"
           line="211">The error type.</doc>
      <source-position filename="libappstream-glib/as-app.h" line="223"/>
      <member name="failed" value="0" c:identifier="AS_APP_ERROR_FAILED">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="213">Generic failure</doc>
      </member>
      <member name="invalid_type"
              value="1"
              c:identifier="AS_APP_ERROR_INVALID_TYPE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="214">Invalid type</doc>
      </member>
    </enumeration>
    <enumeration name="AppKind" c:type="AsAppKind">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-app.h"
           line="282">The component type.</doc>
      <source-position filename="libappstream-glib/as-app.h" line="326"/>
      <member name="unknown" value="0" c:identifier="AS_APP_KIND_UNKNOWN">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="284">Type invalid or not known</doc>
      </member>
      <member name="desktop" value="1" c:identifier="AS_APP_KIND_DESKTOP">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="285">A desktop application</doc>
      </member>
      <member name="font" value="2" c:identifier="AS_APP_KIND_FONT">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="286">A font add-on</doc>
      </member>
      <member name="codec" value="3" c:identifier="AS_APP_KIND_CODEC">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="287">A codec add-on</doc>
      </member>
      <member name="input_method"
              value="4"
              c:identifier="AS_APP_KIND_INPUT_METHOD">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="288">A input method add-on</doc>
      </member>
      <member name="web_app" value="5" c:identifier="AS_APP_KIND_WEB_APP">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="289">A web appication</doc>
      </member>
      <member name="source" value="6" c:identifier="AS_APP_KIND_SOURCE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="290">A software source</doc>
      </member>
      <member name="addon" value="7" c:identifier="AS_APP_KIND_ADDON">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="291">An addon, e.g. a plugin</doc>
      </member>
      <member name="firmware" value="8" c:identifier="AS_APP_KIND_FIRMWARE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="292">A firmware update</doc>
      </member>
      <member name="runtime" value="9" c:identifier="AS_APP_KIND_RUNTIME">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="293">Runtime platform</doc>
      </member>
      <member name="generic" value="10" c:identifier="AS_APP_KIND_GENERIC">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="294">Generic component</doc>
      </member>
      <member name="os_update" value="11" c:identifier="AS_APP_KIND_OS_UPDATE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="295">Operating system update</doc>
      </member>
      <member name="os_upgrade"
              value="12"
              c:identifier="AS_APP_KIND_OS_UPGRADE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="296">Operating system upgrade</doc>
      </member>
      <member name="shell_extension"
              value="13"
              c:identifier="AS_APP_KIND_SHELL_EXTENSION">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="297">GNOME Shell extension</doc>
      </member>
      <member name="localization"
              value="14"
              c:identifier="AS_APP_KIND_LOCALIZATION">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="298">Localization data</doc>
      </member>
      <member name="console" value="15" c:identifier="AS_APP_KIND_CONSOLE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="299">Console program</doc>
      </member>
      <member name="driver" value="16" c:identifier="AS_APP_KIND_DRIVER">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="300">Driver for hardware support</doc>
      </member>
      <member name="icon_theme"
              value="17"
              c:identifier="AS_APP_KIND_ICON_THEME">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="301">An icon theme</doc>
      </member>
    </enumeration>
    <enumeration name="AppMergeKind" c:type="AsAppMergeKind">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-app.h"
           line="414">The component merge kind.</doc>
      <source-position filename="libappstream-glib/as-app.h" line="430"/>
      <member name="unknown"
              value="0"
              c:identifier="AS_APP_MERGE_KIND_UNKNOWN">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="416">Unknown merge type</doc>
      </member>
      <member name="none" value="1" c:identifier="AS_APP_MERGE_KIND_NONE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="417">No merge to be done</doc>
      </member>
      <member name="replace"
              value="2"
              c:identifier="AS_APP_MERGE_KIND_REPLACE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="418">Merge components, replacing</doc>
      </member>
      <member name="append" value="3" c:identifier="AS_APP_MERGE_KIND_APPEND">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="419">Merge components, appending</doc>
      </member>
    </enumeration>
    <bitfield name="AppParseFlags" c:type="AsAppParseFlags">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-app.h"
           line="50">The flags to use when parsing resources.</doc>
      <source-position filename="libappstream-glib/as-app.h" line="76"/>
      <member name="none" value="0" c:identifier="AS_APP_PARSE_FLAG_NONE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="52">No special actions to use</doc>
      </member>
      <member name="use_heuristics"
              value="1"
              c:identifier="AS_APP_PARSE_FLAG_USE_HEURISTICS">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="53">Use heuristic to infer properties</doc>
      </member>
      <member name="keep_comments"
              value="2"
              c:identifier="AS_APP_PARSE_FLAG_KEEP_COMMENTS">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="54">Save comments from the file</doc>
      </member>
      <member name="convert_translatable"
              value="4"
              c:identifier="AS_APP_PARSE_FLAG_CONVERT_TRANSLATABLE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="55">Allow translatable flags like &lt;_p&gt;</doc>
      </member>
      <member name="append_data"
              value="8"
              c:identifier="AS_APP_PARSE_FLAG_APPEND_DATA">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="56">Append new data rather than replacing</doc>
      </member>
      <member name="allow_veto"
              value="16"
              c:identifier="AS_APP_PARSE_FLAG_ALLOW_VETO">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="57">Do not return errors for vetoed apps</doc>
      </member>
      <member name="use_fallbacks"
              value="32"
              c:identifier="AS_APP_PARSE_FLAG_USE_FALLBACKS">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="58">Fall back to suboptimal data where required</doc>
      </member>
      <member name="add_all_metadata"
              value="64"
              c:identifier="AS_APP_PARSE_FLAG_ADD_ALL_METADATA">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="59">Add all extra metadata from the source file</doc>
      </member>
      <member name="only_native_langs"
              value="128"
              c:identifier="AS_APP_PARSE_FLAG_ONLY_NATIVE_LANGS">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="60">Only load native languages</doc>
      </member>
    </bitfield>
    <bitfield name="AppQuirk" c:type="AsAppQuirk">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-app.h"
           line="328">The component attributes.</doc>
      <source-position filename="libappstream-glib/as-app.h" line="362"/>
      <member name="none" value="0" c:identifier="AS_APP_QUIRK_NONE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="330">No special attributes</doc>
      </member>
      <member name="provenance"
              value="1"
              c:identifier="AS_APP_QUIRK_PROVENANCE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="331">Installed by OS vendor</doc>
      </member>
      <member name="compulsory"
              value="2"
              c:identifier="AS_APP_QUIRK_COMPULSORY">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="332">Cannot be removed</doc>
      </member>
      <member name="has_source"
              value="4"
              c:identifier="AS_APP_QUIRK_HAS_SOURCE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="333">Has a source to allow staying up-to-date</doc>
      </member>
      <member name="match_any_prefix"
              value="8"
              c:identifier="AS_APP_QUIRK_MATCH_ANY_PREFIX">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="334">Matches applications with any prefix</doc>
      </member>
      <member name="needs_reboot"
              value="16"
              c:identifier="AS_APP_QUIRK_NEEDS_REBOOT">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="335">A reboot is required after the action</doc>
      </member>
      <member name="not_reviewable"
              value="32"
              c:identifier="AS_APP_QUIRK_NOT_REVIEWABLE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="336">The app is not reviewable</doc>
      </member>
      <member name="has_shortcut"
              value="64"
              c:identifier="AS_APP_QUIRK_HAS_SHORTCUT">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="337">The app has a shortcut in the system</doc>
      </member>
      <member name="not_launchable"
              value="128"
              c:identifier="AS_APP_QUIRK_NOT_LAUNCHABLE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="338">The app is not launchable (run-able)</doc>
      </member>
      <member name="needs_user_action"
              value="256"
              c:identifier="AS_APP_QUIRK_NEEDS_USER_ACTION">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="339">The component requires some kind of user action</doc>
      </member>
      <member name="is_proxy" value="512" c:identifier="AS_APP_QUIRK_IS_PROXY">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="340">Is a proxy app that operates on other applications</doc>
      </member>
      <member name="removable_hardware"
              value="1024"
              c:identifier="AS_APP_QUIRK_REMOVABLE_HARDWARE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="341">The device is unusable whilst the action is performed</doc>
      </member>
      <member name="developer_verified"
              value="2048"
              c:identifier="AS_APP_QUIRK_DEVELOPER_VERIFIED">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="342">The app developer has been verified</doc>
      </member>
    </bitfield>
    <enumeration name="AppScope" c:type="AsAppScope">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-app.h"
           line="398">The application scope.</doc>
      <source-position filename="libappstream-glib/as-app.h" line="412"/>
      <member name="unknown" value="0" c:identifier="AS_APP_SCOPE_UNKNOWN">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="400">Unknown scope</doc>
      </member>
      <member name="user" value="1" c:identifier="AS_APP_SCOPE_USER">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="401">User scope</doc>
      </member>
      <member name="system" value="2" c:identifier="AS_APP_SCOPE_SYSTEM">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="402">System scope</doc>
      </member>
    </enumeration>
    <bitfield name="AppSearchMatch" c:type="AsAppSearchMatch">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-app.h"
           line="432">The token match kind, which we want to be exactly 16 bits for storage
reasons.</doc>
      <source-position filename="libappstream-glib/as-app.h" line="459"/>
      <member name="none" value="0" c:identifier="AS_APP_SEARCH_MATCH_NONE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="434">No token matching</doc>
      </member>
      <member name="mimetype"
              value="1"
              c:identifier="AS_APP_SEARCH_MATCH_MIMETYPE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="435">Use the app mimetypes</doc>
      </member>
      <member name="pkgname"
              value="2"
              c:identifier="AS_APP_SEARCH_MATCH_PKGNAME">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="436">Use the app package name</doc>
      </member>
      <member name="description"
              value="4"
              c:identifier="AS_APP_SEARCH_MATCH_DESCRIPTION">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="437">Use the app description</doc>
      </member>
      <member name="comment"
              value="8"
              c:identifier="AS_APP_SEARCH_MATCH_COMMENT">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="438">Use the app comment</doc>
      </member>
      <member name="name" value="16" c:identifier="AS_APP_SEARCH_MATCH_NAME">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="439">Use the app name</doc>
      </member>
      <member name="keyword"
              value="32"
              c:identifier="AS_APP_SEARCH_MATCH_KEYWORD">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="440">Use the app keyword</doc>
      </member>
      <member name="id" value="64" c:identifier="AS_APP_SEARCH_MATCH_ID">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="441">Use the app application ID</doc>
      </member>
      <member name="origin"
              value="128"
              c:identifier="AS_APP_SEARCH_MATCH_ORIGIN">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="442">Use the app origin</doc>
      </member>
    </bitfield>
    <enumeration name="AppState" c:type="AsAppState">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-app.h"
           line="364">The application state.</doc>
      <source-position filename="libappstream-glib/as-app.h" line="396"/>
      <member name="unknown" value="0" c:identifier="AS_APP_STATE_UNKNOWN">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="366">Unknown state</doc>
      </member>
      <member name="installed" value="1" c:identifier="AS_APP_STATE_INSTALLED">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="367">Application is installed</doc>
      </member>
      <member name="available" value="2" c:identifier="AS_APP_STATE_AVAILABLE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="368">Application is available</doc>
      </member>
      <member name="available_local"
              value="3"
              c:identifier="AS_APP_STATE_AVAILABLE_LOCAL">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="369">Application is locally available as a file</doc>
      </member>
      <member name="updatable" value="4" c:identifier="AS_APP_STATE_UPDATABLE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="370">Application is installed and updatable</doc>
      </member>
      <member name="unavailable"
              value="5"
              c:identifier="AS_APP_STATE_UNAVAILABLE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="371">Application is referenced, but not available</doc>
      </member>
      <member name="queued_for_install"
              value="6"
              c:identifier="AS_APP_STATE_QUEUED_FOR_INSTALL">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="372">Application is queued for install</doc>
      </member>
      <member name="installing"
              value="7"
              c:identifier="AS_APP_STATE_INSTALLING">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="373">Application is being installed</doc>
      </member>
      <member name="removing" value="8" c:identifier="AS_APP_STATE_REMOVING">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="374">Application is being removed</doc>
      </member>
      <member name="updatable_live"
              value="9"
              c:identifier="AS_APP_STATE_UPDATABLE_LIVE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="375">Application is installed and updatable live</doc>
      </member>
      <member name="purchasable"
              value="10"
              c:identifier="AS_APP_STATE_PURCHASABLE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="376">Application is available for purchasing</doc>
      </member>
      <member name="purchasing"
              value="11"
              c:identifier="AS_APP_STATE_PURCHASING">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="377">Application is being purchased</doc>
      </member>
    </enumeration>
    <bitfield name="AppSubsumeFlags" c:type="AsAppSubsumeFlags">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-app.h"
           line="78">The flags to use when subsuming applications.</doc>
      <source-position filename="libappstream-glib/as-app.h" line="163"/>
      <member name="none" value="0" c:identifier="AS_APP_SUBSUME_FLAG_NONE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="80">No special actions to use</doc>
      </member>
      <member name="no_overwrite"
              value="1"
              c:identifier="AS_APP_SUBSUME_FLAG_NO_OVERWRITE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="81">Do not overwrite already set properties</doc>
      </member>
      <member name="both_ways"
              value="2"
              c:identifier="AS_APP_SUBSUME_FLAG_BOTH_WAYS">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="82">Copy unset properties both ways</doc>
      </member>
      <member name="replace"
              value="4"
              c:identifier="AS_APP_SUBSUME_FLAG_REPLACE">
      </member>
      <member name="kind" value="8" c:identifier="AS_APP_SUBSUME_FLAG_KIND">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="84">Copy the kind</doc>
      </member>
      <member name="state" value="16" c:identifier="AS_APP_SUBSUME_FLAG_STATE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="85">Copy the state</doc>
      </member>
      <member name="bundles"
              value="32"
              c:identifier="AS_APP_SUBSUME_FLAG_BUNDLES">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="86">Copy the bundles</doc>
      </member>
      <member name="translations"
              value="64"
              c:identifier="AS_APP_SUBSUME_FLAG_TRANSLATIONS">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="87">Copy the translations</doc>
      </member>
      <member name="releases"
              value="128"
              c:identifier="AS_APP_SUBSUME_FLAG_RELEASES">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="88">Copy the releases</doc>
      </member>
      <member name="kudos"
              value="256"
              c:identifier="AS_APP_SUBSUME_FLAG_KUDOS">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="89">Copy the kudos</doc>
      </member>
      <member name="categories"
              value="512"
              c:identifier="AS_APP_SUBSUME_FLAG_CATEGORIES">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="90">Copy the categories</doc>
      </member>
      <member name="permissions"
              value="1024"
              c:identifier="AS_APP_SUBSUME_FLAG_PERMISSIONS">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="91">Copy the permissions</doc>
      </member>
      <member name="extends"
              value="2048"
              c:identifier="AS_APP_SUBSUME_FLAG_EXTENDS">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="92">Copy the extends</doc>
      </member>
      <member name="compulsory"
              value="4096"
              c:identifier="AS_APP_SUBSUME_FLAG_COMPULSORY">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="93">Copy the compulsory-for-desktop</doc>
      </member>
      <member name="screenshots"
              value="8192"
              c:identifier="AS_APP_SUBSUME_FLAG_SCREENSHOTS">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="94">Copy the screenshots</doc>
      </member>
      <member name="reviews"
              value="16384"
              c:identifier="AS_APP_SUBSUME_FLAG_REVIEWS">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="95">Copy the reviews</doc>
      </member>
      <member name="content_ratings"
              value="32768"
              c:identifier="AS_APP_SUBSUME_FLAG_CONTENT_RATINGS">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="96">Copy the content ratings</doc>
      </member>
      <member name="provides"
              value="65536"
              c:identifier="AS_APP_SUBSUME_FLAG_PROVIDES">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="98">Copy the provides</doc>
      </member>
      <member name="icons"
              value="131072"
              c:identifier="AS_APP_SUBSUME_FLAG_ICONS">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="99">Copy the icons</doc>
      </member>
      <member name="mimetypes"
              value="262144"
              c:identifier="AS_APP_SUBSUME_FLAG_MIMETYPES">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="100">Copy the mimetypes</doc>
      </member>
      <member name="vetos"
              value="524288"
              c:identifier="AS_APP_SUBSUME_FLAG_VETOS">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="101">Copy the vetos</doc>
      </member>
      <member name="languages"
              value="1048576"
              c:identifier="AS_APP_SUBSUME_FLAG_LANGUAGES">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="102">Copy the languages</doc>
      </member>
      <member name="name"
              value="2097152"
              c:identifier="AS_APP_SUBSUME_FLAG_NAME">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="103">Copy the name</doc>
      </member>
      <member name="comment"
              value="4194304"
              c:identifier="AS_APP_SUBSUME_FLAG_COMMENT">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="104">Copy the comment</doc>
      </member>
      <member name="developer_name"
              value="8388608"
              c:identifier="AS_APP_SUBSUME_FLAG_DEVELOPER_NAME">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="105">Copy the developer name</doc>
      </member>
      <member name="description"
              value="16777216"
              c:identifier="AS_APP_SUBSUME_FLAG_DESCRIPTION">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="106">Copy the description</doc>
      </member>
      <member name="metadata"
              value="33554432"
              c:identifier="AS_APP_SUBSUME_FLAG_METADATA">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="107">Copy the metadata</doc>
      </member>
      <member name="url"
              value="67108864"
              c:identifier="AS_APP_SUBSUME_FLAG_URL">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="108">Copy the urls</doc>
      </member>
      <member name="keywords"
              value="134217728"
              c:identifier="AS_APP_SUBSUME_FLAG_KEYWORDS">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="109">Copy the keywords</doc>
      </member>
      <member name="formats"
              value="268435456"
              c:identifier="AS_APP_SUBSUME_FLAG_FORMATS">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="110">Copy the source file</doc>
      </member>
      <member name="branch"
              value="536870912"
              c:identifier="AS_APP_SUBSUME_FLAG_BRANCH">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="111">Copy the branch</doc>
      </member>
      <member name="origin"
              value="1073741824"
              c:identifier="AS_APP_SUBSUME_FLAG_ORIGIN">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="112">Copy the origin</doc>
      </member>
      <member name="metadata_license"
              value="2147483648"
              c:identifier="AS_APP_SUBSUME_FLAG_METADATA_LICENSE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="113">Copy the metadata license</doc>
      </member>
      <member name="project_license"
              value="4294967296"
              c:identifier="AS_APP_SUBSUME_FLAG_PROJECT_LICENSE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="114">Copy the project license</doc>
      </member>
      <member name="project_group"
              value="8589934592"
              c:identifier="AS_APP_SUBSUME_FLAG_PROJECT_GROUP">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="115">Copy the project group</doc>
      </member>
      <member name="source_kind"
              value="17179869184"
              c:identifier="AS_APP_SUBSUME_FLAG_SOURCE_KIND">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="116">Copy the source kind</doc>
      </member>
      <member name="suggests"
              value="34359738368"
              c:identifier="AS_APP_SUBSUME_FLAG_SUGGESTS">
      </member>
      <member name="launchables"
              value="68719476736"
              c:identifier="AS_APP_SUBSUME_FLAG_LAUNCHABLES">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="117">Copy the launchables</doc>
      </member>
      <member name="agreements"
              value="137438953472"
              c:identifier="AS_APP_SUBSUME_FLAG_AGREEMENTS">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="97">Copy the agreements</doc>
      </member>
    </bitfield>
    <enumeration name="AppTrustFlags" c:type="AsAppTrustFlags">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-app.h"
           line="245">The flags to use when checking input.</doc>
      <source-position filename="libappstream-glib/as-app.h" line="259"/>
      <member name="complete"
              value="0"
              c:identifier="AS_APP_TRUST_FLAG_COMPLETE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="247">Trusted data with no validation</doc>
      </member>
      <member name="check_duplicates"
              value="1"
              c:identifier="AS_APP_TRUST_FLAG_CHECK_DUPLICATES">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="248">Check for duplicates</doc>
      </member>
      <member name="check_valid_utf8"
              value="2"
              c:identifier="AS_APP_TRUST_FLAG_CHECK_VALID_UTF8">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="249">Check for valid UTF-8</doc>
      </member>
    </enumeration>
    <enumeration name="AppValidateFlags" c:type="AsAppValidateFlags">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-app.h"
           line="225">The flags to use when validating.</doc>
      <source-position filename="libappstream-glib/as-app.h" line="243"/>
      <member name="none" value="0" c:identifier="AS_APP_VALIDATE_FLAG_NONE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="227">No extra flags to use</doc>
      </member>
      <member name="relax" value="1" c:identifier="AS_APP_VALIDATE_FLAG_RELAX">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="228">Relax the checks</doc>
      </member>
      <member name="strict"
              value="2"
              c:identifier="AS_APP_VALIDATE_FLAG_STRICT">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="229">Make the checks more strict</doc>
      </member>
      <member name="no_network"
              value="4"
              c:identifier="AS_APP_VALIDATE_FLAG_NO_NETWORK">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="230">Do not use the network</doc>
      </member>
      <member name="all_apps"
              value="8"
              c:identifier="AS_APP_VALIDATE_FLAG_ALL_APPS">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-app.h"
             line="231">Check all applications in a store</doc>
      </member>
    </enumeration>
    <class name="Bundle"
           c:symbol-prefix="bundle"
           c:type="AsBundle"
           parent="GObject.Object"
           glib:type-name="AsBundle"
           glib:get-type="as_bundle_get_type"
           glib:type-struct="BundleClass">
      <source-position filename="libappstream-glib/as-bundle.h" line="33"/>
      <constructor name="new" c:identifier="as_bundle_new" version="0.3.5">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-bundle.c"
             line="362">Creates a new #AsBundle.</doc>
        <source-position filename="libappstream-glib/as-bundle.h" line="62"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-bundle.c"
               line="367">a #AsBundle</doc>
          <type name="Bundle" c:type="AsBundle*"/>
        </return-value>
      </constructor>
      <function name="kind_from_string"
                c:identifier="as_bundle_kind_from_string"
                version="0.3.5">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-bundle.c"
             line="70">Converts the text representation to an enumerated value.</doc>
        <source-position filename="libappstream-glib/as-bundle.h" line="65"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-bundle.c"
               line="76">a #AsBundleKind, or %AS_BUNDLE_KIND_UNKNOWN for unknown.</doc>
          <type name="BundleKind" c:type="AsBundleKind"/>
        </return-value>
        <parameters>
          <parameter name="kind" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-bundle.c"
                 line="72">the string.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </function>
      <function name="kind_to_string"
                c:identifier="as_bundle_kind_to_string"
                version="0.3.5">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-bundle.c"
             line="100">Converts the enumerated value to an text representation.</doc>
        <source-position filename="libappstream-glib/as-bundle.h" line="66"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-bundle.c"
               line="106">string version of @kind</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <parameter name="kind" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-bundle.c"
                 line="102">the #AsBundleKind.</doc>
            <type name="BundleKind" c:type="AsBundleKind"/>
          </parameter>
        </parameters>
      </function>
      <method name="get_id" c:identifier="as_bundle_get_id" version="0.3.5">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-bundle.c"
             line="128">Gets the ID for this bundle.</doc>
        <source-position filename="libappstream-glib/as-bundle.h" line="69"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-bundle.c"
               line="134">ID, e.g. "foobar-1.0.2"</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="bundle" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-bundle.c"
                 line="130">a #AsBundle instance.</doc>
            <type name="Bundle" c:type="AsBundle*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_kind"
              c:identifier="as_bundle_get_kind"
              version="0.3.5">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-bundle.c"
             line="182">Gets the bundle kind.</doc>
        <source-position filename="libappstream-glib/as-bundle.h" line="72"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-bundle.c"
               line="188">the #AsBundleKind</doc>
          <type name="BundleKind" c:type="AsBundleKind"/>
        </return-value>
        <parameters>
          <instance-parameter name="bundle" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-bundle.c"
                 line="184">a #AsBundle instance.</doc>
            <type name="Bundle" c:type="AsBundle*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_runtime"
              c:identifier="as_bundle_get_runtime"
              version="0.5.10">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-bundle.c"
             line="146">Gets the runtime required for this bundle.</doc>
        <source-position filename="libappstream-glib/as-bundle.h" line="70"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-bundle.c"
               line="152">Runtime identifier, e.g. "org.gnome.Platform/i386/master"</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="bundle" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-bundle.c"
                 line="148">a #AsBundle instance.</doc>
            <type name="Bundle" c:type="AsBundle*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_sdk" c:identifier="as_bundle_get_sdk" version="0.5.10">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-bundle.c"
             line="164">Gets the SDK for this bundle.</doc>
        <source-position filename="libappstream-glib/as-bundle.h" line="71"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-bundle.c"
               line="170">SDK identifier, e.g. "org.gnome.Sdk/i386/master"</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="bundle" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-bundle.c"
                 line="166">a #AsBundle instance.</doc>
            <type name="Bundle" c:type="AsBundle*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="set_id" c:identifier="as_bundle_set_id" version="0.3.5">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-bundle.c"
             line="200">Sets the ID for this bundle.</doc>
        <source-position filename="libappstream-glib/as-bundle.h" line="75"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="bundle" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-bundle.c"
                 line="202">a #AsBundle instance.</doc>
            <type name="Bundle" c:type="AsBundle*"/>
          </instance-parameter>
          <parameter name="id" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-bundle.c"
                 line="203">the URL.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_kind"
              c:identifier="as_bundle_set_kind"
              version="0.3.5">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-bundle.c"
             line="251">Sets the bundle kind.</doc>
        <source-position filename="libappstream-glib/as-bundle.h" line="81"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="bundle" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-bundle.c"
                 line="253">a #AsBundle instance.</doc>
            <type name="Bundle" c:type="AsBundle*"/>
          </instance-parameter>
          <parameter name="kind" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-bundle.c"
                 line="254">the #AsBundleKind, e.g. %AS_BUNDLE_KIND_FLATPAK.</doc>
            <type name="BundleKind" c:type="AsBundleKind"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_runtime"
              c:identifier="as_bundle_set_runtime"
              version="0.5.10">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-bundle.c"
             line="217">Sets the runtime required for this bundle.</doc>
        <source-position filename="libappstream-glib/as-bundle.h" line="77"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="bundle" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-bundle.c"
                 line="219">a #AsBundle instance.</doc>
            <type name="Bundle" c:type="AsBundle*"/>
          </instance-parameter>
          <parameter name="runtime" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-bundle.c"
                 line="220">the URL.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_sdk" c:identifier="as_bundle_set_sdk" version="0.5.10">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-bundle.c"
             line="234">Sets the SDK for this bundle.</doc>
        <source-position filename="libappstream-glib/as-bundle.h" line="79"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="bundle" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-bundle.c"
                 line="236">a #AsBundle instance.</doc>
            <type name="Bundle" c:type="AsBundle*"/>
          </instance-parameter>
          <parameter name="sdk" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-bundle.c"
                 line="237">the URL.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <field name="parent_instance">
        <type name="GObject.Object" c:type="GObject"/>
      </field>
    </class>
    <record name="BundleClass"
            c:type="AsBundleClass"
            glib:is-gtype-struct-for="Bundle">
      <source-position filename="libappstream-glib/as-bundle.h" line="33"/>
      <field name="parent_class">
        <type name="GObject.ObjectClass" c:type="GObjectClass"/>
      </field>
      <field name="_as_reserved1" introspectable="0">
        <callback name="_as_reserved1">
          <source-position filename="libappstream-glib/as-bundle.h" line="25"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved2" introspectable="0">
        <callback name="_as_reserved2">
          <source-position filename="libappstream-glib/as-bundle.h" line="26"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved3" introspectable="0">
        <callback name="_as_reserved3">
          <source-position filename="libappstream-glib/as-bundle.h" line="27"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved4" introspectable="0">
        <callback name="_as_reserved4">
          <source-position filename="libappstream-glib/as-bundle.h" line="28"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved5" introspectable="0">
        <callback name="_as_reserved5">
          <source-position filename="libappstream-glib/as-bundle.h" line="29"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved6" introspectable="0">
        <callback name="_as_reserved6">
          <source-position filename="libappstream-glib/as-bundle.h" line="30"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved7" introspectable="0">
        <callback name="_as_reserved7">
          <source-position filename="libappstream-glib/as-bundle.h" line="31"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved8" introspectable="0">
        <callback name="_as_reserved8">
          <source-position filename="libappstream-glib/as-bundle.h" line="32"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
    </record>
    <enumeration name="BundleKind" c:type="AsBundleKind">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-bundle.h"
           line="35">The bundle type.</doc>
      <source-position filename="libappstream-glib/as-bundle.h" line="57"/>
      <member name="unknown" value="0" c:identifier="AS_BUNDLE_KIND_UNKNOWN">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-bundle.h"
             line="37">Type invalid or not known</doc>
      </member>
      <member name="limba" value="1" c:identifier="AS_BUNDLE_KIND_LIMBA">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-bundle.h"
             line="38">Limba application bundle</doc>
      </member>
      <member name="flatpak" value="2" c:identifier="AS_BUNDLE_KIND_FLATPAK">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-bundle.h"
             line="39">Flatpak application deployment</doc>
      </member>
      <member name="snap" value="3" c:identifier="AS_BUNDLE_KIND_SNAP">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-bundle.h"
             line="40">Snap application deployment</doc>
      </member>
      <member name="package" value="4" c:identifier="AS_BUNDLE_KIND_PACKAGE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-bundle.h"
             line="41">Package-based application deployment</doc>
      </member>
      <member name="cabinet" value="5" c:identifier="AS_BUNDLE_KIND_CABINET">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-bundle.h"
             line="42">Cabinet firmware deployment</doc>
      </member>
      <member name="appimage" value="6" c:identifier="AS_BUNDLE_KIND_APPIMAGE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-bundle.h"
             line="43">AppImage application bundle</doc>
      </member>
    </enumeration>
    <class name="Checksum"
           c:symbol-prefix="checksum"
           c:type="AsChecksum"
           parent="GObject.Object"
           glib:type-name="AsChecksum"
           glib:get-type="as_checksum_get_type"
           glib:type-struct="ChecksumClass">
      <source-position filename="libappstream-glib/as-checksum.h" line="33"/>
      <constructor name="new" c:identifier="as_checksum_new" version="0.4.2">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-checksum.c"
             line="396">Creates a new #AsChecksum.</doc>
        <source-position filename="libappstream-glib/as-checksum.h" line="55"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-checksum.c"
               line="401">a #AsChecksum</doc>
          <type name="Checksum" c:type="AsChecksum*"/>
        </return-value>
      </constructor>
      <function name="target_from_string"
                c:identifier="as_checksum_target_from_string"
                version="0.4.2">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-checksum.c"
             line="69">Converts the text representation to an enumerated value.</doc>
        <source-position filename="libappstream-glib/as-checksum.h" line="56"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-checksum.c"
               line="75">A #AsChecksumTarget, e.g. %AS_CHECKSUM_TARGET_CONTAINER.</doc>
          <type name="ChecksumTarget" c:type="AsChecksumTarget"/>
        </return-value>
        <parameters>
          <parameter name="target" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-checksum.c"
                 line="71">a source kind string</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </function>
      <function name="target_to_string"
                c:identifier="as_checksum_target_to_string"
                version="0.4.2">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-checksum.c"
             line="93">Converts the enumerated value to an text representation.</doc>
        <source-position filename="libappstream-glib/as-checksum.h" line="57"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-checksum.c"
               line="99">string version of @target, or %NULL for unknown</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <parameter name="target" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-checksum.c"
                 line="95">the #AsChecksumTarget.</doc>
            <type name="ChecksumTarget" c:type="AsChecksumTarget"/>
          </parameter>
        </parameters>
      </function>
      <method name="get_filename"
              c:identifier="as_checksum_get_filename"
              version="0.4.2">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-checksum.c"
             line="117">Gets the full qualified URL for the checksum, usually pointing at some mirror.</doc>
        <source-position filename="libappstream-glib/as-checksum.h" line="60"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-checksum.c"
               line="123">URL</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="checksum" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-checksum.c"
                 line="119">a #AsChecksum instance.</doc>
            <type name="Checksum" c:type="AsChecksum*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_kind"
              c:identifier="as_checksum_get_kind"
              version="0.4.2">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-checksum.c"
             line="153">Gets the checksum kind.</doc>
        <source-position filename="libappstream-glib/as-checksum.h" line="62"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-checksum.c"
               line="159">the #GChecksumType</doc>
          <type name="GLib.ChecksumType" c:type="GChecksumType"/>
        </return-value>
        <parameters>
          <instance-parameter name="checksum" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-checksum.c"
                 line="155">a #AsChecksum instance.</doc>
            <type name="Checksum" c:type="AsChecksum*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_target"
              c:identifier="as_checksum_get_target"
              version="0.4.2">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-checksum.c"
             line="171">Gets the checksum target.</doc>
        <source-position filename="libappstream-glib/as-checksum.h" line="63"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-checksum.c"
               line="177">the #GChecksumType</doc>
          <type name="ChecksumTarget" c:type="AsChecksumTarget"/>
        </return-value>
        <parameters>
          <instance-parameter name="checksum" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-checksum.c"
                 line="173">a #AsChecksum instance.</doc>
            <type name="Checksum" c:type="AsChecksum*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_value"
              c:identifier="as_checksum_get_value"
              version="0.4.2">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-checksum.c"
             line="135">Gets the suggested value the checksum, including file extension.</doc>
        <source-position filename="libappstream-glib/as-checksum.h" line="61"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-checksum.c"
               line="141">filename</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="checksum" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-checksum.c"
                 line="137">a #AsChecksum instance.</doc>
            <type name="Checksum" c:type="AsChecksum*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="set_filename"
              c:identifier="as_checksum_set_filename"
              version="0.4.2">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-checksum.c"
             line="189">Sets the filename used to generate the checksum.</doc>
        <source-position filename="libappstream-glib/as-checksum.h" line="66"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="checksum" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-checksum.c"
                 line="191">a #AsChecksum instance.</doc>
            <type name="Checksum" c:type="AsChecksum*"/>
          </instance-parameter>
          <parameter name="filename" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-checksum.c"
                 line="192">the URL.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_kind"
              c:identifier="as_checksum_set_kind"
              version="0.4.2">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-checksum.c"
             line="224">Sets the checksum kind.</doc>
        <source-position filename="libappstream-glib/as-checksum.h" line="70"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="checksum" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-checksum.c"
                 line="226">a #AsChecksum instance.</doc>
            <type name="Checksum" c:type="AsChecksum*"/>
          </instance-parameter>
          <parameter name="kind" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-checksum.c"
                 line="227">the #GChecksumType, e.g. %G_CHECKSUM_SHA1.</doc>
            <type name="GLib.ChecksumType" c:type="GChecksumType"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_target"
              c:identifier="as_checksum_set_target"
              version="0.4.2">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-checksum.c"
             line="241">Sets the checksum target.</doc>
        <source-position filename="libappstream-glib/as-checksum.h" line="72"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="checksum" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-checksum.c"
                 line="243">a #AsChecksum instance.</doc>
            <type name="Checksum" c:type="AsChecksum*"/>
          </instance-parameter>
          <parameter name="target" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-checksum.c"
                 line="244">the #GChecksumType, e.g. %AS_CHECKSUM_TARGET_CONTAINER.</doc>
            <type name="ChecksumTarget" c:type="AsChecksumTarget"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_value"
              c:identifier="as_checksum_set_value"
              version="0.4.2">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-checksum.c"
             line="207">Sets the checksum value filename.</doc>
        <source-position filename="libappstream-glib/as-checksum.h" line="68"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="checksum" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-checksum.c"
                 line="209">a #AsChecksum instance.</doc>
            <type name="Checksum" c:type="AsChecksum*"/>
          </instance-parameter>
          <parameter name="value" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-checksum.c"
                 line="210">the new filename value.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <field name="parent_instance">
        <type name="GObject.Object" c:type="GObject"/>
      </field>
    </class>
    <record name="ChecksumClass"
            c:type="AsChecksumClass"
            glib:is-gtype-struct-for="Checksum">
      <source-position filename="libappstream-glib/as-checksum.h" line="33"/>
      <field name="parent_class">
        <type name="GObject.ObjectClass" c:type="GObjectClass"/>
      </field>
      <field name="_as_reserved1" introspectable="0">
        <callback name="_as_reserved1">
          <source-position filename="libappstream-glib/as-checksum.h"
                           line="25"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved2" introspectable="0">
        <callback name="_as_reserved2">
          <source-position filename="libappstream-glib/as-checksum.h"
                           line="26"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved3" introspectable="0">
        <callback name="_as_reserved3">
          <source-position filename="libappstream-glib/as-checksum.h"
                           line="27"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved4" introspectable="0">
        <callback name="_as_reserved4">
          <source-position filename="libappstream-glib/as-checksum.h"
                           line="28"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved5" introspectable="0">
        <callback name="_as_reserved5">
          <source-position filename="libappstream-glib/as-checksum.h"
                           line="29"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved6" introspectable="0">
        <callback name="_as_reserved6">
          <source-position filename="libappstream-glib/as-checksum.h"
                           line="30"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved7" introspectable="0">
        <callback name="_as_reserved7">
          <source-position filename="libappstream-glib/as-checksum.h"
                           line="31"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved8" introspectable="0">
        <callback name="_as_reserved8">
          <source-position filename="libappstream-glib/as-checksum.h"
                           line="32"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
    </record>
    <enumeration name="ChecksumTarget" c:type="AsChecksumTarget">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-checksum.h"
           line="35">The checksum target type.</doc>
      <source-position filename="libappstream-glib/as-checksum.h" line="53"/>
      <member name="unknown"
              value="0"
              c:identifier="AS_CHECKSUM_TARGET_UNKNOWN">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-checksum.h"
             line="37">Unknown state</doc>
      </member>
      <member name="container"
              value="1"
              c:identifier="AS_CHECKSUM_TARGET_CONTAINER">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-checksum.h"
             line="38">Container file, e.g. `.cab`</doc>
      </member>
      <member name="content"
              value="2"
              c:identifier="AS_CHECKSUM_TARGET_CONTENT">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-checksum.h"
             line="39">Extracted file, e.g. `.bin`</doc>
      </member>
      <member name="signature"
              value="3"
              c:identifier="AS_CHECKSUM_TARGET_SIGNATURE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-checksum.h"
             line="40">Signature, e.g. `.asc` or `.cat`</doc>
      </member>
      <member name="device" value="4" c:identifier="AS_CHECKSUM_TARGET_DEVICE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-checksum.h"
             line="41">Device-reported value</doc>
      </member>
    </enumeration>
    <class name="ContentRating"
           c:symbol-prefix="content_rating"
           c:type="AsContentRating"
           parent="GObject.Object"
           glib:type-name="AsContentRating"
           glib:get-type="as_content_rating_get_type"
           glib:type-struct="ContentRatingClass">
      <source-position filename="libappstream-glib/as-content-rating.h"
                       line="33"/>
      <constructor name="new"
                   c:identifier="as_content_rating_new"
                   version="0.5.12">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-content-rating.c"
             line="1480">Creates a new #AsContentRating.</doc>
        <source-position filename="libappstream-glib/as-content-rating.h"
                         line="99"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-content-rating.c"
               line="1485">a #AsContentRating</doc>
          <type name="ContentRating" c:type="AsContentRating*"/>
        </return-value>
      </constructor>
      <function name="attribute_from_csm_age"
                c:identifier="as_content_rating_attribute_from_csm_age"
                version="0.7.18">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-content-rating.c"
             line="1226">Gets the highest #AsContentRatingValue which is allowed to be seen by the
given Common Sense Media @age for the given subsection @id.

For example, if the CSM age mappings for `violence-bloodshed` are:
 * age ≥ 0 for %AS_CONTENT_RATING_VALUE_NONE
 * age ≥ 9 for %AS_CONTENT_RATING_VALUE_MILD
 * age ≥ 11 for %AS_CONTENT_RATING_VALUE_MODERATE
 * age ≥ 18 for %AS_CONTENT_RATING_VALUE_INTENSE
then calling this function with `violence-bloodshed` and @age set to 17 would
return %AS_CONTENT_RATING_VALUE_MODERATE. Calling it with age 18 would
return %AS_CONTENT_RATING_VALUE_INTENSE.</doc>
        <source-position filename="libappstream-glib/as-content-rating.h"
                         line="128"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-content-rating.c"
               line="1243">the #AsContentRatingValue, or %AS_CONTENT_RATING_VALUE_UNKNOWN if
   unknown</doc>
          <type name="ContentRatingValue" c:type="AsContentRatingValue"/>
        </return-value>
        <parameters>
          <parameter name="id" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-content-rating.c"
                 line="1228">the subsection ID e.g. `violence-cartoon`</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="age" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-content-rating.c"
                 line="1229">the CSM age</doc>
            <type name="guint" c:type="guint"/>
          </parameter>
        </parameters>
      </function>
      <function name="attribute_get_description"
                c:identifier="as_content_rating_attribute_get_description"
                version="0.7.18">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-content-rating.c"
             line="1084">Get a human-readable description of what content would be expected to
require the content rating attribute given by @id and @value.</doc>
        <source-position filename="libappstream-glib/as-content-rating.h"
                         line="130"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-content-rating.c"
               line="1092">a human-readable description of @id and @value</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <parameter name="id" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-content-rating.c"
                 line="1086">the subsection ID e.g. `violence-cartoon`</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="value" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-content-rating.c"
                 line="1087">the #AsContentRatingValue, e.g. %AS_CONTENT_RATING_VALUE_INTENSE</doc>
            <type name="ContentRatingValue" c:type="AsContentRatingValue"/>
          </parameter>
        </parameters>
      </function>
      <function name="attribute_to_csm_age"
                c:identifier="as_content_rating_attribute_to_csm_age"
                version="0.7.15">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-content-rating.c"
             line="1183">Gets the Common Sense Media approved age for a specific rating level.</doc>
        <source-position filename="libappstream-glib/as-content-rating.h"
                         line="126"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-content-rating.c"
               line="1190">The age in years, or 0 for no details.</doc>
          <type name="guint" c:type="guint"/>
        </return-value>
        <parameters>
          <parameter name="id" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-content-rating.c"
                 line="1185">the subsection ID e.g. `violence-cartoon`</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="value" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-content-rating.c"
                 line="1186">the #AsContentRatingValue, e.g. %AS_CONTENT_RATING_VALUE_INTENSE</doc>
            <type name="ContentRatingValue" c:type="AsContentRatingValue"/>
          </parameter>
        </parameters>
      </function>
      <function name="get_all_rating_ids"
                c:identifier="as_content_rating_get_all_rating_ids"
                version="0.7.15">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-content-rating.c"
             line="1268">Returns a list of all the valid OARS content rating attribute IDs as could
be passed to as_content_rating_add_attribute() or
as_content_rating_attribute_to_csm_age().</doc>
        <source-position filename="libappstream-glib/as-content-rating.h"
                         line="132"/>
        <return-value transfer-ownership="container">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-content-rating.c"
               line="1275">a %NULL-terminated
   array of IDs, to be freed with g_free() (the element values are owned by
   libappstream-glib and must not be freed)</doc>
          <array c:type="const gchar**">
            <type name="utf8"/>
          </array>
        </return-value>
      </function>
      <function name="system_format_age"
                c:identifier="as_content_rating_system_format_age"
                version="0.7.18">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-content-rating.c"
             line="264">Format @age as a human-readable string in the given rating @system. This is
the way to present system-specific strings in a UI.</doc>
        <source-position filename="libappstream-glib/as-content-rating.h"
                         line="106"/>
        <return-value transfer-ownership="full" nullable="1">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-content-rating.c"
               line="272">a newly allocated formatted version of
   @age, or %NULL if the given @system has no representation for @age</doc>
          <type name="utf8" c:type="gchar*"/>
        </return-value>
        <parameters>
          <parameter name="system" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-content-rating.c"
                 line="266">an #AsContentRatingSystem</doc>
            <type name="ContentRatingSystem" c:type="AsContentRatingSystem"/>
          </parameter>
          <parameter name="age" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-content-rating.c"
                 line="267">a CSM age to format</doc>
            <type name="guint" c:type="guint"/>
          </parameter>
        </parameters>
      </function>
      <function name="system_from_locale"
                c:identifier="as_content_rating_system_from_locale"
                version="0.7.18">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-content-rating.c"
             line="626">Determine the most appropriate #AsContentRatingSystem for the given @locale.
Content rating systems are selected by territory. If no content rating system
seems suitable, %AS_CONTENT_RATING_SYSTEM_IARC is returned.</doc>
        <source-position filename="libappstream-glib/as-content-rating.h"
                         line="109"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-content-rating.c"
               line="634">the most relevant #AsContentRatingSystem</doc>
          <type name="ContentRatingSystem" c:type="AsContentRatingSystem"/>
        </return-value>
        <parameters>
          <parameter name="locale" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-content-rating.c"
                 line="628">a locale, in the format described in `man 3 setlocale`</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </function>
      <function name="system_get_csm_ages"
                c:identifier="as_content_rating_system_get_csm_ages"
                version="0.7.18">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-content-rating.c"
             line="524">Get the CSM ages corresponding to the entries returned by
as_content_rating_system_get_formatted_ages() for this @system.</doc>
        <source-position filename="libappstream-glib/as-content-rating.h"
                         line="112"/>
        <return-value transfer-ownership="container">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-content-rating.c"
               line="533">an array of CSM ages</doc>
          <array length="1" zero-terminated="0" c:type="const guint*">
            <type name="guint" c:type="guint"/>
          </array>
        </return-value>
        <parameters>
          <parameter name="system" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-content-rating.c"
                 line="526">an #AsContentRatingSystem</doc>
            <type name="ContentRatingSystem" c:type="AsContentRatingSystem"/>
          </parameter>
          <parameter name="length_out"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-content-rating.c"
                 line="527">return location for the length of the
   returned array</doc>
            <type name="gsize" c:type="gsize*"/>
          </parameter>
        </parameters>
      </function>
      <function name="system_get_formatted_ages"
                c:identifier="as_content_rating_system_get_formatted_ages"
                version="0.7.18">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-content-rating.c"
             line="467">Get an array of all the possible return values of
as_content_rating_system_format_age() for the given @system. The array is
sorted with youngest CSM age first.</doc>
        <source-position filename="libappstream-glib/as-content-rating.h"
                         line="111"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-content-rating.c"
               line="475">%NULL-terminated array of human-readable age strings</doc>
          <array c:type="gchar**">
            <type name="utf8"/>
          </array>
        </return-value>
        <parameters>
          <parameter name="system" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-content-rating.c"
                 line="469">an #AsContentRatingSystem</doc>
            <type name="ContentRatingSystem" c:type="AsContentRatingSystem"/>
          </parameter>
        </parameters>
      </function>
      <function name="system_to_string"
                c:identifier="as_content_rating_system_to_string"
                version="0.7.18">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-content-rating.c"
             line="234">Get a human-readable string to identify @system. %NULL will be returned for
%AS_CONTENT_RATING_SYSTEM_UNKNOWN.</doc>
        <source-position filename="libappstream-glib/as-content-rating.h"
                         line="105"/>
        <return-value transfer-ownership="none" nullable="1">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-content-rating.c"
               line="241">a human-readable string for @system, or %NULL if unknown</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <parameter name="system" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-content-rating.c"
                 line="236">an #AsContentRatingSystem</doc>
            <type name="ContentRatingSystem" c:type="AsContentRatingSystem"/>
          </parameter>
        </parameters>
      </function>
      <function name="value_from_string"
                c:identifier="as_content_rating_value_from_string"
                version="0.5.12">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-content-rating.c"
             line="190">Converts the text representation to an enumerated value.</doc>
        <source-position filename="libappstream-glib/as-content-rating.h"
                         line="103"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-content-rating.c"
               line="196">a #AsContentRatingValue or %AS_CONTENT_RATING_VALUE_UNKNOWN for unknown</doc>
          <type name="ContentRatingValue" c:type="AsContentRatingValue"/>
        </return-value>
        <parameters>
          <parameter name="value" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-content-rating.c"
                 line="192">the string.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </function>
      <function name="value_to_string"
                c:identifier="as_content_rating_value_to_string"
                version="0.5.12">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-content-rating.c"
             line="166">Converts the enumerated value to an text representation.</doc>
        <source-position filename="libappstream-glib/as-content-rating.h"
                         line="102"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-content-rating.c"
               line="172">string version of @value</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <parameter name="value" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-content-rating.c"
                 line="168">the #AsContentRatingValue.</doc>
            <type name="ContentRatingValue" c:type="AsContentRatingValue"/>
          </parameter>
        </parameters>
      </function>
      <method name="add_attribute"
              c:identifier="as_content_rating_add_attribute"
              version="0.7.14">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-content-rating.c"
             line="1411">Adds an attribute value to the content rating.</doc>
        <source-position filename="libappstream-glib/as-content-rating.h"
                         line="120"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="content_rating" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-content-rating.c"
                 line="1413">a #AsContentRating instance.</doc>
            <type name="ContentRating" c:type="AsContentRating*"/>
          </instance-parameter>
          <parameter name="id" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-content-rating.c"
                 line="1414">a content rating ID, e.g. `money-gambling`.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="value" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-content-rating.c"
                 line="1415">a #AsContentRatingValue, e.g. %AS_CONTENT_RATING_VALUE_MODERATE.</doc>
            <type name="ContentRatingValue" c:type="AsContentRatingValue"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_kind"
              c:identifier="as_content_rating_get_kind"
              version="0.5.12">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-content-rating.c"
             line="1335">Gets the content_rating kind.</doc>
        <source-position filename="libappstream-glib/as-content-rating.h"
                         line="116"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-content-rating.c"
               line="1341">a string, e.g. "oars-1.0", or NULL</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="content_rating" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-content-rating.c"
                 line="1337">a #AsContentRating instance.</doc>
            <type name="ContentRating" c:type="AsContentRating*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_minimum_age"
              c:identifier="as_content_rating_get_minimum_age"
              version="0.5.12">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-content-rating.c"
             line="1292">Gets the lowest Common Sense Media approved age for the content_rating block.
NOTE: these numbers are based on the data and descriptions available from
https://www.commonsensemedia.org/about-us/our-mission/about-our-ratings and
you may disagree with them.

You're free to disagree with these, and of course you should use your own
brain to work our if your child is able to cope with the concepts enumerated
here. Some 13 year olds may be fine with the concept of mutilation of body
parts; others may get nightmares.</doc>
        <source-position filename="libappstream-glib/as-content-rating.h"
                         line="117"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-content-rating.c"
               line="1306">The age in years, 0 for no rating, or G_MAXUINT for no details.</doc>
          <type name="guint" c:type="guint"/>
        </return-value>
        <parameters>
          <instance-parameter name="content_rating" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-content-rating.c"
                 line="1294">a #AsContentRating</doc>
            <type name="ContentRating" c:type="AsContentRating*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_rating_ids"
              c:identifier="as_content_rating_get_rating_ids"
              version="0.7.15">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-content-rating.c"
             line="95">Gets the set of ratings IDs which are present in this @content_rating. An
example of a ratings ID is `violence-bloodshed`.

The IDs are returned in lexicographical order.</doc>
        <source-position filename="libappstream-glib/as-content-rating.h"
                         line="124"/>
        <return-value transfer-ownership="container">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-content-rating.c"
               line="104">%NULL-terminated
   array of ratings IDs; each ratings ID is owned by the #AsContentRating and
   must not be freed, but the container must be freed with g_free()</doc>
          <array c:type="const gchar**">
            <type name="utf8"/>
          </array>
        </return-value>
        <parameters>
          <instance-parameter name="content_rating" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-content-rating.c"
                 line="97">a #AsContentRating</doc>
            <type name="ContentRating" c:type="AsContentRating*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_value"
              c:identifier="as_content_rating_get_value"
              version="0.6.4">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-content-rating.c"
             line="130">Gets the set value of a content rating key.</doc>
        <source-position filename="libappstream-glib/as-content-rating.h"
                         line="118"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-content-rating.c"
               line="137">the #AsContentRatingValue, or %AS_CONTENT_RATING_VALUE_UNKNOWN</doc>
          <type name="ContentRatingValue" c:type="AsContentRatingValue"/>
        </return-value>
        <parameters>
          <instance-parameter name="content_rating" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-content-rating.c"
                 line="132">a #AsContentRating</doc>
            <type name="ContentRating" c:type="AsContentRating*"/>
          </instance-parameter>
          <parameter name="id" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-content-rating.c"
                 line="133">A ratings ID, e.g. `violence-bloodshed`.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_kind"
              c:identifier="as_content_rating_set_kind"
              version="0.5.12">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-content-rating.c"
             line="1353">Sets the content rating kind.</doc>
        <source-position filename="libappstream-glib/as-content-rating.h"
                         line="135"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="content_rating" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-content-rating.c"
                 line="1355">a #AsContentRating instance.</doc>
            <type name="ContentRating" c:type="AsContentRating*"/>
          </instance-parameter>
          <parameter name="kind" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-content-rating.c"
                 line="1356">the rating kind, e.g. "oars-1.0"</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <field name="parent_instance">
        <type name="GObject.Object" c:type="GObject"/>
      </field>
    </class>
    <record name="ContentRatingClass"
            c:type="AsContentRatingClass"
            glib:is-gtype-struct-for="ContentRating">
      <source-position filename="libappstream-glib/as-content-rating.h"
                       line="33"/>
      <field name="parent_class">
        <type name="GObject.ObjectClass" c:type="GObjectClass"/>
      </field>
      <field name="_as_reserved1" introspectable="0">
        <callback name="_as_reserved1">
          <source-position filename="libappstream-glib/as-content-rating.h"
                           line="25"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved2" introspectable="0">
        <callback name="_as_reserved2">
          <source-position filename="libappstream-glib/as-content-rating.h"
                           line="26"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved3" introspectable="0">
        <callback name="_as_reserved3">
          <source-position filename="libappstream-glib/as-content-rating.h"
                           line="27"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved4" introspectable="0">
        <callback name="_as_reserved4">
          <source-position filename="libappstream-glib/as-content-rating.h"
                           line="28"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved5" introspectable="0">
        <callback name="_as_reserved5">
          <source-position filename="libappstream-glib/as-content-rating.h"
                           line="29"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved6" introspectable="0">
        <callback name="_as_reserved6">
          <source-position filename="libappstream-glib/as-content-rating.h"
                           line="30"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved7" introspectable="0">
        <callback name="_as_reserved7">
          <source-position filename="libappstream-glib/as-content-rating.h"
                           line="31"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved8" introspectable="0">
        <callback name="_as_reserved8">
          <source-position filename="libappstream-glib/as-content-rating.h"
                           line="32"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
    </record>
    <enumeration name="ContentRatingSystem"
                 version="0.7.18"
                 c:type="AsContentRatingSystem">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-content-rating.h"
           line="55">A content rating system for a particular territory.</doc>
      <source-position filename="libappstream-glib/as-content-rating.h"
                       line="97"/>
      <member name="unknown"
              value="0"
              c:identifier="AS_CONTENT_RATING_SYSTEM_UNKNOWN">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-content-rating.h"
             line="57">Unknown ratings system</doc>
      </member>
      <member name="incaa"
              value="1"
              c:identifier="AS_CONTENT_RATING_SYSTEM_INCAA">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-content-rating.h"
             line="58">INCAA</doc>
      </member>
      <member name="acb" value="2" c:identifier="AS_CONTENT_RATING_SYSTEM_ACB">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-content-rating.h"
             line="59">ACB</doc>
      </member>
      <member name="djctq"
              value="3"
              c:identifier="AS_CONTENT_RATING_SYSTEM_DJCTQ">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-content-rating.h"
             line="60">DJCTQ</doc>
      </member>
      <member name="gsrr"
              value="4"
              c:identifier="AS_CONTENT_RATING_SYSTEM_GSRR">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-content-rating.h"
             line="61">GSRR</doc>
      </member>
      <member name="pegi"
              value="5"
              c:identifier="AS_CONTENT_RATING_SYSTEM_PEGI">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-content-rating.h"
             line="62">PEGI</doc>
      </member>
      <member name="kavi"
              value="6"
              c:identifier="AS_CONTENT_RATING_SYSTEM_KAVI">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-content-rating.h"
             line="63">KAVI</doc>
      </member>
      <member name="usk" value="7" c:identifier="AS_CONTENT_RATING_SYSTEM_USK">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-content-rating.h"
             line="64">USK</doc>
      </member>
      <member name="esra"
              value="8"
              c:identifier="AS_CONTENT_RATING_SYSTEM_ESRA">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-content-rating.h"
             line="65">ESRA</doc>
      </member>
      <member name="cero"
              value="9"
              c:identifier="AS_CONTENT_RATING_SYSTEM_CERO">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-content-rating.h"
             line="66">CERO</doc>
      </member>
      <member name="oflcnz"
              value="10"
              c:identifier="AS_CONTENT_RATING_SYSTEM_OFLCNZ">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-content-rating.h"
             line="67">OFLCNZ</doc>
      </member>
      <member name="russia"
              value="11"
              c:identifier="AS_CONTENT_RATING_SYSTEM_RUSSIA">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-content-rating.h"
             line="68">Russia</doc>
      </member>
      <member name="mda"
              value="12"
              c:identifier="AS_CONTENT_RATING_SYSTEM_MDA">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-content-rating.h"
             line="69">MDA</doc>
      </member>
      <member name="grac"
              value="13"
              c:identifier="AS_CONTENT_RATING_SYSTEM_GRAC">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-content-rating.h"
             line="70">GRAC</doc>
      </member>
      <member name="esrb"
              value="14"
              c:identifier="AS_CONTENT_RATING_SYSTEM_ESRB">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-content-rating.h"
             line="71">ESRB</doc>
      </member>
      <member name="iarc"
              value="15"
              c:identifier="AS_CONTENT_RATING_SYSTEM_IARC">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-content-rating.h"
             line="72">IARC</doc>
      </member>
    </enumeration>
    <enumeration name="ContentRatingValue" c:type="AsContentRatingValue">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-content-rating.h"
           line="35">The specified level of an content_rating rating ID.</doc>
      <source-position filename="libappstream-glib/as-content-rating.h"
                       line="53"/>
      <member name="unknown"
              value="0"
              c:identifier="AS_CONTENT_RATING_VALUE_UNKNOWN">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-content-rating.h"
             line="37">Unknown value</doc>
      </member>
      <member name="none"
              value="1"
              c:identifier="AS_CONTENT_RATING_VALUE_NONE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-content-rating.h"
             line="38">None</doc>
      </member>
      <member name="mild"
              value="2"
              c:identifier="AS_CONTENT_RATING_VALUE_MILD">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-content-rating.h"
             line="39">A small amount</doc>
      </member>
      <member name="moderate"
              value="3"
              c:identifier="AS_CONTENT_RATING_VALUE_MODERATE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-content-rating.h"
             line="40">A moderate amount</doc>
      </member>
      <member name="intense"
              value="4"
              c:identifier="AS_CONTENT_RATING_VALUE_INTENSE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-content-rating.h"
             line="41">An intense amount</doc>
      </member>
    </enumeration>
    <class name="Format"
           c:symbol-prefix="format"
           c:type="AsFormat"
           parent="GObject.Object"
           glib:type-name="AsFormat"
           glib:get-type="as_format_get_type"
           glib:type-struct="FormatClass">
      <source-position filename="libappstream-glib/as-format.h" line="33"/>
      <constructor name="new" c:identifier="as_format_new" version="0.6.9">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-format.c"
             line="253">Creates a new #AsFormat.</doc>
        <source-position filename="libappstream-glib/as-format.h" line="55"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-format.c"
               line="258">a #AsFormat</doc>
          <type name="Format" c:type="AsFormat*"/>
        </return-value>
      </constructor>
      <function name="guess_kind"
                c:identifier="as_format_guess_kind"
                version="0.6.9">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-format.c"
             line="143">Guesses the source kind based from the filename.</doc>
        <source-position filename="libappstream-glib/as-format.h" line="62"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-format.c"
               line="149">A #AsFormatKind, e.g. %AS_FORMAT_KIND_APPSTREAM.</doc>
          <type name="FormatKind" c:type="AsFormatKind"/>
        </return-value>
        <parameters>
          <parameter name="filename" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-format.c"
                 line="145">a file name</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </function>
      <function name="kind_from_string"
                c:identifier="as_format_kind_from_string"
                version="0.6.9">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-format.c"
             line="59">Converts the text representation to an enumerated value.</doc>
        <source-position filename="libappstream-glib/as-format.h" line="58"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-format.c"
               line="65">a #AsFormatKind, or %AS_FORMAT_KIND_UNKNOWN for unknown.</doc>
          <type name="FormatKind" c:type="AsFormatKind"/>
        </return-value>
        <parameters>
          <parameter name="kind" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-format.c"
                 line="61">the string.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </function>
      <function name="kind_to_string" c:identifier="as_format_kind_to_string">
        <source-position filename="libappstream-glib/as-format.h" line="59"/>
        <return-value transfer-ownership="none">
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <parameter name="kind" transfer-ownership="none">
            <type name="FormatKind" c:type="AsFormatKind"/>
          </parameter>
        </parameters>
      </function>
      <method name="equal" c:identifier="as_format_equal" version="0.6.9">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-format.c"
             line="219">Checks if two formats are the same.</doc>
        <source-position filename="libappstream-glib/as-format.h" line="60"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-format.c"
               line="226">%TRUE for success</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="format1" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-format.c"
                 line="221">a #AsFormat instance.</doc>
            <type name="Format" c:type="AsFormat*"/>
          </instance-parameter>
          <parameter name="format2" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-format.c"
                 line="222">a #AsFormat instance.</doc>
            <type name="Format" c:type="AsFormat*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_filename"
              c:identifier="as_format_get_filename"
              version="0.6.9">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-format.c"
             line="107">Gets the filename required for this format.</doc>
        <source-position filename="libappstream-glib/as-format.h" line="65"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-format.c"
               line="113">Runtime identifier, e.g. "org.gnome.Platform/i386/master"</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="format" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-format.c"
                 line="109">a #AsFormat instance.</doc>
            <type name="Format" c:type="AsFormat*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_kind"
              c:identifier="as_format_get_kind"
              version="0.6.9">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-format.c"
             line="125">Gets the format kind.</doc>
        <source-position filename="libappstream-glib/as-format.h" line="66"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-format.c"
               line="131">the #AsFormatKind</doc>
          <type name="FormatKind" c:type="AsFormatKind"/>
        </return-value>
        <parameters>
          <instance-parameter name="format" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-format.c"
                 line="127">a #AsFormat instance.</doc>
            <type name="Format" c:type="AsFormat*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="set_filename"
              c:identifier="as_format_set_filename"
              version="0.6.9">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-format.c"
             line="179">Sets the filename required for this format.</doc>
        <source-position filename="libappstream-glib/as-format.h" line="69"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="format" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-format.c"
                 line="181">a #AsFormat instance.</doc>
            <type name="Format" c:type="AsFormat*"/>
          </instance-parameter>
          <parameter name="filename" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-format.c"
                 line="182">the URL.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_kind"
              c:identifier="as_format_set_kind"
              version="0.6.9">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-format.c"
             line="202">Sets the format kind.</doc>
        <source-position filename="libappstream-glib/as-format.h" line="71"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="format" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-format.c"
                 line="204">a #AsFormat instance.</doc>
            <type name="Format" c:type="AsFormat*"/>
          </instance-parameter>
          <parameter name="kind" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-format.c"
                 line="205">the #AsFormatKind, e.g. %AS_FORMAT_KIND_APPDATA.</doc>
            <type name="FormatKind" c:type="AsFormatKind"/>
          </parameter>
        </parameters>
      </method>
      <field name="parent_instance">
        <type name="GObject.Object" c:type="GObject"/>
      </field>
    </class>
    <record name="FormatClass"
            c:type="AsFormatClass"
            glib:is-gtype-struct-for="Format">
      <source-position filename="libappstream-glib/as-format.h" line="33"/>
      <field name="parent_class">
        <type name="GObject.ObjectClass" c:type="GObjectClass"/>
      </field>
      <field name="_as_reserved1" introspectable="0">
        <callback name="_as_reserved1">
          <source-position filename="libappstream-glib/as-format.h" line="25"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved2" introspectable="0">
        <callback name="_as_reserved2">
          <source-position filename="libappstream-glib/as-format.h" line="26"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved3" introspectable="0">
        <callback name="_as_reserved3">
          <source-position filename="libappstream-glib/as-format.h" line="27"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved4" introspectable="0">
        <callback name="_as_reserved4">
          <source-position filename="libappstream-glib/as-format.h" line="28"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved5" introspectable="0">
        <callback name="_as_reserved5">
          <source-position filename="libappstream-glib/as-format.h" line="29"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved6" introspectable="0">
        <callback name="_as_reserved6">
          <source-position filename="libappstream-glib/as-format.h" line="30"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved7" introspectable="0">
        <callback name="_as_reserved7">
          <source-position filename="libappstream-glib/as-format.h" line="31"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved8" introspectable="0">
        <callback name="_as_reserved8">
          <source-position filename="libappstream-glib/as-format.h" line="32"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
    </record>
    <enumeration name="FormatKind" c:type="AsFormatKind">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-format.h"
           line="35">The format kind.</doc>
      <source-position filename="libappstream-glib/as-format.h" line="53"/>
      <member name="unknown" value="0" c:identifier="AS_FORMAT_KIND_UNKNOWN">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-format.h"
             line="37">Not formatd from a file</doc>
      </member>
      <member name="appstream"
              value="1"
              c:identifier="AS_FORMAT_KIND_APPSTREAM">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-format.h"
             line="38">AppStream file</doc>
      </member>
      <member name="desktop" value="2" c:identifier="AS_FORMAT_KIND_DESKTOP">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-format.h"
             line="39">Desktop file</doc>
      </member>
      <member name="appdata" value="3" c:identifier="AS_FORMAT_KIND_APPDATA">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-format.h"
             line="40">AppData file</doc>
      </member>
      <member name="metainfo" value="4" c:identifier="AS_FORMAT_KIND_METAINFO">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-format.h"
             line="41">MetaInfo file</doc>
      </member>
    </enumeration>
    <constant name="IMAGE_ALPHA_FLAG_BOTTOM"
              value="2"
              c:type="AS_IMAGE_ALPHA_FLAG_BOTTOM">
      <source-position filename="libappstream-glib/as-image.h" line="105"/>
      <type name="gint" c:type="gint"/>
    </constant>
    <constant name="IMAGE_ALPHA_FLAG_INTERNAL"
              value="16"
              c:type="AS_IMAGE_ALPHA_FLAG_INTERNAL">
      <source-position filename="libappstream-glib/as-image.h" line="108"/>
      <type name="gint" c:type="gint"/>
    </constant>
    <constant name="IMAGE_ALPHA_FLAG_LEFT"
              value="4"
              c:type="AS_IMAGE_ALPHA_FLAG_LEFT">
      <source-position filename="libappstream-glib/as-image.h" line="106"/>
      <type name="gint" c:type="gint"/>
    </constant>
    <constant name="IMAGE_ALPHA_FLAG_NONE"
              value="0"
              c:type="AS_IMAGE_ALPHA_FLAG_NONE">
      <source-position filename="libappstream-glib/as-image.h" line="103"/>
      <type name="gint" c:type="gint"/>
    </constant>
    <constant name="IMAGE_ALPHA_FLAG_RIGHT"
              value="8"
              c:type="AS_IMAGE_ALPHA_FLAG_RIGHT">
      <source-position filename="libappstream-glib/as-image.h" line="107"/>
      <type name="gint" c:type="gint"/>
    </constant>
    <constant name="IMAGE_ALPHA_FLAG_TOP"
              value="1"
              c:type="AS_IMAGE_ALPHA_FLAG_TOP">
      <source-position filename="libappstream-glib/as-image.h" line="104"/>
      <type name="gint" c:type="gint"/>
    </constant>
    <constant name="IMAGE_LARGE_HEIGHT"
              value="423"
              c:type="AS_IMAGE_LARGE_HEIGHT">
      <source-position filename="libappstream-glib/as-image.h" line="112"/>
      <type name="gint" c:type="gint"/>
    </constant>
    <constant name="IMAGE_LARGE_WIDTH"
              value="752"
              c:type="AS_IMAGE_LARGE_WIDTH">
      <source-position filename="libappstream-glib/as-image.h" line="113"/>
      <type name="gint" c:type="gint"/>
    </constant>
    <constant name="IMAGE_NORMAL_HEIGHT"
              value="351"
              c:type="AS_IMAGE_NORMAL_HEIGHT">
      <source-position filename="libappstream-glib/as-image.h" line="114"/>
      <type name="gint" c:type="gint"/>
    </constant>
    <constant name="IMAGE_NORMAL_WIDTH"
              value="624"
              c:type="AS_IMAGE_NORMAL_WIDTH">
      <source-position filename="libappstream-glib/as-image.h" line="115"/>
      <type name="gint" c:type="gint"/>
    </constant>
    <constant name="IMAGE_THUMBNAIL_HEIGHT"
              value="63"
              c:type="AS_IMAGE_THUMBNAIL_HEIGHT">
      <source-position filename="libappstream-glib/as-image.h" line="116"/>
      <type name="gint" c:type="gint"/>
    </constant>
    <constant name="IMAGE_THUMBNAIL_WIDTH"
              value="112"
              c:type="AS_IMAGE_THUMBNAIL_WIDTH">
      <source-position filename="libappstream-glib/as-image.h" line="117"/>
      <type name="gint" c:type="gint"/>
    </constant>
    <class name="Icon"
           c:symbol-prefix="icon"
           c:type="AsIcon"
           parent="GObject.Object"
           glib:type-name="AsIcon"
           glib:get-type="as_icon_get_type"
           glib:type-struct="IconClass">
      <source-position filename="libappstream-glib/as-icon.h" line="34"/>
      <constructor name="new" c:identifier="as_icon_new" version="0.3.1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-icon.c"
             line="1004">Creates a new #AsIcon.</doc>
        <source-position filename="libappstream-glib/as-icon.h" line="86"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-icon.c"
               line="1009">a #AsIcon</doc>
          <type name="Icon" c:type="AsIcon*"/>
        </return-value>
      </constructor>
      <function name="error_quark"
                c:identifier="as_icon_error_quark"
                version="0.3.1">
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-icon.c"
               line="52">An error quark.</doc>
          <type name="GLib.Quark" c:type="GQuark"/>
        </return-value>
      </function>
      <function name="kind_from_string"
                c:identifier="as_icon_kind_from_string"
                version="0.1.0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-icon.c"
             line="121">Converts the text representation to an enumerated value.</doc>
        <source-position filename="libappstream-glib/as-icon.h" line="91"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-icon.c"
               line="127">a #AsIconKind or %AS_ICON_KIND_UNKNOWN for unknown</doc>
          <type name="IconKind" c:type="AsIconKind"/>
        </return-value>
        <parameters>
          <parameter name="icon_kind" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-icon.c"
                 line="123">the string.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </function>
      <function name="kind_to_string"
                c:identifier="as_icon_kind_to_string"
                version="0.1.0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-icon.c"
             line="95">Converts the enumerated value to an text representation.</doc>
        <source-position filename="libappstream-glib/as-icon.h" line="90"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-icon.c"
               line="101">string version of @icon_kind</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <parameter name="icon_kind" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-icon.c"
                 line="97">the @AsIconKind.</doc>
            <type name="IconKind" c:type="AsIconKind"/>
          </parameter>
        </parameters>
      </function>
      <method name="convert_to_kind"
              c:identifier="as_icon_convert_to_kind"
              version="0.3.1"
              throws="1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-icon.c"
             line="919">Converts the icon from one kind to another.</doc>
        <source-position filename="libappstream-glib/as-icon.h" line="128"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-icon.c"
               line="927">%TRUE for success</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="icon" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-icon.c"
                 line="921">a #AsIcon instance.</doc>
            <type name="Icon" c:type="AsIcon*"/>
          </instance-parameter>
          <parameter name="kind" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-icon.c"
                 line="922">a %AsIconKind, e.g. #AS_ICON_KIND_EMBEDDED</doc>
            <type name="IconKind" c:type="AsIconKind"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_filename"
              c:identifier="as_icon_get_filename"
              version="0.3.2">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-icon.c"
             line="184">Gets the absolute path on disk of the icon.
NOTE: This is only set for icons of type %AS_ICON_KIND_LOCAL</doc>
        <source-position filename="libappstream-glib/as-icon.h" line="96"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-icon.c"
               line="191">the absolute filename on disk</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="icon" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-icon.c"
                 line="186">a #AsIcon instance.</doc>
            <type name="Icon" c:type="AsIcon*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_height"
              c:identifier="as_icon_get_height"
              version="0.3.1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-icon.c"
             line="261">Gets the icon height.</doc>
        <source-position filename="libappstream-glib/as-icon.h" line="99"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-icon.c"
               line="267">height in pixels</doc>
          <type name="guint" c:type="guint"/>
        </return-value>
        <parameters>
          <instance-parameter name="icon" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-icon.c"
                 line="263">a #AsIcon instance.</doc>
            <type name="Icon" c:type="AsIcon*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_kind" c:identifier="as_icon_get_kind" version="0.3.1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-icon.c"
             line="297">Gets the icon kind.</doc>
        <source-position filename="libappstream-glib/as-icon.h" line="101"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-icon.c"
               line="303">the #AsIconKind</doc>
          <type name="IconKind" c:type="AsIconKind"/>
        </return-value>
        <parameters>
          <instance-parameter name="icon" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-icon.c"
                 line="299">a #AsIcon instance.</doc>
            <type name="Icon" c:type="AsIcon*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_name" c:identifier="as_icon_get_name" version="0.3.1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-icon.c"
             line="147">Gets the name of the icon, e.g. "epiphany.png"</doc>
        <source-position filename="libappstream-glib/as-icon.h" line="94"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-icon.c"
               line="153">the basename of the icon</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="icon" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-icon.c"
                 line="149">a #AsIcon instance.</doc>
            <type name="Icon" c:type="AsIcon*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_pixbuf"
              c:identifier="as_icon_get_pixbuf"
              version="0.3.1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-icon.c"
             line="315">Gets the icon pixbuf if set.</doc>
        <source-position filename="libappstream-glib/as-icon.h" line="102"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-icon.c"
               line="321">the #GdkPixbuf, or %NULL</doc>
          <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
        </return-value>
        <parameters>
          <instance-parameter name="icon" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-icon.c"
                 line="317">a #AsIcon instance.</doc>
            <type name="Icon" c:type="AsIcon*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_prefix"
              c:identifier="as_icon_get_prefix"
              version="0.1.6">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-icon.c"
             line="203">Gets the suggested prefix of the icon.</doc>
        <source-position filename="libappstream-glib/as-icon.h" line="97"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-icon.c"
               line="209">filename</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="icon" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-icon.c"
                 line="205">a #AsIcon instance.</doc>
            <type name="Icon" c:type="AsIcon*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_scale"
              c:identifier="as_icon_get_scale"
              version="0.6.13">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-icon.c"
             line="279">Gets the icon scale.</doc>
        <source-position filename="libappstream-glib/as-icon.h" line="100"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-icon.c"
               line="285">scale factor</doc>
          <type name="guint" c:type="guint"/>
        </return-value>
        <parameters>
          <instance-parameter name="icon" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-icon.c"
                 line="281">a #AsIcon instance.</doc>
            <type name="Icon" c:type="AsIcon*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_url" c:identifier="as_icon_get_url" version="0.3.2">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-icon.c"
             line="165">Gets the full qualified URL for the icon, usually pointing at some mirror.
NOTE: This is only set for icons of type %AS_ICON_KIND_REMOTE</doc>
        <source-position filename="libappstream-glib/as-icon.h" line="95"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-icon.c"
               line="172">the fully qualified URL</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="icon" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-icon.c"
                 line="167">a #AsIcon instance.</doc>
            <type name="Icon" c:type="AsIcon*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_width"
              c:identifier="as_icon_get_width"
              version="0.3.1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-icon.c"
             line="243">Gets the icon width.</doc>
        <source-position filename="libappstream-glib/as-icon.h" line="98"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-icon.c"
               line="249">width in pixels</doc>
          <type name="guint" c:type="guint"/>
        </return-value>
        <parameters>
          <instance-parameter name="icon" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-icon.c"
                 line="245">a #AsIcon instance.</doc>
            <type name="Icon" c:type="AsIcon*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="load"
              c:identifier="as_icon_load"
              version="0.3.1"
              throws="1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-icon.c"
             line="839">Loads the icon into a local pixbuf.</doc>
        <source-position filename="libappstream-glib/as-icon.h" line="125"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-icon.c"
               line="847">%TRUE for success</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="icon" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-icon.c"
                 line="841">a #AsIcon instance.</doc>
            <type name="Icon" c:type="AsIcon*"/>
          </instance-parameter>
          <parameter name="flags" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-icon.c"
                 line="842">a #AsIconLoadFlags, e.g. %AS_ICON_LOAD_FLAG_SEARCH_SIZE</doc>
            <type name="IconLoadFlags" c:type="AsIconLoadFlags"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_filename"
              c:identifier="as_icon_set_filename"
              version="0.3.2">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-icon.c"
             line="410">Sets the icon absolute filename.</doc>
        <source-position filename="libappstream-glib/as-icon.h" line="109"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="icon" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-icon.c"
                 line="412">a #AsIcon instance.</doc>
            <type name="Icon" c:type="AsIcon*"/>
          </instance-parameter>
          <parameter name="filename" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-icon.c"
                 line="413">the new icon URL.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_height"
              c:identifier="as_icon_set_height"
              version="0.3.1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-icon.c"
             line="444">Sets the icon height.</doc>
        <source-position filename="libappstream-glib/as-icon.h" line="115"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="icon" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-icon.c"
                 line="446">a #AsIcon instance.</doc>
            <type name="Icon" c:type="AsIcon*"/>
          </instance-parameter>
          <parameter name="height" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-icon.c"
                 line="447">the height in pixels.</doc>
            <type name="guint" c:type="guint"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_kind" c:identifier="as_icon_set_kind" version="0.3.1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-icon.c"
             line="478">Sets the icon kind.</doc>
        <source-position filename="libappstream-glib/as-icon.h" line="119"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="icon" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-icon.c"
                 line="480">a #AsIcon instance.</doc>
            <type name="Icon" c:type="AsIcon*"/>
          </instance-parameter>
          <parameter name="kind" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-icon.c"
                 line="481">the #AsIconKind, e.g. %AS_ICON_KIND_STOCK.</doc>
            <type name="IconKind" c:type="AsIconKind"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_name" c:identifier="as_icon_set_name" version="0.3.1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-icon.c"
             line="351">Sets the basename to use for the icon.</doc>
        <source-position filename="libappstream-glib/as-icon.h" line="105"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="icon" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-icon.c"
                 line="353">a #AsIcon instance.</doc>
            <type name="Icon" c:type="AsIcon*"/>
          </instance-parameter>
          <parameter name="name" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-icon.c"
                 line="354">the icon name, e.g. "gimp.png"</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_pixbuf"
              c:identifier="as_icon_set_pixbuf"
              version="0.3.1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-icon.c"
             line="495">Sets the icon pixbuf.</doc>
        <source-position filename="libappstream-glib/as-icon.h" line="121"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="icon" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-icon.c"
                 line="497">a #AsIcon instance.</doc>
            <type name="Icon" c:type="AsIcon*"/>
          </instance-parameter>
          <parameter name="pixbuf" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-icon.c"
                 line="498">the #GdkPixbuf, or %NULL</doc>
            <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_prefix"
              c:identifier="as_icon_set_prefix"
              version="0.1.6">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-icon.c"
             line="368">Sets the icon prefix filename.</doc>
        <source-position filename="libappstream-glib/as-icon.h" line="111"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="icon" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-icon.c"
                 line="370">a #AsIcon instance.</doc>
            <type name="Icon" c:type="AsIcon*"/>
          </instance-parameter>
          <parameter name="prefix" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-icon.c"
                 line="371">the new filename prefix.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_scale"
              c:identifier="as_icon_set_scale"
              version="0.6.13">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-icon.c"
             line="461">Sets the icon scale.</doc>
        <source-position filename="libappstream-glib/as-icon.h" line="117"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="icon" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-icon.c"
                 line="463">a #AsIcon instance.</doc>
            <type name="Icon" c:type="AsIcon*"/>
          </instance-parameter>
          <parameter name="scale" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-icon.c"
                 line="464">the scale as a factor.</doc>
            <type name="guint" c:type="guint"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_url" c:identifier="as_icon_set_url" version="0.3.2">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-icon.c"
             line="393">Sets the icon URL.</doc>
        <source-position filename="libappstream-glib/as-icon.h" line="107"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="icon" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-icon.c"
                 line="395">a #AsIcon instance.</doc>
            <type name="Icon" c:type="AsIcon*"/>
          </instance-parameter>
          <parameter name="url" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-icon.c"
                 line="396">the new icon URL.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_width"
              c:identifier="as_icon_set_width"
              version="0.3.1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-icon.c"
             line="427">Sets the icon width.</doc>
        <source-position filename="libappstream-glib/as-icon.h" line="113"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="icon" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-icon.c"
                 line="429">a #AsIcon instance.</doc>
            <type name="Icon" c:type="AsIcon*"/>
          </instance-parameter>
          <parameter name="width" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-icon.c"
                 line="430">the width in pixels.</doc>
            <type name="guint" c:type="guint"/>
          </parameter>
        </parameters>
      </method>
      <field name="parent_instance">
        <type name="GObject.Object" c:type="GObject"/>
      </field>
    </class>
    <record name="IconClass"
            c:type="AsIconClass"
            glib:is-gtype-struct-for="Icon">
      <source-position filename="libappstream-glib/as-icon.h" line="34"/>
      <field name="parent_class">
        <type name="GObject.ObjectClass" c:type="GObjectClass"/>
      </field>
      <field name="_as_reserved1" introspectable="0">
        <callback name="_as_reserved1">
          <source-position filename="libappstream-glib/as-icon.h" line="26"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved2" introspectable="0">
        <callback name="_as_reserved2">
          <source-position filename="libappstream-glib/as-icon.h" line="27"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved3" introspectable="0">
        <callback name="_as_reserved3">
          <source-position filename="libappstream-glib/as-icon.h" line="28"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved4" introspectable="0">
        <callback name="_as_reserved4">
          <source-position filename="libappstream-glib/as-icon.h" line="29"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved5" introspectable="0">
        <callback name="_as_reserved5">
          <source-position filename="libappstream-glib/as-icon.h" line="30"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved6" introspectable="0">
        <callback name="_as_reserved6">
          <source-position filename="libappstream-glib/as-icon.h" line="31"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved7" introspectable="0">
        <callback name="_as_reserved7">
          <source-position filename="libappstream-glib/as-icon.h" line="32"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved8" introspectable="0">
        <callback name="_as_reserved8">
          <source-position filename="libappstream-glib/as-icon.h" line="33"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
    </record>
    <enumeration name="IconError" c:type="AsIconError">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-icon.h"
           line="36">The error type.</doc>
      <source-position filename="libappstream-glib/as-icon.h" line="46"/>
      <member name="failed" value="0" c:identifier="AS_ICON_ERROR_FAILED">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-icon.h"
             line="38">Generic failure</doc>
      </member>
    </enumeration>
    <enumeration name="IconKind" c:type="AsIconKind">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-icon.h"
           line="48">The icon type.</doc>
      <source-position filename="libappstream-glib/as-icon.h" line="68"/>
      <member name="unknown" value="0" c:identifier="AS_ICON_KIND_UNKNOWN">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-icon.h"
             line="50">Type invalid or not known</doc>
      </member>
      <member name="stock" value="1" c:identifier="AS_ICON_KIND_STOCK">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-icon.h"
             line="51">Stock icon or present in the generic icon theme</doc>
      </member>
      <member name="cached" value="2" c:identifier="AS_ICON_KIND_CACHED">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-icon.h"
             line="52">An icon shipped with the AppStream metadata</doc>
      </member>
      <member name="remote" value="3" c:identifier="AS_ICON_KIND_REMOTE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-icon.h"
             line="53">An icon referenced by a remote URL</doc>
      </member>
      <member name="embedded" value="4" c:identifier="AS_ICON_KIND_EMBEDDED">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-icon.h"
             line="54">An embedded Base64 icon</doc>
      </member>
      <member name="local" value="5" c:identifier="AS_ICON_KIND_LOCAL">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-icon.h"
             line="55">An icon with absolute path and filename</doc>
      </member>
    </enumeration>
    <enumeration name="IconLoadFlags" c:type="AsIconLoadFlags">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-icon.h"
           line="70">The flags to use when loading icons.</doc>
      <source-position filename="libappstream-glib/as-icon.h" line="82"/>
      <member name="none" value="0" c:identifier="AS_ICON_LOAD_FLAG_NONE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-icon.h"
             line="72">No extra flags to use</doc>
      </member>
      <member name="search_size"
              value="1"
              c:identifier="AS_ICON_LOAD_FLAG_SEARCH_SIZE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-icon.h"
             line="73">Search first in a size-specific directory</doc>
      </member>
    </enumeration>
    <enumeration name="IdKind" c:type="AsIdKind">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-enums.h"
           line="18">The component type.</doc>
      <source-position filename="libappstream-glib/as-enums.h" line="48"/>
      <member name="unknown" value="0" c:identifier="AS_ID_KIND_UNKNOWN">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-enums.h"
             line="20">Type invalid or not known</doc>
      </member>
      <member name="desktop" value="1" c:identifier="AS_ID_KIND_DESKTOP">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-enums.h"
             line="21">A desktop application</doc>
      </member>
      <member name="font" value="2" c:identifier="AS_ID_KIND_FONT">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-enums.h"
             line="22">A font add-on</doc>
      </member>
      <member name="codec" value="3" c:identifier="AS_ID_KIND_CODEC">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-enums.h"
             line="23">A codec add-on</doc>
      </member>
      <member name="input_method"
              value="4"
              c:identifier="AS_ID_KIND_INPUT_METHOD">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-enums.h"
             line="24">A input method add-on</doc>
      </member>
      <member name="web_app" value="5" c:identifier="AS_ID_KIND_WEB_APP">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-enums.h"
             line="25">A web appication</doc>
      </member>
      <member name="source" value="6" c:identifier="AS_ID_KIND_SOURCE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-enums.h"
             line="26">A software source</doc>
      </member>
      <member name="addon" value="7" c:identifier="AS_ID_KIND_ADDON">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-enums.h"
             line="27">An addon, e.g. a plugin</doc>
      </member>
      <member name="firmware" value="8" c:identifier="AS_ID_KIND_FIRMWARE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-enums.h"
             line="28">A firmware update</doc>
      </member>
      <member name="runtime" value="9" c:identifier="AS_ID_KIND_RUNTIME">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-enums.h"
             line="29">Runtime platform</doc>
      </member>
      <member name="generic" value="10" c:identifier="AS_ID_KIND_GENERIC">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-enums.h"
             line="30">Generic component</doc>
      </member>
    </enumeration>
    <class name="Image"
           c:symbol-prefix="image"
           c:type="AsImage"
           parent="GObject.Object"
           glib:type-name="AsImage"
           glib:get-type="as_image_get_type"
           glib:type-struct="ImageClass">
      <source-position filename="libappstream-glib/as-image.h" line="34"/>
      <constructor name="new" c:identifier="as_image_new" version="0.1.0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-image.c"
             line="1044">Creates a new #AsImage.</doc>
        <source-position filename="libappstream-glib/as-image.h" line="119"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-image.c"
               line="1049">a #AsImage</doc>
          <type name="Image" c:type="AsImage*"/>
        </return-value>
      </constructor>
      <function name="kind_from_string"
                c:identifier="as_image_kind_from_string"
                version="0.1.0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-image.c"
             line="78">Converts the text representation to an enumerated value.</doc>
        <source-position filename="libappstream-glib/as-image.h" line="122"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-image.c"
               line="84">a #AsImageKind, or %AS_IMAGE_KIND_UNKNOWN for unknown.</doc>
          <type name="ImageKind" c:type="AsImageKind"/>
        </return-value>
        <parameters>
          <parameter name="kind" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-image.c"
                 line="80">the string.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </function>
      <function name="kind_to_string"
                c:identifier="as_image_kind_to_string"
                version="0.1.0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-image.c"
             line="98">Converts the enumerated value to an text representation.</doc>
        <source-position filename="libappstream-glib/as-image.h" line="123"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-image.c"
               line="104">string version of @kind</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <parameter name="kind" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-image.c"
                 line="100">the #AsImageKind.</doc>
            <type name="ImageKind" c:type="AsImageKind"/>
          </parameter>
        </parameters>
      </function>
      <method name="equal" c:identifier="as_image_equal" version="0.5.7">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-image.c"
             line="1004">Checks if two images are the same.</doc>
        <source-position filename="libappstream-glib/as-image.h" line="172"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-image.c"
               line="1011">%TRUE for success</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="image1" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-image.c"
                 line="1006">a #AsImage instance.</doc>
            <type name="Image" c:type="AsImage*"/>
          </instance-parameter>
          <parameter name="image2" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-image.c"
                 line="1007">a #AsImage instance.</doc>
            <type name="Image" c:type="AsImage*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_alpha_flags"
              c:identifier="as_image_get_alpha_flags"
              version="0.2.2"
              introspectable="0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-image.c"
             line="878">Gets the alpha flags for the image. The following image would have all flags
set, where 'x' is alpha and '@' is non-alpha.

xxxxxxxxxxxxxxxxxxxxxxxxxxxx
xx@@@@@@@@@@@@@@@@@@@@@@@@xx
xx@@@@@@@xxxxxx@@@@@@@@@@@xx
xx@@@@@@@xxxxxx@@@@@@@@@@@xx
xx@@@@@@@@@@@@@@@@@@@@@@@@xx
xxxxxxxxxxxxxxxxxxxxxxxxxxxx</doc>
        <source-position filename="libappstream-glib/as-image.h" line="152"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-image.c"
               line="892">#AsImageAlphaFlags, e.g. %AS_IMAGE_ALPHA_FLAG_LEFT</doc>
          <type name="ImageAlphaFlags" c:type="AsImageAlphaFlags"/>
        </return-value>
        <parameters>
          <instance-parameter name="image" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-image.c"
                 line="880">a #AsImage instance.</doc>
            <type name="Image" c:type="AsImage*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_basename"
              c:identifier="as_image_get_basename"
              version="0.1.6">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-image.c"
             line="136">Gets the suggested basename the image, including file extension.</doc>
        <source-position filename="libappstream-glib/as-image.h" line="128"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-image.c"
               line="142">filename</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="image" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-image.c"
                 line="138">a #AsImage instance.</doc>
            <type name="Image" c:type="AsImage*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_height"
              c:identifier="as_image_get_height"
              version="0.1.0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-image.c"
             line="208">Gets the image height.</doc>
        <source-position filename="libappstream-glib/as-image.h" line="131"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-image.c"
               line="214">height in pixels</doc>
          <type name="guint" c:type="guint"/>
        </return-value>
        <parameters>
          <instance-parameter name="image" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-image.c"
                 line="210">a #AsImage instance.</doc>
            <type name="Image" c:type="AsImage*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_kind" c:identifier="as_image_get_kind" version="0.1.0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-image.c"
             line="226">Gets the image kind.</doc>
        <source-position filename="libappstream-glib/as-image.h" line="132"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-image.c"
               line="232">the #AsImageKind</doc>
          <type name="ImageKind" c:type="AsImageKind"/>
        </return-value>
        <parameters>
          <instance-parameter name="image" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-image.c"
                 line="228">a #AsImage instance.</doc>
            <type name="Image" c:type="AsImage*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_locale"
              c:identifier="as_image_get_locale"
              version="0.5.14">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-image.c"
             line="154">Gets the locale of the image.</doc>
        <source-position filename="libappstream-glib/as-image.h" line="129"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-image.c"
               line="160">locale, or %NULL</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="image" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-image.c"
                 line="156">a #AsImage instance.</doc>
            <type name="Image" c:type="AsImage*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_md5" c:identifier="as_image_get_md5" version="0.1.6">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-image.c"
             line="172">Gets the string representation of the pixbuf hash value.</doc>
        <source-position filename="libappstream-glib/as-image.h" line="127"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-image.c"
               line="178">string representing the MD5 sum, or %NULL if unset</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="image" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-image.c"
                 line="174">a #AsImage instance.</doc>
            <type name="Image" c:type="AsImage*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_pixbuf"
              c:identifier="as_image_get_pixbuf"
              version="0.1.6">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-image.c"
             line="244">Gets the image pixbuf if set.</doc>
        <source-position filename="libappstream-glib/as-image.h" line="133"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-image.c"
               line="250">the #GdkPixbuf, or %NULL</doc>
          <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
        </return-value>
        <parameters>
          <instance-parameter name="image" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-image.c"
                 line="246">a #AsImage instance.</doc>
            <type name="Image" c:type="AsImage*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_url" c:identifier="as_image_get_url" version="0.1.0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-image.c"
             line="118">Gets the full qualified URL for the image, usually pointing at some mirror.</doc>
        <source-position filename="libappstream-glib/as-image.h" line="126"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-image.c"
               line="124">URL</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="image" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-image.c"
                 line="120">a #AsImage instance.</doc>
            <type name="Image" c:type="AsImage*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_width"
              c:identifier="as_image_get_width"
              version="0.1.0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-image.c"
             line="190">Gets the image width.</doc>
        <source-position filename="libappstream-glib/as-image.h" line="130"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-image.c"
               line="196">width in pixels</doc>
          <type name="guint" c:type="guint"/>
        </return-value>
        <parameters>
          <instance-parameter name="image" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-image.c"
                 line="192">a #AsImage instance.</doc>
            <type name="Image" c:type="AsImage*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="load_filename"
              c:identifier="as_image_load_filename"
              version="0.1.6"
              throws="1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-image.c"
             line="705">Reads a pixbuf from a file.

NOTE: This function also sets the suggested filename which can be retrieved
using as_image_get_basename(). This can be overridden if required.</doc>
        <source-position filename="libappstream-glib/as-image.h" line="153"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-image.c"
               line="716">%TRUE for success</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="image" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-image.c"
                 line="707">a #AsImage instance.</doc>
            <type name="Image" c:type="AsImage*"/>
          </instance-parameter>
          <parameter name="filename" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-image.c"
                 line="708">filename to read from</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="load_filename_full"
              c:identifier="as_image_load_filename_full"
              version="0.5.6"
              throws="1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-image.c"
             line="515">Reads an image from a file.</doc>
        <source-position filename="libappstream-glib/as-image.h" line="156"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-image.c"
               line="526">%TRUE for success</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="image" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-image.c"
                 line="517">a #AsImage instance.</doc>
            <type name="Image" c:type="AsImage*"/>
          </instance-parameter>
          <parameter name="filename" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-image.c"
                 line="518">filename to read from</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="dest_size" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-image.c"
                 line="519">The size of the constructed pixbuf, or 0 for the native size</doc>
            <type name="guint" c:type="guint"/>
          </parameter>
          <parameter name="src_size_min" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-image.c"
                 line="520">The smallest source size allowed, or 0 for none</doc>
            <type name="guint" c:type="guint"/>
          </parameter>
          <parameter name="flags" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-image.c"
                 line="521">a #AsImageLoadFlags, e.g. %AS_IMAGE_LOAD_FLAG_NONE</doc>
            <type name="ImageLoadFlags" c:type="AsImageLoadFlags"/>
          </parameter>
        </parameters>
      </method>
      <method name="save_filename"
              c:identifier="as_image_save_filename"
              version="0.1.6"
              throws="1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-image.c"
             line="824">Saves a pixbuf to a file.</doc>
        <source-position filename="libappstream-glib/as-image.h" line="166"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-image.c"
               line="835">%TRUE for success</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="image" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-image.c"
                 line="826">a #AsImage instance.</doc>
            <type name="Image" c:type="AsImage*"/>
          </instance-parameter>
          <parameter name="filename" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-image.c"
                 line="827">filename to write to</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="width" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-image.c"
                 line="828">target width, or 0 for default</doc>
            <type name="guint" c:type="guint"/>
          </parameter>
          <parameter name="height" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-image.c"
                 line="829">target height, or 0 for default</doc>
            <type name="guint" c:type="guint"/>
          </parameter>
          <parameter name="flags" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-image.c"
                 line="830">some #AsImageSaveFlags values, e.g. %AS_IMAGE_SAVE_FLAG_PAD_16_9</doc>
            <type name="ImageSaveFlags" c:type="AsImageSaveFlags"/>
          </parameter>
        </parameters>
      </method>
      <method name="save_pixbuf"
              c:identifier="as_image_save_pixbuf"
              version="0.1.6">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-image.c"
             line="733">Resamples a pixbuf to a specific size.</doc>
        <source-position filename="libappstream-glib/as-image.h" line="162"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-image.c"
               line="742">A #GdkPixbuf of the specified size</doc>
          <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
        </return-value>
        <parameters>
          <instance-parameter name="image" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-image.c"
                 line="735">a #AsImage instance.</doc>
            <type name="Image" c:type="AsImage*"/>
          </instance-parameter>
          <parameter name="width" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-image.c"
                 line="736">target width, or 0 for default</doc>
            <type name="guint" c:type="guint"/>
          </parameter>
          <parameter name="height" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-image.c"
                 line="737">target height, or 0 for default</doc>
            <type name="guint" c:type="guint"/>
          </parameter>
          <parameter name="flags" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-image.c"
                 line="738">some #AsImageSaveFlags values, e.g. %AS_IMAGE_SAVE_FLAG_PAD_16_9</doc>
            <type name="ImageSaveFlags" c:type="AsImageSaveFlags"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_basename"
              c:identifier="as_image_set_basename"
              version="0.1.6">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-image.c"
             line="287">Sets the image basename filename.</doc>
        <source-position filename="libappstream-glib/as-image.h" line="138"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="image" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-image.c"
                 line="289">a #AsImage instance.</doc>
            <type name="Image" c:type="AsImage*"/>
          </instance-parameter>
          <parameter name="basename" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-image.c"
                 line="290">the new filename basename.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_height"
              c:identifier="as_image_set_height"
              version="0.1.0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-image.c"
             line="338">Sets the image height.</doc>
        <source-position filename="libappstream-glib/as-image.h" line="144"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="image" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-image.c"
                 line="340">a #AsImage instance.</doc>
            <type name="Image" c:type="AsImage*"/>
          </instance-parameter>
          <parameter name="height" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-image.c"
                 line="341">the height in pixels.</doc>
            <type name="guint" c:type="guint"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_kind" c:identifier="as_image_set_kind" version="0.1.0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-image.c"
             line="355">Sets the image kind.</doc>
        <source-position filename="libappstream-glib/as-image.h" line="146"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="image" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-image.c"
                 line="357">a #AsImage instance.</doc>
            <type name="Image" c:type="AsImage*"/>
          </instance-parameter>
          <parameter name="kind" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-image.c"
                 line="358">the #AsImageKind, e.g. %AS_IMAGE_KIND_THUMBNAIL.</doc>
            <type name="ImageKind" c:type="AsImageKind"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_locale"
              c:identifier="as_image_set_locale"
              version="0.5.14">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-image.c"
             line="304">Sets the image locale.</doc>
        <source-position filename="libappstream-glib/as-image.h" line="140"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="image" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-image.c"
                 line="306">a #AsImage instance.</doc>
            <type name="Image" c:type="AsImage*"/>
          </instance-parameter>
          <parameter name="locale" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-image.c"
                 line="307">the new image locale, e.g. "en_GB" or %NULL.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_pixbuf"
              c:identifier="as_image_set_pixbuf"
              version="0.1.6">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-image.c"
             line="372">Sets the image pixbuf.</doc>
        <source-position filename="libappstream-glib/as-image.h" line="148"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="image" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-image.c"
                 line="374">a #AsImage instance.</doc>
            <type name="Image" c:type="AsImage*"/>
          </instance-parameter>
          <parameter name="pixbuf" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-image.c"
                 line="375">the #GdkPixbuf, or %NULL</doc>
            <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_url" c:identifier="as_image_set_url" version="0.1.0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-image.c"
             line="262">Sets the fully-qualified mirror URL to use for the image.</doc>
        <source-position filename="libappstream-glib/as-image.h" line="136"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="image" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-image.c"
                 line="264">a #AsImage instance.</doc>
            <type name="Image" c:type="AsImage*"/>
          </instance-parameter>
          <parameter name="url" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-image.c"
                 line="265">the URL.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_width"
              c:identifier="as_image_set_width"
              version="0.1.0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-image.c"
             line="321">Sets the image width.</doc>
        <source-position filename="libappstream-glib/as-image.h" line="142"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="image" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-image.c"
                 line="323">a #AsImage instance.</doc>
            <type name="Image" c:type="AsImage*"/>
          </instance-parameter>
          <parameter name="width" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-image.c"
                 line="324">the width in pixels.</doc>
            <type name="guint" c:type="guint"/>
          </parameter>
        </parameters>
      </method>
      <field name="parent_instance">
        <type name="GObject.Object" c:type="GObject"/>
      </field>
    </class>
    <record name="ImageClass"
            c:type="AsImageClass"
            glib:is-gtype-struct-for="Image">
      <source-position filename="libappstream-glib/as-image.h" line="34"/>
      <field name="parent_class">
        <type name="GObject.ObjectClass" c:type="GObjectClass"/>
      </field>
      <field name="_as_reserved1" introspectable="0">
        <callback name="_as_reserved1">
          <source-position filename="libappstream-glib/as-image.h" line="26"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved2" introspectable="0">
        <callback name="_as_reserved2">
          <source-position filename="libappstream-glib/as-image.h" line="27"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved3" introspectable="0">
        <callback name="_as_reserved3">
          <source-position filename="libappstream-glib/as-image.h" line="28"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved4" introspectable="0">
        <callback name="_as_reserved4">
          <source-position filename="libappstream-glib/as-image.h" line="29"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved5" introspectable="0">
        <callback name="_as_reserved5">
          <source-position filename="libappstream-glib/as-image.h" line="30"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved6" introspectable="0">
        <callback name="_as_reserved6">
          <source-position filename="libappstream-glib/as-image.h" line="31"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved7" introspectable="0">
        <callback name="_as_reserved7">
          <source-position filename="libappstream-glib/as-image.h" line="32"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved8" introspectable="0">
        <callback name="_as_reserved8">
          <source-position filename="libappstream-glib/as-image.h" line="33"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
    </record>
    <enumeration name="ImageKind" c:type="AsImageKind">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-image.h"
           line="36">The image type.</doc>
      <source-position filename="libappstream-glib/as-image.h" line="50"/>
      <member name="unknown" value="0" c:identifier="AS_IMAGE_KIND_UNKNOWN">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-image.h"
             line="38">Type invalid or not known</doc>
      </member>
      <member name="source" value="1" c:identifier="AS_IMAGE_KIND_SOURCE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-image.h"
             line="39">The source image at full resolution</doc>
      </member>
      <member name="thumbnail"
              value="2"
              c:identifier="AS_IMAGE_KIND_THUMBNAIL">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-image.h"
             line="40">A thumbnail at reduced resolution</doc>
      </member>
    </enumeration>
    <enumeration name="ImageLoadFlags" c:type="AsImageLoadFlags">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-image.h"
           line="70">The flags used for loading images.</doc>
      <source-position filename="libappstream-glib/as-image.h" line="90"/>
      <member name="none" value="0" c:identifier="AS_IMAGE_LOAD_FLAG_NONE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-image.h"
             line="72">No special flags set</doc>
      </member>
      <member name="sharpen"
              value="1"
              c:identifier="AS_IMAGE_LOAD_FLAG_SHARPEN">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-image.h"
             line="73">Sharpen the resulting image</doc>
      </member>
      <member name="set_basename"
              value="2"
              c:identifier="AS_IMAGE_LOAD_FLAG_SET_BASENAME">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-image.h"
             line="74">Set the image basename</doc>
      </member>
      <member name="set_checksum"
              value="4"
              c:identifier="AS_IMAGE_LOAD_FLAG_SET_CHECKSUM">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-image.h"
             line="75">Set the image checksum</doc>
      </member>
      <member name="only_supported"
              value="8"
              c:identifier="AS_IMAGE_LOAD_FLAG_ONLY_SUPPORTED">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-image.h"
             line="76">Only load supported formats like PNG and JPG</doc>
      </member>
      <member name="always_resize"
              value="16"
              c:identifier="AS_IMAGE_LOAD_FLAG_ALWAYS_RESIZE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-image.h"
             line="77">Always resize the source icon to the perfect size</doc>
      </member>
    </enumeration>
    <enumeration name="ImageSaveFlags" c:type="AsImageSaveFlags">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-image.h"
           line="52">The flags used for saving images.</doc>
      <source-position filename="libappstream-glib/as-image.h" line="68"/>
      <member name="none" value="0" c:identifier="AS_IMAGE_SAVE_FLAG_NONE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-image.h"
             line="54">No special flags set</doc>
      </member>
      <member name="pad_16_9"
              value="1"
              c:identifier="AS_IMAGE_SAVE_FLAG_PAD_16_9">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-image.h"
             line="55">Pad with alpha to 16:9 aspect</doc>
      </member>
      <member name="sharpen"
              value="2"
              c:identifier="AS_IMAGE_SAVE_FLAG_SHARPEN">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-image.h"
             line="56">Sharpen the image to clarify detail</doc>
      </member>
      <member name="blur" value="4" c:identifier="AS_IMAGE_SAVE_FLAG_BLUR">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-image.h"
             line="57">Blur the image to clear detail</doc>
      </member>
    </enumeration>
    <enumeration name="InfError"
                 c:type="AsInfError"
                 glib:error-domain="as-inf-error-quark">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-inf.h"
           line="18">The error type.</doc>
      <source-position filename="libappstream-glib/as-inf.h" line="32"/>
      <member name="failed" value="0" c:identifier="AS_INF_ERROR_FAILED">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-inf.h"
             line="20">Generic failure</doc>
      </member>
      <member name="invalid_type"
              value="1"
              c:identifier="AS_INF_ERROR_INVALID_TYPE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-inf.h"
             line="21">Invalid type</doc>
      </member>
      <member name="not_found" value="2" c:identifier="AS_INF_ERROR_NOT_FOUND">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-inf.h"
             line="22">Data not found</doc>
      </member>
    </enumeration>
    <bitfield name="InfLoadFlags" c:type="AsInfLoadFlags">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-inf.h"
           line="36">The flags used when loading INF files.</doc>
      <source-position filename="libappstream-glib/as-inf.h" line="50"/>
      <member name="none" value="0" c:identifier="AS_INF_LOAD_FLAG_NONE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-inf.h"
             line="38">No flags set</doc>
      </member>
      <member name="strict" value="1" c:identifier="AS_INF_LOAD_FLAG_STRICT">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-inf.h"
             line="39">Be strict when loading the file</doc>
      </member>
      <member name="case_insensitive"
              value="2"
              c:identifier="AS_INF_LOAD_FLAG_CASE_INSENSITIVE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-inf.h"
             line="40">Load keys and groups case insensitive</doc>
      </member>
    </bitfield>
    <enumeration name="KudoKind" c:type="AsKudoKind">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-enums.h"
           line="86">The kudo type.</doc>
      <source-position filename="libappstream-glib/as-enums.h" line="110"/>
      <member name="unknown" value="0" c:identifier="AS_KUDO_KIND_UNKNOWN">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-enums.h"
             line="88">Type invalid or not known</doc>
      </member>
      <member name="search_provider"
              value="1"
              c:identifier="AS_KUDO_KIND_SEARCH_PROVIDER">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-enums.h"
             line="89">Installs a search provider</doc>
      </member>
      <member name="user_docs" value="2" c:identifier="AS_KUDO_KIND_USER_DOCS">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-enums.h"
             line="90">Installs user documentation</doc>
      </member>
      <member name="app_menu" value="3" c:identifier="AS_KUDO_KIND_APP_MENU">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-enums.h"
             line="91">Uses the GNOME application menu</doc>
      </member>
      <member name="modern_toolkit"
              value="4"
              c:identifier="AS_KUDO_KIND_MODERN_TOOLKIT">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-enums.h"
             line="92">Uses a modern toolkit like GTK3 or QT5</doc>
      </member>
      <member name="notifications"
              value="5"
              c:identifier="AS_KUDO_KIND_NOTIFICATIONS">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-enums.h"
             line="93">Registers notifications with KDE or GNOME</doc>
      </member>
      <member name="high_contrast"
              value="6"
              c:identifier="AS_KUDO_KIND_HIGH_CONTRAST">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-enums.h"
             line="94">Installs a high contrast icon</doc>
      </member>
      <member name="hi_dpi_icon"
              value="7"
              c:identifier="AS_KUDO_KIND_HI_DPI_ICON">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-enums.h"
             line="95">Installs a high DPI icon</doc>
      </member>
    </enumeration>
    <class name="Launchable"
           c:symbol-prefix="launchable"
           c:type="AsLaunchable"
           parent="GObject.Object"
           glib:type-name="AsLaunchable"
           glib:get-type="as_launchable_get_type"
           glib:type-struct="LaunchableClass">
      <source-position filename="libappstream-glib/as-launchable.h" line="33"/>
      <constructor name="new"
                   c:identifier="as_launchable_new"
                   version="0.6.13">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-launchable.c"
             line="253">Creates a new #AsLaunchable.</doc>
        <source-position filename="libappstream-glib/as-launchable.h"
                         line="55"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-launchable.c"
               line="258">a #AsLaunchable</doc>
          <type name="Launchable" c:type="AsLaunchable*"/>
        </return-value>
      </constructor>
      <function name="kind_from_string"
                c:identifier="as_launchable_kind_from_string"
                version="0.6.13">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-launchable.c"
             line="64">Converts the text representation to an enumerated value.</doc>
        <source-position filename="libappstream-glib/as-launchable.h"
                         line="58"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-launchable.c"
               line="70">a #AsLaunchableKind, or %AS_LAUNCHABLE_KIND_UNKNOWN for unknown.</doc>
          <type name="LaunchableKind" c:type="AsLaunchableKind"/>
        </return-value>
        <parameters>
          <parameter name="kind" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-launchable.c"
                 line="66">the string.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </function>
      <function name="kind_to_string"
                c:identifier="as_launchable_kind_to_string"
                version="0.6.13">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-launchable.c"
             line="88">Converts the enumerated value to an text representation.</doc>
        <source-position filename="libappstream-glib/as-launchable.h"
                         line="59"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-launchable.c"
               line="94">string version of @kind</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <parameter name="kind" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-launchable.c"
                 line="90">the #AsLaunchableKind.</doc>
            <type name="LaunchableKind" c:type="AsLaunchableKind"/>
          </parameter>
        </parameters>
      </function>
      <method name="get_kind"
              c:identifier="as_launchable_get_kind"
              version="0.6.13">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-launchable.c"
             line="130">Gets the launchable kind.</doc>
        <source-position filename="libappstream-glib/as-launchable.h"
                         line="63"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-launchable.c"
               line="136">the #AsLaunchableKind</doc>
          <type name="LaunchableKind" c:type="AsLaunchableKind"/>
        </return-value>
        <parameters>
          <instance-parameter name="launchable" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-launchable.c"
                 line="132">a #AsLaunchable instance.</doc>
            <type name="Launchable" c:type="AsLaunchable*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_value"
              c:identifier="as_launchable_get_value"
              version="0.6.13">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-launchable.c"
             line="112">Gets the value to use for the launchable.</doc>
        <source-position filename="libappstream-glib/as-launchable.h"
                         line="62"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-launchable.c"
               line="118">usually a desktop ID, e.g. "gimp.desktop"</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="launchable" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-launchable.c"
                 line="114">a #AsLaunchable instance.</doc>
            <type name="Launchable" c:type="AsLaunchable*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="set_kind"
              c:identifier="as_launchable_set_kind"
              version="0.6.13">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-launchable.c"
             line="165">Sets the launchable kind.</doc>
        <source-position filename="libappstream-glib/as-launchable.h"
                         line="68"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="launchable" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-launchable.c"
                 line="167">a #AsLaunchable instance.</doc>
            <type name="Launchable" c:type="AsLaunchable*"/>
          </instance-parameter>
          <parameter name="kind" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-launchable.c"
                 line="168">the #AsLaunchableKind, e.g. %AS_LAUNCHABLE_KIND_DESKTOP_ID.</doc>
            <type name="LaunchableKind" c:type="AsLaunchableKind"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_value"
              c:identifier="as_launchable_set_value"
              version="0.6.13">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-launchable.c"
             line="148">Sets the fully-qualified mirror URL to use for the launchable.</doc>
        <source-position filename="libappstream-glib/as-launchable.h"
                         line="66"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="launchable" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-launchable.c"
                 line="150">a #AsLaunchable instance.</doc>
            <type name="Launchable" c:type="AsLaunchable*"/>
          </instance-parameter>
          <parameter name="value" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-launchable.c"
                 line="151">the URL.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <field name="parent_instance">
        <type name="GObject.Object" c:type="GObject"/>
      </field>
    </class>
    <record name="LaunchableClass"
            c:type="AsLaunchableClass"
            glib:is-gtype-struct-for="Launchable">
      <source-position filename="libappstream-glib/as-launchable.h" line="33"/>
      <field name="parent_class">
        <type name="GObject.ObjectClass" c:type="GObjectClass"/>
      </field>
      <field name="_as_reserved1" introspectable="0">
        <callback name="_as_reserved1">
          <source-position filename="libappstream-glib/as-launchable.h"
                           line="25"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved2" introspectable="0">
        <callback name="_as_reserved2">
          <source-position filename="libappstream-glib/as-launchable.h"
                           line="26"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved3" introspectable="0">
        <callback name="_as_reserved3">
          <source-position filename="libappstream-glib/as-launchable.h"
                           line="27"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved4" introspectable="0">
        <callback name="_as_reserved4">
          <source-position filename="libappstream-glib/as-launchable.h"
                           line="28"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved5" introspectable="0">
        <callback name="_as_reserved5">
          <source-position filename="libappstream-glib/as-launchable.h"
                           line="29"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved6" introspectable="0">
        <callback name="_as_reserved6">
          <source-position filename="libappstream-glib/as-launchable.h"
                           line="30"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved7" introspectable="0">
        <callback name="_as_reserved7">
          <source-position filename="libappstream-glib/as-launchable.h"
                           line="31"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved8" introspectable="0">
        <callback name="_as_reserved8">
          <source-position filename="libappstream-glib/as-launchable.h"
                           line="32"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
    </record>
    <enumeration name="LaunchableKind" c:type="AsLaunchableKind">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-launchable.h"
           line="35">The launchable type.</doc>
      <source-position filename="libappstream-glib/as-launchable.h" line="53"/>
      <member name="unknown"
              value="0"
              c:identifier="AS_LAUNCHABLE_KIND_UNKNOWN">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-launchable.h"
             line="37">Type invalid or not known</doc>
      </member>
      <member name="desktop_id"
              value="1"
              c:identifier="AS_LAUNCHABLE_KIND_DESKTOP_ID">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-launchable.h"
             line="38">A desktop ID</doc>
      </member>
      <member name="service"
              value="2"
              c:identifier="AS_LAUNCHABLE_KIND_SERVICE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-launchable.h"
             line="39">A system service</doc>
      </member>
      <member name="cockpit_manifest"
              value="3"
              c:identifier="AS_LAUNCHABLE_KIND_COCKPIT_MANIFEST">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-launchable.h"
             line="40">A manifest run by the cockpit project</doc>
      </member>
      <member name="url" value="4" c:identifier="AS_LAUNCHABLE_KIND_URL">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-launchable.h"
             line="41">A web-app</doc>
      </member>
    </enumeration>
    <bitfield name="MarkupConvertFlag" c:type="AsMarkupConvertFlag">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-markup.h"
           line="38">The flags used when converting descriptions from AppStream-style.</doc>
      <source-position filename="libappstream-glib/as-markup.h" line="50"/>
      <member name="none" value="0" c:identifier="AS_MARKUP_CONVERT_FLAG_NONE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-markup.h"
             line="40">No flags set</doc>
      </member>
      <member name="ignore_errors"
              value="1"
              c:identifier="AS_MARKUP_CONVERT_FLAG_IGNORE_ERRORS">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-markup.h"
             line="41">Ignore errors where possible</doc>
      </member>
    </bitfield>
    <enumeration name="MarkupConvertFormat" c:type="AsMarkupConvertFormat">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-markup.h"
           line="18">The format used when converting to or from AppStream descriptions.</doc>
      <source-position filename="libappstream-glib/as-markup.h" line="36"/>
      <member name="simple"
              value="0"
              c:identifier="AS_MARKUP_CONVERT_FORMAT_SIMPLE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-markup.h"
             line="20">UTF-8 text</doc>
      </member>
      <member name="markdown"
              value="1"
              c:identifier="AS_MARKUP_CONVERT_FORMAT_MARKDOWN">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-markup.h"
             line="21">Markdown format</doc>
      </member>
      <member name="null"
              value="2"
              c:identifier="AS_MARKUP_CONVERT_FORMAT_NULL">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-markup.h"
             line="22">No output</doc>
      </member>
      <member name="appstream"
              value="3"
              c:identifier="AS_MARKUP_CONVERT_FORMAT_APPSTREAM">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-markup.h"
             line="23">AppStream (passthrough)</doc>
      </member>
      <member name="html"
              value="4"
              c:identifier="AS_MARKUP_CONVERT_FORMAT_HTML">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-markup.h"
             line="24">HyperText Markup Language</doc>
      </member>
    </enumeration>
    <enumeration name="NodeError"
                 c:type="AsNodeError"
                 glib:error-domain="as-node-error-quark">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-node.h"
           line="86">The error type.</doc>
      <source-position filename="libappstream-glib/as-node.h" line="100"/>
      <member name="failed" value="0" c:identifier="AS_NODE_ERROR_FAILED">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-node.h"
             line="88">Generic failure</doc>
      </member>
      <member name="invalid_markup"
              value="1"
              c:identifier="AS_NODE_ERROR_INVALID_MARKUP">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-node.h"
             line="89">XML markup was invalid</doc>
      </member>
      <member name="no_support"
              value="2"
              c:identifier="AS_NODE_ERROR_NO_SUPPORT">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-node.h"
             line="90">No support for parsing</doc>
      </member>
    </enumeration>
    <bitfield name="NodeFromXmlFlags" c:type="AsNodeFromXmlFlags">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-node.h"
           line="44">The flags for converting from XML.</doc>
      <source-position filename="libappstream-glib/as-node.h" line="60"/>
      <member name="none" value="0" c:identifier="AS_NODE_FROM_XML_FLAG_NONE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-node.h"
             line="46">No extra flags to use</doc>
      </member>
      <member name="literal_text"
              value="1"
              c:identifier="AS_NODE_FROM_XML_FLAG_LITERAL_TEXT">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-node.h"
             line="47">Treat the text as an exact string</doc>
      </member>
      <member name="keep_comments"
              value="2"
              c:identifier="AS_NODE_FROM_XML_FLAG_KEEP_COMMENTS">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-node.h"
             line="48">Retain comments in the XML file</doc>
      </member>
      <member name="only_native_langs"
              value="4"
              c:identifier="AS_NODE_FROM_XML_FLAG_ONLY_NATIVE_LANGS">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-node.h"
             line="49">Only load native languages</doc>
      </member>
    </bitfield>
    <enumeration name="NodeInsertFlags" c:type="AsNodeInsertFlags">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-node.h"
           line="62">The flags to use when inserting a node.</doc>
      <source-position filename="libappstream-glib/as-node.h" line="84"/>
      <member name="none" value="0" c:identifier="AS_NODE_INSERT_FLAG_NONE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-node.h"
             line="64">No extra flags to use</doc>
      </member>
      <member name="pre_escaped"
              value="1"
              c:identifier="AS_NODE_INSERT_FLAG_PRE_ESCAPED">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-node.h"
             line="65">The data is already XML escaped</doc>
      </member>
      <member name="swapped"
              value="2"
              c:identifier="AS_NODE_INSERT_FLAG_SWAPPED">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-node.h"
             line="66">The name and key should be swapped</doc>
      </member>
      <member name="no_markup"
              value="4"
              c:identifier="AS_NODE_INSERT_FLAG_NO_MARKUP">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-node.h"
             line="67">Preformat the 'description' markup</doc>
      </member>
      <member name="dedupe_lang"
              value="8"
              c:identifier="AS_NODE_INSERT_FLAG_DEDUPE_LANG">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-node.h"
             line="68">No xml:lang keys where text matches 'C'</doc>
      </member>
      <member name="mark_translatable"
              value="16"
              c:identifier="AS_NODE_INSERT_FLAG_MARK_TRANSLATABLE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-node.h"
             line="69">Mark the tag name as translatable</doc>
      </member>
      <member name="base64_encoded"
              value="32"
              c:identifier="AS_NODE_INSERT_FLAG_BASE64_ENCODED">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-node.h"
             line="70">The data is Base64 enoded</doc>
      </member>
    </enumeration>
    <enumeration name="NodeToXmlFlags" c:type="AsNodeToXmlFlags">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-node.h"
           line="22">The flags for converting to XML.</doc>
      <source-position filename="libappstream-glib/as-node.h" line="42"/>
      <member name="none" value="0" c:identifier="AS_NODE_TO_XML_FLAG_NONE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-node.h"
             line="24">No extra flags to use</doc>
      </member>
      <member name="add_header"
              value="1"
              c:identifier="AS_NODE_TO_XML_FLAG_ADD_HEADER">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-node.h"
             line="25">Add an XML header to the data</doc>
      </member>
      <member name="format_multiline"
              value="2"
              c:identifier="AS_NODE_TO_XML_FLAG_FORMAT_MULTILINE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-node.h"
             line="26">Split up children with a newline</doc>
      </member>
      <member name="format_indent"
              value="4"
              c:identifier="AS_NODE_TO_XML_FLAG_FORMAT_INDENT">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-node.h"
             line="27">Indent the XML by child depth</doc>
      </member>
      <member name="include_siblings"
              value="8"
              c:identifier="AS_NODE_TO_XML_FLAG_INCLUDE_SIBLINGS">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-node.h"
             line="28">Include the siblings when converting</doc>
      </member>
      <member name="sort_children"
              value="16"
              c:identifier="AS_NODE_TO_XML_FLAG_SORT_CHILDREN">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-node.h"
             line="29">Sort the tags by alphabetical order</doc>
      </member>
    </enumeration>
    <class name="Problem"
           c:symbol-prefix="problem"
           c:type="AsProblem"
           parent="GObject.Object"
           glib:type-name="AsProblem"
           glib:get-type="as_problem_get_type"
           glib:type-struct="ProblemClass">
      <source-position filename="libappstream-glib/as-problem.h" line="33"/>
      <constructor name="new" c:identifier="as_problem_new" version="0.1.4">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-problem.c"
             line="210">Creates a new #AsProblem.</doc>
        <source-position filename="libappstream-glib/as-problem.h" line="75"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-problem.c"
               line="215">a #AsProblem</doc>
          <type name="Problem" c:type="AsProblem*"/>
        </return-value>
      </constructor>
      <function name="kind_to_string"
                c:identifier="as_problem_kind_to_string"
                version="0.1.4">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-problem.c"
             line="60">Converts the enumerated value to an text representation.</doc>
        <source-position filename="libappstream-glib/as-problem.h" line="78"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-problem.c"
               line="66">string version of @kind</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <parameter name="kind" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-problem.c"
                 line="62">the #AsProblemKind.</doc>
            <type name="ProblemKind" c:type="AsProblemKind"/>
          </parameter>
        </parameters>
      </function>
      <method name="get_kind"
              c:identifier="as_problem_get_kind"
              version="0.1.4">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-problem.c"
             line="104">Gets the problem kind.</doc>
        <source-position filename="libappstream-glib/as-problem.h" line="81"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-problem.c"
               line="110">a #AsProblemKind, e.g. %AS_PROBLEM_KIND_TAG_MISSING</doc>
          <type name="ProblemKind" c:type="AsProblemKind"/>
        </return-value>
        <parameters>
          <instance-parameter name="problem" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-problem.c"
                 line="106">a #AsProblem instance.</doc>
            <type name="Problem" c:type="AsProblem*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_line_number"
              c:identifier="as_problem_get_line_number"
              version="0.1.4">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-problem.c"
             line="122">Gets the line number of the problem if known.</doc>
        <source-position filename="libappstream-glib/as-problem.h" line="82"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-problem.c"
               line="128">a line number, where 0 is unknown</doc>
          <type name="guint" c:type="guint"/>
        </return-value>
        <parameters>
          <instance-parameter name="problem" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-problem.c"
                 line="124">a #AsProblem instance.</doc>
            <type name="Problem" c:type="AsProblem*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_message"
              c:identifier="as_problem_get_message"
              version="0.1.4">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-problem.c"
             line="140">Gets the specific message for the problem.</doc>
        <source-position filename="libappstream-glib/as-problem.h" line="83"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-problem.c"
               line="146">the message</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="problem" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-problem.c"
                 line="142">a #AsProblem instance.</doc>
            <type name="Problem" c:type="AsProblem*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="set_kind"
              c:identifier="as_problem_set_kind"
              version="0.1.4">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-problem.c"
             line="158">Sets the problem kind.</doc>
        <source-position filename="libappstream-glib/as-problem.h" line="86"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="problem" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-problem.c"
                 line="160">a #AsProblem instance.</doc>
            <type name="Problem" c:type="AsProblem*"/>
          </instance-parameter>
          <parameter name="kind" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-problem.c"
                 line="161">the #AsProblemKind.</doc>
            <type name="ProblemKind" c:type="AsProblemKind"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_line_number"
              c:identifier="as_problem_set_line_number"
              version="0.1.4">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-problem.c"
             line="175">Adds an line_number to the problem.</doc>
        <source-position filename="libappstream-glib/as-problem.h" line="88"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="problem" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-problem.c"
                 line="177">a #AsProblem instance.</doc>
            <type name="Problem" c:type="AsProblem*"/>
          </instance-parameter>
          <parameter name="line_number" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-problem.c"
                 line="178">a #guint instance.</doc>
            <type name="guint" c:type="guint"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_message"
              c:identifier="as_problem_set_message"
              version="0.1.4">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-problem.c"
             line="192">Sets a message on the problem.</doc>
        <source-position filename="libappstream-glib/as-problem.h" line="90"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="problem" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-problem.c"
                 line="194">a #AsProblem instance.</doc>
            <type name="Problem" c:type="AsProblem*"/>
          </instance-parameter>
          <parameter name="message" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-problem.c"
                 line="195">the message text.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <field name="parent_instance">
        <type name="GObject.Object" c:type="GObject"/>
      </field>
    </class>
    <record name="ProblemClass"
            c:type="AsProblemClass"
            glib:is-gtype-struct-for="Problem">
      <source-position filename="libappstream-glib/as-problem.h" line="33"/>
      <field name="parent_class">
        <type name="GObject.ObjectClass" c:type="GObjectClass"/>
      </field>
      <field name="_as_reserved1" introspectable="0">
        <callback name="_as_reserved1">
          <source-position filename="libappstream-glib/as-problem.h"
                           line="25"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved2" introspectable="0">
        <callback name="_as_reserved2">
          <source-position filename="libappstream-glib/as-problem.h"
                           line="26"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved3" introspectable="0">
        <callback name="_as_reserved3">
          <source-position filename="libappstream-glib/as-problem.h"
                           line="27"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved4" introspectable="0">
        <callback name="_as_reserved4">
          <source-position filename="libappstream-glib/as-problem.h"
                           line="28"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved5" introspectable="0">
        <callback name="_as_reserved5">
          <source-position filename="libappstream-glib/as-problem.h"
                           line="29"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved6" introspectable="0">
        <callback name="_as_reserved6">
          <source-position filename="libappstream-glib/as-problem.h"
                           line="30"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved7" introspectable="0">
        <callback name="_as_reserved7">
          <source-position filename="libappstream-glib/as-problem.h"
                           line="31"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved8" introspectable="0">
        <callback name="_as_reserved8">
          <source-position filename="libappstream-glib/as-problem.h"
                           line="32"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
    </record>
    <enumeration name="ProblemKind" c:type="AsProblemKind">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-problem.h"
           line="35">The problem type.</doc>
      <source-position filename="libappstream-glib/as-problem.h" line="73"/>
      <member name="unknown" value="0" c:identifier="AS_PROBLEM_KIND_UNKNOWN">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-problem.h"
             line="37">Type invalid or not known</doc>
      </member>
      <member name="tag_duplicated"
              value="1"
              c:identifier="AS_PROBLEM_KIND_TAG_DUPLICATED">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-problem.h"
             line="38">A tag is duplicated</doc>
      </member>
      <member name="tag_missing"
              value="2"
              c:identifier="AS_PROBLEM_KIND_TAG_MISSING">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-problem.h"
             line="39">A required tag is missing</doc>
      </member>
      <member name="tag_invalid"
              value="3"
              c:identifier="AS_PROBLEM_KIND_TAG_INVALID">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-problem.h"
             line="40">A tag value is invalid</doc>
      </member>
      <member name="attribute_missing"
              value="4"
              c:identifier="AS_PROBLEM_KIND_ATTRIBUTE_MISSING">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-problem.h"
             line="41">A required attribute is missing</doc>
      </member>
      <member name="attribute_invalid"
              value="5"
              c:identifier="AS_PROBLEM_KIND_ATTRIBUTE_INVALID">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-problem.h"
             line="42">An attribute is invalid</doc>
      </member>
      <member name="markup_invalid"
              value="6"
              c:identifier="AS_PROBLEM_KIND_MARKUP_INVALID">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-problem.h"
             line="43">The XML markup is invalid</doc>
      </member>
      <member name="style_incorrect"
              value="7"
              c:identifier="AS_PROBLEM_KIND_STYLE_INCORRECT">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-problem.h"
             line="44">Style guidelines are incorrect</doc>
      </member>
      <member name="translations_required"
              value="8"
              c:identifier="AS_PROBLEM_KIND_TRANSLATIONS_REQUIRED">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-problem.h"
             line="45">Translations are required</doc>
      </member>
      <member name="duplicate_data"
              value="9"
              c:identifier="AS_PROBLEM_KIND_DUPLICATE_DATA">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-problem.h"
             line="46">Some data is duplicated</doc>
      </member>
      <member name="value_missing"
              value="10"
              c:identifier="AS_PROBLEM_KIND_VALUE_MISSING">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-problem.h"
             line="47">A value is required</doc>
      </member>
      <member name="url_not_found"
              value="11"
              c:identifier="AS_PROBLEM_KIND_URL_NOT_FOUND">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-problem.h"
             line="48">The URL is not found</doc>
      </member>
      <member name="file_invalid"
              value="12"
              c:identifier="AS_PROBLEM_KIND_FILE_INVALID">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-problem.h"
             line="49">The file is invalid</doc>
      </member>
      <member name="aspect_ratio_incorrect"
              value="13"
              c:identifier="AS_PROBLEM_KIND_ASPECT_RATIO_INCORRECT">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-problem.h"
             line="50">The image aspect ratio is wrong</doc>
      </member>
      <member name="resolution_incorrect"
              value="14"
              c:identifier="AS_PROBLEM_KIND_RESOLUTION_INCORRECT">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-problem.h"
             line="51">The image resolution is wrong</doc>
      </member>
    </enumeration>
    <class name="Provide"
           c:symbol-prefix="provide"
           c:type="AsProvide"
           parent="GObject.Object"
           glib:type-name="AsProvide"
           glib:get-type="as_provide_get_type"
           glib:type-struct="ProvideClass">
      <source-position filename="libappstream-glib/as-provide.h" line="33"/>
      <constructor name="new" c:identifier="as_provide_new" version="0.1.6">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-provide.c"
             line="331">Creates a new #AsProvide.</doc>
        <source-position filename="libappstream-glib/as-provide.h" line="69"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-provide.c"
               line="336">a #AsProvide</doc>
          <type name="Provide" c:type="AsProvide*"/>
        </return-value>
      </constructor>
      <function name="kind_from_string"
                c:identifier="as_provide_kind_from_string"
                version="0.1.6">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-provide.c"
             line="63">Converts the text representation to an enumerated value.</doc>
        <source-position filename="libappstream-glib/as-provide.h" line="72"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-provide.c"
               line="69">a #AsProvideKind, or %AS_PROVIDE_KIND_UNKNOWN for unknown.</doc>
          <type name="ProvideKind" c:type="AsProvideKind"/>
        </return-value>
        <parameters>
          <parameter name="kind" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-provide.c"
                 line="65">the string.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </function>
      <function name="kind_to_string"
                c:identifier="as_provide_kind_to_string"
                version="0.1.6">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-provide.c"
             line="101">Converts the enumerated value to an text representation.</doc>
        <source-position filename="libappstream-glib/as-provide.h" line="73"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-provide.c"
               line="107">string version of @kind</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <parameter name="kind" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-provide.c"
                 line="103">the #AsProvideKind.</doc>
            <type name="ProvideKind" c:type="AsProvideKind"/>
          </parameter>
        </parameters>
      </function>
      <method name="get_kind"
              c:identifier="as_provide_get_kind"
              version="0.1.6">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-provide.c"
             line="157">Gets the provide kind.</doc>
        <source-position filename="libappstream-glib/as-provide.h" line="77"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-provide.c"
               line="163">the #AsProvideKind</doc>
          <type name="ProvideKind" c:type="AsProvideKind"/>
        </return-value>
        <parameters>
          <instance-parameter name="provide" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-provide.c"
                 line="159">a #AsProvide instance.</doc>
            <type name="Provide" c:type="AsProvide*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_value"
              c:identifier="as_provide_get_value"
              version="0.1.6">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-provide.c"
             line="139">Gets the full qualified URL for the provide, usually pointing at some mirror.</doc>
        <source-position filename="libappstream-glib/as-provide.h" line="76"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-provide.c"
               line="145">URL</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="provide" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-provide.c"
                 line="141">a #AsProvide instance.</doc>
            <type name="Provide" c:type="AsProvide*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="set_kind"
              c:identifier="as_provide_set_kind"
              version="0.1.6">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-provide.c"
             line="192">Sets the provide kind.</doc>
        <source-position filename="libappstream-glib/as-provide.h" line="82"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="provide" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-provide.c"
                 line="194">a #AsProvide instance.</doc>
            <type name="Provide" c:type="AsProvide*"/>
          </instance-parameter>
          <parameter name="kind" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-provide.c"
                 line="195">the #AsProvideKind, e.g. %AS_PROVIDE_KIND_LIBRARY.</doc>
            <type name="ProvideKind" c:type="AsProvideKind"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_value"
              c:identifier="as_provide_set_value"
              version="0.1.6">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-provide.c"
             line="175">Sets the fully-qualified mirror URL to use for the provide.</doc>
        <source-position filename="libappstream-glib/as-provide.h" line="80"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="provide" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-provide.c"
                 line="177">a #AsProvide instance.</doc>
            <type name="Provide" c:type="AsProvide*"/>
          </instance-parameter>
          <parameter name="value" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-provide.c"
                 line="178">the URL.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <field name="parent_instance">
        <type name="GObject.Object" c:type="GObject"/>
      </field>
    </class>
    <record name="ProvideClass"
            c:type="AsProvideClass"
            glib:is-gtype-struct-for="Provide">
      <source-position filename="libappstream-glib/as-provide.h" line="33"/>
      <field name="parent_class">
        <type name="GObject.ObjectClass" c:type="GObjectClass"/>
      </field>
      <field name="_as_reserved1" introspectable="0">
        <callback name="_as_reserved1">
          <source-position filename="libappstream-glib/as-provide.h"
                           line="25"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved2" introspectable="0">
        <callback name="_as_reserved2">
          <source-position filename="libappstream-glib/as-provide.h"
                           line="26"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved3" introspectable="0">
        <callback name="_as_reserved3">
          <source-position filename="libappstream-glib/as-provide.h"
                           line="27"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved4" introspectable="0">
        <callback name="_as_reserved4">
          <source-position filename="libappstream-glib/as-provide.h"
                           line="28"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved5" introspectable="0">
        <callback name="_as_reserved5">
          <source-position filename="libappstream-glib/as-provide.h"
                           line="29"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved6" introspectable="0">
        <callback name="_as_reserved6">
          <source-position filename="libappstream-glib/as-provide.h"
                           line="30"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved7" introspectable="0">
        <callback name="_as_reserved7">
          <source-position filename="libappstream-glib/as-provide.h"
                           line="31"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved8" introspectable="0">
        <callback name="_as_reserved8">
          <source-position filename="libappstream-glib/as-provide.h"
                           line="32"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
    </record>
    <enumeration name="ProvideKind" c:type="AsProvideKind">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-provide.h"
           line="35">The provide type.</doc>
      <source-position filename="libappstream-glib/as-provide.h" line="67"/>
      <member name="unknown" value="0" c:identifier="AS_PROVIDE_KIND_UNKNOWN">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-provide.h"
             line="37">Type invalid or not known</doc>
      </member>
      <member name="library" value="1" c:identifier="AS_PROVIDE_KIND_LIBRARY">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-provide.h"
             line="38">A library file</doc>
      </member>
      <member name="binary" value="2" c:identifier="AS_PROVIDE_KIND_BINARY">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-provide.h"
             line="39">A binary file</doc>
      </member>
      <member name="font" value="3" c:identifier="AS_PROVIDE_KIND_FONT">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-provide.h"
             line="40">A font file</doc>
      </member>
      <member name="modalias"
              value="4"
              c:identifier="AS_PROVIDE_KIND_MODALIAS">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-provide.h"
             line="41">A hardware modalias</doc>
      </member>
      <member name="firmware_runtime"
              value="5"
              c:identifier="AS_PROVIDE_KIND_FIRMWARE_RUNTIME">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-provide.h"
             line="42">A runtime-loadable firmware file</doc>
      </member>
      <member name="python2" value="6" c:identifier="AS_PROVIDE_KIND_PYTHON2">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-provide.h"
             line="43">A Python 2 module</doc>
      </member>
      <member name="python3" value="7" c:identifier="AS_PROVIDE_KIND_PYTHON3">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-provide.h"
             line="44">A Python 3 module</doc>
      </member>
      <member name="dbus_session"
              value="8"
              c:identifier="AS_PROVIDE_KIND_DBUS_SESSION">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-provide.h"
             line="45">A D-Bus session service</doc>
      </member>
      <member name="dbus_system"
              value="9"
              c:identifier="AS_PROVIDE_KIND_DBUS_SYSTEM">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-provide.h"
             line="46">A D-Bus system service</doc>
      </member>
      <member name="firmware_flashed"
              value="10"
              c:identifier="AS_PROVIDE_KIND_FIRMWARE_FLASHED">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-provide.h"
             line="47">A flashed firmware GUID</doc>
      </member>
      <member name="id" value="11" c:identifier="AS_PROVIDE_KIND_ID">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-provide.h"
             line="48">An AppStream component ID</doc>
      </member>
    </enumeration>
    <class name="Release"
           c:symbol-prefix="release"
           c:type="AsRelease"
           parent="GObject.Object"
           glib:type-name="AsRelease"
           glib:get-type="as_release_get_type"
           glib:type-struct="ReleaseClass">
      <source-position filename="libappstream-glib/as-release.h" line="36"/>
      <constructor name="new" c:identifier="as_release_new" version="0.1.0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-release.c"
             line="1084">Creates a new #AsRelease.</doc>
        <source-position filename="libappstream-glib/as-release.h" line="72"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-release.c"
               line="1089">a #AsRelease</doc>
          <type name="Release" c:type="AsRelease*"/>
        </return-value>
      </constructor>
      <function name="kind_from_string"
                c:identifier="as_release_kind_from_string"
                version="0.7.6">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-release.c"
             line="155">Converts the text representation to an enumerated value.</doc>
        <source-position filename="libappstream-glib/as-release.h" line="76"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-release.c"
               line="161">an #AsReleaseKind or %AS_RELEASE_KIND_UNKNOWN for unknown</doc>
          <type name="ReleaseKind" c:type="AsReleaseKind"/>
        </return-value>
        <parameters>
          <parameter name="kind_str" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-release.c"
                 line="157">the string.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </function>
      <function name="kind_to_string"
                c:identifier="as_release_kind_to_string"
                version="0.7.6">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-release.c"
             line="135">Converts the enumerated value to an text representation.</doc>
        <source-position filename="libappstream-glib/as-release.h" line="77"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-release.c"
               line="141">string version of @kind</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <parameter name="kind" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-release.c"
                 line="137">the #AsReleaseKind.</doc>
            <type name="ReleaseKind" c:type="AsReleaseKind"/>
          </parameter>
        </parameters>
      </function>
      <function name="state_from_string"
                c:identifier="as_release_state_from_string"
                version="0.6.6">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-release.c"
             line="175">Converts the text representation to an enumerated value.</doc>
        <source-position filename="libappstream-glib/as-release.h" line="78"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-release.c"
               line="181">A #AsReleaseState, e.g. %AS_RELEASE_STATE_INSTALLED.</doc>
          <type name="ReleaseState" c:type="AsReleaseState"/>
        </return-value>
        <parameters>
          <parameter name="state" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-release.c"
                 line="177">a string</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </function>
      <function name="state_to_string"
                c:identifier="as_release_state_to_string"
                version="0.6.6">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-release.c"
             line="195">Converts the enumerated value to an text representation.</doc>
        <source-position filename="libappstream-glib/as-release.h" line="79"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-release.c"
               line="201">string version of @state, or %NULL for unknown</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <parameter name="state" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-release.c"
                 line="197">the #AsReleaseState, e.g. %AS_RELEASE_STATE_INSTALLED</doc>
            <type name="ReleaseState" c:type="AsReleaseState"/>
          </parameter>
        </parameters>
      </function>
      <method name="add_checksum"
              c:identifier="as_release_add_checksum"
              version="0.4.2">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-release.c"
             line="681">Adds a release checksum.</doc>
        <source-position filename="libappstream-glib/as-release.h" line="119"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="release" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-release.c"
                 line="683">a #AsRelease instance.</doc>
            <type name="Release" c:type="AsRelease*"/>
          </instance-parameter>
          <parameter name="checksum" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-release.c"
                 line="684">a #AsChecksum instance.</doc>
            <type name="Checksum" c:type="AsChecksum*"/>
          </parameter>
        </parameters>
      </method>
      <method name="add_location"
              c:identifier="as_release_add_location"
              version="0.3.5">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-release.c"
             line="657">Adds a release location.</doc>
        <source-position filename="libappstream-glib/as-release.h" line="117"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="release" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-release.c"
                 line="659">a #AsRelease instance.</doc>
            <type name="Release" c:type="AsRelease*"/>
          </instance-parameter>
          <parameter name="location" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-release.c"
                 line="660">the location string.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_blob"
              c:identifier="as_release_get_blob"
              version="0.5.2">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-release.c"
             line="366">Gets the release blob, which is typically firmware file data.</doc>
        <source-position filename="libappstream-glib/as-release.h" line="83"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-release.c"
               line="373">a #GBytes, or %NULL for not set</doc>
          <type name="GLib.Bytes" c:type="GBytes*"/>
        </return-value>
        <parameters>
          <instance-parameter name="release" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-release.c"
                 line="368">a #AsRelease instance.</doc>
            <type name="Release" c:type="AsRelease*"/>
          </instance-parameter>
          <parameter name="filename" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-release.c"
                 line="369">a filename</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_checksum_by_fn"
              c:identifier="as_release_get_checksum_by_fn"
              version="0.4.2">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-release.c"
             line="448">Gets the checksum for a release.</doc>
        <source-position filename="libappstream-glib/as-release.h" line="91"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-release.c"
               line="455">an #AsChecksum, or %NULL for not found</doc>
          <type name="Checksum" c:type="AsChecksum*"/>
        </return-value>
        <parameters>
          <instance-parameter name="release" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-release.c"
                 line="450">a #AsRelease instance</doc>
            <type name="Release" c:type="AsRelease*"/>
          </instance-parameter>
          <parameter name="fn" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-release.c"
                 line="451">a file basename</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_checksum_by_target"
              c:identifier="as_release_get_checksum_by_target"
              version="0.4.2">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-release.c"
             line="476">Gets the checksum for a release.</doc>
        <source-position filename="libappstream-glib/as-release.h" line="93"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-release.c"
               line="483">an #AsChecksum, or %NULL for not found</doc>
          <type name="Checksum" c:type="AsChecksum*"/>
        </return-value>
        <parameters>
          <instance-parameter name="release" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-release.c"
                 line="478">a #AsRelease instance</doc>
            <type name="Release" c:type="AsRelease*"/>
          </instance-parameter>
          <parameter name="target" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-release.c"
                 line="479">a #AsChecksumTarget, e.g. %AS_CHECKSUM_TARGET_CONTAINER</doc>
            <type name="ChecksumTarget" c:type="AsChecksumTarget"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_checksums"
              c:identifier="as_release_get_checksums"
              version="0.4.2">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-release.c"
             line="429">Gets the release checksums.</doc>
        <source-position filename="libappstream-glib/as-release.h" line="95"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-release.c"
               line="435">list of checksums</doc>
          <array name="GLib.PtrArray" c:type="GPtrArray*">
            <type name="Checksum"/>
          </array>
        </return-value>
        <parameters>
          <instance-parameter name="release" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-release.c"
                 line="431">a #AsRelease instance.</doc>
            <type name="Release" c:type="AsRelease*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_description"
              c:identifier="as_release_get_description"
              version="0.1.0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-release.c"
             line="542">Gets the release description markup for a given locale.</doc>
        <source-position filename="libappstream-glib/as-release.h" line="87"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-release.c"
               line="549">markup, or %NULL for not set or invalid</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="release" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-release.c"
                 line="544">a #AsRelease instance.</doc>
            <type name="Release" c:type="AsRelease*"/>
          </instance-parameter>
          <parameter name="locale"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-release.c"
                 line="545">the locale. e.g. "en_GB"</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_install_duration"
              c:identifier="as_release_get_install_duration"
              version="0.7.15">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-release.c"
             line="524">Gets the typical install duration.</doc>
        <source-position filename="libappstream-glib/as-release.h" line="86"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-release.c"
               line="530">install duration in seconds, or 0 for unset</doc>
          <type name="guint64" c:type="guint64"/>
        </return-value>
        <parameters>
          <instance-parameter name="release" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-release.c"
                 line="526">a #AsRelease instance.</doc>
            <type name="Release" c:type="AsRelease*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_kind"
              c:identifier="as_release_get_kind"
              version="0.7.6">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-release.c"
             line="330">Gets the type of the release.</doc>
        <source-position filename="libappstream-glib/as-release.h" line="97"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-release.c"
               line="336">enumerated value, e.g. %AS_RELEASE_KIND_STABLE</doc>
          <type name="ReleaseKind" c:type="AsReleaseKind"/>
        </return-value>
        <parameters>
          <instance-parameter name="release" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-release.c"
                 line="332">a #AsRelease instance.</doc>
            <type name="Release" c:type="AsRelease*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_location_default"
              c:identifier="as_release_get_location_default"
              version="0.3.5">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-release.c"
             line="407">Gets the default release location, typically a URL.</doc>
        <source-position filename="libappstream-glib/as-release.h" line="90"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-release.c"
               line="413">string, or %NULL for not set or invalid</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="release" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-release.c"
                 line="409">a #AsRelease instance.</doc>
            <type name="Release" c:type="AsRelease*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_locations"
              c:identifier="as_release_get_locations"
              version="0.3.5">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-release.c"
             line="388">Gets the release locations, typically URLs.</doc>
        <source-position filename="libappstream-glib/as-release.h" line="89"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-release.c"
               line="394">list of locations</doc>
          <array name="GLib.PtrArray" c:type="GPtrArray*">
            <type name="utf8"/>
          </array>
        </return-value>
        <parameters>
          <instance-parameter name="release" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-release.c"
                 line="390">a #AsRelease instance.</doc>
            <type name="Release" c:type="AsRelease*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_size"
              c:identifier="as_release_get_size"
              version="0.5.2">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-release.c"
             line="250">Gets the release size.</doc>
        <source-position filename="libappstream-glib/as-release.h" line="99"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-release.c"
               line="257">The size in bytes, or 0 for unknown.</doc>
          <type name="guint64" c:type="guint64"/>
        </return-value>
        <parameters>
          <instance-parameter name="release" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-release.c"
                 line="252">a #AsRelease instance</doc>
            <type name="Release" c:type="AsRelease*"/>
          </instance-parameter>
          <parameter name="kind" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-release.c"
                 line="253">a #AsSizeKind, e.g. #AS_SIZE_KIND_DOWNLOAD</doc>
            <type name="SizeKind" c:type="AsSizeKind"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_state"
              c:identifier="as_release_get_state"
              version="0.5.8">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-release.c"
             line="312">Gets the release state.</doc>
        <source-position filename="libappstream-glib/as-release.h" line="98"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-release.c"
               line="318">enumberated value, or %AS_RELEASE_STATE_UNKNOWN for not set or invalid</doc>
          <type name="ReleaseState" c:type="AsReleaseState"/>
        </return-value>
        <parameters>
          <instance-parameter name="release" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-release.c"
                 line="314">a #AsRelease instance.</doc>
            <type name="Release" c:type="AsRelease*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_timestamp"
              c:identifier="as_release_get_timestamp"
              version="0.1.0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-release.c"
             line="506">Gets the release timestamp.</doc>
        <source-position filename="libappstream-glib/as-release.h" line="85"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-release.c"
               line="512">timestamp, or 0 for unset</doc>
          <type name="guint64" c:type="guint64"/>
        </return-value>
        <parameters>
          <instance-parameter name="release" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-release.c"
                 line="508">a #AsRelease instance.</doc>
            <type name="Release" c:type="AsRelease*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_urgency"
              c:identifier="as_release_get_urgency"
              version="0.5.1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-release.c"
             line="294">Gets the release urgency.</doc>
        <source-position filename="libappstream-glib/as-release.h" line="96"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-release.c"
               line="300">enumberated value, or %AS_URGENCY_KIND_UNKNOWN for not set or invalid</doc>
          <type name="UrgencyKind" c:type="AsUrgencyKind"/>
        </return-value>
        <parameters>
          <instance-parameter name="release" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-release.c"
                 line="296">a #AsRelease instance.</doc>
            <type name="Release" c:type="AsRelease*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_url"
              c:identifier="as_release_get_url"
              version="0.7.15">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-release.c"
             line="763">Gets a URL.</doc>
        <source-position filename="libappstream-glib/as-release.h" line="101"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-release.c"
               line="770">string, or %NULL if unset</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="release" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-release.c"
                 line="765">a #AsRelease instance.</doc>
            <type name="Release" c:type="AsRelease*"/>
          </instance-parameter>
          <parameter name="url_kind" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-release.c"
                 line="766">the URL kind, e.g. %AS_URL_KIND_HOMEPAGE.</doc>
            <type name="UrlKind" c:type="AsUrlKind"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_version"
              c:identifier="as_release_get_version"
              version="0.1.0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-release.c"
             line="348">Gets the release version.</doc>
        <source-position filename="libappstream-glib/as-release.h" line="82"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-release.c"
               line="354">string, or %NULL for not set or invalid</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="release" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-release.c"
                 line="350">a #AsRelease instance.</doc>
            <type name="Release" c:type="AsRelease*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="set_blob"
              c:identifier="as_release_set_blob"
              version="0.5.2">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-release.c"
             line="580">Sets a release blob, which is typically firmware data or a detached signature.

NOTE: This is not stored in the XML file, and is only available in-memory.</doc>
        <source-position filename="libappstream-glib/as-release.h" line="107"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="release" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-release.c"
                 line="582">a #AsRelease instance.</doc>
            <type name="Release" c:type="AsRelease*"/>
          </instance-parameter>
          <parameter name="filename" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-release.c"
                 line="583">a filename</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="blob" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-release.c"
                 line="584">the #GBytes data blob</doc>
            <type name="GLib.Bytes" c:type="GBytes*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_description"
              c:identifier="as_release_set_description"
              version="0.1.0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-release.c"
             line="733">Sets the description release markup.</doc>
        <source-position filename="libappstream-glib/as-release.h" line="114"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="release" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-release.c"
                 line="735">a #AsRelease instance.</doc>
            <type name="Release" c:type="AsRelease*"/>
          </instance-parameter>
          <parameter name="locale"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-release.c"
                 line="736">the locale. e.g. "en_GB"</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="description" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-release.c"
                 line="737">the description markup.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_install_duration"
              c:identifier="as_release_set_install_duration"
              version="0.7.15">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-release.c"
             line="716">Sets the typical duration of the install.</doc>
        <source-position filename="libappstream-glib/as-release.h" line="112"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="release" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-release.c"
                 line="718">a #AsRelease instance.</doc>
            <type name="Release" c:type="AsRelease*"/>
          </instance-parameter>
          <parameter name="install_duration" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-release.c"
                 line="719">the install duration in seconds</doc>
            <type name="guint64" c:type="guint64"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_kind"
              c:identifier="as_release_set_kind"
              version="0.7.6">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-release.c"
             line="623">Sets the release kind.</doc>
        <source-position filename="libappstream-glib/as-release.h" line="123"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="release" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-release.c"
                 line="625">a #AsRelease instance.</doc>
            <type name="Release" c:type="AsRelease*"/>
          </instance-parameter>
          <parameter name="kind" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-release.c"
                 line="626">the #AsReleaseKind</doc>
            <type name="ReleaseKind" c:type="AsReleaseKind"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_size"
              c:identifier="as_release_set_size"
              version="0.5.2">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-release.c"
             line="273">Sets the release size.</doc>
        <source-position filename="libappstream-glib/as-release.h" line="127"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="release" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-release.c"
                 line="275">a #AsRelease instance</doc>
            <type name="Release" c:type="AsRelease*"/>
          </instance-parameter>
          <parameter name="kind" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-release.c"
                 line="276">a #AsSizeKind, e.g. #AS_SIZE_KIND_DOWNLOAD</doc>
            <type name="SizeKind" c:type="AsSizeKind"/>
          </parameter>
          <parameter name="size" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-release.c"
                 line="277">a size in bytes, or 0 for unknown</doc>
            <type name="guint64" c:type="guint64"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_state"
              c:identifier="as_release_set_state"
              version="0.5.8">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-release.c"
             line="640">Sets the release state.</doc>
        <source-position filename="libappstream-glib/as-release.h" line="125"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="release" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-release.c"
                 line="642">a #AsRelease instance.</doc>
            <type name="Release" c:type="AsRelease*"/>
          </instance-parameter>
          <parameter name="state" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-release.c"
                 line="643">the release state, e.g. %AS_RELEASE_STATE_INSTALLED</doc>
            <type name="ReleaseState" c:type="AsReleaseState"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_timestamp"
              c:identifier="as_release_set_timestamp"
              version="0.1.0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-release.c"
             line="699">Sets the release timestamp.</doc>
        <source-position filename="libappstream-glib/as-release.h" line="110"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="release" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-release.c"
                 line="701">a #AsRelease instance.</doc>
            <type name="Release" c:type="AsRelease*"/>
          </instance-parameter>
          <parameter name="timestamp" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-release.c"
                 line="702">the timestamp value.</doc>
            <type name="guint64" c:type="guint64"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_urgency"
              c:identifier="as_release_set_urgency"
              version="0.5.1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-release.c"
             line="606">Sets the release urgency.</doc>
        <source-position filename="libappstream-glib/as-release.h" line="121"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="release" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-release.c"
                 line="608">a #AsRelease instance.</doc>
            <type name="Release" c:type="AsRelease*"/>
          </instance-parameter>
          <parameter name="urgency" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-release.c"
                 line="609">the release urgency, e.g. %AS_URGENCY_KIND_CRITICAL</doc>
            <type name="UrgencyKind" c:type="AsUrgencyKind"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_url"
              c:identifier="as_release_set_url"
              version="0.7.15">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-release.c"
             line="782">Adds some URL data to the application.</doc>
        <source-position filename="libappstream-glib/as-release.h" line="130"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="release" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-release.c"
                 line="784">a #AsRelease instance.</doc>
            <type name="Release" c:type="AsRelease*"/>
          </instance-parameter>
          <parameter name="url_kind" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-release.c"
                 line="785">the URL kind, e.g. %AS_URL_KIND_DETAILS</doc>
            <type name="UrlKind" c:type="AsUrlKind"/>
          </parameter>
          <parameter name="url" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-release.c"
                 line="786">the full URL.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_version"
              c:identifier="as_release_set_version"
              version="0.1.0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-release.c"
             line="563">Sets the release version.</doc>
        <source-position filename="libappstream-glib/as-release.h" line="105"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="release" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-release.c"
                 line="565">a #AsRelease instance.</doc>
            <type name="Release" c:type="AsRelease*"/>
          </instance-parameter>
          <parameter name="version" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-release.c"
                 line="566">the version string.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="vercmp" c:identifier="as_release_vercmp" version="0.4.2">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-release.c"
             line="215">Compares two release.</doc>
        <source-position filename="libappstream-glib/as-release.h" line="73"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-release.c"
               line="222">-1 if rel1 &gt; rel2, +1 if rel1 &lt; rel2, 0 otherwise</doc>
          <type name="gint" c:type="gint"/>
        </return-value>
        <parameters>
          <instance-parameter name="rel1" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-release.c"
                 line="217">a #AsRelease instance.</doc>
            <type name="Release" c:type="AsRelease*"/>
          </instance-parameter>
          <parameter name="rel2" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-release.c"
                 line="218">a #AsRelease instance.</doc>
            <type name="Release" c:type="AsRelease*"/>
          </parameter>
        </parameters>
      </method>
      <field name="parent_instance">
        <type name="GObject.Object" c:type="GObject"/>
      </field>
    </class>
    <record name="ReleaseClass"
            c:type="AsReleaseClass"
            glib:is-gtype-struct-for="Release">
      <source-position filename="libappstream-glib/as-release.h" line="36"/>
      <field name="parent_class">
        <type name="GObject.ObjectClass" c:type="GObjectClass"/>
      </field>
      <field name="_as_reserved1" introspectable="0">
        <callback name="_as_reserved1">
          <source-position filename="libappstream-glib/as-release.h"
                           line="28"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved2" introspectable="0">
        <callback name="_as_reserved2">
          <source-position filename="libappstream-glib/as-release.h"
                           line="29"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved3" introspectable="0">
        <callback name="_as_reserved3">
          <source-position filename="libappstream-glib/as-release.h"
                           line="30"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved4" introspectable="0">
        <callback name="_as_reserved4">
          <source-position filename="libappstream-glib/as-release.h"
                           line="31"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved5" introspectable="0">
        <callback name="_as_reserved5">
          <source-position filename="libappstream-glib/as-release.h"
                           line="32"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved6" introspectable="0">
        <callback name="_as_reserved6">
          <source-position filename="libappstream-glib/as-release.h"
                           line="33"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved7" introspectable="0">
        <callback name="_as_reserved7">
          <source-position filename="libappstream-glib/as-release.h"
                           line="34"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved8" introspectable="0">
        <callback name="_as_reserved8">
          <source-position filename="libappstream-glib/as-release.h"
                           line="35"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
    </record>
    <enumeration name="ReleaseKind" version="0.7.6" c:type="AsReleaseKind">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-release.h"
           line="38">The release size kind.</doc>
      <source-position filename="libappstream-glib/as-release.h" line="54"/>
      <member name="unknown" value="0" c:identifier="AS_RELEASE_KIND_UNKNOWN">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-release.h"
             line="40">Unknown release type</doc>
      </member>
      <member name="stable" value="1" c:identifier="AS_RELEASE_KIND_STABLE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-release.h"
             line="41">A stable release</doc>
      </member>
      <member name="development"
              value="2"
              c:identifier="AS_RELEASE_KIND_DEVELOPMENT">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-release.h"
             line="42">A development release</doc>
      </member>
    </enumeration>
    <enumeration name="ReleaseState" c:type="AsReleaseState">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-release.h"
           line="56">The release state.</doc>
      <source-position filename="libappstream-glib/as-release.h" line="70"/>
      <member name="unknown" value="0" c:identifier="AS_RELEASE_STATE_UNKNOWN">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-release.h"
             line="58">Unknown state</doc>
      </member>
      <member name="installed"
              value="1"
              c:identifier="AS_RELEASE_STATE_INSTALLED">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-release.h"
             line="59">Release is installed</doc>
      </member>
      <member name="available"
              value="2"
              c:identifier="AS_RELEASE_STATE_AVAILABLE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-release.h"
             line="60">Release is available</doc>
      </member>
    </enumeration>
    <class name="Require"
           c:symbol-prefix="require"
           c:type="AsRequire"
           parent="GObject.Object"
           glib:type-name="AsRequire"
           glib:get-type="as_require_get_type"
           glib:type-struct="RequireClass">
      <source-position filename="libappstream-glib/as-require.h" line="33"/>
      <constructor name="new" c:identifier="as_require_new" version="0.6.7">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-require.c"
             line="548">Creates a new #AsRequire.</doc>
        <source-position filename="libappstream-glib/as-require.h" line="87"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-require.c"
               line="553">a #AsRequire</doc>
          <type name="Require" c:type="AsRequire*"/>
        </return-value>
      </constructor>
      <function name="compare_from_string"
                c:identifier="as_require_compare_from_string"
                version="0.6.7">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-require.c"
             line="125">Converts the text representation to an enumerated value.</doc>
        <source-position filename="libappstream-glib/as-require.h" line="92"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-require.c"
               line="131">a #AsRequireCompare, or
		     %AS_REQUIRE_COMPARE_UNKNOWN for unknown.</doc>
          <type name="RequireCompare" c:type="AsRequireCompare"/>
        </return-value>
        <parameters>
          <parameter name="compare" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-require.c"
                 line="127">the string.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </function>
      <function name="compare_to_string"
                c:identifier="as_require_compare_to_string"
                version="0.6.7">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-require.c"
             line="158">Converts the enumerated value to an text representation.</doc>
        <source-position filename="libappstream-glib/as-require.h" line="93"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-require.c"
               line="164">string version of @compare</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <parameter name="compare" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-require.c"
                 line="160">the #AsRequireCompare.</doc>
            <type name="RequireCompare" c:type="AsRequireCompare"/>
          </parameter>
        </parameters>
      </function>
      <function name="kind_from_string"
                c:identifier="as_require_kind_from_string"
                version="0.6.7">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-require.c"
             line="69">Converts the text representation to an enumerated value.</doc>
        <source-position filename="libappstream-glib/as-require.h" line="90"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-require.c"
               line="75">a #AsRequireKind, or %AS_REQUIRE_KIND_UNKNOWN for unknown.</doc>
          <type name="RequireKind" c:type="AsRequireKind"/>
        </return-value>
        <parameters>
          <parameter name="kind" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-require.c"
                 line="71">the string.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </function>
      <function name="kind_to_string"
                c:identifier="as_require_kind_to_string"
                version="0.6.7">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-require.c"
             line="97">Converts the enumerated value to an text representation.</doc>
        <source-position filename="libappstream-glib/as-require.h" line="91"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-require.c"
               line="103">string version of @kind</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <parameter name="kind" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-require.c"
                 line="99">the #AsRequireKind.</doc>
            <type name="RequireKind" c:type="AsRequireKind"/>
          </parameter>
        </parameters>
      </function>
      <method name="equal" c:identifier="as_require_equal" version="0.7.7">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-require.c"
             line="421">Checks if two requires are the same.</doc>
        <source-position filename="libappstream-glib/as-require.h" line="115"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-require.c"
               line="428">%TRUE for success</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="require1" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-require.c"
                 line="423">a #AsRequire instance.</doc>
            <type name="Require" c:type="AsRequire*"/>
          </instance-parameter>
          <parameter name="require2" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-require.c"
                 line="424">a #AsRequire instance.</doc>
            <type name="Require" c:type="AsRequire*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_compare"
              c:identifier="as_require_get_compare"
              version="0.6.7">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-require.c"
             line="261">Gets the require version comparison type.</doc>
        <source-position filename="libappstream-glib/as-require.h" line="97"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-require.c"
               line="267">the #AsRequireKind</doc>
          <type name="RequireCompare" c:type="AsRequireCompare"/>
        </return-value>
        <parameters>
          <instance-parameter name="require" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-require.c"
                 line="263">a #AsRequire instance.</doc>
            <type name="Require" c:type="AsRequire*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_kind"
              c:identifier="as_require_get_kind"
              version="0.6.7">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-require.c"
             line="226">Gets the require kind.</doc>
        <source-position filename="libappstream-glib/as-require.h" line="96"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-require.c"
               line="232">the #AsRequireKind</doc>
          <type name="RequireKind" c:type="AsRequireKind"/>
        </return-value>
        <parameters>
          <instance-parameter name="require" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-require.c"
                 line="228">a #AsRequire instance.</doc>
            <type name="Require" c:type="AsRequire*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_value"
              c:identifier="as_require_get_value"
              version="0.6.7">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-require.c"
             line="208">Gets the require value if set.</doc>
        <source-position filename="libappstream-glib/as-require.h" line="99"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-require.c"
               line="214">the value, e.g. "bootloader"</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="require" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-require.c"
                 line="210">a #AsRequire instance.</doc>
            <type name="Require" c:type="AsRequire*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_version"
              c:identifier="as_require_get_version"
              version="0.6.7">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-require.c"
             line="190">Gets the require version if set.</doc>
        <source-position filename="libappstream-glib/as-require.h" line="98"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-require.c"
               line="196">the version, e.g. "0.1.2"</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="require" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-require.c"
                 line="192">a #AsRequire instance.</doc>
            <type name="Require" c:type="AsRequire*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="set_compare"
              c:identifier="as_require_set_compare"
              version="0.6.7">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-require.c"
             line="279">Sets the require version comparison type.</doc>
        <source-position filename="libappstream-glib/as-require.h" line="104"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="require" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-require.c"
                 line="281">a #AsRequire instance.</doc>
            <type name="Require" c:type="AsRequire*"/>
          </instance-parameter>
          <parameter name="compare" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-require.c"
                 line="282">the #AsRequireKind, e.g. %AS_REQUIRE_KIND_ID.</doc>
            <type name="RequireCompare" c:type="AsRequireCompare"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_kind"
              c:identifier="as_require_set_kind"
              version="0.6.7">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-require.c"
             line="244">Sets the require kind.</doc>
        <source-position filename="libappstream-glib/as-require.h" line="102"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="require" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-require.c"
                 line="246">a #AsRequire instance.</doc>
            <type name="Require" c:type="AsRequire*"/>
          </instance-parameter>
          <parameter name="kind" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-require.c"
                 line="247">the #AsRequireKind, e.g. %AS_REQUIRE_KIND_ID.</doc>
            <type name="RequireKind" c:type="AsRequireKind"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_value"
              c:identifier="as_require_set_value"
              version="0.6.7">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-require.c"
             line="315">Sets the require value.</doc>
        <source-position filename="libappstream-glib/as-require.h" line="108"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="require" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-require.c"
                 line="317">a #AsRequire instance.</doc>
            <type name="Require" c:type="AsRequire*"/>
          </instance-parameter>
          <parameter name="value" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-require.c"
                 line="318">an require version, e.g. `firmware`</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_version"
              c:identifier="as_require_set_version"
              version="0.6.7">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-require.c"
             line="296">Sets the require version.</doc>
        <source-position filename="libappstream-glib/as-require.h" line="106"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="require" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-require.c"
                 line="298">a #AsRequire instance.</doc>
            <type name="Require" c:type="AsRequire*"/>
          </instance-parameter>
          <parameter name="version" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-require.c"
                 line="299">an version number, e.g. `0.1.2`</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="version_compare"
              c:identifier="as_require_version_compare"
              version="0.6.7"
              throws="1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-require.c"
             line="335">Compares the version number of the requirement with a predicate.</doc>
        <source-position filename="libappstream-glib/as-require.h" line="112"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-require.c"
               line="343">%TRUE if the predicate was true</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="require" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-require.c"
                 line="337">a #AsRequire instance.</doc>
            <type name="Require" c:type="AsRequire*"/>
          </instance-parameter>
          <parameter name="version" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-require.c"
                 line="338">a version number, e.g. `0.1.3`</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <field name="parent_instance">
        <type name="GObject.Object" c:type="GObject"/>
      </field>
    </class>
    <record name="RequireClass"
            c:type="AsRequireClass"
            glib:is-gtype-struct-for="Require">
      <source-position filename="libappstream-glib/as-require.h" line="33"/>
      <field name="parent_class">
        <type name="GObject.ObjectClass" c:type="GObjectClass"/>
      </field>
      <field name="_as_reserved1" introspectable="0">
        <callback name="_as_reserved1">
          <source-position filename="libappstream-glib/as-require.h"
                           line="25"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved2" introspectable="0">
        <callback name="_as_reserved2">
          <source-position filename="libappstream-glib/as-require.h"
                           line="26"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved3" introspectable="0">
        <callback name="_as_reserved3">
          <source-position filename="libappstream-glib/as-require.h"
                           line="27"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved4" introspectable="0">
        <callback name="_as_reserved4">
          <source-position filename="libappstream-glib/as-require.h"
                           line="28"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved5" introspectable="0">
        <callback name="_as_reserved5">
          <source-position filename="libappstream-glib/as-require.h"
                           line="29"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved6" introspectable="0">
        <callback name="_as_reserved6">
          <source-position filename="libappstream-glib/as-require.h"
                           line="30"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved7" introspectable="0">
        <callback name="_as_reserved7">
          <source-position filename="libappstream-glib/as-require.h"
                           line="31"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved8" introspectable="0">
        <callback name="_as_reserved8">
          <source-position filename="libappstream-glib/as-require.h"
                           line="32"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
    </record>
    <enumeration name="RequireCompare" c:type="AsRequireCompare">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-require.h"
           line="59">The relational comparison type.</doc>
      <source-position filename="libappstream-glib/as-require.h" line="85"/>
      <member name="unknown"
              value="0"
              c:identifier="AS_REQUIRE_COMPARE_UNKNOWN">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-require.h"
             line="61">Comparison predicate invalid or not known</doc>
      </member>
      <member name="eq" value="1" c:identifier="AS_REQUIRE_COMPARE_EQ">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-require.h"
             line="62">Equal to</doc>
      </member>
      <member name="ne" value="2" c:identifier="AS_REQUIRE_COMPARE_NE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-require.h"
             line="63">Not equal to</doc>
      </member>
      <member name="lt" value="3" c:identifier="AS_REQUIRE_COMPARE_LT">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-require.h"
             line="64">Less than</doc>
      </member>
      <member name="gt" value="4" c:identifier="AS_REQUIRE_COMPARE_GT">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-require.h"
             line="65">Greater than</doc>
      </member>
      <member name="le" value="5" c:identifier="AS_REQUIRE_COMPARE_LE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-require.h"
             line="66">Less than or equal to</doc>
      </member>
      <member name="ge" value="6" c:identifier="AS_REQUIRE_COMPARE_GE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-require.h"
             line="67">Greater than or equal to</doc>
      </member>
      <member name="glob" value="7" c:identifier="AS_REQUIRE_COMPARE_GLOB">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-require.h"
             line="68">Filename glob, e.g. `test*`</doc>
      </member>
      <member name="regex" value="8" c:identifier="AS_REQUIRE_COMPARE_REGEX">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-require.h"
             line="69">A regular expression, e.g. `fw[0-255]`</doc>
      </member>
    </enumeration>
    <enumeration name="RequireKind" c:type="AsRequireKind">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-require.h"
           line="35">The require type.</doc>
      <source-position filename="libappstream-glib/as-require.h" line="57"/>
      <member name="unknown" value="0" c:identifier="AS_REQUIRE_KIND_UNKNOWN">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-require.h"
             line="37">Type invalid or not known</doc>
      </member>
      <member name="id" value="1" c:identifier="AS_REQUIRE_KIND_ID">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-require.h"
             line="38">Component ID</doc>
      </member>
      <member name="firmware"
              value="2"
              c:identifier="AS_REQUIRE_KIND_FIRMWARE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-require.h"
             line="39">Device firmware version</doc>
      </member>
      <member name="hardware"
              value="3"
              c:identifier="AS_REQUIRE_KIND_HARDWARE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-require.h"
             line="40">Hardware device, typically a GUID</doc>
      </member>
      <member name="modalias"
              value="4"
              c:identifier="AS_REQUIRE_KIND_MODALIAS">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-require.h"
             line="41">Modalias string</doc>
      </member>
      <member name="kernel" value="5" c:identifier="AS_REQUIRE_KIND_KERNEL">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-require.h"
             line="42">Kernel version</doc>
      </member>
      <member name="memory" value="6" c:identifier="AS_REQUIRE_KIND_MEMORY">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-require.h"
             line="43">Amount of installed memory in MiB</doc>
      </member>
    </enumeration>
    <class name="Review"
           c:symbol-prefix="review"
           c:type="AsReview"
           parent="GObject.Object"
           glib:type-name="AsReview"
           glib:get-type="as_review_get_type"
           glib:type-struct="ReviewClass">
      <source-position filename="libappstream-glib/as-review.h" line="34"/>
      <constructor name="new" c:identifier="as_review_new" version="0.6.1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-review.c"
             line="986">Creates a new #AsReview.</doc>
        <source-position filename="libappstream-glib/as-review.h" line="54"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-review.c"
               line="991">a #AsReview</doc>
          <type name="Review" c:type="AsReview*"/>
        </return-value>
      </constructor>
      <method name="add_flags"
              c:identifier="as_review_add_flags"
              version="0.6.1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-review.c"
             line="548">Adds flags to an existing review without replacing the other flags.</doc>
        <source-position filename="libappstream-glib/as-review.h" line="94"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="review" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-review.c"
                 line="550">a #AsReview</doc>
            <type name="Review" c:type="AsReview*"/>
          </instance-parameter>
          <parameter name="flags" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-review.c"
                 line="551">a #AsReviewFlags, e.g. %AS_REVIEW_FLAG_SELF</doc>
            <type name="ReviewFlags" c:type="AsReviewFlags"/>
          </parameter>
        </parameters>
      </method>
      <method name="add_metadata"
              c:identifier="as_review_add_metadata"
              version="0.6.1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-review.c"
             line="729">Adds metadata to the review object.
It is left for the the plugin to use this method as required, but a
typical use would be to store some secure authentication token.</doc>
        <source-position filename="libappstream-glib/as-review.h" line="96"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="review" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-review.c"
                 line="731">a #AsReview</doc>
            <type name="Review" c:type="AsReview*"/>
          </instance-parameter>
          <parameter name="key" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-review.c"
                 line="732">a string</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="value" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-review.c"
                 line="733">a string</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="equal" c:identifier="as_review_equal" version="0.6.1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-review.c"
             line="751">Checks if two reviews are the same.</doc>
        <source-position filename="libappstream-glib/as-review.h" line="101"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-review.c"
               line="758">%TRUE for success</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="review1" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-review.c"
                 line="753">a #AsReview instance.</doc>
            <type name="Review" c:type="AsReview*"/>
          </instance-parameter>
          <parameter name="review2" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-review.c"
                 line="754">a #AsReview instance.</doc>
            <type name="Review" c:type="AsReview*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_date"
              c:identifier="as_review_get_date"
              glib:get-property="date"
              version="0.6.1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-review.c"
             line="670">Gets the date the review was originally submitted.</doc>
        <source-position filename="libappstream-glib/as-review.h" line="66"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-review.c"
               line="676">the #GDateTime, or %NULL for unset</doc>
          <type name="GLib.DateTime" c:type="GDateTime*"/>
        </return-value>
        <parameters>
          <instance-parameter name="review" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-review.c"
                 line="672">a #AsReview</doc>
            <type name="Review" c:type="AsReview*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_description"
              c:identifier="as_review_get_description"
              glib:get-property="description"
              version="0.6.1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-review.c"
             line="406">Gets the multi-line review text that forms the body of the review.</doc>
        <source-position filename="libappstream-glib/as-review.h" line="60"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-review.c"
               line="412">the string, or %NULL</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="review" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-review.c"
                 line="408">a #AsReview</doc>
            <type name="Review" c:type="AsReview*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_flags"
              c:identifier="as_review_get_flags"
              glib:get-property="flags"
              version="0.6.1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-review.c"
             line="511">Gets any flags set on the review, for example if the user has already
voted on the review or if the user wrote the review themselves.</doc>
        <source-position filename="libappstream-glib/as-review.h" line="67"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-review.c"
               line="518">a #AsReviewFlags, e.g. %AS_REVIEW_FLAG_SELF</doc>
          <type name="ReviewFlags" c:type="AsReviewFlags"/>
        </return-value>
        <parameters>
          <instance-parameter name="review" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-review.c"
                 line="513">a #AsReview</doc>
            <type name="Review" c:type="AsReview*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_id"
              c:identifier="as_review_get_id"
              glib:get-property="id"
              version="0.6.1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-review.c"
             line="336">Gets the review id.</doc>
        <source-position filename="libappstream-glib/as-review.h" line="58"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-review.c"
               line="342">the review identifier, e.g. "deadbeef"</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="review" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-review.c"
                 line="338">a #AsReview</doc>
            <type name="Review" c:type="AsReview*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_locale"
              c:identifier="as_review_get_locale"
              glib:get-property="locale"
              version="0.6.1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-review.c"
             line="441">Gets the locale for the review.</doc>
        <source-position filename="libappstream-glib/as-review.h" line="61"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-review.c"
               line="447">the string, or %NULL</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="review" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-review.c"
                 line="443">a #AsReview</doc>
            <type name="Review" c:type="AsReview*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_metadata_item"
              c:identifier="as_review_get_metadata_item"
              version="0.6.1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-review.c"
             line="707">Gets some metadata from a review object.
It is left for the the plugin to use this method as required, but a
typical use would be to retrieve some secure authentication token.</doc>
        <source-position filename="libappstream-glib/as-review.h" line="68"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-review.c"
               line="716">A string value, or %NULL for not found</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="review" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-review.c"
                 line="709">a #AsReview</doc>
            <type name="Review" c:type="AsReview*"/>
          </instance-parameter>
          <parameter name="key" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-review.c"
                 line="710">a string</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_priority"
              c:identifier="as_review_get_priority"
              version="0.6.1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-review.c"
             line="299">This allows the UI to sort reviews into the correct order.
Higher numbers indicate a more important or relevant review.</doc>
        <source-position filename="libappstream-glib/as-review.h" line="57"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-review.c"
               line="306">the review priority, or 0 for unset.</doc>
          <type name="gint" c:type="gint"/>
        </return-value>
        <parameters>
          <instance-parameter name="review" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-review.c"
                 line="301">a #AsReview</doc>
            <type name="Review" c:type="AsReview*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_rating"
              c:identifier="as_review_get_rating"
              glib:get-property="rating"
              version="0.6.1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-review.c"
             line="476">Gets the star rating of the review, where 100 is 5 stars.</doc>
        <source-position filename="libappstream-glib/as-review.h" line="62"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-review.c"
               line="482">integer as a percentage, or 0 for unset</doc>
          <type name="gint" c:type="gint"/>
        </return-value>
        <parameters>
          <instance-parameter name="review" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-review.c"
                 line="478">a #AsReview</doc>
            <type name="Review" c:type="AsReview*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_reviewer_id"
              c:identifier="as_review_get_reviewer_id"
              glib:get-property="reviewer-id"
              version="0.6.1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-review.c"
             line="565">Gets the name of the reviewer.</doc>
        <source-position filename="libappstream-glib/as-review.h" line="64"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-review.c"
               line="571">the reviewer ID, e.g. "deadbeef", or %NULL</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="review" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-review.c"
                 line="567">a #AsReview</doc>
            <type name="Review" c:type="AsReview*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_reviewer_name"
              c:identifier="as_review_get_reviewer_name"
              glib:get-property="reviewer-name"
              version="0.6.1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-review.c"
             line="583">Gets the name of the reviewer.</doc>
        <source-position filename="libappstream-glib/as-review.h" line="65"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-review.c"
               line="589">the reviewer name, e.g. "David Smith", or %NULL</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="review" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-review.c"
                 line="585">a #AsReview</doc>
            <type name="Review" c:type="AsReview*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_summary"
              c:identifier="as_review_get_summary"
              glib:get-property="summary"
              version="0.6.1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-review.c"
             line="354">Gets the review summary.</doc>
        <source-position filename="libappstream-glib/as-review.h" line="59"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-review.c"
               line="360">the one-line summary, e.g. "Awesome application"</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="review" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-review.c"
                 line="356">a #AsReview</doc>
            <type name="Review" c:type="AsReview*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_version"
              c:identifier="as_review_get_version"
              glib:get-property="version"
              version="0.6.1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-review.c"
             line="652">Gets the version string for the application being reviewed..</doc>
        <source-position filename="libappstream-glib/as-review.h" line="63"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-review.c"
               line="658">the version string, e.g. "0.1.2", or %NULL for unset</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="review" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-review.c"
                 line="654">a #AsReview</doc>
            <type name="Review" c:type="AsReview*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="set_date"
              c:identifier="as_review_set_date"
              glib:set-property="date"
              version="0.6.1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-review.c"
             line="688">Sets the date the review was originally submitted.</doc>
        <source-position filename="libappstream-glib/as-review.h" line="90"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="review" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-review.c"
                 line="690">a #AsReview</doc>
            <type name="Review" c:type="AsReview*"/>
          </instance-parameter>
          <parameter name="date" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-review.c"
                 line="691">a #GDateTime, or %NULL</doc>
            <type name="GLib.DateTime" c:type="GDateTime*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_description"
              c:identifier="as_review_set_description"
              glib:set-property="description"
              version="0.6.1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-review.c"
             line="424">Sets the multi-line review text that forms the body of the review.</doc>
        <source-position filename="libappstream-glib/as-review.h" line="78"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="review" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-review.c"
                 line="426">a #AsReview</doc>
            <type name="Review" c:type="AsReview*"/>
          </instance-parameter>
          <parameter name="description" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-review.c"
                 line="427">multi-line description</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_flags"
              c:identifier="as_review_set_flags"
              glib:set-property="flags"
              version="0.6.1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-review.c"
             line="530">Gets any flags set on the review, for example if the user has already
voted on the review or if the user wrote the review themselves.</doc>
        <source-position filename="libappstream-glib/as-review.h" line="92"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="review" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-review.c"
                 line="532">a #AsReview</doc>
            <type name="Review" c:type="AsReview*"/>
          </instance-parameter>
          <parameter name="flags" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-review.c"
                 line="533">a #AsReviewFlags, e.g. %AS_REVIEW_FLAG_SELF</doc>
            <type name="ReviewFlags" c:type="AsReviewFlags"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_id"
              c:identifier="as_review_set_id"
              glib:set-property="id"
              version="0.6.1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-review.c"
             line="372">Sets the review identifier that is unique to each review.</doc>
        <source-position filename="libappstream-glib/as-review.h" line="74"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="review" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-review.c"
                 line="374">a #AsReview</doc>
            <type name="Review" c:type="AsReview*"/>
          </instance-parameter>
          <parameter name="id" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-review.c"
                 line="375">review identifier, e.g. "deadbeef"</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_locale"
              c:identifier="as_review_set_locale"
              glib:set-property="locale"
              version="0.6.1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-review.c"
             line="459">Sets the locale for the review.</doc>
        <source-position filename="libappstream-glib/as-review.h" line="80"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="review" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-review.c"
                 line="461">a #AsReview</doc>
            <type name="Review" c:type="AsReview*"/>
          </instance-parameter>
          <parameter name="locale" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-review.c"
                 line="462">locale, e.g. "en_GB"</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_priority"
              c:identifier="as_review_set_priority"
              version="0.6.1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-review.c"
             line="318">Sets the priority for the review, where positive numbers indicate
a better review for the specific user.</doc>
        <source-position filename="libappstream-glib/as-review.h" line="72"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="review" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-review.c"
                 line="320">a #AsReview</doc>
            <type name="Review" c:type="AsReview*"/>
          </instance-parameter>
          <parameter name="priority" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-review.c"
                 line="321">a priority value</doc>
            <type name="gint" c:type="gint"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_rating"
              c:identifier="as_review_set_rating"
              glib:set-property="rating"
              version="0.6.1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-review.c"
             line="494">Sets the star rating of the review, where 100 is 5 stars..</doc>
        <source-position filename="libappstream-glib/as-review.h" line="82"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="review" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-review.c"
                 line="496">a #AsReview</doc>
            <type name="Review" c:type="AsReview*"/>
          </instance-parameter>
          <parameter name="rating" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-review.c"
                 line="497">a integer as a percentage, or 0 for unset</doc>
            <type name="gint" c:type="gint"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_reviewer_id"
              c:identifier="as_review_set_reviewer_id"
              glib:set-property="reviewer-id"
              version="0.6.1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-review.c"
             line="601">Sets the name of the reviewer, which can be left unset.</doc>
        <source-position filename="libappstream-glib/as-review.h" line="86"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="review" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-review.c"
                 line="603">a #AsReview</doc>
            <type name="Review" c:type="AsReview*"/>
          </instance-parameter>
          <parameter name="reviewer_id" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-review.c"
                 line="604">the reviewer ID, e.g. "deadbeef"</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_reviewer_name"
              c:identifier="as_review_set_reviewer_name"
              glib:set-property="reviewer-name"
              version="0.6.1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-review.c"
             line="618">Sets the name of the reviewer, which can be left unset.</doc>
        <source-position filename="libappstream-glib/as-review.h" line="88"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="review" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-review.c"
                 line="620">a #AsReview</doc>
            <type name="Review" c:type="AsReview*"/>
          </instance-parameter>
          <parameter name="reviewer_name" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-review.c"
                 line="621">the reviewer name, e.g. "David Smith"</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_summary"
              c:identifier="as_review_set_summary"
              glib:set-property="summary"
              version="0.6.1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-review.c"
             line="389">Sets the one-line summary that may be displayed in bold.</doc>
        <source-position filename="libappstream-glib/as-review.h" line="76"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="review" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-review.c"
                 line="391">a #AsReview</doc>
            <type name="Review" c:type="AsReview*"/>
          </instance-parameter>
          <parameter name="summary" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-review.c"
                 line="392">a one-line summary, e.g. "Awesome application"</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_version"
              c:identifier="as_review_set_version"
              glib:set-property="version"
              version="0.6.1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-review.c"
             line="635">Sets the version string for the application being reviewed.</doc>
        <source-position filename="libappstream-glib/as-review.h" line="84"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="review" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-review.c"
                 line="637">a #AsReview</doc>
            <type name="Review" c:type="AsReview*"/>
          </instance-parameter>
          <parameter name="version" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-review.c"
                 line="638">a version string, e.g. "0.1.2"</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <property name="date"
                version="0.6.1"
                writable="1"
                construct="1"
                transfer-ownership="none"
                setter="set_date"
                getter="get_date">
        <type name="Review"/>
      </property>
      <property name="description"
                version="0.6.1"
                writable="1"
                construct="1"
                transfer-ownership="none"
                setter="set_description"
                getter="get_description"
                default-value="NULL">
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="flags"
                version="0.6.1"
                writable="1"
                construct="1"
                transfer-ownership="none"
                setter="set_flags"
                getter="get_flags"
                default-value="0">
        <type name="guint64" c:type="guint64"/>
      </property>
      <property name="id"
                version="0.6.1"
                writable="1"
                construct="1"
                transfer-ownership="none"
                setter="set_id"
                getter="get_id"
                default-value="NULL">
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="locale"
                version="0.6.1"
                writable="1"
                construct="1"
                transfer-ownership="none"
                setter="set_locale"
                getter="get_locale"
                default-value="NULL">
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="rating"
                version="0.6.1"
                writable="1"
                construct="1"
                transfer-ownership="none"
                setter="set_rating"
                getter="get_rating"
                default-value="0">
        <type name="gint" c:type="gint"/>
      </property>
      <property name="reviewer-id"
                version="0.6.1"
                writable="1"
                construct="1"
                transfer-ownership="none"
                setter="set_reviewer_id"
                getter="get_reviewer_id"
                default-value="NULL">
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="reviewer-name"
                version="0.6.1"
                writable="1"
                construct="1"
                transfer-ownership="none"
                setter="set_reviewer_name"
                getter="get_reviewer_name"
                default-value="NULL">
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="summary"
                version="0.6.1"
                writable="1"
                construct="1"
                transfer-ownership="none"
                setter="set_summary"
                getter="get_summary"
                default-value="NULL">
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="version"
                version="0.6.1"
                writable="1"
                construct="1"
                transfer-ownership="none"
                setter="set_version"
                getter="get_version"
                default-value="NULL">
        <type name="utf8" c:type="gchar*"/>
      </property>
      <field name="parent_instance">
        <type name="GObject.Object" c:type="GObject"/>
      </field>
    </class>
    <record name="ReviewClass"
            c:type="AsReviewClass"
            glib:is-gtype-struct-for="Review">
      <source-position filename="libappstream-glib/as-review.h" line="34"/>
      <field name="parent_class">
        <type name="GObject.ObjectClass" c:type="GObjectClass"/>
      </field>
      <field name="_as_reserved1" introspectable="0">
        <callback name="_as_reserved1">
          <source-position filename="libappstream-glib/as-review.h" line="26"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved2" introspectable="0">
        <callback name="_as_reserved2">
          <source-position filename="libappstream-glib/as-review.h" line="27"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved3" introspectable="0">
        <callback name="_as_reserved3">
          <source-position filename="libappstream-glib/as-review.h" line="28"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved4" introspectable="0">
        <callback name="_as_reserved4">
          <source-position filename="libappstream-glib/as-review.h" line="29"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved5" introspectable="0">
        <callback name="_as_reserved5">
          <source-position filename="libappstream-glib/as-review.h" line="30"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved6" introspectable="0">
        <callback name="_as_reserved6">
          <source-position filename="libappstream-glib/as-review.h" line="31"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved7" introspectable="0">
        <callback name="_as_reserved7">
          <source-position filename="libappstream-glib/as-review.h" line="32"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved8" introspectable="0">
        <callback name="_as_reserved8">
          <source-position filename="libappstream-glib/as-review.h" line="33"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
    </record>
    <bitfield name="ReviewFlags" version="0.6.1" c:type="AsReviewFlags">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-review.h"
           line="36">The flags for the review.</doc>
      <source-position filename="libappstream-glib/as-review.h" line="52"/>
      <member name="none" value="0" c:identifier="AS_REVIEW_FLAG_NONE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-review.h"
             line="38">No special flags set</doc>
      </member>
      <member name="self" value="1" c:identifier="AS_REVIEW_FLAG_SELF">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-review.h"
             line="39">The user wrote the review themselves</doc>
      </member>
      <member name="voted" value="2" c:identifier="AS_REVIEW_FLAG_VOTED">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-review.h"
             line="40">The user voted on the review</doc>
      </member>
    </bitfield>
    <class name="Screenshot"
           c:symbol-prefix="screenshot"
           c:type="AsScreenshot"
           parent="GObject.Object"
           glib:type-name="AsScreenshot"
           glib:get-type="as_screenshot_get_type"
           glib:type-struct="ScreenshotClass">
      <source-position filename="libappstream-glib/as-screenshot.h" line="35"/>
      <constructor name="new" c:identifier="as_screenshot_new" version="0.1.0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-screenshot.c"
             line="634">Creates a new #AsScreenshot.</doc>
        <source-position filename="libappstream-glib/as-screenshot.h"
                         line="53"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-screenshot.c"
               line="639">a #AsScreenshot</doc>
          <type name="Screenshot" c:type="AsScreenshot*"/>
        </return-value>
      </constructor>
      <function name="kind_from_string"
                c:identifier="as_screenshot_kind_from_string"
                version="0.1.0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-screenshot.c"
             line="82">Converts the text representation to an enumerated value.</doc>
        <source-position filename="libappstream-glib/as-screenshot.h"
                         line="56"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-screenshot.c"
               line="88">a %AsScreenshotKind, or
                          %AS_SCREENSHOT_KIND_UNKNOWN if not known.</doc>
          <type name="ScreenshotKind" c:type="AsScreenshotKind"/>
        </return-value>
        <parameters>
          <parameter name="kind" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-screenshot.c"
                 line="84">the string.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </function>
      <function name="kind_to_string"
                c:identifier="as_screenshot_kind_to_string"
                version="0.1.0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-screenshot.c"
             line="103">Converts the enumerated value to an text representation.</doc>
        <source-position filename="libappstream-glib/as-screenshot.h"
                         line="57"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-screenshot.c"
               line="109">string version of @kind</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <parameter name="kind" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-screenshot.c"
                 line="105">the #AsScreenshotKind.</doc>
            <type name="ScreenshotKind" c:type="AsScreenshotKind"/>
          </parameter>
        </parameters>
      </function>
      <method name="add_image"
              c:identifier="as_screenshot_add_image"
              version="0.1.0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-screenshot.c"
             line="362">Adds an image to the screenshot.</doc>
        <source-position filename="libappstream-glib/as-screenshot.h"
                         line="84"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="screenshot" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-screenshot.c"
                 line="364">a #AsScreenshot instance.</doc>
            <type name="Screenshot" c:type="AsScreenshot*"/>
          </instance-parameter>
          <parameter name="image" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-screenshot.c"
                 line="365">a #AsImage instance.</doc>
            <type name="Image" c:type="AsImage*"/>
          </parameter>
        </parameters>
      </method>
      <method name="equal" c:identifier="as_screenshot_equal" version="0.5.7">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-screenshot.c"
             line="587">Checks if two screenshots are the same.</doc>
        <source-position filename="libappstream-glib/as-screenshot.h"
                         line="86"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-screenshot.c"
               line="594">%TRUE for success</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="screenshot1" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-screenshot.c"
                 line="589">a #AsScreenshot instance.</doc>
            <type name="Screenshot" c:type="AsScreenshot*"/>
          </instance-parameter>
          <parameter name="screenshot2" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-screenshot.c"
                 line="590">a #AsScreenshot instance.</doc>
            <type name="Screenshot" c:type="AsScreenshot*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_caption"
              c:identifier="as_screenshot_get_caption"
              version="0.1.0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-screenshot.c"
             line="307">Gets the image caption for a specific locale.</doc>
        <source-position filename="libappstream-glib/as-screenshot.h"
                         line="62"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-screenshot.c"
               line="314">the caption</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="screenshot" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-screenshot.c"
                 line="309">a #AsScreenshot instance.</doc>
            <type name="Screenshot" c:type="AsScreenshot*"/>
          </instance-parameter>
          <parameter name="locale"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-screenshot.c"
                 line="310">the locale, or %NULL. e.g. "en_GB"</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_image"
              c:identifier="as_screenshot_get_image"
              version="0.2.2">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-screenshot.c"
             line="257">Gets the AsImage closest to the target size. The #AsImage may not actually
be the requested size, and the application may have to pad / rescale the
image to make it fit.</doc>
        <source-position filename="libappstream-glib/as-screenshot.h"
                         line="67"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-screenshot.c"
               line="267">an #AsImage, or %NULL</doc>
          <type name="Image" c:type="AsImage*"/>
        </return-value>
        <parameters>
          <instance-parameter name="screenshot" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-screenshot.c"
                 line="259">a #AsScreenshot instance.</doc>
            <type name="Screenshot" c:type="AsScreenshot*"/>
          </instance-parameter>
          <parameter name="width" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-screenshot.c"
                 line="260">target width</doc>
            <type name="guint" c:type="guint"/>
          </parameter>
          <parameter name="height" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-screenshot.c"
                 line="261">target height</doc>
            <type name="guint" c:type="guint"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_image_for_locale"
              c:identifier="as_screenshot_get_image_for_locale"
              version="0.5.14">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-screenshot.c"
             line="211">Gets the AsImage closest to the target size with the specified locale.
The #AsImage may not actually be the requested size, and the application may
have to pad / rescale the image to make it fit.

FIXME: This function assumes the images are ordered in preference order, e.g.
"en_GB -&gt; en -&gt; NULL"</doc>
        <source-position filename="libappstream-glib/as-screenshot.h"
                         line="70"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-screenshot.c"
               line="225">an #AsImage, or %NULL</doc>
          <type name="Image" c:type="AsImage*"/>
        </return-value>
        <parameters>
          <instance-parameter name="screenshot" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-screenshot.c"
                 line="213">a #AsScreenshot instance.</doc>
            <type name="Screenshot" c:type="AsScreenshot*"/>
          </instance-parameter>
          <parameter name="locale"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-screenshot.c"
                 line="214">locale, e.g. "en_GB"</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="width" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-screenshot.c"
                 line="215">target width</doc>
            <type name="guint" c:type="guint"/>
          </parameter>
          <parameter name="height" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-screenshot.c"
                 line="216">target height</doc>
            <type name="guint" c:type="guint"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_images"
              c:identifier="as_screenshot_get_images"
              version="0.1.0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-screenshot.c"
             line="159">Gets the images included in the screenshot of all sizes and locales.</doc>
        <source-position filename="libappstream-glib/as-screenshot.h"
                         line="64"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-screenshot.c"
               line="165">an array</doc>
          <array name="GLib.PtrArray" c:type="GPtrArray*">
            <type name="Image"/>
          </array>
        </return-value>
        <parameters>
          <instance-parameter name="screenshot" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-screenshot.c"
                 line="161">a #AsScreenshot instance.</doc>
            <type name="Screenshot" c:type="AsScreenshot*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_images_for_locale"
              c:identifier="as_screenshot_get_images_for_locale"
              version="0.5.14">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-screenshot.c"
             line="177">Returns all images of all sizes that are compatible with a specific locale.</doc>
        <source-position filename="libappstream-glib/as-screenshot.h"
                         line="65"/>
        <return-value transfer-ownership="container">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-screenshot.c"
               line="184">an array</doc>
          <array name="GLib.PtrArray" c:type="GPtrArray*">
            <type name="Image"/>
          </array>
        </return-value>
        <parameters>
          <instance-parameter name="screenshot" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-screenshot.c"
                 line="179">a #AsScreenshot instance.</doc>
            <type name="Screenshot" c:type="AsScreenshot*"/>
          </instance-parameter>
          <parameter name="locale" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-screenshot.c"
                 line="180">a locale, e.g. `en_GB`</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_kind"
              c:identifier="as_screenshot_get_kind"
              version="0.1.0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-screenshot.c"
             line="123">Gets the screenshot kind.</doc>
        <source-position filename="libappstream-glib/as-screenshot.h"
                         line="60"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-screenshot.c"
               line="129">a #AsScreenshotKind</doc>
          <type name="ScreenshotKind" c:type="AsScreenshotKind"/>
        </return-value>
        <parameters>
          <instance-parameter name="screenshot" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-screenshot.c"
                 line="125">a #AsScreenshot instance.</doc>
            <type name="Screenshot" c:type="AsScreenshot*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_priority"
              c:identifier="as_screenshot_get_priority"
              version="0.3.1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-screenshot.c"
             line="141">Gets the screenshot priority.</doc>
        <source-position filename="libappstream-glib/as-screenshot.h"
                         line="61"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-screenshot.c"
               line="147">a priority value</doc>
          <type name="gint" c:type="gint"/>
        </return-value>
        <parameters>
          <instance-parameter name="screenshot" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-screenshot.c"
                 line="143">a #AsScreenshot instance.</doc>
            <type name="Screenshot" c:type="AsScreenshot*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_source"
              c:identifier="as_screenshot_get_source"
              version="0.1.6">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-screenshot.c"
             line="280">Gets the source image (the unscaled version) for the screenshot</doc>
        <source-position filename="libappstream-glib/as-screenshot.h"
                         line="74"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-screenshot.c"
               line="286">an #AsImage, or %NULL</doc>
          <type name="Image" c:type="AsImage*"/>
        </return-value>
        <parameters>
          <instance-parameter name="screenshot" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-screenshot.c"
                 line="282">a #AsScreenshot instance.</doc>
            <type name="Screenshot" c:type="AsScreenshot*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="set_caption"
              c:identifier="as_screenshot_set_caption"
              version="0.1.0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-screenshot.c"
             line="379">Sets a caption on the screenshot for a specific locale.</doc>
        <source-position filename="libappstream-glib/as-screenshot.h"
                         line="81"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="screenshot" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-screenshot.c"
                 line="381">a #AsScreenshot instance.</doc>
            <type name="Screenshot" c:type="AsScreenshot*"/>
          </instance-parameter>
          <parameter name="locale"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-screenshot.c"
                 line="382">the locale, or %NULL. e.g. "en_GB"</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="caption" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-screenshot.c"
                 line="383">the caption text.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_kind"
              c:identifier="as_screenshot_set_kind"
              version="0.1.0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-screenshot.c"
             line="345">Sets the screenshot kind.</doc>
        <source-position filename="libappstream-glib/as-screenshot.h"
                         line="77"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="screenshot" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-screenshot.c"
                 line="347">a #AsScreenshot instance.</doc>
            <type name="Screenshot" c:type="AsScreenshot*"/>
          </instance-parameter>
          <parameter name="kind" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-screenshot.c"
                 line="348">the #AsScreenshotKind.</doc>
            <type name="ScreenshotKind" c:type="AsScreenshotKind"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_priority"
              c:identifier="as_screenshot_set_priority"
              version="0.3.1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-screenshot.c"
             line="328">Sets the screenshot priority. Higher numbers are better.</doc>
        <source-position filename="libappstream-glib/as-screenshot.h"
                         line="79"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="screenshot" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-screenshot.c"
                 line="330">a #AsScreenshot instance.</doc>
            <type name="Screenshot" c:type="AsScreenshot*"/>
          </instance-parameter>
          <parameter name="priority" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-screenshot.c"
                 line="331">the priority value.</doc>
            <type name="gint" c:type="gint"/>
          </parameter>
        </parameters>
      </method>
      <field name="parent_instance">
        <type name="GObject.Object" c:type="GObject"/>
      </field>
    </class>
    <record name="ScreenshotClass"
            c:type="AsScreenshotClass"
            glib:is-gtype-struct-for="Screenshot">
      <source-position filename="libappstream-glib/as-screenshot.h" line="35"/>
      <field name="parent_class">
        <type name="GObject.ObjectClass" c:type="GObjectClass"/>
      </field>
      <field name="_as_reserved1" introspectable="0">
        <callback name="_as_reserved1">
          <source-position filename="libappstream-glib/as-screenshot.h"
                           line="27"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved2" introspectable="0">
        <callback name="_as_reserved2">
          <source-position filename="libappstream-glib/as-screenshot.h"
                           line="28"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved3" introspectable="0">
        <callback name="_as_reserved3">
          <source-position filename="libappstream-glib/as-screenshot.h"
                           line="29"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved4" introspectable="0">
        <callback name="_as_reserved4">
          <source-position filename="libappstream-glib/as-screenshot.h"
                           line="30"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved5" introspectable="0">
        <callback name="_as_reserved5">
          <source-position filename="libappstream-glib/as-screenshot.h"
                           line="31"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved6" introspectable="0">
        <callback name="_as_reserved6">
          <source-position filename="libappstream-glib/as-screenshot.h"
                           line="32"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved7" introspectable="0">
        <callback name="_as_reserved7">
          <source-position filename="libappstream-glib/as-screenshot.h"
                           line="33"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved8" introspectable="0">
        <callback name="_as_reserved8">
          <source-position filename="libappstream-glib/as-screenshot.h"
                           line="34"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
    </record>
    <enumeration name="ScreenshotKind" c:type="AsScreenshotKind">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-screenshot.h"
           line="37">The screenshot type.</doc>
      <source-position filename="libappstream-glib/as-screenshot.h" line="51"/>
      <member name="unknown"
              value="0"
              c:identifier="AS_SCREENSHOT_KIND_UNKNOWN">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-screenshot.h"
             line="39">Type invalid or not known</doc>
      </member>
      <member name="normal" value="1" c:identifier="AS_SCREENSHOT_KIND_NORMAL">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-screenshot.h"
             line="40">Optional screenshot</doc>
      </member>
      <member name="default"
              value="2"
              c:identifier="AS_SCREENSHOT_KIND_DEFAULT">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-screenshot.h"
             line="41">Screenshot to show by default</doc>
      </member>
    </enumeration>
    <enumeration name="SizeKind" c:type="AsSizeKind">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-enums.h"
           line="132">The release size kind.</doc>
      <source-position filename="libappstream-glib/as-enums.h" line="146"/>
      <member name="unknown" value="0" c:identifier="AS_SIZE_KIND_UNKNOWN">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-enums.h"
             line="134">Not known</doc>
      </member>
      <member name="installed" value="1" c:identifier="AS_SIZE_KIND_INSTALLED">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-enums.h"
             line="135">Installed size</doc>
      </member>
      <member name="download" value="2" c:identifier="AS_SIZE_KIND_DOWNLOAD">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-enums.h"
             line="136">Download size</doc>
      </member>
    </enumeration>
    <class name="Store"
           c:symbol-prefix="store"
           c:type="AsStore"
           parent="GObject.Object"
           glib:type-name="AsStore"
           glib:get-type="as_store_get_type"
           glib:type-struct="StoreClass">
      <source-position filename="libappstream-glib/as-store.h" line="40"/>
      <constructor name="new" c:identifier="as_store_new" version="0.1.0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-store.c"
             line="4054">Creates a new #AsStore.</doc>
        <source-position filename="libappstream-glib/as-store.h" line="144"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-store.c"
               line="4059">a #AsStore</doc>
          <type name="Store" c:type="AsStore*"/>
        </return-value>
      </constructor>
      <function name="error_quark"
                c:identifier="as_store_error_quark"
                version="0.1.2">
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-store.c"
               line="95">An error quark.</doc>
          <type name="GLib.Quark" c:type="GQuark"/>
        </return-value>
      </function>
      <virtual-method name="app_added">
        <source-position filename="libappstream-glib/as-store.h" line="29"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="store" transfer-ownership="none">
            <type name="Store" c:type="AsStore*"/>
          </instance-parameter>
          <parameter name="app" transfer-ownership="none">
            <type name="App" c:type="AsApp*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="app_changed">
        <source-position filename="libappstream-glib/as-store.h" line="33"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="store" transfer-ownership="none">
            <type name="Store" c:type="AsStore*"/>
          </instance-parameter>
          <parameter name="app" transfer-ownership="none">
            <type name="App" c:type="AsApp*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="app_removed">
        <source-position filename="libappstream-glib/as-store.h" line="31"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="store" transfer-ownership="none">
            <type name="Store" c:type="AsStore*"/>
          </instance-parameter>
          <parameter name="app" transfer-ownership="none">
            <type name="App" c:type="AsApp*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="changed">
        <source-position filename="libappstream-glib/as-store.h" line="28"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="store" transfer-ownership="none">
            <type name="Store" c:type="AsStore*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <method name="add_app" c:identifier="as_store_add_app" version="0.1.0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-store.c"
             line="1250">Adds an application to the store. If a lower priority application has already
been added then this new application will replace it.

Additionally only applications where the kind is known will be added.</doc>
        <source-position filename="libappstream-glib/as-store.h" line="230"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="store" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="1252">a #AsStore instance.</doc>
            <type name="Store" c:type="AsStore*"/>
          </instance-parameter>
          <parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="1253">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </parameter>
        </parameters>
      </method>
      <method name="add_apps" c:identifier="as_store_add_apps" version="0.6.4">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-store.c"
             line="1219">Adds several applications to the store.

Additionally only applications where the kind is known will be added.</doc>
        <source-position filename="libappstream-glib/as-store.h" line="232"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="store" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="1221">a #AsStore instance.</doc>
            <type name="Store" c:type="AsStore*"/>
          </instance-parameter>
          <parameter name="apps" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="1222">an array of apps</doc>
            <array name="GLib.PtrArray" c:type="GPtrArray*">
              <type name="App"/>
            </array>
          </parameter>
        </parameters>
      </method>
      <method name="add_filter"
              c:identifier="as_store_add_filter"
              version="0.3.5">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-store.c"
             line="273">Adds a filter to the store so that only components of this type are
loaded into the store. This may be useful if the client is only interested
in certain types of component, or not interested in loading components
it cannot process.

If no filter is set then all types of components are loaded.</doc>
        <source-position filename="libappstream-glib/as-store.h" line="275"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="store" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="275">a #AsStore instance.</doc>
            <type name="Store" c:type="AsStore*"/>
          </instance-parameter>
          <parameter name="kind" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="276">a #AsAppKind, e.g. %AS_APP_KIND_FIRMWARE</doc>
            <type name="AppKind" c:type="AsAppKind"/>
          </parameter>
        </parameters>
      </method>
      <method name="add_metadata_index"
              c:identifier="as_store_add_metadata_index"
              version="0.3.0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-store.c"
             line="578">Adds a metadata index key.

NOTE: if applications are removed *all* the indexes will be invalid and
will have to be re-added.</doc>
        <source-position filename="libappstream-glib/as-store.h" line="273"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="store" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="580">a #AsStore instance.</doc>
            <type name="Store" c:type="AsStore*"/>
          </instance-parameter>
          <parameter name="key" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="581">the metadata key.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="convert_icons"
              c:identifier="as_store_convert_icons"
              version="0.3.1"
              throws="1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-store.c"
             line="2542">Converts all the icons in the store to a specific kind.</doc>
        <source-position filename="libappstream-glib/as-store.h" line="246"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-store.c"
               line="2550">%TRUE for success</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="store" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="2544">a #AsStore instance.</doc>
            <type name="Store" c:type="AsStore*"/>
          </instance-parameter>
          <parameter name="kind" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="2545">the AsIconKind, e.g. %AS_ICON_KIND_EMBEDDED.</doc>
            <type name="IconKind" c:type="AsIconKind"/>
          </parameter>
        </parameters>
      </method>
      <method name="dup_apps"
              c:identifier="as_store_dup_apps"
              version="0.7.15">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-store.c"
             line="361">Gets an array of all the valid applications in the store.</doc>
        <source-position filename="libappstream-glib/as-store.h" line="197"/>
        <return-value transfer-ownership="container">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-store.c"
               line="367">an array</doc>
          <array name="GLib.PtrArray" c:type="GPtrArray*">
            <type name="App"/>
          </array>
        </return-value>
        <parameters>
          <instance-parameter name="store" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="363">a #AsStore instance.</doc>
            <type name="Store" c:type="AsStore*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="dup_apps_by_id_merge"
              c:identifier="as_store_dup_apps_by_id_merge"
              version="0.7.15">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-store.c"
             line="550">Gets an array of all the merge applications that match a specific ID.</doc>
        <source-position filename="libappstream-glib/as-store.h" line="202"/>
        <return-value transfer-ownership="container">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-store.c"
               line="557">an array</doc>
          <array name="GLib.PtrArray" c:type="GPtrArray*">
            <type name="App"/>
          </array>
        </return-value>
        <parameters>
          <instance-parameter name="store" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="552">a #AsStore instance.</doc>
            <type name="Store" c:type="AsStore*"/>
          </instance-parameter>
          <parameter name="id" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="553">the application full ID.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="from_bytes"
              c:identifier="as_store_from_bytes"
              version="0.5.2"
              throws="1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-store.c"
             line="2283">Parses an appstream store presented as an archive. This is typically
a .cab file containing firmware files.</doc>
        <source-position filename="libappstream-glib/as-store.h" line="156"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-store.c"
               line="2293">%TRUE for success</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="store" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="2285">a #AsStore instance.</doc>
            <type name="Store" c:type="AsStore*"/>
          </instance-parameter>
          <parameter name="bytes" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="2286">a #GBytes.</doc>
            <type name="GLib.Bytes" c:type="GBytes*"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="2287">a #GCancellable.</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
        </parameters>
      </method>
      <method name="from_file"
              c:identifier="as_store_from_file"
              version="0.1.0"
              throws="1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-store.c"
             line="2242">Parses an AppStream XML or DEP-11 YAML file and adds any valid applications
to the store.

If the root node does not have a 'origin' attribute, then the method
as_store_set_origin() should be called *before* this function if cached
icons are required.

If @file does not exist, %G_IO_ERROR_NOT_FOUND will be returned. Other
#GIOErrors and #AsStoreErrors may be returned as appropriate.</doc>
        <source-position filename="libappstream-glib/as-store.h" line="151"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-store.c"
               line="2260">%TRUE for success</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="store" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="2244">a #AsStore instance.</doc>
            <type name="Store" c:type="AsStore*"/>
          </instance-parameter>
          <parameter name="file" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="2245">a #GFile.</doc>
            <type name="Gio.File" c:type="GFile*"/>
          </parameter>
          <parameter name="icon_root"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="2246">the icon path, or %NULL for the default (unused)</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="2247">a #GCancellable.</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
        </parameters>
      </method>
      <method name="from_xml"
              c:identifier="as_store_from_xml"
              version="0.1.1"
              throws="1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-store.c"
             line="2335">Parses AppStream XML file and adds any valid applications to the store.

If the root node does not have a 'origin' attribute, then the method
as_store_set_origin() should be called *before* this function if cached
icons are required.</doc>
        <source-position filename="libappstream-glib/as-store.h" line="160"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-store.c"
               line="2348">%TRUE for success</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="store" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="2337">a #AsStore instance.</doc>
            <type name="Store" c:type="AsStore*"/>
          </instance-parameter>
          <parameter name="data" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="2338">XML data</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="icon_root"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="2339">the icon path, or %NULL for the default.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_add_flags"
              c:identifier="as_store_get_add_flags"
              version="0.2.2">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-store.c"
             line="2859">Gets the flags used for adding applications to the store.</doc>
        <source-position filename="libappstream-glib/as-store.h" line="264"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-store.c"
               line="2865">the #AsStoreAddFlags, or 0 if unset</doc>
          <type name="guint32" c:type="guint32"/>
        </return-value>
        <parameters>
          <instance-parameter name="store" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="2861">a #AsStore instance.</doc>
            <type name="Store" c:type="AsStore*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_api_version"
              c:identifier="as_store_get_api_version"
              version="0.1.1"
              deprecated="1"
              deprecated-version="0.7.19">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-store.c"
             line="2777">Gets the AppStream API version.</doc>
        <doc-deprecated xml:space="preserve">Use as_store_get_version() instead.</doc-deprecated>
        <source-position filename="libappstream-glib/as-store.h" line="258"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-store.c"
               line="2783">the API version</doc>
          <type name="gdouble" c:type="gdouble"/>
        </return-value>
        <parameters>
          <instance-parameter name="store" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="2779">a #AsStore instance.</doc>
            <type name="Store" c:type="AsStore*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_app_by_id"
              c:identifier="as_store_get_app_by_id"
              version="0.1.0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-store.c"
             line="602">Finds an application in the store by ID.
If more than one application exists matching the specific ID,
(for instance when using %AS_STORE_ADD_FLAG_USE_UNIQUE_ID) then the
first item that was added is returned.</doc>
        <source-position filename="libappstream-glib/as-store.h" line="207"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-store.c"
               line="612">a #AsApp or %NULL</doc>
          <type name="App" c:type="AsApp*"/>
        </return-value>
        <parameters>
          <instance-parameter name="store" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="604">a #AsStore instance.</doc>
            <type name="Store" c:type="AsStore*"/>
          </instance-parameter>
          <parameter name="id" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="605">the application full ID.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_app_by_id_ignore_prefix"
              c:identifier="as_store_get_app_by_id_ignore_prefix"
              version="0.5.12">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-store.c"
             line="846">Finds an application in the store ignoring the prefix type.</doc>
        <source-position filename="libappstream-glib/as-store.h" line="212"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-store.c"
               line="853">a #AsApp or %NULL</doc>
          <type name="App" c:type="AsApp*"/>
        </return-value>
        <parameters>
          <instance-parameter name="store" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="848">a #AsStore instance.</doc>
            <type name="Store" c:type="AsStore*"/>
          </instance-parameter>
          <parameter name="id" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="849">the application full ID.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_app_by_id_with_fallbacks"
              c:identifier="as_store_get_app_by_id_with_fallbacks"
              version="0.4.1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-store.c"
             line="879">Finds an application in the store by either by the current desktop ID
or a desktop ID that it has used previously. This allows upstream software
to change their ID (e.g. from cheese.desktop to org.gnome.Cheese.desktop)
without us duplicating entries in the software center.</doc>
        <source-position filename="libappstream-glib/as-store.h" line="215"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-store.c"
               line="889">a #AsApp or %NULL</doc>
          <type name="App" c:type="AsApp*"/>
        </return-value>
        <parameters>
          <instance-parameter name="store" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="881">a #AsStore instance.</doc>
            <type name="Store" c:type="AsStore*"/>
          </instance-parameter>
          <parameter name="id" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="882">the application full ID.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_app_by_launchable"
              c:identifier="as_store_get_app_by_launchable"
              version="0.7.8">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-store.c"
             line="765">Finds an application in the store that provides a specific launchable.</doc>
        <source-position filename="libappstream-glib/as-store.h" line="224"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-store.c"
               line="773">a #AsApp or %NULL</doc>
          <type name="App" c:type="AsApp*"/>
        </return-value>
        <parameters>
          <instance-parameter name="store" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="767">a #AsStore instance.</doc>
            <type name="Store" c:type="AsStore*"/>
          </instance-parameter>
          <parameter name="kind" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="768">the #AsLaunchableKind</doc>
            <type name="LaunchableKind" c:type="AsLaunchableKind"/>
          </parameter>
          <parameter name="value" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="769">the provide value, e.g. "gimp.desktop"</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_app_by_pkgname"
              c:identifier="as_store_get_app_by_pkgname"
              version="0.1.0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-store.c"
             line="1046">Finds an application in the store by package name.</doc>
        <source-position filename="libappstream-glib/as-store.h" line="217"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-store.c"
               line="1053">a #AsApp or %NULL</doc>
          <type name="App" c:type="AsApp*"/>
        </return-value>
        <parameters>
          <instance-parameter name="store" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="1048">a #AsStore instance.</doc>
            <type name="Store" c:type="AsStore*"/>
          </instance-parameter>
          <parameter name="pkgname" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="1049">the package name.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_app_by_pkgnames"
              c:identifier="as_store_get_app_by_pkgnames"
              version="0.4.1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-store.c"
             line="1086">Finds an application in the store by any of the possible package names.</doc>
        <source-position filename="libappstream-glib/as-store.h" line="219"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-store.c"
               line="1093">a #AsApp or %NULL</doc>
          <type name="App" c:type="AsApp*"/>
        </return-value>
        <parameters>
          <instance-parameter name="store" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="1088">a #AsStore instance.</doc>
            <type name="Store" c:type="AsStore*"/>
          </instance-parameter>
          <parameter name="pkgnames" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="1089">the package names to find.</doc>
            <type name="utf8" c:type="gchar**"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_app_by_provide"
              c:identifier="as_store_get_app_by_provide"
              version="0.5.0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-store.c"
             line="719">Finds an application in the store by something that it provides.</doc>
        <source-position filename="libappstream-glib/as-store.h" line="221"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-store.c"
               line="727">a #AsApp or %NULL</doc>
          <type name="App" c:type="AsApp*"/>
        </return-value>
        <parameters>
          <instance-parameter name="store" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="721">a #AsStore instance.</doc>
            <type name="Store" c:type="AsStore*"/>
          </instance-parameter>
          <parameter name="kind" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="722">the #AsProvideKind</doc>
            <type name="ProvideKind" c:type="AsProvideKind"/>
          </parameter>
          <parameter name="value" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="723">the provide value, e.g. "com.hughski.ColorHug2.firmware"</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_app_by_unique_id"
              c:identifier="as_store_get_app_by_unique_id"
              version="0.6.1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-store.c"
             line="682">Finds an application in the store by matching the unique ID.</doc>
        <source-position filename="libappstream-glib/as-store.h" line="209"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-store.c"
               line="691">a #AsApp or %NULL</doc>
          <type name="App" c:type="AsApp*"/>
        </return-value>
        <parameters>
          <instance-parameter name="store" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="684">a #AsStore instance.</doc>
            <type name="Store" c:type="AsStore*"/>
          </instance-parameter>
          <parameter name="unique_id" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="685">the application unique ID, e.g.
     `user/flatpak/gnome-apps-nightly/app/gimp.desktop/master`</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="search_flags" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="687">the search flags, e.g. %AS_STORE_SEARCH_FLAG_USE_WILDCARDS</doc>
            <type name="guint32" c:type="guint32"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_apps" c:identifier="as_store_get_apps" version="0.1.0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-store.c"
             line="339">Gets an array of all the valid applications in the store.</doc>
        <source-position filename="libappstream-glib/as-store.h" line="196"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-store.c"
               line="345">an array</doc>
          <array name="GLib.PtrArray" c:type="GPtrArray*">
            <type name="App"/>
          </array>
        </return-value>
        <parameters>
          <instance-parameter name="store" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="341">a #AsStore instance.</doc>
            <type name="Store" c:type="AsStore*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_apps_by_id"
              c:identifier="as_store_get_apps_by_id"
              version="0.5.12">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-store.c"
             line="498">Gets an array of all the applications that match a specific ID,
ignoring the prefix type.</doc>
        <source-position filename="libappstream-glib/as-store.h" line="198"/>
        <return-value transfer-ownership="container">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-store.c"
               line="506">an array</doc>
          <array name="GLib.PtrArray" c:type="GPtrArray*">
            <type name="App"/>
          </array>
        </return-value>
        <parameters>
          <instance-parameter name="store" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="500">a #AsStore instance.</doc>
            <type name="Store" c:type="AsStore*"/>
          </instance-parameter>
          <parameter name="id" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="501">the application full ID.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_apps_by_id_merge"
              c:identifier="as_store_get_apps_by_id_merge"
              version="0.7.0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-store.c"
             line="527">Gets an array of all the merge applications that match a specific ID.</doc>
        <source-position filename="libappstream-glib/as-store.h" line="200"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-store.c"
               line="534">an array</doc>
          <array name="GLib.PtrArray" c:type="GPtrArray*">
            <type name="App"/>
          </array>
        </return-value>
        <parameters>
          <instance-parameter name="store" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="529">a #AsStore instance.</doc>
            <type name="Store" c:type="AsStore*"/>
          </instance-parameter>
          <parameter name="id" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="530">the application full ID.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_apps_by_metadata"
              c:identifier="as_store_get_apps_by_metadata"
              version="0.1.4">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-store.c"
             line="445">Gets an array of all the applications that match a specific metadata element.</doc>
        <source-position filename="libappstream-glib/as-store.h" line="204"/>
        <return-value transfer-ownership="container">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-store.c"
               line="453">an array</doc>
          <array name="GLib.PtrArray" c:type="GPtrArray*">
            <type name="App"/>
          </array>
        </return-value>
        <parameters>
          <instance-parameter name="store" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="447">a #AsStore instance.</doc>
            <type name="Store" c:type="AsStore*"/>
          </instance-parameter>
          <parameter name="key" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="448">metadata key</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="value" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="449">metadata value</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_apps_by_provide"
              c:identifier="as_store_get_apps_by_provide"
              version="0.7.5">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-store.c"
             line="805">Finds any applications in the store by something that they provides.</doc>
        <source-position filename="libappstream-glib/as-store.h" line="227"/>
        <return-value transfer-ownership="container">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-store.c"
               line="813">an array of applications</doc>
          <array name="GLib.PtrArray" c:type="GPtrArray*">
            <type name="App"/>
          </array>
        </return-value>
        <parameters>
          <instance-parameter name="store" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="807">a #AsStore instance.</doc>
            <type name="Store" c:type="AsStore*"/>
          </instance-parameter>
          <parameter name="kind" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="808">the #AsProvideKind</doc>
            <type name="ProvideKind" c:type="AsProvideKind"/>
          </parameter>
          <parameter name="value" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="809">the provide value, e.g. "com.hughski.ColorHug2.firmware"</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_builder_id"
              c:identifier="as_store_get_builder_id"
              version="0.2.5">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-store.c"
             line="2703">Gets the metadata builder identifier, which is used to work out if old
metadata is compatible with this builder.</doc>
        <source-position filename="libappstream-glib/as-store.h" line="252"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-store.c"
               line="2710">the builder_id string, or %NULL if unset</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="store" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="2705">a #AsStore instance.</doc>
            <type name="Store" c:type="AsStore*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_destdir"
              c:identifier="as_store_get_destdir"
              version="0.2.4">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-store.c"
             line="2759">Gets the destdir, which is used to prefix usr.</doc>
        <source-position filename="libappstream-glib/as-store.h" line="255"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-store.c"
               line="2765">the destdir path, or %NULL if unset</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="store" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="2761">a #AsStore instance.</doc>
            <type name="Store" c:type="AsStore*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_origin"
              c:identifier="as_store_get_origin"
              version="0.1.1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-store.c"
             line="2667">Gets the metadata origin, which is used to locate icons.</doc>
        <source-position filename="libappstream-glib/as-store.h" line="249"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-store.c"
               line="2673">the origin string, or %NULL if unset</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="store" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="2669">a #AsStore instance.</doc>
            <type name="Store" c:type="AsStore*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_search_match"
              c:identifier="as_store_get_search_match"
              version="0.6.13">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-store.c"
             line="3981">Gets the token match fields. The bitfield given here is used to choose what
is included in the token cache.</doc>
        <source-position filename="libappstream-glib/as-store.h" line="194"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-store.c"
               line="3988">a #AsAppSearchMatch, e.g. %AS_APP_SEARCH_MATCH_PKGNAME</doc>
          <type name="guint16" c:type="guint16"/>
        </return-value>
        <parameters>
          <instance-parameter name="store" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="3983">a #AsStore instance.</doc>
            <type name="Store" c:type="AsStore*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_size" c:identifier="as_store_get_size" version="0.1.0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-store.c"
             line="316">Gets the size of the store after deduplication and prioritization has
taken place.</doc>
        <source-position filename="libappstream-glib/as-store.h" line="148"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-store.c"
               line="323">the number of usable applications in the store</doc>
          <type name="guint" c:type="guint"/>
        </return-value>
        <parameters>
          <instance-parameter name="store" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="318">a #AsStore instance.</doc>
            <type name="Store" c:type="AsStore*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_version"
              c:identifier="as_store_get_version"
              version="0.7.19">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-store.c"
             line="2817">Gets the AppStream API version.</doc>
        <source-position filename="libappstream-glib/as-store.h" line="261"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-store.c"
               line="2823">the API version</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="store" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="2819">a #AsStore instance.</doc>
            <type name="Store" c:type="AsStore*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_watch_flags"
              c:identifier="as_store_get_watch_flags"
              version="0.4.2">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-store.c"
             line="2897">Gets the flags used for adding files to the store.</doc>
        <source-position filename="libappstream-glib/as-store.h" line="267"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-store.c"
               line="2903">the #AsStoreWatchFlags, or 0 if unset</doc>
          <type name="guint32" c:type="guint32"/>
        </return-value>
        <parameters>
          <instance-parameter name="store" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="2899">a #AsStore instance.</doc>
            <type name="Store" c:type="AsStore*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="load"
              c:identifier="as_store_load"
              version="0.1.2"
              throws="1"
              glib:async-func="load_async">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-store.c"
             line="3534">Loads the store from the default locations.</doc>
        <source-position filename="libappstream-glib/as-store.h" line="165"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-store.c"
               line="3543">%TRUE for success</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="store" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="3536">a #AsStore instance.</doc>
            <type name="Store" c:type="AsStore*"/>
          </instance-parameter>
          <parameter name="flags" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="3537">#AsStoreLoadFlags, e.g. %AS_STORE_LOAD_FLAG_APP_INFO_SYSTEM</doc>
            <type name="guint32" c:type="guint32"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="3538">a #GCancellable.</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
        </parameters>
      </method>
      <method name="load_async"
              c:identifier="as_store_load_async"
              version="0.7.11"
              glib:finish-func="load_finish"
              glib:sync-func="load">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-store.c"
             line="3601">Asynchronously loads the store from the default locations.</doc>
        <source-position filename="libappstream-glib/as-store.h" line="169"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="store" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="3603">a #AsStore instance.</doc>
            <type name="Store" c:type="AsStore*"/>
          </instance-parameter>
          <parameter name="flags" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="3604">#AsStoreLoadFlags, e.g. %AS_STORE_LOAD_FLAG_APP_INFO_SYSTEM</doc>
            <type name="StoreLoadFlags" c:type="AsStoreLoadFlags"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="3605">a #GCancellable.</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
          <parameter name="callback"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1"
                     scope="async"
                     closure="3">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="3606">A #GAsyncReadyCallback</doc>
            <type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
          </parameter>
          <parameter name="user_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="3607">Data to pass to @callback</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
        </parameters>
      </method>
      <method name="load_finish"
              c:identifier="as_store_load_finish"
              version="0.7.11"
              throws="1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-store.c"
             line="3626">Retrieve the result of as_store_load_async().</doc>
        <source-position filename="libappstream-glib/as-store.h" line="174"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-store.c"
               line="3634">%TRUE for success</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="store" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="3628">a #AsStore instance.</doc>
            <type name="Store" c:type="AsStore*"/>
          </instance-parameter>
          <parameter name="result" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="3629">A #GAsyncResult</doc>
            <type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
          </parameter>
        </parameters>
      </method>
      <method name="load_path"
              c:identifier="as_store_load_path"
              version="0.2.2"
              throws="1"
              glib:async-func="load_path_async">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-store.c"
             line="3216">Loads the store from a specific path.</doc>
        <source-position filename="libappstream-glib/as-store.h" line="178"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-store.c"
               line="3225">%TRUE for success</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="store" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="3218">a #AsStore instance.</doc>
            <type name="Store" c:type="AsStore*"/>
          </instance-parameter>
          <parameter name="path" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="3219">A path to load</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="3220">a #GCancellable.</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
        </parameters>
      </method>
      <method name="load_path_async"
              c:identifier="as_store_load_path_async"
              version="0.7.11"
              glib:finish-func="load_path_finish"
              glib:sync-func="load_path">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-store.c"
             line="3257">Asynchronously loads the store from a specific path.</doc>
        <source-position filename="libappstream-glib/as-store.h" line="182"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="store" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="3259">a #AsStore instance.</doc>
            <type name="Store" c:type="AsStore*"/>
          </instance-parameter>
          <parameter name="path" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="3260">A path to load</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="3261">a #GCancellable.</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
          <parameter name="callback"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1"
                     scope="async"
                     closure="3">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="3262">A #GAsyncReadyCallback</doc>
            <type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
          </parameter>
          <parameter name="user_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="3263">Data to pass to @callback</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
        </parameters>
      </method>
      <method name="load_path_finish"
              c:identifier="as_store_load_path_finish"
              version="0.7.11"
              throws="1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-store.c"
             line="3281">Retrieve the result of as_store_load_path_async().</doc>
        <source-position filename="libappstream-glib/as-store.h" line="187"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-store.c"
               line="3289">%TRUE for success</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="store" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="3283">a #AsStore instance.</doc>
            <type name="Store" c:type="AsStore*"/>
          </instance-parameter>
          <parameter name="result" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="3284">A #GAsyncResult</doc>
            <type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
          </parameter>
        </parameters>
      </method>
      <method name="load_search_cache"
              c:identifier="as_store_load_search_cache"
              version="0.6.5">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-store.c"
             line="3493">Populates the token cache for all applications in the store. This allows
all the search keywords for all applications in the store to be
pre-processed at one time in multiple threads rather than on demand.

Note: Calling as_app_search_matches() automatically generates the search
cache for the #AsApp object if it has not already been generated.</doc>
        <source-position filename="libappstream-glib/as-store.h" line="191"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="store" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="3495">a #AsStore instance.</doc>
            <type name="Store" c:type="AsStore*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="remove_all"
              c:identifier="as_store_remove_all"
              version="0.2.5">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-store.c"
             line="384">Removes all applications from the store.</doc>
        <source-position filename="libappstream-glib/as-store.h" line="195"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="store" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="386">a #AsStore instance.</doc>
            <type name="Store" c:type="AsStore*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="remove_app"
              c:identifier="as_store_remove_app"
              version="0.1.0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-store.c"
             line="1116">Removes an application from the store if it exists.</doc>
        <source-position filename="libappstream-glib/as-store.h" line="234"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="store" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="1118">a #AsStore instance.</doc>
            <type name="Store" c:type="AsStore*"/>
          </instance-parameter>
          <parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="1119">a #AsApp instance.</doc>
            <type name="App" c:type="AsApp*"/>
          </parameter>
        </parameters>
      </method>
      <method name="remove_app_by_id"
              c:identifier="as_store_remove_app_by_id"
              version="0.3.0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-store.c"
             line="1157">Removes an application from the store if it exists.</doc>
        <source-position filename="libappstream-glib/as-store.h" line="236"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="store" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="1159">a #AsStore instance.</doc>
            <type name="Store" c:type="AsStore*"/>
          </instance-parameter>
          <parameter name="id" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="1160">an application id</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="remove_apps_with_veto"
              c:identifier="as_store_remove_apps_with_veto"
              version="0.5.13">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-store.c"
             line="2433">Removes any applications from the store if they have any vetos.</doc>
        <source-position filename="libappstream-glib/as-store.h" line="238"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="store" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="2435">a #AsStore instance.</doc>
            <type name="Store" c:type="AsStore*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="remove_filter"
              c:identifier="as_store_remove_filter"
              version="0.3.5">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-store.c"
             line="295">Removed a filter from the store so that components of this type are no longer
loaded into the store. This may be useful if the client is only interested
in certain types of component.

If all filters are removed then all types of components are loaded.</doc>
        <source-position filename="libappstream-glib/as-store.h" line="277"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="store" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="297">a #AsStore instance.</doc>
            <type name="Store" c:type="AsStore*"/>
          </instance-parameter>
          <parameter name="kind" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="298">a #AsAppKind, e.g. %AS_APP_KIND_FIRMWARE</doc>
            <type name="AppKind" c:type="AsAppKind"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_add_flags"
              c:identifier="as_store_set_add_flags"
              version="0.2.2">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-store.c"
             line="2877">Sets the flags used when adding applications to the store.

NOTE: Using %AS_STORE_ADD_FLAG_PREFER_LOCAL may be a privacy risk depending on
your level of paranoia, and should not be used by default.</doc>
        <source-position filename="libappstream-glib/as-store.h" line="265"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="store" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="2879">a #AsStore instance.</doc>
            <type name="Store" c:type="AsStore*"/>
          </instance-parameter>
          <parameter name="add_flags" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="2880">the #AsStoreAddFlags, e.g. %AS_STORE_ADD_FLAG_NONE</doc>
            <type name="guint32" c:type="guint32"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_api_version"
              c:identifier="as_store_set_api_version"
              version="0.1.1"
              deprecated="1"
              deprecated-version="0.7.19">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-store.c"
             line="2796">Sets the AppStream API version.</doc>
        <doc-deprecated xml:space="preserve">Use as_store_set_version() instead.</doc-deprecated>
        <source-position filename="libappstream-glib/as-store.h" line="259"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="store" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="2798">a #AsStore instance.</doc>
            <type name="Store" c:type="AsStore*"/>
          </instance-parameter>
          <parameter name="api_version" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="2799">the API version</doc>
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_builder_id"
              c:identifier="as_store_set_builder_id"
              version="0.2.5">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-store.c"
             line="2722">Sets the metadata builder identifier, which is used to work out if old
metadata can be used.</doc>
        <source-position filename="libappstream-glib/as-store.h" line="253"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="store" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="2724">a #AsStore instance.</doc>
            <type name="Store" c:type="AsStore*"/>
          </instance-parameter>
          <parameter name="builder_id" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="2725">the builder_id, e.g. "appstream-glib:1"</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_destdir"
              c:identifier="as_store_set_destdir"
              version="0.2.4">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-store.c"
             line="2741">Sets the destdir, which is used to prefix usr.</doc>
        <source-position filename="libappstream-glib/as-store.h" line="256"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="store" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="2743">a #AsStore instance.</doc>
            <type name="Store" c:type="AsStore*"/>
          </instance-parameter>
          <parameter name="destdir" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="2744">the destdir, e.g. "/tmp"</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_origin"
              c:identifier="as_store_set_origin"
              version="0.1.1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-store.c"
             line="2685">Sets the metadata origin, which is used to locate icons.</doc>
        <source-position filename="libappstream-glib/as-store.h" line="250"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="store" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="2687">a #AsStore instance.</doc>
            <type name="Store" c:type="AsStore*"/>
          </instance-parameter>
          <parameter name="origin" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="2688">the origin, e.g. "fedora-21"</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_search_match"
              c:identifier="as_store_set_search_match"
              version="0.6.5">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-store.c"
             line="3963">Sets the token match fields. The bitfield given here is used to choose what
is included in the token cache.</doc>
        <source-position filename="libappstream-glib/as-store.h" line="192"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="store" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="3965">a #AsStore instance.</doc>
            <type name="Store" c:type="AsStore*"/>
          </instance-parameter>
          <parameter name="search_match" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="3966">the #AsAppSearchMatch, e.g. %AS_APP_SEARCH_MATCH_PKGNAME</doc>
            <type name="guint16" c:type="guint16"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_version"
              c:identifier="as_store_set_version"
              version="0.7.19">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-store.c"
             line="2837">Sets the AppStream API version.</doc>
        <source-position filename="libappstream-glib/as-store.h" line="262"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="store" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="2839">a #AsStore instance.</doc>
            <type name="Store" c:type="AsStore*"/>
          </instance-parameter>
          <parameter name="api_version" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="2840">the API version</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_watch_flags"
              c:identifier="as_store_set_watch_flags"
              version="0.4.2">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-store.c"
             line="2915">Sets the flags used when adding files to the store.</doc>
        <source-position filename="libappstream-glib/as-store.h" line="268"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="store" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="2917">a #AsStore instance.</doc>
            <type name="Store" c:type="AsStore*"/>
          </instance-parameter>
          <parameter name="watch_flags" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="2918">the #AsStoreWatchFlags, e.g. %AS_STORE_WATCH_FLAG_NONE</doc>
            <type name="guint32" c:type="guint32"/>
          </parameter>
        </parameters>
      </method>
      <method name="to_file"
              c:identifier="as_store_to_file"
              version="0.1.0"
              throws="1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-store.c"
             line="2575">Outputs an optionally compressed XML file of all the applications in the store.</doc>
        <source-position filename="libappstream-glib/as-store.h" line="241"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-store.c"
               line="2585">A #GString</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="store" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="2577">a #AsStore instance.</doc>
            <type name="Store" c:type="AsStore*"/>
          </instance-parameter>
          <parameter name="file" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="2578">file</doc>
            <type name="Gio.File" c:type="GFile*"/>
          </parameter>
          <parameter name="flags" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="2579">the AsNodeToXmlFlags, e.g. %AS_NODE_TO_XML_FLAG_NONE.</doc>
            <type name="guint32" c:type="guint32"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="2580">A #GCancellable, or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
        </parameters>
      </method>
      <method name="to_xml" c:identifier="as_store_to_xml" version="0.1.0">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-store.c"
             line="2470">Outputs an XML representation of all the applications in the store.</doc>
        <source-position filename="libappstream-glib/as-store.h" line="239"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-store.c"
               line="2477">A #GString</doc>
          <type name="GLib.String" c:type="GString*"/>
        </return-value>
        <parameters>
          <instance-parameter name="store" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="2472">a #AsStore instance.</doc>
            <type name="Store" c:type="AsStore*"/>
          </instance-parameter>
          <parameter name="flags" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="2473">the AsNodeToXmlFlags, e.g. %AS_NODE_TO_XML_FLAG_NONE.</doc>
            <type name="guint32" c:type="guint32"/>
          </parameter>
        </parameters>
      </method>
      <method name="validate"
              c:identifier="as_store_validate"
              version="0.2.4"
              throws="1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-store.c"
             line="3687">Validates information in the store for data applicable to the defined
metadata version.</doc>
        <source-position filename="libappstream-glib/as-store.h" line="270"/>
        <return-value transfer-ownership="container">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-store.c"
               line="3696">A list of problems, or %NULL</doc>
          <array name="GLib.PtrArray" c:type="GPtrArray*">
            <type name="Problem"/>
          </array>
        </return-value>
        <parameters>
          <instance-parameter name="store" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="3689">a #AsStore instance.</doc>
            <type name="Store" c:type="AsStore*"/>
          </instance-parameter>
          <parameter name="flags" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="3690">the #AsAppValidateFlags to use, e.g. %AS_APP_VALIDATE_FLAG_NONE</doc>
            <type name="guint32" c:type="guint32"/>
          </parameter>
        </parameters>
      </method>
      <field name="parent_instance">
        <type name="GObject.Object" c:type="GObject"/>
      </field>
      <glib:signal name="app-added" when="last" version="0.6.5">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-store.c"
             line="157">The ::app-added signal is emitted when a component has been added to
the store.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="160">the #AsApp instance</doc>
            <type name="App"/>
          </parameter>
        </parameters>
      </glib:signal>
      <glib:signal name="app-changed" when="last" version="0.6.5">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-store.c"
             line="191">The ::app-changed signal is emitted when a component has been changed
in the store.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="194">the #AsApp instance</doc>
            <type name="App"/>
          </parameter>
        </parameters>
      </glib:signal>
      <glib:signal name="app-removed" when="last" version="0.6.5">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-store.c"
             line="174">The ::app-removed signal is emitted when a component has been removed
from the store.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="app" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-store.c"
                 line="177">the #AsApp instance</doc>
            <type name="App"/>
          </parameter>
        </parameters>
      </glib:signal>
      <glib:signal name="changed" when="last" version="0.1.2">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-store.c"
             line="141">The ::changed signal is emitted when components have been added
or removed from the store.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </glib:signal>
    </class>
    <bitfield name="StoreAddFlags" c:type="AsStoreAddFlags">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-store.h"
           line="80">The flags to use when adding applications to the store.</doc>
      <source-position filename="libappstream-glib/as-store.h" line="98"/>
      <member name="none" value="0" c:identifier="AS_STORE_ADD_FLAG_NONE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-store.h"
             line="82">No extra flags to use</doc>
      </member>
      <member name="prefer_local"
              value="1"
              c:identifier="AS_STORE_ADD_FLAG_PREFER_LOCAL">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-store.h"
             line="83">Local files will be used by default</doc>
      </member>
      <member name="use_unique_id"
              value="2"
              c:identifier="AS_STORE_ADD_FLAG_USE_UNIQUE_ID">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-store.h"
             line="84">Allow multiple apps with the same AppStream ID</doc>
      </member>
      <member name="use_merge_heuristic"
              value="4"
              c:identifier="AS_STORE_ADD_FLAG_USE_MERGE_HEURISTIC">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-store.h"
             line="85">Use a heuristic when adding merge components</doc>
      </member>
      <member name="only_native_langs"
              value="8"
              c:identifier="AS_STORE_ADD_FLAG_ONLY_NATIVE_LANGS">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-store.h"
             line="86">Only load native languages</doc>
      </member>
    </bitfield>
    <record name="StoreClass"
            c:type="AsStoreClass"
            glib:is-gtype-struct-for="Store">
      <source-position filename="libappstream-glib/as-store.h" line="40"/>
      <field name="parent_class">
        <type name="GObject.ObjectClass" c:type="GObjectClass"/>
      </field>
      <field name="changed">
        <callback name="changed">
          <source-position filename="libappstream-glib/as-store.h" line="28"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="store" transfer-ownership="none">
              <type name="Store" c:type="AsStore*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="app_added">
        <callback name="app_added">
          <source-position filename="libappstream-glib/as-store.h" line="29"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="store" transfer-ownership="none">
              <type name="Store" c:type="AsStore*"/>
            </parameter>
            <parameter name="app" transfer-ownership="none">
              <type name="App" c:type="AsApp*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="app_removed">
        <callback name="app_removed">
          <source-position filename="libappstream-glib/as-store.h" line="31"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="store" transfer-ownership="none">
              <type name="Store" c:type="AsStore*"/>
            </parameter>
            <parameter name="app" transfer-ownership="none">
              <type name="App" c:type="AsApp*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="app_changed">
        <callback name="app_changed">
          <source-position filename="libappstream-glib/as-store.h" line="33"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="store" transfer-ownership="none">
              <type name="Store" c:type="AsStore*"/>
            </parameter>
            <parameter name="app" transfer-ownership="none">
              <type name="App" c:type="AsApp*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="_as_reserved1" introspectable="0">
        <callback name="_as_reserved1">
          <source-position filename="libappstream-glib/as-store.h" line="36"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved2" introspectable="0">
        <callback name="_as_reserved2">
          <source-position filename="libappstream-glib/as-store.h" line="37"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved3" introspectable="0">
        <callback name="_as_reserved3">
          <source-position filename="libappstream-glib/as-store.h" line="38"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved4" introspectable="0">
        <callback name="_as_reserved4">
          <source-position filename="libappstream-glib/as-store.h" line="39"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
    </record>
    <enumeration name="StoreError" c:type="AsStoreError">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-store.h"
           line="130">The error type.</doc>
      <source-position filename="libappstream-glib/as-store.h" line="140"/>
      <member name="failed" value="0" c:identifier="AS_STORE_ERROR_FAILED">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-store.h"
             line="132">Generic failure</doc>
      </member>
    </enumeration>
    <bitfield name="StoreLoadFlags" c:type="AsStoreLoadFlags">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-store.h"
           line="42">The flags to use when loading the store.</doc>
      <source-position filename="libappstream-glib/as-store.h" line="74"/>
      <member name="none" value="0" c:identifier="AS_STORE_LOAD_FLAG_NONE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-store.h"
             line="44">No extra flags to use</doc>
      </member>
      <member name="app_info_system"
              value="1"
              c:identifier="AS_STORE_LOAD_FLAG_APP_INFO_SYSTEM">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-store.h"
             line="45">The system app-info AppStream data</doc>
      </member>
      <member name="app_info_user"
              value="2"
              c:identifier="AS_STORE_LOAD_FLAG_APP_INFO_USER">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-store.h"
             line="46">The per-user app-info AppStream data</doc>
      </member>
      <member name="app_install"
              value="4"
              c:identifier="AS_STORE_LOAD_FLAG_APP_INSTALL">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-store.h"
             line="47">The ubuntu-specific app-install data (obsolete)</doc>
      </member>
      <member name="appdata"
              value="8"
              c:identifier="AS_STORE_LOAD_FLAG_APPDATA">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-store.h"
             line="48">The installed AppData files</doc>
      </member>
      <member name="desktop"
              value="16"
              c:identifier="AS_STORE_LOAD_FLAG_DESKTOP">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-store.h"
             line="49">The installed desktop files</doc>
      </member>
      <member name="allow_veto"
              value="32"
              c:identifier="AS_STORE_LOAD_FLAG_ALLOW_VETO">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-store.h"
             line="50">Add vetoed applications</doc>
      </member>
      <member name="flatpak_user"
              value="64"
              c:identifier="AS_STORE_LOAD_FLAG_FLATPAK_USER">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-store.h"
             line="51">Add flatpak user applications (obsolete)</doc>
      </member>
      <member name="flatpak_system"
              value="128"
              c:identifier="AS_STORE_LOAD_FLAG_FLATPAK_SYSTEM">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-store.h"
             line="52">Add flatpak system applications (obsolete)</doc>
      </member>
      <member name="ignore_invalid"
              value="256"
              c:identifier="AS_STORE_LOAD_FLAG_IGNORE_INVALID">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-store.h"
             line="53">Ignore invalid files</doc>
      </member>
      <member name="only_uncompressed"
              value="512"
              c:identifier="AS_STORE_LOAD_FLAG_ONLY_UNCOMPRESSED">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-store.h"
             line="54">Ignore compressed files</doc>
      </member>
      <member name="only_merge_apps"
              value="1024"
              c:identifier="AS_STORE_LOAD_FLAG_ONLY_MERGE_APPS">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-store.h"
             line="55">Ignore non-wildcard matches</doc>
      </member>
    </bitfield>
    <enumeration name="StoreSearchFlags" c:type="AsStoreSearchFlags">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-store.h"
           line="116">The flags to use when searching in the store.</doc>
      <source-position filename="libappstream-glib/as-store.h" line="128"/>
      <member name="none" value="0" c:identifier="AS_STORE_SEARCH_FLAG_NONE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-store.h"
             line="118">No extra flags to use</doc>
      </member>
      <member name="use_wildcards"
              value="1"
              c:identifier="AS_STORE_SEARCH_FLAG_USE_WILDCARDS">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-store.h"
             line="119">Process the globs</doc>
      </member>
    </enumeration>
    <enumeration name="StoreWatchFlags" c:type="AsStoreWatchFlags">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-store.h"
           line="100">The flags to use when local files are added or removed from the store.</doc>
      <source-position filename="libappstream-glib/as-store.h" line="114"/>
      <member name="none" value="0" c:identifier="AS_STORE_WATCH_FLAG_NONE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-store.h"
             line="102">No extra flags to use</doc>
      </member>
      <member name="added" value="1" c:identifier="AS_STORE_WATCH_FLAG_ADDED">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-store.h"
             line="103">Add applications if files change or are added</doc>
      </member>
      <member name="removed"
              value="2"
              c:identifier="AS_STORE_WATCH_FLAG_REMOVED">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-store.h"
             line="104">Remove applications if files are changed or deleted</doc>
      </member>
    </enumeration>
    <class name="Suggest"
           c:symbol-prefix="suggest"
           c:type="AsSuggest"
           parent="GObject.Object"
           glib:type-name="AsSuggest"
           glib:get-type="as_suggest_get_type"
           glib:type-struct="SuggestClass">
      <source-position filename="libappstream-glib/as-suggest.h" line="33"/>
      <constructor name="new" c:identifier="as_suggest_new" version="0.6.1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-suggest.c"
             line="264">Creates a new #AsSuggest.</doc>
        <source-position filename="libappstream-glib/as-suggest.h" line="51"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-suggest.c"
               line="269">a #AsSuggest</doc>
          <type name="Suggest" c:type="AsSuggest*"/>
        </return-value>
      </constructor>
      <function name="kind_from_string"
                c:identifier="as_suggest_kind_from_string"
                version="0.6.1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-suggest.c"
             line="64">Converts the text representation to an enumerated value.</doc>
        <source-position filename="libappstream-glib/as-suggest.h" line="54"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-suggest.c"
               line="70">a #AsSuggestKind, or %AS_SUGGEST_KIND_UNKNOWN for unknown.</doc>
          <type name="SuggestKind" c:type="AsSuggestKind"/>
        </return-value>
        <parameters>
          <parameter name="kind" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-suggest.c"
                 line="66">the string.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </function>
      <function name="kind_to_string"
                c:identifier="as_suggest_kind_to_string"
                version="0.6.1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-suggest.c"
             line="84">Converts the enumerated value to an text representation.</doc>
        <source-position filename="libappstream-glib/as-suggest.h" line="55"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-suggest.c"
               line="90">string version of @kind</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <parameter name="kind" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-suggest.c"
                 line="86">the #AsSuggestKind.</doc>
            <type name="SuggestKind" c:type="AsSuggestKind"/>
          </parameter>
        </parameters>
      </function>
      <method name="add_id" c:identifier="as_suggest_add_id" version="0.6.1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-suggest.c"
             line="157">Add a the suggest application ID.</doc>
        <source-position filename="libappstream-glib/as-suggest.h" line="64"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="suggest" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-suggest.c"
                 line="159">a #AsSuggest instance.</doc>
            <type name="Suggest" c:type="AsSuggest*"/>
          </instance-parameter>
          <parameter name="id" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-suggest.c"
                 line="160">an application ID, e.g. `gimp.desktop`</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_ids" c:identifier="as_suggest_get_ids" version="0.6.1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-suggest.c"
             line="104">Gets the suggest ids if set.</doc>
        <source-position filename="libappstream-glib/as-suggest.h" line="59"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-suggest.c"
               line="110">the #GPtrArray, or %NULL</doc>
          <array name="GLib.PtrArray" c:type="GPtrArray*">
            <type name="utf8"/>
          </array>
        </return-value>
        <parameters>
          <instance-parameter name="suggest" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-suggest.c"
                 line="106">a #AsSuggest instance.</doc>
            <type name="Suggest" c:type="AsSuggest*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_kind"
              c:identifier="as_suggest_get_kind"
              version="0.6.1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-suggest.c"
             line="122">Gets the suggest kind.</doc>
        <source-position filename="libappstream-glib/as-suggest.h" line="58"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-suggest.c"
               line="128">the #AsSuggestKind</doc>
          <type name="SuggestKind" c:type="AsSuggestKind"/>
        </return-value>
        <parameters>
          <instance-parameter name="suggest" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-suggest.c"
                 line="124">a #AsSuggest instance.</doc>
            <type name="Suggest" c:type="AsSuggest*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="set_kind"
              c:identifier="as_suggest_set_kind"
              version="0.6.1">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-suggest.c"
             line="140">Sets the suggest kind.</doc>
        <source-position filename="libappstream-glib/as-suggest.h" line="62"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="suggest" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-suggest.c"
                 line="142">a #AsSuggest instance.</doc>
            <type name="Suggest" c:type="AsSuggest*"/>
          </instance-parameter>
          <parameter name="kind" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-suggest.c"
                 line="143">the #AsSuggestKind, e.g. %AS_SUGGEST_KIND_UPSTREAM.</doc>
            <type name="SuggestKind" c:type="AsSuggestKind"/>
          </parameter>
        </parameters>
      </method>
      <field name="parent_instance">
        <type name="GObject.Object" c:type="GObject"/>
      </field>
    </class>
    <record name="SuggestClass"
            c:type="AsSuggestClass"
            glib:is-gtype-struct-for="Suggest">
      <source-position filename="libappstream-glib/as-suggest.h" line="33"/>
      <field name="parent_class">
        <type name="GObject.ObjectClass" c:type="GObjectClass"/>
      </field>
      <field name="_as_reserved1" introspectable="0">
        <callback name="_as_reserved1">
          <source-position filename="libappstream-glib/as-suggest.h"
                           line="25"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved2" introspectable="0">
        <callback name="_as_reserved2">
          <source-position filename="libappstream-glib/as-suggest.h"
                           line="26"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved3" introspectable="0">
        <callback name="_as_reserved3">
          <source-position filename="libappstream-glib/as-suggest.h"
                           line="27"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved4" introspectable="0">
        <callback name="_as_reserved4">
          <source-position filename="libappstream-glib/as-suggest.h"
                           line="28"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved5" introspectable="0">
        <callback name="_as_reserved5">
          <source-position filename="libappstream-glib/as-suggest.h"
                           line="29"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved6" introspectable="0">
        <callback name="_as_reserved6">
          <source-position filename="libappstream-glib/as-suggest.h"
                           line="30"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved7" introspectable="0">
        <callback name="_as_reserved7">
          <source-position filename="libappstream-glib/as-suggest.h"
                           line="31"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved8" introspectable="0">
        <callback name="_as_reserved8">
          <source-position filename="libappstream-glib/as-suggest.h"
                           line="32"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
    </record>
    <enumeration name="SuggestKind" c:type="AsSuggestKind">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-suggest.h"
           line="35">The suggest type.</doc>
      <source-position filename="libappstream-glib/as-suggest.h" line="49"/>
      <member name="unknown" value="0" c:identifier="AS_SUGGEST_KIND_UNKNOWN">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-suggest.h"
             line="37">Type invalid or not known</doc>
      </member>
      <member name="upstream"
              value="1"
              c:identifier="AS_SUGGEST_KIND_UPSTREAM">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-suggest.h"
             line="38">Upstream-specified suggestion</doc>
      </member>
      <member name="heuristic"
              value="2"
              c:identifier="AS_SUGGEST_KIND_HEURISTIC">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-suggest.h"
             line="39">Suggestion from a heuristic</doc>
      </member>
    </enumeration>
    <enumeration name="Tag" c:type="AsTag">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-tag.h"
           line="18">The tag type.</doc>
      <source-position filename="libappstream-glib/as-tag.h" line="159"/>
      <member name="unknown" value="0" c:identifier="AS_TAG_UNKNOWN">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-tag.h"
             line="20">Type invalid or not known</doc>
      </member>
      <member name="components" value="1" c:identifier="AS_TAG_COMPONENTS">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-tag.h"
             line="21">`components`</doc>
      </member>
      <member name="component" value="2" c:identifier="AS_TAG_COMPONENT">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-tag.h"
             line="22">`component`</doc>
      </member>
      <member name="id" value="3" c:identifier="AS_TAG_ID">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-tag.h"
             line="23">`id`</doc>
      </member>
      <member name="pkgname" value="4" c:identifier="AS_TAG_PKGNAME">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-tag.h"
             line="24">`pkgname`</doc>
      </member>
      <member name="name" value="5" c:identifier="AS_TAG_NAME">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-tag.h"
             line="25">`name`</doc>
      </member>
      <member name="summary" value="6" c:identifier="AS_TAG_SUMMARY">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-tag.h"
             line="26">`summary`</doc>
      </member>
      <member name="description" value="7" c:identifier="AS_TAG_DESCRIPTION">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-tag.h"
             line="27">`description`</doc>
      </member>
      <member name="url" value="8" c:identifier="AS_TAG_URL">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-tag.h"
             line="28">`url`</doc>
      </member>
      <member name="icon" value="9" c:identifier="AS_TAG_ICON">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-tag.h"
             line="29">`icon`</doc>
      </member>
      <member name="categories" value="10" c:identifier="AS_TAG_CATEGORIES">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-tag.h"
             line="30">`categories`</doc>
      </member>
      <member name="category" value="11" c:identifier="AS_TAG_CATEGORY">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-tag.h"
             line="31">`category`</doc>
      </member>
      <member name="keywords" value="12" c:identifier="AS_TAG_KEYWORDS">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-tag.h"
             line="32">`keywords`</doc>
      </member>
      <member name="keyword" value="13" c:identifier="AS_TAG_KEYWORD">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-tag.h"
             line="33">`keyword`</doc>
      </member>
      <member name="mimetypes" value="14" c:identifier="AS_TAG_MIMETYPES">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-tag.h"
             line="34">`mimetypes`</doc>
      </member>
      <member name="mimetype" value="15" c:identifier="AS_TAG_MIMETYPE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-tag.h"
             line="35">`mimetype`</doc>
      </member>
      <member name="project_group"
              value="16"
              c:identifier="AS_TAG_PROJECT_GROUP">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-tag.h"
             line="36">`project_group`</doc>
      </member>
      <member name="project_license"
              value="17"
              c:identifier="AS_TAG_PROJECT_LICENSE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-tag.h"
             line="37">`project_license`</doc>
      </member>
      <member name="screenshot" value="18" c:identifier="AS_TAG_SCREENSHOT">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-tag.h"
             line="38">`screenshot`</doc>
      </member>
      <member name="screenshots" value="19" c:identifier="AS_TAG_SCREENSHOTS">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-tag.h"
             line="39">`screenshots`</doc>
      </member>
      <member name="update_contact"
              value="20"
              c:identifier="AS_TAG_UPDATE_CONTACT">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-tag.h"
             line="40">`update_contact`</doc>
      </member>
      <member name="image" value="21" c:identifier="AS_TAG_IMAGE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-tag.h"
             line="41">`image`</doc>
      </member>
      <member name="compulsory_for_desktop"
              value="22"
              c:identifier="AS_TAG_COMPULSORY_FOR_DESKTOP">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-tag.h"
             line="42">`compulsory_for_desktop`</doc>
      </member>
      <member name="priority" value="23" c:identifier="AS_TAG_PRIORITY">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-tag.h"
             line="43">`priority`</doc>
      </member>
      <member name="caption" value="24" c:identifier="AS_TAG_CAPTION">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-tag.h"
             line="44">`caption`</doc>
      </member>
      <member name="languages" value="25" c:identifier="AS_TAG_LANGUAGES">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-tag.h"
             line="45">`languages`</doc>
      </member>
      <member name="lang" value="26" c:identifier="AS_TAG_LANG">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-tag.h"
             line="46">`lang`</doc>
      </member>
      <member name="metadata" value="27" c:identifier="AS_TAG_METADATA">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-tag.h"
             line="47">`metadata`</doc>
      </member>
      <member name="value" value="28" c:identifier="AS_TAG_VALUE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-tag.h"
             line="48">`value`</doc>
      </member>
      <member name="releases" value="29" c:identifier="AS_TAG_RELEASES">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-tag.h"
             line="49">`releases`</doc>
      </member>
      <member name="release" value="30" c:identifier="AS_TAG_RELEASE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-tag.h"
             line="50">`release`</doc>
      </member>
      <member name="architectures"
              value="31"
              c:identifier="AS_TAG_ARCHITECTURES">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-tag.h"
             line="51">`architectures`</doc>
      </member>
      <member name="arch" value="32" c:identifier="AS_TAG_ARCH">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-tag.h"
             line="52">`arch`</doc>
      </member>
      <member name="metadata_license"
              value="33"
              c:identifier="AS_TAG_METADATA_LICENSE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-tag.h"
             line="53">`metadata_license`</doc>
      </member>
      <member name="provides" value="34" c:identifier="AS_TAG_PROVIDES">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-tag.h"
             line="54">`provides`</doc>
      </member>
      <member name="extends" value="35" c:identifier="AS_TAG_EXTENDS">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-tag.h"
             line="55">`extends`</doc>
      </member>
      <member name="developer_name"
              value="36"
              c:identifier="AS_TAG_DEVELOPER_NAME">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-tag.h"
             line="56">`developer_name`</doc>
      </member>
      <member name="kudos" value="37" c:identifier="AS_TAG_KUDOS">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-tag.h"
             line="57">`kudos`</doc>
      </member>
      <member name="kudo" value="38" c:identifier="AS_TAG_KUDO">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-tag.h"
             line="58">`kudo`</doc>
      </member>
      <member name="source_pkgname"
              value="39"
              c:identifier="AS_TAG_SOURCE_PKGNAME">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-tag.h"
             line="59">`source_pkgname`</doc>
      </member>
      <member name="vetos" value="40" c:identifier="AS_TAG_VETOS">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-tag.h"
             line="60">`vetos`</doc>
      </member>
      <member name="veto" value="41" c:identifier="AS_TAG_VETO">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-tag.h"
             line="61">`veto`</doc>
      </member>
      <member name="bundle" value="42" c:identifier="AS_TAG_BUNDLE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-tag.h"
             line="62">`bundle`</doc>
      </member>
      <member name="permissions" value="43" c:identifier="AS_TAG_PERMISSIONS">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-tag.h"
             line="63">`permissions`</doc>
      </member>
      <member name="permission" value="44" c:identifier="AS_TAG_PERMISSION">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-tag.h"
             line="64">`permission`</doc>
      </member>
      <member name="location" value="45" c:identifier="AS_TAG_LOCATION">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-tag.h"
             line="65">`location`</doc>
      </member>
      <member name="checksum" value="46" c:identifier="AS_TAG_CHECKSUM">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-tag.h"
             line="66">`checksum`</doc>
      </member>
      <member name="size" value="47" c:identifier="AS_TAG_SIZE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-tag.h"
             line="67">`size`</doc>
      </member>
      <member name="translation" value="48" c:identifier="AS_TAG_TRANSLATION">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-tag.h"
             line="68">`translation`</doc>
      </member>
      <member name="content_rating"
              value="49"
              c:identifier="AS_TAG_CONTENT_RATING">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-tag.h"
             line="69">`content_rating`</doc>
      </member>
      <member name="content_attribute"
              value="50"
              c:identifier="AS_TAG_CONTENT_ATTRIBUTE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-tag.h"
             line="70">`content_attribute`</doc>
      </member>
      <member name="version" value="51" c:identifier="AS_TAG_VERSION">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-tag.h"
             line="71">`version`</doc>
      </member>
      <member name="reviews" value="52" c:identifier="AS_TAG_REVIEWS">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-tag.h"
             line="72">`reviews`</doc>
      </member>
      <member name="review" value="53" c:identifier="AS_TAG_REVIEW">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-tag.h"
             line="73">`review`</doc>
      </member>
      <member name="reviewer_name"
              value="54"
              c:identifier="AS_TAG_REVIEWER_NAME">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-tag.h"
             line="74">`reviewer_name`</doc>
      </member>
      <member name="reviewer_id" value="55" c:identifier="AS_TAG_REVIEWER_ID">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-tag.h"
             line="75">`reviewer_id`</doc>
      </member>
      <member name="suggests" value="56" c:identifier="AS_TAG_SUGGESTS">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-tag.h"
             line="76">`suggests`</doc>
      </member>
      <member name="requires" value="57" c:identifier="AS_TAG_REQUIRES">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-tag.h"
             line="77">`requires`</doc>
      </member>
      <member name="custom" value="58" c:identifier="AS_TAG_CUSTOM">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-tag.h"
             line="78">`custom`</doc>
      </member>
      <member name="launchable" value="59" c:identifier="AS_TAG_LAUNCHABLE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-tag.h"
             line="79">`launchable`</doc>
      </member>
      <member name="agreement" value="60" c:identifier="AS_TAG_AGREEMENT">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-tag.h"
             line="80">`agreement`</doc>
      </member>
      <member name="agreement_section"
              value="61"
              c:identifier="AS_TAG_AGREEMENT_SECTION">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-tag.h"
             line="81">`agreement_section`</doc>
      </member>
      <member name="p" value="62" c:identifier="AS_TAG_P">
      </member>
      <member name="li" value="63" c:identifier="AS_TAG_LI">
      </member>
      <member name="ul" value="64" c:identifier="AS_TAG_UL">
      </member>
      <member name="ol" value="65" c:identifier="AS_TAG_OL">
      </member>
      <member name="binary" value="66" c:identifier="AS_TAG_BINARY">
      </member>
      <member name="font" value="67" c:identifier="AS_TAG_FONT">
      </member>
      <member name="dbus" value="68" c:identifier="AS_TAG_DBUS">
      </member>
      <member name="modalias" value="69" c:identifier="AS_TAG_MODALIAS">
      </member>
      <member name="library" value="70" c:identifier="AS_TAG_LIBRARY">
      </member>
    </enumeration>
    <enumeration name="TagFlags" c:type="AsTagFlags">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-tag.h"
           line="161">The flags to use when matching %AsTag's.</doc>
      <source-position filename="libappstream-glib/as-tag.h" line="175"/>
      <member name="none" value="0" c:identifier="AS_TAG_FLAG_NONE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-tag.h"
             line="163">No special actions to use</doc>
      </member>
      <member name="use_fallbacks"
              value="1"
              c:identifier="AS_TAG_FLAG_USE_FALLBACKS">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-tag.h"
             line="164">Use fallback tag names</doc>
      </member>
      <member name="use_translated"
              value="2"
              c:identifier="AS_TAG_FLAG_USE_TRANSLATED">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-tag.h"
             line="165">Use translated tag names</doc>
      </member>
    </enumeration>
    <class name="Translation"
           c:symbol-prefix="translation"
           c:type="AsTranslation"
           parent="GObject.Object"
           glib:type-name="AsTranslation"
           glib:get-type="as_translation_get_type"
           glib:type-struct="TranslationClass">
      <source-position filename="libappstream-glib/as-translation.h"
                       line="33"/>
      <constructor name="new"
                   c:identifier="as_translation_new"
                   version="0.5.8">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-translation.c"
             line="264">Creates a new #AsTranslation.</doc>
        <source-position filename="libappstream-glib/as-translation.h"
                         line="51"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-translation.c"
               line="269">a #AsTranslation</doc>
          <type name="Translation" c:type="AsTranslation*"/>
        </return-value>
      </constructor>
      <function name="kind_from_string"
                c:identifier="as_translation_kind_from_string"
                version="0.5.8">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-translation.c"
             line="65">Converts the text representation to an enumerated value.</doc>
        <source-position filename="libappstream-glib/as-translation.h"
                         line="54"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-translation.c"
               line="71">a #AsTranslationKind, or %AS_TRANSLATION_KIND_UNKNOWN for unknown.</doc>
          <type name="TranslationKind" c:type="AsTranslationKind"/>
        </return-value>
        <parameters>
          <parameter name="kind" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-translation.c"
                 line="67">the string.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </function>
      <function name="kind_to_string"
                c:identifier="as_translation_kind_to_string"
                version="0.5.8">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-translation.c"
             line="85">Converts the enumerated value to an text representation.</doc>
        <source-position filename="libappstream-glib/as-translation.h"
                         line="55"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-translation.c"
               line="91">string version of @kind</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <parameter name="kind" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-translation.c"
                 line="87">the #AsTranslationKind.</doc>
            <type name="TranslationKind" c:type="AsTranslationKind"/>
          </parameter>
        </parameters>
      </function>
      <method name="get_id"
              c:identifier="as_translation_get_id"
              version="0.5.8">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-translation.c"
             line="105">Gets the ID for this translation.</doc>
        <source-position filename="libappstream-glib/as-translation.h"
                         line="58"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-translation.c"
               line="111">ID, e.g. "foobar-1.0.2"</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="translation" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-translation.c"
                 line="107">a #AsTranslation instance.</doc>
            <type name="Translation" c:type="AsTranslation*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_kind"
              c:identifier="as_translation_get_kind"
              version="0.5.8">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-translation.c"
             line="123">Gets the translation kind.</doc>
        <source-position filename="libappstream-glib/as-translation.h"
                         line="59"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-translation.c"
               line="129">the #AsTranslationKind</doc>
          <type name="TranslationKind" c:type="AsTranslationKind"/>
        </return-value>
        <parameters>
          <instance-parameter name="translation" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-translation.c"
                 line="125">a #AsTranslation instance.</doc>
            <type name="Translation" c:type="AsTranslation*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="set_id"
              c:identifier="as_translation_set_id"
              version="0.5.8">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-translation.c"
             line="141">Sets the ID for this translation.</doc>
        <source-position filename="libappstream-glib/as-translation.h"
                         line="62"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="translation" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-translation.c"
                 line="143">a #AsTranslation instance.</doc>
            <type name="Translation" c:type="AsTranslation*"/>
          </instance-parameter>
          <parameter name="id" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-translation.c"
                 line="144">the URL.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_kind"
              c:identifier="as_translation_set_kind"
              version="0.5.8">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-translation.c"
             line="158">Sets the translation kind.</doc>
        <source-position filename="libappstream-glib/as-translation.h"
                         line="64"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="translation" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-translation.c"
                 line="160">a #AsTranslation instance.</doc>
            <type name="Translation" c:type="AsTranslation*"/>
          </instance-parameter>
          <parameter name="kind" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libappstream-glib/as-translation.c"
                 line="161">the #AsTranslationKind, e.g. %AS_TRANSLATION_KIND_THUMBNAIL.</doc>
            <type name="TranslationKind" c:type="AsTranslationKind"/>
          </parameter>
        </parameters>
      </method>
      <field name="parent_instance">
        <type name="GObject.Object" c:type="GObject"/>
      </field>
    </class>
    <record name="TranslationClass"
            c:type="AsTranslationClass"
            glib:is-gtype-struct-for="Translation">
      <source-position filename="libappstream-glib/as-translation.h"
                       line="33"/>
      <field name="parent_class">
        <type name="GObject.ObjectClass" c:type="GObjectClass"/>
      </field>
      <field name="_as_reserved1" introspectable="0">
        <callback name="_as_reserved1">
          <source-position filename="libappstream-glib/as-translation.h"
                           line="25"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved2" introspectable="0">
        <callback name="_as_reserved2">
          <source-position filename="libappstream-glib/as-translation.h"
                           line="26"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved3" introspectable="0">
        <callback name="_as_reserved3">
          <source-position filename="libappstream-glib/as-translation.h"
                           line="27"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved4" introspectable="0">
        <callback name="_as_reserved4">
          <source-position filename="libappstream-glib/as-translation.h"
                           line="28"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved5" introspectable="0">
        <callback name="_as_reserved5">
          <source-position filename="libappstream-glib/as-translation.h"
                           line="29"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved6" introspectable="0">
        <callback name="_as_reserved6">
          <source-position filename="libappstream-glib/as-translation.h"
                           line="30"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved7" introspectable="0">
        <callback name="_as_reserved7">
          <source-position filename="libappstream-glib/as-translation.h"
                           line="31"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
      <field name="_as_reserved8" introspectable="0">
        <callback name="_as_reserved8">
          <source-position filename="libappstream-glib/as-translation.h"
                           line="32"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
        </callback>
      </field>
    </record>
    <enumeration name="TranslationKind" c:type="AsTranslationKind">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-translation.h"
           line="35">The translation type.</doc>
      <source-position filename="libappstream-glib/as-translation.h"
                       line="49"/>
      <member name="unknown"
              value="0"
              c:identifier="AS_TRANSLATION_KIND_UNKNOWN">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-translation.h"
             line="37">Type invalid or not known</doc>
      </member>
      <member name="gettext"
              value="1"
              c:identifier="AS_TRANSLATION_KIND_GETTEXT">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-translation.h"
             line="38">Gettext translation system</doc>
      </member>
      <member name="qt" value="2" c:identifier="AS_TRANSLATION_KIND_QT">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-translation.h"
             line="39">QT translation system</doc>
      </member>
    </enumeration>
    <bitfield name="UniqueIdMatchFlags" c:type="AsUniqueIdMatchFlags">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-utils.h"
           line="97">The flags used when matching unique IDs.</doc>
      <source-position filename="libappstream-glib/as-utils.h" line="119"/>
      <member name="none"
              value="0"
              c:identifier="AS_UNIQUE_ID_MATCH_FLAG_NONE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-utils.h"
             line="99">No flags set</doc>
      </member>
      <member name="scope"
              value="1"
              c:identifier="AS_UNIQUE_ID_MATCH_FLAG_SCOPE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-utils.h"
             line="100">Scope, e.g. a #AsAppScope</doc>
      </member>
      <member name="bundle_kind"
              value="2"
              c:identifier="AS_UNIQUE_ID_MATCH_FLAG_BUNDLE_KIND">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-utils.h"
             line="101">Bundle kind, e.g. a #AsBundleKind</doc>
      </member>
      <member name="origin"
              value="4"
              c:identifier="AS_UNIQUE_ID_MATCH_FLAG_ORIGIN">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-utils.h"
             line="102">Origin</doc>
      </member>
      <member name="kind"
              value="8"
              c:identifier="AS_UNIQUE_ID_MATCH_FLAG_KIND">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-utils.h"
             line="103">Component kind, e.g. a #AsAppKind</doc>
      </member>
      <member name="id" value="16" c:identifier="AS_UNIQUE_ID_MATCH_FLAG_ID">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-utils.h"
             line="104">Component AppStream ID</doc>
      </member>
      <member name="branch"
              value="32"
              c:identifier="AS_UNIQUE_ID_MATCH_FLAG_BRANCH">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-utils.h"
             line="105">Branch</doc>
      </member>
    </bitfield>
    <enumeration name="UrgencyKind" c:type="AsUrgencyKind">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-enums.h"
           line="112">The urgency of a release.</doc>
      <source-position filename="libappstream-glib/as-enums.h" line="130"/>
      <member name="unknown" value="0" c:identifier="AS_URGENCY_KIND_UNKNOWN">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-enums.h"
             line="114">Urgency invalid or not known</doc>
      </member>
      <member name="low" value="1" c:identifier="AS_URGENCY_KIND_LOW">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-enums.h"
             line="115">Low urgency release</doc>
      </member>
      <member name="medium" value="2" c:identifier="AS_URGENCY_KIND_MEDIUM">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-enums.h"
             line="116">Medium urgency release</doc>
      </member>
      <member name="high" value="3" c:identifier="AS_URGENCY_KIND_HIGH">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-enums.h"
             line="117">High urgency release</doc>
      </member>
      <member name="critical"
              value="4"
              c:identifier="AS_URGENCY_KIND_CRITICAL">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-enums.h"
             line="118">Critically urgent release</doc>
      </member>
    </enumeration>
    <enumeration name="UrlKind" c:type="AsUrlKind">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-enums.h"
           line="50">The URL type.</doc>
      <source-position filename="libappstream-glib/as-enums.h" line="84"/>
      <member name="unknown" value="0" c:identifier="AS_URL_KIND_UNKNOWN">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-enums.h"
             line="52">Type invalid or not known</doc>
      </member>
      <member name="homepage" value="1" c:identifier="AS_URL_KIND_HOMEPAGE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-enums.h"
             line="53">Application project homepage</doc>
      </member>
      <member name="bugtracker"
              value="2"
              c:identifier="AS_URL_KIND_BUGTRACKER">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-enums.h"
             line="54">Application bugtracker</doc>
      </member>
      <member name="faq" value="3" c:identifier="AS_URL_KIND_FAQ">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-enums.h"
             line="55">Application FAQ page</doc>
      </member>
      <member name="donation" value="4" c:identifier="AS_URL_KIND_DONATION">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-enums.h"
             line="56">Application donation page</doc>
      </member>
      <member name="help" value="5" c:identifier="AS_URL_KIND_HELP">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-enums.h"
             line="57">Application help manual</doc>
      </member>
      <member name="missing" value="6" c:identifier="AS_URL_KIND_MISSING">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-enums.h"
             line="58">The package is available, but missing</doc>
      </member>
      <member name="translate" value="7" c:identifier="AS_URL_KIND_TRANSLATE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-enums.h"
             line="59">Application translation page</doc>
      </member>
      <member name="details" value="8" c:identifier="AS_URL_KIND_DETAILS">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-enums.h"
             line="60">Release details</doc>
      </member>
      <member name="source" value="9" c:identifier="AS_URL_KIND_SOURCE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-enums.h"
             line="61">Link to source code</doc>
      </member>
      <member name="contact" value="10" c:identifier="AS_URL_KIND_CONTACT">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-enums.h"
             line="62">URL to contact developer on</doc>
      </member>
      <member name="vcs_browser"
              value="11"
              c:identifier="AS_URL_KIND_VCS_BROWSER">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-enums.h"
             line="63">Browse the source code</doc>
      </member>
      <member name="contribute"
              value="12"
              c:identifier="AS_URL_KIND_CONTRIBUTE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-enums.h"
             line="64">Help developing</doc>
      </member>
    </enumeration>
    <enumeration name="UtilsError"
                 c:type="AsUtilsError"
                 glib:error-domain="as-utils-error-quark">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-utils.h"
           line="21">The error type.</doc>
      <source-position filename="libappstream-glib/as-utils.h" line="33"/>
      <member name="failed" value="0" c:identifier="AS_UTILS_ERROR_FAILED">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-utils.h"
             line="23">Generic failure</doc>
      </member>
      <member name="invalid_type"
              value="1"
              c:identifier="AS_UTILS_ERROR_INVALID_TYPE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-utils.h"
             line="24">Invalid type</doc>
      </member>
    </enumeration>
    <bitfield name="UtilsFindIconFlag" c:type="AsUtilsFindIconFlag">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-utils.h"
           line="37">The flags used when finding icons.</doc>
      <source-position filename="libappstream-glib/as-utils.h" line="49"/>
      <member name="none" value="0" c:identifier="AS_UTILS_FIND_ICON_NONE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-utils.h"
             line="39">No flags set</doc>
      </member>
      <member name="hi_dpi" value="1" c:identifier="AS_UTILS_FIND_ICON_HI_DPI">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-utils.h"
             line="40">Prefer a HiDPI icon</doc>
      </member>
    </bitfield>
    <enumeration name="UtilsLocation" c:type="AsUtilsLocation">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-utils.h"
           line="51">The flags used when installing and removing metadata files.</doc>
      <source-position filename="libappstream-glib/as-utils.h" line="65"/>
      <member name="shared" value="0" c:identifier="AS_UTILS_LOCATION_SHARED">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-utils.h"
             line="53">Installed by the vendor, shared</doc>
      </member>
      <member name="cache" value="1" c:identifier="AS_UTILS_LOCATION_CACHE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-utils.h"
             line="54">Installed as metadata, shared</doc>
      </member>
      <member name="user" value="2" c:identifier="AS_UTILS_LOCATION_USER">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-utils.h"
             line="55">Installed by the user</doc>
      </member>
    </enumeration>
    <bitfield name="VersionCompareFlag" c:type="AsVersionCompareFlag">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-utils.h"
           line="83">The flags used when comparing version numbers.</doc>
      <source-position filename="libappstream-glib/as-utils.h" line="95"/>
      <member name="none"
              value="0"
              c:identifier="AS_VERSION_COMPARE_FLAG_NONE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-utils.h"
             line="85">No flags set</doc>
      </member>
      <member name="use_heuristics"
              value="1"
              c:identifier="AS_VERSION_COMPARE_FLAG_USE_HEURISTICS">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-utils.h"
             line="86">Use a heuristic to parse version numbers</doc>
      </member>
    </bitfield>
    <bitfield name="VersionParseFlag" c:type="AsVersionParseFlag">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-utils.h"
           line="67">The flags used when parsing version numbers.</doc>
      <source-position filename="libappstream-glib/as-utils.h" line="81"/>
      <member name="none" value="0" c:identifier="AS_VERSION_PARSE_FLAG_NONE">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-utils.h"
             line="69">No flags set</doc>
      </member>
      <member name="use_triplet"
              value="1"
              c:identifier="AS_VERSION_PARSE_FLAG_USE_TRIPLET">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-utils.h"
             line="70">Use Microsoft-style version numbers</doc>
      </member>
      <member name="use_bcd"
              value="2"
              c:identifier="AS_VERSION_PARSE_FLAG_USE_BCD">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-utils.h"
             line="71">Use binary coded decimal notation</doc>
      </member>
    </bitfield>
    <docsection name="as-agreement">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-agreement.c"
           line="8">Agreements can be used by components to specify GDPR, EULA or other warnings.

See also: #AsAgreementDetail, #AsAgreementSection</doc>
    </docsection>
    <docsection name="as-agreement-section">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-agreement-section.c"
           line="8">Agreements are typically split up into sections.

See also: #AsAgreement, #AsAgreementDetail</doc>
    </docsection>
    <docsection name="as-app">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-app.c"
           line="8">This object represents the base object of all AppStream, the application.
Although called #AsApp, this object also represents components like fonts,
codecs and input methods.

See also: #AsScreenshot, #AsRelease</doc>
    </docsection>
    <docsection name="as-bundle">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-bundle.c"
           line="8">Screenshot may have multiple versions of an bundle in different resolutions
or aspect ratios. This object allows access to the location and size of a
single bundle.

See also: #AsScreenshot</doc>
    </docsection>
    <docsection name="as-checksum">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-checksum.c"
           line="8">Checksums are attached to releases.

See also: #AsRelease</doc>
    </docsection>
    <docsection name="as-content-rating">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-content-rating.c"
           line="8">Content ratings are age-specific guidelines for applications.

See also: #AsApp</doc>
    </docsection>
    <docsection name="as-enums">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-enums.c"
           line="8">These helper functions may be useful if implementing an AppStream parser.</doc>
    </docsection>
    <docsection name="as-format">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-format.c"
           line="8">AsApp's may be made from several information formats, and this object
represents the filename (and kind) of the format.

See also: #AsApp</doc>
    </docsection>
    <docsection name="as-icon">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-icon.c"
           line="8">Screenshot may have multiple versions of an icon in different resolutions
or aspect ratios. This object allows access to the location and size of a
single icon.

See also: #AsScreenshot</doc>
    </docsection>
    <docsection name="as-image">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-image.c"
           line="8">Screenshot may have multiple versions of an image in different resolutions
or aspect ratios. This object allows access to the location and size of a
single image.

See also: #AsScreenshot</doc>
    </docsection>
    <docsection name="as-inf">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-inf.c"
           line="8">These functions are used internally to libappstream-glib, and some may be
useful to user-applications.</doc>
    </docsection>
    <docsection name="as-launchable">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-launchable.c"
           line="8">Applications may be launchable using a different application ID to the
component ID or may be launchable in some other way, e.g D-Bus, or using
the default terminal emulator.

See also: #AsApp</doc>
    </docsection>
    <docsection name="as-markup">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-markup.c"
           line="8">These functions are used internally to libappstream-glib, and some may be
useful to user-applications.</doc>
    </docsection>
    <docsection name="as-node">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-node.c"
           line="8">These helper functions allow parsing to and from #AsApp's and the AppStream
XML representation. This parser is UTF-8 safe, but not very fast, and parsers
like expat should be used if full XML specification adherence is required.

See also: #AsApp</doc>
    </docsection>
    <docsection name="as-problem">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-problem.c"
           line="8">Problems have a unlocalized message and also contain a line number and kind.

See also: #AsApp</doc>
    </docsection>
    <docsection name="as-provide">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-provide.c"
           line="8">Applications may provide different binary names, firmware files and that
kind of thing. This is the place to express those extra items.

See also: #AsApp</doc>
    </docsection>
    <docsection name="as-release">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-release.c"
           line="9">This object represents a single upstream release, typically a minor update.
Releases can contain a localized description of paragraph and list elements
and also have a version number and timestamp.

Releases can be automatically generated by parsing upstream ChangeLogs or
.spec files, or can be populated using AppData files.

See also: #AsRelease</doc>
    </docsection>
    <docsection name="as-require">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-require.c"
           line="8">Requirements are things the component needs to be valid.

See also: #AsApp</doc>
    </docsection>
    <docsection name="as-review">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-review.c"
           line="9">This object represents a user-submitted application review.</doc>
    </docsection>
    <docsection name="as-screenshot">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-screenshot.c"
           line="8">Screenshots have a localized caption and also contain a number of images
of different resolution.

See also: #AsImage</doc>
    </docsection>
    <docsection name="as-store">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-store.c"
           line="9">This store contains both an array of #AsApp's but also a pair of hashes
to quickly retrieve an application from the ID or package name.

Applications can also be removed, and the whole store can be loaded and
saved to a compressed XML file.

See also: #AsApp</doc>
    </docsection>
    <docsection name="as-suggest">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-suggest.c"
           line="8">Screenshot may have multiple versions of an suggest in different resolutions
or aspect ratios. This object allows access to the location and size of a
single suggest.

See also: #AsScreenshot</doc>
    </docsection>
    <docsection name="as-tag">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-tag.c"
           line="8">These functions will convert a tag enum such as %AS_TAG_COMPONENT to
it's string form, and also vice-versa.

These helper functions may be useful if implementing an AppStream parser.</doc>
    </docsection>
    <docsection name="as-translation">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-translation.c"
           line="8">Translation systems such as gettext install the translated files in a
specific location.

This object represents translation data for an application.

See also: #AsApp</doc>
    </docsection>
    <docsection name="as-utils">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-utils.c"
           line="9">These functions are used internally to libappstream-glib, and some may be
useful to user-applications.</doc>
    </docsection>
    <docsection name="as-version">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-version.c"
           line="8">The version number can be different between build-time and runtime.</doc>
    </docsection>
    <function name="id_kind_from_string"
              c:identifier="as_id_kind_from_string"
              version="0.1.0">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-enums.c"
           line="40">Converts the text representation to an enumerated value.</doc>
      <source-position filename="libappstream-glib/as-enums.h" line="164"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-enums.c"
             line="46">a #AsIdKind or %AS_ID_KIND_UNKNOWN for unknown</doc>
        <type name="IdKind" c:type="AsIdKind"/>
      </return-value>
      <parameters>
        <parameter name="id_kind" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-enums.c"
               line="42">the string.</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="id_kind_to_string"
              c:identifier="as_id_kind_to_string"
              version="0.1.0">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-enums.c"
           line="24">Converts the enumerated value to an text representation.</doc>
      <source-position filename="libappstream-glib/as-enums.h" line="162"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-enums.c"
             line="30">string version of @id_kind</doc>
        <type name="utf8" c:type="const gchar*"/>
      </return-value>
      <parameters>
        <parameter name="id_kind" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-enums.c"
               line="26">the #AsIdKind.</doc>
          <type name="IdKind" c:type="AsIdKind"/>
        </parameter>
      </parameters>
    </function>
    <function name="inf_error_quark"
              c:identifier="as_inf_error_quark"
              version="0.3.7">
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-inf.c"
             line="29">An error quark.</doc>
        <type name="GLib.Quark" c:type="GQuark"/>
      </return-value>
    </function>
    <function name="inf_get_driver_version"
              c:identifier="as_inf_get_driver_version"
              version="0.3.5"
              throws="1">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-inf.c"
           line="91">Parses the DriverVer string into a recognisable version and timestamp;</doc>
      <source-position filename="libappstream-glib/as-inf.h" line="63"/>
      <return-value transfer-ownership="full">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-inf.c"
             line="99">the version string, or %NULL for error.</doc>
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="keyfile" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-inf.c"
               line="93">a #GKeyFile</doc>
          <type name="GLib.KeyFile" c:type="GKeyFile*"/>
        </parameter>
        <parameter name="timestamp" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-inf.c"
               line="94">the returned driverver timestamp, or %NULL</doc>
          <type name="guint64" c:type="guint64*"/>
        </parameter>
      </parameters>
    </function>
    <function name="inf_load_data"
              c:identifier="as_inf_load_data"
              version="0.3.5"
              throws="1">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-inf.c"
           line="35">Repairs .inf file data and opens it as a keyfile.

Important: The group and keynames are all forced to lower case as INF files
are specified as case insensitive and GKeyFile *is* case sensitive.
Any backslashes or spaces in the key name are also converted to '_'.</doc>
      <source-position filename="libappstream-glib/as-inf.h" line="53"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-inf.c"
             line="48">%TRUE for success</doc>
        <type name="gboolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="keyfile" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-inf.c"
               line="37">a #GKeyFile</doc>
          <type name="GLib.KeyFile" c:type="GKeyFile*"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-inf.c"
               line="38">the .inf file date to parse</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
        <parameter name="flags" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-inf.c"
               line="39">#AsInfLoadFlags, e.g. %AS_INF_LOAD_FLAG_NONE</doc>
          <type name="InfLoadFlags" c:type="AsInfLoadFlags"/>
        </parameter>
      </parameters>
    </function>
    <function name="inf_load_file"
              c:identifier="as_inf_load_file"
              version="0.3.5"
              throws="1">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-inf.c"
           line="65">Repairs an .inf file and opens it as a keyfile.</doc>
      <source-position filename="libappstream-glib/as-inf.h" line="58"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-inf.c"
             line="74">%TRUE for success</doc>
        <type name="gboolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="keyfile" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-inf.c"
               line="67">a #GKeyFile</doc>
          <type name="GLib.KeyFile" c:type="GKeyFile*"/>
        </parameter>
        <parameter name="filename" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-inf.c"
               line="68">the .inf file to open</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
        <parameter name="flags" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-inf.c"
               line="69">#AsInfLoadFlags, e.g. %AS_INF_LOAD_FLAG_NONE</doc>
          <type name="InfLoadFlags" c:type="AsInfLoadFlags"/>
        </parameter>
      </parameters>
    </function>
    <function name="kudo_kind_from_string"
              c:identifier="as_kudo_kind_from_string"
              version="0.2.2">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-enums.c"
           line="167">Converts the text representation to an enumerated value.</doc>
      <source-position filename="libappstream-glib/as-enums.h" line="158"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-enums.c"
             line="173">a #AsKudoKind or %AS_KUDO_KIND_UNKNOWN for unknown</doc>
        <type name="KudoKind" c:type="AsKudoKind"/>
      </return-value>
      <parameters>
        <parameter name="kudo_kind" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-enums.c"
               line="169">the string.</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="kudo_kind_to_string"
              c:identifier="as_kudo_kind_to_string"
              version="0.2.2">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-enums.c"
           line="137">Converts the enumerated value to an text representation.</doc>
      <source-position filename="libappstream-glib/as-enums.h" line="157"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-enums.c"
             line="143">string version of @kudo_kind</doc>
        <type name="utf8" c:type="const gchar*"/>
      </return-value>
      <parameters>
        <parameter name="kudo_kind" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-enums.c"
               line="139">the @AsKudoKind.</doc>
          <type name="KudoKind" c:type="AsKudoKind"/>
        </parameter>
      </parameters>
    </function>
    <function name="markup_convert"
              c:identifier="as_markup_convert"
              version="0.3.5"
              throws="1">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-markup.c"
           line="597">Converts an XML description into a printable form.</doc>
      <source-position filename="libappstream-glib/as-markup.h" line="54"/>
      <return-value transfer-ownership="full">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-markup.c"
             line="605">a newly allocated %NULL terminated string</doc>
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="markup" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-markup.c"
               line="599">the text to copy.</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
        <parameter name="format" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-markup.c"
               line="600">the #AsMarkupConvertFormat, e.g. %AS_MARKUP_CONVERT_FORMAT_MARKDOWN</doc>
          <type name="MarkupConvertFormat" c:type="AsMarkupConvertFormat"/>
        </parameter>
      </parameters>
    </function>
    <function name="markup_convert_full"
              c:identifier="as_markup_convert_full"
              version="0.3.5"
              throws="1">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-markup.c"
           line="478">Converts an XML description into a printable form.</doc>
      <source-position filename="libappstream-glib/as-markup.h" line="57"/>
      <return-value transfer-ownership="full">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-markup.c"
             line="487">a newly allocated %NULL terminated string</doc>
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="markup" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-markup.c"
               line="480">the text to copy.</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
        <parameter name="format" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-markup.c"
               line="481">the #AsMarkupConvertFormat, e.g. %AS_MARKUP_CONVERT_FORMAT_MARKDOWN</doc>
          <type name="MarkupConvertFormat" c:type="AsMarkupConvertFormat"/>
        </parameter>
        <parameter name="flags" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-markup.c"
               line="482">the #AsMarkupConvertFlag, e.g. %AS_MARKUP_CONVERT_FLAG_IGNORE_ERRORS</doc>
          <type name="MarkupConvertFlag" c:type="AsMarkupConvertFlag"/>
        </parameter>
      </parameters>
    </function>
    <function name="markup_convert_simple"
              c:identifier="as_markup_convert_simple"
              version="0.1.0"
              throws="1">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-markup.c"
           line="618">Converts an XML description into a printable form.</doc>
      <source-position filename="libappstream-glib/as-markup.h" line="52"/>
      <return-value transfer-ownership="full">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-markup.c"
             line="625">a newly allocated %NULL terminated string</doc>
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="markup" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-markup.c"
               line="620">the text to copy.</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="markup_import"
              c:identifier="as_markup_import"
              version="0.5.11"
              throws="1">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-markup.c"
           line="290">Imports text and converts to AppStream markup.</doc>
      <source-position filename="libappstream-glib/as-markup.h" line="65"/>
      <return-value transfer-ownership="full">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-markup.c"
             line="298">appstream markup, or %NULL in event of an error</doc>
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="text" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-markup.c"
               line="292">the text to import.</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
        <parameter name="format" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-markup.c"
               line="293">the #AsMarkupConvertFormat, e.g. %AS_MARKUP_CONVERT_FORMAT_SIMPLE</doc>
          <type name="MarkupConvertFormat" c:type="AsMarkupConvertFormat"/>
        </parameter>
      </parameters>
    </function>
    <function name="markup_strsplit_words"
              c:identifier="as_markup_strsplit_words"
              version="0.3.5">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-markup.c"
           line="316">Splits up a long line into an array of smaller strings, each being no longer
than @line_len. Words are not split.</doc>
      <source-position filename="libappstream-glib/as-markup.h" line="63"/>
      <return-value transfer-ownership="full">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-markup.c"
             line="324">lines, or %NULL in event of an error</doc>
        <array c:type="gchar**">
          <type name="utf8"/>
        </array>
      </return-value>
      <parameters>
        <parameter name="text" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-markup.c"
               line="318">the text to split.</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
        <parameter name="line_len" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-markup.c"
               line="319">the maximum length of the output line</doc>
          <type name="guint" c:type="guint"/>
        </parameter>
      </parameters>
    </function>
    <function name="markup_validate"
              c:identifier="as_markup_validate"
              version="0.5.1"
              throws="1">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-markup.c"
           line="459">Validates some markup.</doc>
      <source-position filename="libappstream-glib/as-markup.h" line="61"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-markup.c"
             line="466">%TRUE if the appstream description was valid</doc>
        <type name="gboolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="markup" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-markup.c"
               line="461">the text to validate</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="node_add_attribute"
              c:identifier="as_node_add_attribute"
              version="0.1.1"
              introspectable="0">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-node.c"
           line="1430">Adds a new attribute to a node.</doc>
      <source-position filename="libappstream-glib/as-node.h" line="134"/>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="node" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-node.c"
               line="1432">a #AsNode</doc>
          <type name="GLib.Node" c:type="GNode*"/>
        </parameter>
        <parameter name="key" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-node.c"
               line="1433">the attribute key</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
        <parameter name="value" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-node.c"
               line="1434">new data</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="node_add_attribute_as_int"
              c:identifier="as_node_add_attribute_as_int"
              version="0.3.1"
              introspectable="0">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-node.c"
           line="1457">Adds a new attribute to a node.</doc>
      <source-position filename="libappstream-glib/as-node.h" line="137"/>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="node" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-node.c"
               line="1459">a #AsNode</doc>
          <type name="GLib.Node" c:type="GNode*"/>
        </parameter>
        <parameter name="key" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-node.c"
               line="1460">the attribute key</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
        <parameter name="value" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-node.c"
               line="1461">new data</doc>
          <type name="gint" c:type="gint"/>
        </parameter>
      </parameters>
    </function>
    <function name="node_add_attribute_as_uint"
              c:identifier="as_node_add_attribute_as_uint"
              version="0.6.1"
              introspectable="0">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-node.c"
           line="1474">Adds a new attribute to a node.</doc>
      <source-position filename="libappstream-glib/as-node.h" line="140"/>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="node" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-node.c"
               line="1476">a #AsNode</doc>
          <type name="GLib.Node" c:type="GNode*"/>
        </parameter>
        <parameter name="key" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-node.c"
               line="1477">the attribute key</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
        <parameter name="value" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-node.c"
               line="1478">new data</doc>
          <type name="guint" c:type="guint"/>
        </parameter>
      </parameters>
    </function>
    <function name="node_error_quark"
              c:identifier="as_node_error_quark"
              version="0.1.0">
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-node.c"
             line="199">An error quark.</doc>
        <type name="GLib.Quark" c:type="GQuark"/>
      </return-value>
    </function>
    <function name="node_find"
              c:identifier="as_node_find"
              version="0.1.0"
              introspectable="0">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-node.c"
           line="1491">Gets a node from the DOM tree.</doc>
      <source-position filename="libappstream-glib/as-node.h" line="168"/>
      <return-value>
        <doc xml:space="preserve"
             filename="libappstream-glib/as-node.c"
             line="1498">A #AsNode, or %NULL if not found</doc>
        <type name="GLib.Node" c:type="GNode*"/>
      </return-value>
      <parameters>
        <parameter name="root" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-node.c"
               line="1493">a root node, or %NULL</doc>
          <type name="GLib.Node" c:type="GNode*"/>
        </parameter>
        <parameter name="path" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-node.c"
               line="1494">a path in the DOM, e.g. "html/body"</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="node_find_with_attribute"
              c:identifier="as_node_find_with_attribute"
              version="0.1.0"
              introspectable="0">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-node.c"
           line="1520">Gets a node from the DOM tree with a specified attribute.</doc>
      <source-position filename="libappstream-glib/as-node.h" line="171"/>
      <return-value>
        <doc xml:space="preserve"
             filename="libappstream-glib/as-node.c"
             line="1529">A #AsNode, or %NULL if not found</doc>
        <type name="GLib.Node" c:type="GNode*"/>
      </return-value>
      <parameters>
        <parameter name="root" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-node.c"
               line="1522">a root node, or %NULL</doc>
          <type name="GLib.Node" c:type="GNode*"/>
        </parameter>
        <parameter name="path" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-node.c"
               line="1523">a path in the DOM, e.g. "html/body"</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
        <parameter name="attr_key" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-node.c"
               line="1524">the attribute key</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
        <parameter name="attr_value" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-node.c"
               line="1525">the attribute value</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="node_from_bytes"
              c:identifier="as_node_from_bytes"
              version="0.7.6"
              introspectable="0"
              throws="1">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-node.c"
           line="893">Parses XML data into a DOM tree.</doc>
      <source-position filename="libappstream-glib/as-node.h" line="152"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-node.c"
             line="901">A populated #AsNode tree</doc>
        <type name="GLib.Node" c:type="GNode*"/>
      </return-value>
      <parameters>
        <parameter name="bytes" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-node.c"
               line="895">a #GBytes</doc>
          <type name="GLib.Bytes" c:type="GBytes*"/>
        </parameter>
        <parameter name="flags" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-node.c"
               line="896">#AsNodeFromXmlFlags, e.g. %AS_NODE_FROM_XML_FLAG_NONE</doc>
          <type name="NodeFromXmlFlags" c:type="AsNodeFromXmlFlags"/>
        </parameter>
      </parameters>
    </function>
    <function name="node_from_file"
              c:identifier="as_node_from_file"
              version="0.1.0"
              introspectable="0"
              throws="1">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-node.c"
           line="967">Parses an XML file into a DOM tree.</doc>
      <source-position filename="libappstream-glib/as-node.h" line="156"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-node.c"
             line="976">A populated #AsNode tree</doc>
        <type name="GLib.Node" c:type="GNode*"/>
      </return-value>
      <parameters>
        <parameter name="file" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-node.c"
               line="969">file</doc>
          <type name="Gio.File" c:type="GFile*"/>
        </parameter>
        <parameter name="flags" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-node.c"
               line="970">#AsNodeFromXmlFlags, e.g. %AS_NODE_FROM_XML_FLAG_NONE</doc>
          <type name="NodeFromXmlFlags" c:type="AsNodeFromXmlFlags"/>
        </parameter>
        <parameter name="cancellable"
                   transfer-ownership="none"
                   nullable="1"
                   allow-none="1">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-node.c"
               line="971">A #GCancellable, or %NULL</doc>
          <type name="Gio.Cancellable" c:type="GCancellable*"/>
        </parameter>
      </parameters>
    </function>
    <function name="node_from_xml"
              c:identifier="as_node_from_xml"
              version="0.1.0"
              introspectable="0"
              throws="1">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-node.c"
           line="915">Parses XML data into a DOM tree.</doc>
      <source-position filename="libappstream-glib/as-node.h" line="148"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-node.c"
             line="923">A populated #AsNode tree</doc>
        <type name="GLib.Node" c:type="GNode*"/>
      </return-value>
      <parameters>
        <parameter name="data" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-node.c"
               line="917">XML data</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
        <parameter name="flags" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-node.c"
               line="918">#AsNodeFromXmlFlags, e.g. %AS_NODE_FROM_XML_FLAG_NONE</doc>
          <type name="NodeFromXmlFlags" c:type="AsNodeFromXmlFlags"/>
        </parameter>
      </parameters>
    </function>
    <function name="node_get_attribute"
              c:identifier="as_node_get_attribute"
              version="0.1.0">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-node.c"
           line="1385">Gets a node attribute, e.g. "false"</doc>
      <source-position filename="libappstream-glib/as-node.h" line="114"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-node.c"
             line="1392">string value</doc>
        <type name="utf8" c:type="const gchar*"/>
      </return-value>
      <parameters>
        <parameter name="node" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-node.c"
               line="1387">a #AsNode</doc>
          <type name="GLib.Node" c:type="const GNode*"/>
        </parameter>
        <parameter name="key" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-node.c"
               line="1388">the attribute key</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="node_get_attribute_as_int"
              c:identifier="as_node_get_attribute_as_int"
              version="0.1.0">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-node.c"
           line="1302">Gets a node attribute, e.g. 34</doc>
      <source-position filename="libappstream-glib/as-node.h" line="116"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-node.c"
             line="1309">integer value, or %G_MAXINT for error</doc>
        <type name="gint" c:type="gint"/>
      </return-value>
      <parameters>
        <parameter name="node" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-node.c"
               line="1304">a #AsNode</doc>
          <type name="GLib.Node" c:type="const GNode*"/>
        </parameter>
        <parameter name="key" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-node.c"
               line="1305">the attribute key</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="node_get_attribute_as_uint"
              c:identifier="as_node_get_attribute_as_uint"
              version="0.6.1">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-node.c"
           line="1331">Gets a node attribute, e.g. 34</doc>
      <source-position filename="libappstream-glib/as-node.h" line="118"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-node.c"
             line="1338">integer value, or %G_MAXINT for error</doc>
        <type name="guint" c:type="guint"/>
      </return-value>
      <parameters>
        <parameter name="node" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-node.c"
               line="1333">a #AsNode</doc>
          <type name="GLib.Node" c:type="const GNode*"/>
        </parameter>
        <parameter name="key" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-node.c"
               line="1334">the attribute key</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="node_get_comment"
              c:identifier="as_node_get_comment"
              version="0.1.6">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-node.c"
           line="1211">Gets the node data, e.g. "Copyright 2014 Richard Hughes"</doc>
      <source-position filename="libappstream-glib/as-node.h" line="112"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-node.c"
             line="1217">string value, or %NULL</doc>
        <type name="utf8" c:type="const gchar*"/>
      </return-value>
      <parameters>
        <parameter name="node" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-node.c"
               line="1213">a #AsNode</doc>
          <type name="GLib.Node" c:type="const GNode*"/>
        </parameter>
      </parameters>
    </function>
    <function name="node_get_data"
              c:identifier="as_node_get_data"
              version="0.1.0">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-node.c"
           line="1195">Gets the node data, e.g. "paragraph text"</doc>
      <source-position filename="libappstream-glib/as-node.h" line="111"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-node.c"
             line="1201">string value</doc>
        <type name="utf8" c:type="const gchar*"/>
      </return-value>
      <parameters>
        <parameter name="node" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-node.c"
               line="1197">a #AsNode</doc>
          <type name="GLib.Node" c:type="const GNode*"/>
        </parameter>
      </parameters>
    </function>
    <function name="node_get_localized"
              c:identifier="as_node_get_localized"
              version="0.1.0">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-node.c"
           line="1763">Extracts localized values from the DOM tree</doc>
      <source-position filename="libappstream-glib/as-node.h" line="120"/>
      <return-value transfer-ownership="full">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-node.c"
             line="1770">A hash table with the locale (e.g. en_GB) as the key</doc>
        <type name="GLib.HashTable" c:type="GHashTable*">
          <type name="gpointer" c:type="gpointer"/>
          <type name="gpointer" c:type="gpointer"/>
        </type>
      </return-value>
      <parameters>
        <parameter name="node" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-node.c"
               line="1765">a #AsNode</doc>
          <type name="GLib.Node" c:type="const GNode*"/>
        </parameter>
        <parameter name="key" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-node.c"
               line="1766">the key to use, e.g. "copyright"</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="node_get_localized_best"
              c:identifier="as_node_get_localized_best"
              version="0.1.0">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-node.c"
           line="1812">Gets the 'best' locale version of a specific data value.</doc>
      <source-position filename="libappstream-glib/as-node.h" line="122"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-node.c"
             line="1819">the string value, or %NULL if there was no data</doc>
        <type name="utf8" c:type="const gchar*"/>
      </return-value>
      <parameters>
        <parameter name="node" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-node.c"
               line="1814">a #AsNode.</doc>
          <type name="GLib.Node" c:type="const GNode*"/>
        </parameter>
        <parameter name="key" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-node.c"
               line="1815">the tag name.</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="node_get_localized_unwrap"
              c:identifier="as_node_get_localized_unwrap"
              version="0.1.0"
              throws="1">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-node.c"
           line="2089">Denormalize AppData data like this:

|[
&lt;description&gt;
 &lt;p&gt;Hi&lt;/p&gt;
 &lt;p xml:lang="pl"&gt;Czesc&lt;/p&gt;
 &lt;ul&gt;
  &lt;li&gt;First&lt;/li&gt;
  &lt;li xml:lang="pl"&gt;Pierwszy&lt;/li&gt;
 &lt;/ul&gt;
&lt;/description&gt;
]|

into a hash that contains:

|[
"C"  -&gt;  "&lt;p&gt;Hi&lt;/p&gt;&lt;ul&gt;&lt;li&gt;First&lt;/li&gt;&lt;/ul&gt;"
"pl" -&gt;  "&lt;p&gt;Czesc&lt;/p&gt;&lt;ul&gt;&lt;li&gt;Pierwszy&lt;/li&gt;&lt;/ul&gt;"
]|</doc>
      <source-position filename="libappstream-glib/as-node.h" line="124"/>
      <return-value transfer-ownership="full">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-node.c"
             line="2114">a hash table of data</doc>
        <type name="GLib.HashTable" c:type="GHashTable*">
          <type name="gpointer" c:type="gpointer"/>
          <type name="gpointer" c:type="gpointer"/>
        </type>
      </return-value>
      <parameters>
        <parameter name="node" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-node.c"
               line="2091">a #AsNode.</doc>
          <type name="GLib.Node" c:type="const GNode*"/>
        </parameter>
      </parameters>
    </function>
    <function name="node_get_name"
              c:identifier="as_node_get_name"
              version="0.1.0">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-node.c"
           line="1118">Gets the node name, e.g. "body"</doc>
      <source-position filename="libappstream-glib/as-node.h" line="110"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-node.c"
             line="1124">string value</doc>
        <type name="utf8" c:type="const gchar*"/>
      </return-value>
      <parameters>
        <parameter name="node" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-node.c"
               line="1120">a #AsNode</doc>
          <type name="GLib.Node" c:type="const GNode*"/>
        </parameter>
      </parameters>
    </function>
    <function name="node_get_tag"
              c:identifier="as_node_get_tag"
              version="0.1.2">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-node.c"
           line="1227">Gets the node tag enum.</doc>
      <source-position filename="libappstream-glib/as-node.h" line="113"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-node.c"
             line="1233">#AsTag, e.g. %AS_TAG_PKGNAME</doc>
        <type name="Tag" c:type="AsTag"/>
      </return-value>
      <parameters>
        <parameter name="node" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-node.c"
               line="1229">a #AsNode</doc>
          <type name="GLib.Node" c:type="const GNode*"/>
        </parameter>
      </parameters>
    </function>
    <function name="node_insert"
              c:identifier="as_node_insert"
              version="0.1.0"
              introspectable="0">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-node.c"
           line="1580">Inserts a node into the DOM.</doc>
      <source-position filename="libappstream-glib/as-node.h" line="177"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-node.c"
             line="1590">A populated #AsNode</doc>
        <type name="GLib.Node" c:type="GNode*"/>
      </return-value>
      <parameters>
        <parameter name="parent" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-node.c"
               line="1582">a parent #AsNode.</doc>
          <type name="GLib.Node" c:type="GNode*"/>
        </parameter>
        <parameter name="name" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-node.c"
               line="1583">the tag name, e.g. "id".</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
        <parameter name="cdata" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-node.c"
               line="1584">the tag data, or %NULL, e.g. "org.gnome.Software.desktop".</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
        <parameter name="insert_flags" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-node.c"
               line="1585">any %AsNodeInsertFlags.</doc>
          <type name="NodeInsertFlags" c:type="AsNodeInsertFlags"/>
        </parameter>
        <parameter name="..." transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-node.c"
               line="1586">any attributes to add to the node, terminated by %NULL</doc>
          <varargs/>
        </parameter>
      </parameters>
    </function>
    <function name="node_insert_hash"
              c:identifier="as_node_insert_hash"
              version="0.1.0">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-node.c"
           line="1713">Inserts a hash table of data into the DOM.</doc>
      <source-position filename="libappstream-glib/as-node.h" line="187"/>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="parent" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-node.c"
               line="1715">a parent #AsNode.</doc>
          <type name="GLib.Node" c:type="GNode*"/>
        </parameter>
        <parameter name="name" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-node.c"
               line="1716">the tag name, e.g. "id".</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
        <parameter name="attr_key" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-node.c"
               line="1717">the key to use as the attribute in the XML, e.g. "key".</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
        <parameter name="hash" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-node.c"
               line="1718">the hash table with the key as the key to use in the XML.</doc>
          <type name="GLib.HashTable" c:type="GHashTable*">
            <type name="gpointer" c:type="gpointer"/>
            <type name="gpointer" c:type="gpointer"/>
          </type>
        </parameter>
        <parameter name="insert_flags" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-node.c"
               line="1719">any %AsNodeInsertFlags.</doc>
          <type name="NodeInsertFlags" c:type="AsNodeInsertFlags"/>
        </parameter>
      </parameters>
    </function>
    <function name="node_insert_localized"
              c:identifier="as_node_insert_localized"
              version="0.1.0">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-node.c"
           line="1642">Inserts a localized key into the DOM.</doc>
      <source-position filename="libappstream-glib/as-node.h" line="183"/>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="parent" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-node.c"
               line="1644">a parent #AsNode.</doc>
          <type name="GLib.Node" c:type="GNode*"/>
        </parameter>
        <parameter name="name" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-node.c"
               line="1645">the tag name, e.g. "id".</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
        <parameter name="localized" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-node.c"
               line="1646">the hash table of data, with the locale as the key.</doc>
          <type name="GLib.HashTable" c:type="GHashTable*">
            <type name="gpointer" c:type="gpointer"/>
            <type name="gpointer" c:type="gpointer"/>
          </type>
        </parameter>
        <parameter name="insert_flags" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-node.c"
               line="1647">any %AsNodeInsertFlags.</doc>
          <type name="NodeInsertFlags" c:type="AsNodeInsertFlags"/>
        </parameter>
      </parameters>
    </function>
    <function name="node_new"
              c:identifier="as_node_new"
              version="0.1.0"
              introspectable="0">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-node.c"
           line="63">Creates a new empty tree whicah can have nodes appended to it.</doc>
      <source-position filename="libappstream-glib/as-node.h" line="106"/>
      <return-value transfer-ownership="full">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-node.c"
             line="68">a new empty tree</doc>
        <type name="GLib.Node" c:type="GNode*"/>
      </return-value>
    </function>
    <function name="node_remove_attribute"
              c:identifier="as_node_remove_attribute"
              version="0.2.0"
              introspectable="0">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-node.c"
           line="1402">Removes a node attribute, e.g. "type"</doc>
      <source-position filename="libappstream-glib/as-node.h" line="143"/>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="node" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-node.c"
               line="1404">a #AsNode</doc>
          <type name="GLib.Node" c:type="GNode*"/>
        </parameter>
        <parameter name="key" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-node.c"
               line="1405">the attribute key</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="node_set_comment"
              c:identifier="as_node_set_comment"
              version="0.1.6"
              introspectable="0">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-node.c"
           line="1287">Sets new comment for the node.</doc>
      <source-position filename="libappstream-glib/as-node.h" line="132"/>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="node" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-node.c"
               line="1289">a #AsNode</doc>
          <type name="GLib.Node" c:type="GNode*"/>
        </parameter>
        <parameter name="comment" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-node.c"
               line="1290">new comment</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="node_set_data"
              c:identifier="as_node_set_data"
              version="0.1.1"
              introspectable="0">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-node.c"
           line="1258">Sets new data on a node.</doc>
      <source-position filename="libappstream-glib/as-node.h" line="129"/>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="node" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-node.c"
               line="1260">a #AsNode</doc>
          <type name="GLib.Node" c:type="GNode*"/>
        </parameter>
        <parameter name="cdata" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-node.c"
               line="1261">new data</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
        <parameter name="insert_flags" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-node.c"
               line="1262">any %AsNodeInsertFlags.</doc>
          <type name="NodeInsertFlags" c:type="AsNodeInsertFlags"/>
        </parameter>
      </parameters>
    </function>
    <function name="node_set_name"
              c:identifier="as_node_set_name"
              version="0.1.4"
              introspectable="0">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-node.c"
           line="1137">Sets the node name, e.g. "body"</doc>
      <source-position filename="libappstream-glib/as-node.h" line="127"/>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="node" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-node.c"
               line="1139">a #AsNode</doc>
          <type name="GLib.Node" c:type="GNode*"/>
        </parameter>
        <parameter name="name" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-node.c"
               line="1140">the new name</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="node_to_file"
              c:identifier="as_node_to_file"
              version="0.2.0"
              introspectable="0"
              throws="1">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-node.c"
           line="933">Exports a DOM tree to an XML file.</doc>
      <source-position filename="libappstream-glib/as-node.h" line="161"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-node.c"
             line="943">%TRUE for success</doc>
        <type name="gboolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="root" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-node.c"
               line="935">A populated #AsNode tree</doc>
          <type name="GLib.Node" c:type="const GNode*"/>
        </parameter>
        <parameter name="file" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-node.c"
               line="936">a #GFile</doc>
          <type name="Gio.File" c:type="GFile*"/>
        </parameter>
        <parameter name="flags" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-node.c"
               line="937">#AsNodeToXmlFlags, e.g. %AS_NODE_TO_XML_FLAG_NONE</doc>
          <type name="NodeToXmlFlags" c:type="AsNodeToXmlFlags"/>
        </parameter>
        <parameter name="cancellable"
                   transfer-ownership="none"
                   nullable="1"
                   allow-none="1">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-node.c"
               line="938">A #GCancellable, or %NULL</doc>
          <type name="Gio.Cancellable" c:type="GCancellable*"/>
        </parameter>
      </parameters>
    </function>
    <function name="node_to_xml" c:identifier="as_node_to_xml" version="0.1.0">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-node.c"
           line="562">Converts a node and it's children to XML.</doc>
      <source-position filename="libappstream-glib/as-node.h" line="146"/>
      <return-value transfer-ownership="full">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-node.c"
             line="569">a #GString</doc>
        <type name="GLib.String" c:type="GString*"/>
      </return-value>
      <parameters>
        <parameter name="node" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-node.c"
               line="564">a #AsNode.</doc>
          <type name="GLib.Node" c:type="const GNode*"/>
        </parameter>
        <parameter name="flags" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-node.c"
               line="565">the AsNodeToXmlFlags, e.g. %AS_NODE_TO_XML_FLAG_NONE.</doc>
          <type name="NodeToXmlFlags" c:type="AsNodeToXmlFlags"/>
        </parameter>
      </parameters>
    </function>
    <function name="node_unref" c:identifier="as_node_unref" version="0.1.0">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-node.c"
           line="176">Deallocates all notes in the tree.</doc>
      <source-position filename="libappstream-glib/as-node.h" line="108"/>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="node" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-node.c"
               line="178">a #AsNode.</doc>
          <type name="GLib.Node" c:type="GNode*"/>
        </parameter>
      </parameters>
    </function>
    <function name="size_kind_from_string"
              c:identifier="as_size_kind_from_string"
              version="0.5.2">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-enums.c"
           line="217">Converts the text representation to an enumerated value.</doc>
      <source-position filename="libappstream-glib/as-enums.h" line="149"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-enums.c"
             line="223">a #AsSizeKind or %AS_SIZE_KIND_UNKNOWN for unknown</doc>
        <type name="SizeKind" c:type="AsSizeKind"/>
      </return-value>
      <parameters>
        <parameter name="size_kind" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-enums.c"
               line="219">the string.</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="size_kind_to_string"
              c:identifier="as_size_kind_to_string"
              version="0.5.2">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-enums.c"
           line="197">Converts the enumerated value to an text representation.</doc>
      <source-position filename="libappstream-glib/as-enums.h" line="148"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-enums.c"
             line="203">string version of @size_kind</doc>
        <type name="utf8" c:type="const gchar*"/>
      </return-value>
      <parameters>
        <parameter name="size_kind" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-enums.c"
               line="199">the #AsSizeKind.</doc>
          <type name="SizeKind" c:type="AsSizeKind"/>
        </parameter>
      </parameters>
    </function>
    <function name="tag_from_string"
              c:identifier="as_tag_from_string"
              version="0.1.0">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-tag.c"
           line="30">Converts the text representation to an enumerated value.</doc>
      <source-position filename="libappstream-glib/as-tag.h" line="177"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-tag.c"
             line="36">a %AsTag, or %AS_TAG_UNKNOWN if not known.</doc>
        <type name="Tag" c:type="AsTag"/>
      </return-value>
      <parameters>
        <parameter name="tag" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-tag.c"
               line="32">the string.</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="tag_from_string_full"
              c:identifier="as_tag_from_string_full"
              version="0.1.2">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-tag.c"
           line="46">Converts the text representation to an enumerated value also converting
legacy key names.</doc>
      <source-position filename="libappstream-glib/as-tag.h" line="178"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-tag.c"
             line="54">a %AsTag, or %AS_TAG_UNKNOWN if not known.</doc>
        <type name="Tag" c:type="AsTag"/>
      </return-value>
      <parameters>
        <parameter name="tag" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-tag.c"
               line="48">the string.</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
        <parameter name="flags" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-tag.c"
               line="49">the #AsTagFlags e.g. %AS_TAG_FLAG_USE_FALLBACKS</doc>
          <type name="TagFlags" c:type="AsTagFlags"/>
        </parameter>
      </parameters>
    </function>
    <function name="tag_to_string"
              c:identifier="as_tag_to_string"
              version="0.1.0">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-tag.c"
           line="105">Converts the enumerated value to an text representation.</doc>
      <source-position filename="libappstream-glib/as-tag.h" line="180"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-tag.c"
             line="111">string version of @tag</doc>
        <type name="utf8" c:type="const gchar*"/>
      </return-value>
      <parameters>
        <parameter name="tag" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-tag.c"
               line="107">the %AsTag value.</doc>
          <type name="Tag" c:type="AsTag"/>
        </parameter>
      </parameters>
    </function>
    <function name="urgency_kind_from_string"
              c:identifier="as_urgency_kind_from_string"
              version="0.5.1">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-enums.c"
           line="261">Converts the text representation to an enumerated value.</doc>
      <source-position filename="libappstream-glib/as-enums.h" line="152"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-enums.c"
             line="267">a #AsUrgencyKind or %AS_URGENCY_KIND_UNKNOWN for unknown</doc>
        <type name="UrgencyKind" c:type="AsUrgencyKind"/>
      </return-value>
      <parameters>
        <parameter name="urgency_kind" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-enums.c"
               line="263">the string.</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="urgency_kind_to_string"
              c:identifier="as_urgency_kind_to_string"
              version="0.5.1">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-enums.c"
           line="237">Converts the enumerated value to an text representation.</doc>
      <source-position filename="libappstream-glib/as-enums.h" line="151"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-enums.c"
             line="243">string version of @urgency_kind</doc>
        <type name="utf8" c:type="const gchar*"/>
      </return-value>
      <parameters>
        <parameter name="urgency_kind" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-enums.c"
               line="239">the #AsUrgencyKind.</doc>
          <type name="UrgencyKind" c:type="AsUrgencyKind"/>
        </parameter>
      </parameters>
    </function>
    <function name="url_kind_from_string"
              c:identifier="as_url_kind_from_string"
              version="0.1.0">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-enums.c"
           line="97">Converts the text representation to an enumerated value.</doc>
      <source-position filename="libappstream-glib/as-enums.h" line="155"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-enums.c"
             line="103">a #AsUrlKind or %AS_URL_KIND_UNKNOWN for unknown</doc>
        <type name="UrlKind" c:type="AsUrlKind"/>
      </return-value>
      <parameters>
        <parameter name="url_kind" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-enums.c"
               line="99">the string.</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="url_kind_to_string"
              c:identifier="as_url_kind_to_string"
              version="0.1.0">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-enums.c"
           line="57">Converts the enumerated value to an text representation.</doc>
      <source-position filename="libappstream-glib/as-enums.h" line="154"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-enums.c"
             line="63">string version of @url_kind</doc>
        <type name="utf8" c:type="const gchar*"/>
      </return-value>
      <parameters>
        <parameter name="url_kind" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-enums.c"
               line="59">the @AsUrlKind.</doc>
          <type name="UrlKind" c:type="AsUrlKind"/>
        </parameter>
      </parameters>
    </function>
    <function name="utils_appstream_id_build"
              c:identifier="as_utils_appstream_id_build"
              version="0.6.4">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-utils.c"
           line="2079">Fixes a string to be a valid AppStream ID.

This function replaces any invalid chars with an underscore.</doc>
      <source-position filename="libappstream-glib/as-utils.h" line="180"/>
      <return-value transfer-ownership="full">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-utils.c"
             line="2087">a valid AppStream ID, or %NULL if @str is invalid</doc>
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="str" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-utils.c"
               line="2081">a string to build the AppStream ID from</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="utils_appstream_id_valid"
              c:identifier="as_utils_appstream_id_valid"
              version="0.6.4">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-utils.c"
           line="2111">Checks to see if a string is a valid AppStream ID. A valid AppStream ID only
contains alphanumeric chars, dots and dashes.</doc>
      <source-position filename="libappstream-glib/as-utils.h" line="181"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-utils.c"
             line="2118">%TRUE if the string is a valid AppStream ID</doc>
        <type name="gboolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="str" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-utils.c"
               line="2113">a string</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="utils_error_quark"
              c:identifier="as_utils_error_quark"
              version="0.3.7">
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-utils.c"
             line="48">An error quark.</doc>
        <type name="GLib.Quark" c:type="GQuark"/>
      </return-value>
    </function>
    <function name="utils_find_icon_filename"
              c:identifier="as_utils_find_icon_filename"
              version="0.2.5"
              throws="1">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-utils.c"
           line="1002">Finds an icon filename from a filesystem root.</doc>
      <source-position filename="libappstream-glib/as-utils.h" line="134"/>
      <return-value transfer-ownership="full">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-utils.c"
             line="1010">a newly allocated %NULL terminated string</doc>
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="destdir" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-utils.c"
               line="1004">the destdir.</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
        <parameter name="search" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-utils.c"
               line="1005">the icon search name, e.g. "microphone.svg"</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="utils_find_icon_filename_full"
              c:identifier="as_utils_find_icon_filename_full"
              version="0.3.1"
              throws="1">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-utils.c"
           line="859">Finds an icon filename from a filesystem root.</doc>
      <source-position filename="libappstream-glib/as-utils.h" line="137"/>
      <return-value transfer-ownership="full">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-utils.c"
             line="868">a newly allocated %NULL terminated string</doc>
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="destdir" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-utils.c"
               line="861">the destdir.</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
        <parameter name="search" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-utils.c"
               line="862">the icon search name, e.g. "microphone.svg"</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
        <parameter name="flags" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-utils.c"
               line="863">A #AsUtilsFindIconFlag bitfield</doc>
          <type name="UtilsFindIconFlag" c:type="AsUtilsFindIconFlag"/>
        </parameter>
      </parameters>
    </function>
    <function name="utils_guid_from_data"
              c:identifier="as_utils_guid_from_data"
              version="0.6.13"
              throws="1">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-utils.c"
           line="1510">Returns a GUID for some data. This uses a hash and so even small
differences in the @data will produce radically different return values.

The implementation is taken from RFC4122, Section 4.1.3; specifically
using a type-5 SHA-1 hash.</doc>
      <source-position filename="libappstream-glib/as-utils.h" line="155"/>
      <return-value transfer-ownership="full">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-utils.c"
             line="1523">A new GUID, or %NULL if the namespace_id was invalid</doc>
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="namespace_id" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-utils.c"
               line="1512">A namespace ID, e.g. "6ba7b810-9dad-11d1-80b4-00c04fd430c8"</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-utils.c"
               line="1513">data to hash</doc>
          <type name="guint8" c:type="const guint8*"/>
        </parameter>
        <parameter name="data_len" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-utils.c"
               line="1514">length of @data</doc>
          <type name="gsize" c:type="gsize"/>
        </parameter>
      </parameters>
    </function>
    <function name="utils_guid_from_string"
              c:identifier="as_utils_guid_from_string"
              version="0.5.0">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-utils.c"
           line="1611">Returns a GUID for a given string. This uses a hash and so even small
differences in the @str will produce radically different return values.

The implementation is taken from RFC4122, Section 4.1.3; specifically
using a type-5 SHA-1 hash with a DNS namespace.
The same result can be obtained with this simple python program:

   #!/usr/bin/python
   import uuid
   print uuid.uuid5(uuid.NAMESPACE_DNS, 'python.org')</doc>
      <source-position filename="libappstream-glib/as-utils.h" line="154"/>
      <return-value transfer-ownership="full">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-utils.c"
             line="1626">A new GUID, or %NULL if the string was invalid</doc>
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="str" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-utils.c"
               line="1613">A source string to use as a key</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="utils_guid_is_valid"
              c:identifier="as_utils_guid_is_valid"
              version="0.5.0">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-utils.c"
           line="1582">Checks the source string is a valid string GUID descriptor.</doc>
      <source-position filename="libappstream-glib/as-utils.h" line="153"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-utils.c"
             line="1588">%TRUE if @guid was a valid GUID, %FALSE otherwise</doc>
        <type name="gboolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="guid" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-utils.c"
               line="1584">string to check</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="utils_install_filename"
              c:identifier="as_utils_install_filename"
              version="0.3.4"
              throws="1">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-utils.c"
           line="1208">Installs an AppData, MetaInfo, AppStream XML or AppStream Icon metadata file.</doc>
      <source-position filename="libappstream-glib/as-utils.h" line="141"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-utils.c"
             line="1218">%TRUE for success, %FALSE if error is set</doc>
        <type name="gboolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="location" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-utils.c"
               line="1210">the #AsUtilsLocation, e.g. %AS_UTILS_LOCATION_CACHE</doc>
          <type name="UtilsLocation" c:type="AsUtilsLocation"/>
        </parameter>
        <parameter name="filename" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-utils.c"
               line="1211">the full path of the file to install</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
        <parameter name="origin" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-utils.c"
               line="1212">the origin to use for the installation, or %NULL</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
        <parameter name="destdir" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-utils.c"
               line="1213">the destdir to use, or %NULL</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="utils_is_blacklisted_id"
              c:identifier="as_utils_is_blacklisted_id"
              version="0.2.2">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-utils.c"
           line="226">Searches the known list of blacklisted desktop IDs.</doc>
      <source-position filename="libappstream-glib/as-utils.h" line="129"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-utils.c"
             line="232">%TRUE if the desktop ID is blacklisted</doc>
        <type name="gboolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="desktop_id" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-utils.c"
               line="228">a desktop ID, e.g. "gimp.desktop"</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="utils_is_category_id"
              c:identifier="as_utils_is_category_id"
              version="0.2.4">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-utils.c"
           line="269">Searches the known list of registered category IDs.</doc>
      <source-position filename="libappstream-glib/as-utils.h" line="126"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-utils.c"
             line="275">%TRUE if the category ID is valid</doc>
        <type name="gboolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="category_id" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-utils.c"
               line="271">a desktop ID, e.g. "AudioVideoEditing"</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="utils_is_environment_id"
              c:identifier="as_utils_is_environment_id"
              version="0.2.4">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-utils.c"
           line="242">Searches the known list of registered environment IDs.</doc>
      <source-position filename="libappstream-glib/as-utils.h" line="125"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-utils.c"
             line="248">%TRUE if the environment ID is valid</doc>
        <type name="gboolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="environment_id" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-utils.c"
               line="244">a desktop ID, e.g. "GNOME"</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="utils_is_spdx_license"
              c:identifier="as_utils_is_spdx_license"
              version="0.2.5">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-utils.c"
           line="503">Checks the licence string to check it being a valid licence.
NOTE: SPDX licences can't typically contain brackets.</doc>
      <source-position filename="libappstream-glib/as-utils.h" line="124"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-utils.c"
             line="510">%TRUE if the license is a valid "SPDX license"</doc>
        <type name="gboolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="license" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-utils.c"
               line="505">a SPDX license string, e.g. "CC-BY-3.0 and GFDL-1.3"</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="utils_is_spdx_license_id"
              c:identifier="as_utils_is_spdx_license_id"
              version="0.1.5">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-utils.c"
           line="191">Searches the known list of SPDX license IDs.</doc>
      <source-position filename="libappstream-glib/as-utils.h" line="123"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-utils.c"
             line="197">%TRUE if the license ID is a valid "SPDX license ID"</doc>
        <type name="gboolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="license_id" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-utils.c"
               line="193">a single SPDX license ID, e.g. "CC-BY-3.0"</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="utils_is_stock_icon_name"
              c:identifier="as_utils_is_stock_icon_name"
              version="0.1.3">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-utils.c"
           line="157">Searches the known list of stock icons.</doc>
      <source-position filename="libappstream-glib/as-utils.h" line="122"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-utils.c"
             line="163">%TRUE if the icon is a "stock icon name" and does not need to be
         included in the AppStream icon tarball</doc>
        <type name="gboolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="name" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-utils.c"
               line="159">an icon name</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="utils_license_to_spdx"
              c:identifier="as_utils_license_to_spdx"
              version="0.5.5">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-utils.c"
           line="553">Converts a non-SPDX license into an SPDX format string where possible.</doc>
      <source-position filename="libappstream-glib/as-utils.h" line="133"/>
      <return-value transfer-ownership="full">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-utils.c"
             line="559">the best-effort SPDX license string</doc>
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="license" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-utils.c"
               line="555">a not-quite SPDX license string, e.g. "GPLv3+"</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="utils_search_token_valid"
              c:identifier="as_utils_search_token_valid"
              version="0.3.4">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-utils.c"
           line="1288">Checks the search token if it is valid. Valid tokens are at least 3 chars in
length, not common words like "and", and do not contain markup.</doc>
      <source-position filename="libappstream-glib/as-utils.h" line="146"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-utils.c"
             line="1295">%TRUE is the search token was valid</doc>
        <type name="gboolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="token" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-utils.c"
               line="1290">the search token</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="utils_search_tokenize"
              c:identifier="as_utils_search_tokenize"
              version="0.3.4">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-utils.c"
           line="1315">Splits up a string into tokens and returns tokens that are suitable for
searching. This includes taking out common words and casefolding the
returned search tokens.</doc>
      <source-position filename="libappstream-glib/as-utils.h" line="147"/>
      <return-value transfer-ownership="full">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-utils.c"
             line="1323">Valid tokens to search for, or %NULL for error</doc>
        <array c:type="gchar**">
          <type name="utf8"/>
        </array>
      </return-value>
      <parameters>
        <parameter name="search" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-utils.c"
               line="1317">the search string</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="utils_spdx_license_detokenize"
              c:identifier="as_utils_spdx_license_detokenize"
              version="0.2.5">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-utils.c"
           line="460">De-tokenizes the SPDX licenses into a string.</doc>
      <source-position filename="libappstream-glib/as-utils.h" line="132"/>
      <return-value transfer-ownership="full">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-utils.c"
             line="466">string, or %NULL for invalid</doc>
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="license_tokens" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-utils.c"
               line="462">license tokens, typically from as_utils_spdx_license_tokenize()</doc>
          <type name="utf8" c:type="gchar**"/>
        </parameter>
      </parameters>
    </function>
    <function name="utils_spdx_license_tokenize"
              c:identifier="as_utils_spdx_license_tokenize"
              version="0.1.5">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-utils.c"
           line="402">Tokenizes the SPDX license string (or any simarly formatted string)
into parts. Any licence parts of the string e.g. "LGPL-2.0+" are prefexed
with "@", the conjunctive replaced with "&amp;" and the disjunctive replaced
with "|". Brackets are added as indervidual tokens and other strings are
appended into single tokens where possible.</doc>
      <source-position filename="libappstream-glib/as-utils.h" line="131"/>
      <return-value transfer-ownership="full">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-utils.c"
             line="412">array of strings, or %NULL for invalid</doc>
        <array c:type="gchar**">
          <type name="utf8"/>
        </array>
      </return-value>
      <parameters>
        <parameter name="license" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-utils.c"
               line="404">a license string, e.g. "LGPLv2+ and (QPL or GPLv2) and MIT"</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="utils_string_replace"
              c:identifier="as_utils_string_replace"
              version="0.5.11">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-utils.c"
           line="1751">Performs multiple search and replace operations on the given string.</doc>
      <source-position filename="libappstream-glib/as-utils.h" line="164"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-utils.c"
             line="1759">the number of replacements done, or 0 if @search is not found.</doc>
        <type name="guint" c:type="guint"/>
      </return-value>
      <parameters>
        <parameter name="string" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-utils.c"
               line="1753">The #GString to operate on</doc>
          <type name="GLib.String" c:type="GString*"/>
        </parameter>
        <parameter name="search" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-utils.c"
               line="1754">The text to search for</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
        <parameter name="replace" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-utils.c"
               line="1755">The text to use for substitutions</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="utils_unique_id_build"
              c:identifier="as_utils_unique_id_build"
              version="0.6.1">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-utils.c"
           line="1860">Builds a valid unique ID using available data.</doc>
      <source-position filename="libappstream-glib/as-utils.h" line="167"/>
      <return-value transfer-ownership="full">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-utils.c"
             line="1871">a unique name, or %NULL for error;</doc>
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="scope" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-utils.c"
               line="1862">a #AsAppScope e.g. %AS_APP_SCOPE_SYSTEM</doc>
          <type name="AppScope" c:type="AsAppScope"/>
        </parameter>
        <parameter name="bundle_kind" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-utils.c"
               line="1863">System, e.g. 'package' or 'flatpak'</doc>
          <type name="BundleKind" c:type="AsBundleKind"/>
        </parameter>
        <parameter name="origin" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-utils.c"
               line="1864">Origin, e.g. 'fedora' or 'gnome-apps-nightly'</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
        <parameter name="kind" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-utils.c"
               line="1865">#AsAppKind, e.g. %AS_APP_KIND_DESKTOP</doc>
          <type name="AppKind" c:type="AsAppKind"/>
        </parameter>
        <parameter name="id" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-utils.c"
               line="1866">AppStream ID, e.g. 'gimp.desktop'</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
        <parameter name="branch" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-utils.c"
               line="1867">Branch, e.g. '3-20' or 'master'</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="utils_unique_id_equal"
              c:identifier="as_utils_unique_id_equal"
              version="0.6.1">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-utils.c"
           line="2002">Checks two unique IDs for equality allowing globs to match.</doc>
      <source-position filename="libappstream-glib/as-utils.h" line="173"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-utils.c"
             line="2009">%TRUE if the ID's should be considered equal.</doc>
        <type name="gboolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="unique_id1" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-utils.c"
               line="2004">a unique ID</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
        <parameter name="unique_id2" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-utils.c"
               line="2005">another unique ID</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="utils_unique_id_hash"
              c:identifier="as_utils_unique_id_hash"
              version="0.6.2">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-utils.c"
           line="2026">Converts a unique-id to a hash value.

This function implements the widely used DJB hash on the ID subset of the
unique-id string.

It can be passed to g_hash_table_new() as the hash_func parameter,
when using non-NULL strings or unique_ids as keys in a GHashTable.</doc>
      <source-position filename="libappstream-glib/as-utils.h" line="179"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-utils.c"
             line="2038">a hash value corresponding to the key</doc>
        <type name="guint" c:type="guint"/>
      </return-value>
      <parameters>
        <parameter name="unique_id" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-utils.c"
               line="2028">a unique ID</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="utils_unique_id_match"
              c:identifier="as_utils_unique_id_match"
              version="0.7.8">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-utils.c"
           line="1943">Checks two unique IDs for equality allowing globs to match, whilst also
allowing clients to whitelist sections that have to match.</doc>
      <source-position filename="libappstream-glib/as-utils.h" line="175"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-utils.c"
             line="1952">%TRUE if the ID's should be considered equal.</doc>
        <type name="gboolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="unique_id1" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-utils.c"
               line="1945">a unique ID</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
        <parameter name="unique_id2" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-utils.c"
               line="1946">another unique ID</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
        <parameter name="match_flags" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-utils.c"
               line="1947">a #AsUniqueIdMatchFlags bitfield, e.g. %AS_UNIQUE_ID_MATCH_FLAG_ID</doc>
          <type name="UniqueIdMatchFlags" c:type="AsUniqueIdMatchFlags"/>
        </parameter>
      </parameters>
    </function>
    <function name="utils_unique_id_valid"
              c:identifier="as_utils_unique_id_valid"
              version="0.6.1">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-utils.c"
           line="1912">Checks if a unique ID is valid i.e. has the correct number of
sections.</doc>
      <source-position filename="libappstream-glib/as-utils.h" line="178"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-utils.c"
             line="1919">%TRUE if the ID is valid</doc>
        <type name="gboolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="unique_id" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-utils.c"
               line="1914">a unique ID</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="utils_vercmp"
              c:identifier="as_utils_vercmp"
              version="0.3.5">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-utils.c"
           line="1470">Compares version numbers for sorting.</doc>
      <source-position filename="libappstream-glib/as-utils.h" line="151"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-utils.c"
             line="1477">-1 if a &lt; b, +1 if a &gt; b, 0 if they are equal, and %G_MAXINT on error</doc>
        <type name="gint" c:type="gint"/>
      </return-value>
      <parameters>
        <parameter name="version_a" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-utils.c"
               line="1472">the release version, e.g. 1.2.3</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
        <parameter name="version_b" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-utils.c"
               line="1473">the release version, e.g. 1.2.3.1</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="utils_vercmp_full"
              c:identifier="as_utils_vercmp_full"
              version="0.7.15">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-utils.c"
           line="1431">Compares version numbers for sorting.</doc>
      <source-position filename="libappstream-glib/as-utils.h" line="148"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-utils.c"
             line="1439">-1 if a &lt; b, +1 if a &gt; b, 0 if they are equal, and %G_MAXINT on error</doc>
        <type name="gint" c:type="gint"/>
      </return-value>
      <parameters>
        <parameter name="version_a" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-utils.c"
               line="1433">the release version, e.g. 1.2.3</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
        <parameter name="version_b" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-utils.c"
               line="1434">the release version, e.g. 1.2.3.1</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
        <parameter name="flags" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-utils.c"
               line="1435">some #AsVersionCompareFlag</doc>
          <type name="VersionCompareFlag" c:type="AsVersionCompareFlag"/>
        </parameter>
      </parameters>
    </function>
    <function name="utils_version_from_uint16"
              c:identifier="as_utils_version_from_uint16"
              version="0.5.2">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-utils.c"
           line="1668">Returns a dotted decimal version string from a 16 bit number.</doc>
      <source-position filename="libappstream-glib/as-utils.h" line="161"/>
      <return-value transfer-ownership="full">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-utils.c"
             line="1675">A version number, e.g. "1.3"</doc>
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="val" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-utils.c"
               line="1670">A uint16le version number</doc>
          <type name="guint16" c:type="guint16"/>
        </parameter>
        <parameter name="flags" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-utils.c"
               line="1671">flags used for formatting, e.g. %AS_VERSION_PARSE_FLAG_USE_TRIPLET</doc>
          <type name="VersionParseFlag" c:type="AsVersionParseFlag"/>
        </parameter>
      </parameters>
    </function>
    <function name="utils_version_from_uint32"
              c:identifier="as_utils_version_from_uint32"
              version="0.5.2">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-utils.c"
           line="1641">Returns a dotted decimal version string from a 32 bit number.</doc>
      <source-position filename="libappstream-glib/as-utils.h" line="159"/>
      <return-value transfer-ownership="full">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-utils.c"
             line="1648">A version number, e.g. "1.0.3"</doc>
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="val" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-utils.c"
               line="1643">A uint32le version number</doc>
          <type name="guint32" c:type="guint32"/>
        </parameter>
        <parameter name="flags" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-utils.c"
               line="1644">flags used for formatting, e.g. %AS_VERSION_PARSE_FLAG_USE_TRIPLET</doc>
          <type name="VersionParseFlag" c:type="AsVersionParseFlag"/>
        </parameter>
      </parameters>
    </function>
    <function name="utils_version_parse"
              c:identifier="as_utils_version_parse"
              version="0.5.2">
      <doc xml:space="preserve"
           filename="libappstream-glib/as-utils.c"
           line="1692">Returns a dotted decimal version string from a version string. The supported
formats are:

- Dotted decimal, e.g. "1.2.3"
- Base 16, a hex number *with* a 0x prefix, e.g. "0x10203"
- Base 10, a string containing just [0-9], e.g. "66051"
- Date in YYYYMMDD format, e.g. 20150915

Anything with a '.' or that doesn't match [0-9] or 0x[a-f,0-9] is considered
a string and returned without modification.</doc>
      <source-position filename="libappstream-glib/as-utils.h" line="163"/>
      <return-value transfer-ownership="full">
        <doc xml:space="preserve"
             filename="libappstream-glib/as-utils.c"
             line="1707">A version number, e.g. "1.0.3"</doc>
        <type name="utf8" c:type="gchar*"/>
      </return-value>
      <parameters>
        <parameter name="version" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libappstream-glib/as-utils.c"
               line="1694">A version number</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
  </namespace>
</repository>
