All pastes #2016514 Raw Edit

Anonymous

public text v1 · immutable
#2016514 ·published 2010-12-11 15:36 UTC
rendered paste body
<?xml version="1.0"?>
<repository version="1.2" xmlns="http://www.gtk.org/introspection/core/1.0" xmlns:c="http://www.gtk.org/introspection/c/1.0" xmlns:glib="http://www.gtk.org/introspection/glib/1.0">
<include name="GObject" version="2.0"/>
<include name="Gio" version="2.0"/>
<include name="GLib" version="2.0"/>
<include name="Gee" version="1.0"/>
<package name="folks"/>
<c:include name="config.h"/>
<c:include name="folks.h"/>
<namespace name="Folks" version="1.0" c:prefix="Folks">
	<enumeration name="TrustLevel" c:type="FolksTrustLevel" glib:type-name="FolksTrustLevel" glib:get-type="folks_trust_level_get_type">
		<member name="none" c:identifier="FOLKS_TRUST_LEVEL_NONE" value="0"/>
		<member name="personas" c:identifier="FOLKS_TRUST_LEVEL_PERSONAS" value="1"/>
	</enumeration>
	<enumeration name="PersonaStoreTrust" c:type="FolksPersonaStoreTrust" glib:type-name="FolksPersonaStoreTrust" glib:get-type="folks_persona_store_trust_get_type">
		<member name="none" c:identifier="FOLKS_PERSONA_STORE_TRUST_NONE" value="0"/>
		<member name="partial" c:identifier="FOLKS_PERSONA_STORE_TRUST_PARTIAL" value="1"/>
		<member name="full" c:identifier="FOLKS_PERSONA_STORE_TRUST_FULL" value="2"/>
	</enumeration>
	<enumeration name="PresenceType" c:type="FolksPresenceType" glib:type-name="FolksPresenceType" glib:get-type="folks_presence_type_get_type">
		<member name="unset" c:identifier="FOLKS_PRESENCE_TYPE_UNSET" value="0"/>
		<member name="offline" c:identifier="FOLKS_PRESENCE_TYPE_OFFLINE" value="1"/>
		<member name="available" c:identifier="FOLKS_PRESENCE_TYPE_AVAILABLE" value="2"/>
		<member name="away" c:identifier="FOLKS_PRESENCE_TYPE_AWAY" value="3"/>
		<member name="extended_away" c:identifier="FOLKS_PRESENCE_TYPE_EXTENDED_AWAY" value="4"/>
		<member name="hidden" c:identifier="FOLKS_PRESENCE_TYPE_HIDDEN" value="5"/>
		<member name="busy" c:identifier="FOLKS_PRESENCE_TYPE_BUSY" value="6"/>
		<member name="unknown" c:identifier="FOLKS_PRESENCE_TYPE_UNKNOWN" value="7"/>
		<member name="error" c:identifier="FOLKS_PRESENCE_TYPE_ERROR" value="8"/>
	</enumeration>
	<enumeration name="MaybeBool" c:type="FolksMaybeBool" glib:type-name="FolksMaybeBool" glib:get-type="folks_maybe_bool_get_type">
		<member name="unset" c:identifier="FOLKS_MAYBE_BOOL_UNSET" value="0"/>
		<member name="false" c:identifier="FOLKS_MAYBE_BOOL_FALSE" value="1"/>
		<member name="true" c:identifier="FOLKS_MAYBE_BOOL_TRUE" value="2"/>
	</enumeration>
	<errordomain name="IndividualAggregatorError" get-quark="folks_individual_aggregator_error_quark" codes="IndividualAggregatorError">
</errordomain>
	<enumeration name="IndividualAggregatorError" c:type="FolksIndividualAggregatorError">
		<member name="store_not_found" c:identifier="FOLKS_INDIVIDUAL_AGGREGATOR_ERROR_STORE_NOT_FOUND" value="0"/>
		<member name="add_failed" c:identifier="FOLKS_INDIVIDUAL_AGGREGATOR_ERROR_ADD_FAILED" value="1"/>
		<member name="no_writeable_store" c:identifier="FOLKS_INDIVIDUAL_AGGREGATOR_ERROR_NO_WRITEABLE_STORE" value="2"/>
		<member name="store_offline" c:identifier="FOLKS_INDIVIDUAL_AGGREGATOR_ERROR_STORE_OFFLINE" value="3"/>
	</enumeration>
	<errordomain name="PersonaStoreError" get-quark="folks_persona_store_error_quark" codes="PersonaStoreError">
</errordomain>
	<enumeration name="PersonaStoreError" c:type="FolksPersonaStoreError">
		<member name="invalid_argument" c:identifier="FOLKS_PERSONA_STORE_ERROR_INVALID_ARGUMENT" value="0"/>
		<member name="create_failed" c:identifier="FOLKS_PERSONA_STORE_ERROR_CREATE_FAILED" value="1"/>
		<member name="unsupported_on_user" c:identifier="FOLKS_PERSONA_STORE_ERROR_UNSUPPORTED_ON_USER" value="2"/>
		<member name="store_offline" c:identifier="FOLKS_PERSONA_STORE_ERROR_STORE_OFFLINE" value="3"/>
	</enumeration>
	<class name="Backend" c:type="FolksBackend" glib:type-name="FolksBackend" glib:get-type="folks_backend_get_type" glib:type-struct="BackendClass" parent="GObject.Object" abstract="1">
		<field name="parent_instance">
			<type name="GObject.Object" c:type="GObject"/>
		</field>
		<field name="priv">
			<type name="BackendPrivate" c:type="FolksBackendPrivate*"/>
		</field>
		<method name="prepare" c:identifier="folks_backend_prepare">
			<parameters>
				<parameter name="_callback_" transfer-ownership="none" allow-none="1" closure="2">
					<type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
				</parameter>
				<parameter name="_callback__target" transfer-ownership="none" allow-none="1">
					<type name="gpointer" c:type="void*"/>
				</parameter>
			</parameters>
			<return-value transfer-ownership="none">
				<type name="none"/>
			</return-value>
		</method>
		<method name="prepare_finish" c:identifier="folks_backend_prepare_finish" throws="1">
			<parameters>
				<parameter name="_res_" transfer-ownership="none">
					<type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
				</parameter>
			</parameters>
			<return-value transfer-ownership="none">
				<type name="none"/>
			</return-value>
		</method>
		<virtual-method name="prepare" invoker="prepare">
			<parameters>
				<parameter name="_callback_" transfer-ownership="none" allow-none="1" closure="2">
					<type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
				</parameter>
				<parameter name="_callback__target" transfer-ownership="none" allow-none="1">
					<type name="gpointer" c:type="void*"/>
				</parameter>
			</parameters>
			<return-value transfer-ownership="none">
				<type name="none"/>
			</return-value>
		</virtual-method>
		<virtual-method name="prepare_finish" invoker="prepare_finish" throws="1">
			<parameters>
				<parameter name="_res_" transfer-ownership="none">
					<type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
				</parameter>
			</parameters>
			<return-value transfer-ownership="none">
				<type name="none"/>
			</return-value>
		</virtual-method>
		<method name="unprepare" c:identifier="folks_backend_unprepare">
			<parameters>
				<parameter name="_callback_" transfer-ownership="none" allow-none="1" closure="2">
					<type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
				</parameter>
				<parameter name="_callback__target" transfer-ownership="none" allow-none="1">
					<type name="gpointer" c:type="void*"/>
				</parameter>
			</parameters>
			<return-value transfer-ownership="none">
				<type name="none"/>
			</return-value>
		</method>
		<method name="unprepare_finish" c:identifier="folks_backend_unprepare_finish" throws="1">
			<parameters>
				<parameter name="_res_" transfer-ownership="none">
					<type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
				</parameter>
			</parameters>
			<return-value transfer-ownership="none">
				<type name="none"/>
			</return-value>
		</method>
		<virtual-method name="unprepare" invoker="unprepare">
			<parameters>
				<parameter name="_callback_" transfer-ownership="none" allow-none="1" closure="2">
					<type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
				</parameter>
				<parameter name="_callback__target" transfer-ownership="none" allow-none="1">
					<type name="gpointer" c:type="void*"/>
				</parameter>
			</parameters>
			<return-value transfer-ownership="none">
				<type name="none"/>
			</return-value>
		</virtual-method>
		<virtual-method name="unprepare_finish" invoker="unprepare_finish" throws="1">
			<parameters>
				<parameter name="_res_" transfer-ownership="none">
					<type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
				</parameter>
			</parameters>
			<return-value transfer-ownership="none">
				<type name="none"/>
			</return-value>
		</virtual-method>
		<constructor name="new" c:identifier="folks_backend_new">
			<return-value transfer-ownership="full">
				<type name="Folks.Backend" c:type="FolksBackend*"/>
			</return-value>
		</constructor>
		<property name="is-prepared">
			<type name="gboolean" c:type="gboolean"/>
		</property>
		<property name="name">
			<type name="utf8" c:type="gchar*"/>
		</property>
		<property name="persona-stores">
			<type name="GLib.HashTable" c:type="GHashTable*">
				<type name="utf8" c:type="gchar*"/>
				<type name="Folks.PersonaStore" c:type="FolksPersonaStore*"/>
			</type>
		</property>
		<glib:signal name="persona_store_added">
			<parameters>
				<parameter name="store" transfer-ownership="none">
					<type name="Folks.PersonaStore" c:type="FolksPersonaStore*"/>
				</parameter>
			</parameters>
			<return-value transfer-ownership="none">
				<type name="none"/>
			</return-value>
		</glib:signal>
		<glib:signal name="persona_store_removed">
			<parameters>
				<parameter name="store" transfer-ownership="none">
					<type name="Folks.PersonaStore" c:type="FolksPersonaStore*"/>
				</parameter>
			</parameters>
			<return-value transfer-ownership="none">
				<type name="none"/>
			</return-value>
		</glib:signal>
	</class>
	<record name="BackendClass" c:type="FolksBackendClass" glib:is-gtype-struct-for="Backend">
		<field name="parent_class">
			<type name="GObject.ObjectClass" c:type="GObjectClass"/>
		</field>
		<field name="prepare">
			<callback name="prepare" c:type="prepare">
				<parameters>
					<parameter name="self" transfer-ownership="none">
						<type name="Folks.Backend" c:type="FolksBackend*"/>
					</parameter>
					<parameter name="_callback_" transfer-ownership="none" allow-none="1" closure="3">
						<type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
					</parameter>
					<parameter name="_callback__target" transfer-ownership="none" allow-none="1">
						<type name="gpointer" c:type="void*"/>
					</parameter>
				</parameters>
				<return-value transfer-ownership="none">
					<type name="none"/>
				</return-value>
			</callback>
			<callback name="prepare_finish" c:type="prepare_finish" throws="1">
				<parameters>
					<parameter name="self" transfer-ownership="none">
						<type name="Folks.Backend" c:type="FolksBackend*"/>
					</parameter>
					<parameter name="_res_" transfer-ownership="none">
						<type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
					</parameter>
				</parameters>
				<return-value transfer-ownership="none">
					<type name="none"/>
				</return-value>
			</callback>
		</field>
		<field name="unprepare">
			<callback name="unprepare" c:type="unprepare">
				<parameters>
					<parameter name="self" transfer-ownership="none">
						<type name="Folks.Backend" c:type="FolksBackend*"/>
					</parameter>
					<parameter name="_callback_" transfer-ownership="none" allow-none="1" closure="3">
						<type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
					</parameter>
					<parameter name="_callback__target" transfer-ownership="none" allow-none="1">
						<type name="gpointer" c:type="void*"/>
					</parameter>
				</parameters>
				<return-value transfer-ownership="none">
					<type name="none"/>
				</return-value>
			</callback>
			<callback name="unprepare_finish" c:type="unprepare_finish" throws="1">
				<parameters>
					<parameter name="self" transfer-ownership="none">
						<type name="Folks.Backend" c:type="FolksBackend*"/>
					</parameter>
					<parameter name="_res_" transfer-ownership="none">
						<type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
					</parameter>
				</parameters>
				<return-value transfer-ownership="none">
					<type name="none"/>
				</return-value>
			</callback>
		</field>
	</record>
	<record name="BackendPrivate" c:type="FolksBackendPrivate" disguised="1"/>
	<class name="BackendStore" c:type="FolksBackendStore" glib:type-name="FolksBackendStore" glib:get-type="folks_backend_store_get_type" glib:type-struct="BackendStoreClass" parent="GObject.Object">
		<field name="parent_instance">
			<type name="GObject.Object" c:type="GObject"/>
		</field>
		<field name="priv">
			<type name="BackendStorePrivate" c:type="FolksBackendStorePrivate*"/>
		</field>
		<function name="dup" c:identifier="folks_backend_store_dup">
			<return-value transfer-ownership="full">
				<type name="Folks.BackendStore" c:type="FolksBackendStore*"/>
			</return-value>
		</function>
		<method name="prepare" c:identifier="folks_backend_store_prepare">
			<parameters>
				<parameter name="_callback_" transfer-ownership="none" allow-none="1" closure="2">
					<type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
				</parameter>
				<parameter name="_callback__target" transfer-ownership="none" allow-none="1">
					<type name="gpointer" c:type="void*"/>
				</parameter>
			</parameters>
			<return-value transfer-ownership="none">
				<type name="none"/>
			</return-value>
		</method>
		<method name="prepare_finish" c:identifier="folks_backend_store_prepare_finish">
			<parameters>
				<parameter name="_res_" transfer-ownership="none">
					<type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
				</parameter>
			</parameters>
			<return-value transfer-ownership="none">
				<type name="none"/>
			</return-value>
		</method>
		<method name="load_backends" c:identifier="folks_backend_store_load_backends">
			<parameters>
				<parameter name="_callback_" transfer-ownership="none" allow-none="1" closure="2">
					<type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
				</parameter>
				<parameter name="_callback__target" transfer-ownership="none" allow-none="1">
					<type name="gpointer" c:type="void*"/>
				</parameter>
			</parameters>
			<return-value transfer-ownership="none">
				<type name="none"/>
			</return-value>
		</method>
		<method name="load_backends_finish" c:identifier="folks_backend_store_load_backends_finish" throws="1">
			<parameters>
				<parameter name="_res_" transfer-ownership="none">
					<type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
				</parameter>
			</parameters>
			<return-value transfer-ownership="none">
				<type name="none"/>
			</return-value>
		</method>
		<method name="add_backend" c:identifier="folks_backend_store_add_backend">
			<parameters>
				<parameter name="backend" transfer-ownership="none">
					<type name="Folks.Backend" c:type="FolksBackend*"/>
				</parameter>
			</parameters>
			<return-value transfer-ownership="none">
				<type name="none"/>
			</return-value>
		</method>
		<method name="get_backend_by_name" c:identifier="folks_backend_store_get_backend_by_name">
			<parameters>
				<parameter name="name" transfer-ownership="none">
					<type name="utf8" c:type="const gchar*"/>
				</parameter>
			</parameters>
			<return-value transfer-ownership="full" allow-none="1">
				<type name="Folks.Backend" c:type="FolksBackend*"/>
			</return-value>
		</method>
		<method name="list_backends" c:identifier="folks_backend_store_list_backends">
			<return-value transfer-ownership="full">
				<type name="Gee.Collection" c:type="GeeCollection*">
					<type name="Folks.Backend" c:type="FolksBackend*"/>
				</type>
			</return-value>
		</method>
		<method name="enable_backend" c:identifier="folks_backend_store_enable_backend">
			<parameters>
				<parameter name="name" transfer-ownership="none">
					<type name="utf8" c:type="const gchar*"/>
				</parameter>
				<parameter name="_callback_" transfer-ownership="none" allow-none="1" closure="3">
					<type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
				</parameter>
				<parameter name="_callback__target" transfer-ownership="none" allow-none="1">
					<type name="gpointer" c:type="void*"/>
				</parameter>
			</parameters>
			<return-value transfer-ownership="none">
				<type name="none"/>
			</return-value>
		</method>
		<method name="enable_backend_finish" c:identifier="folks_backend_store_enable_backend_finish">
			<parameters>
				<parameter name="_res_" transfer-ownership="none">
					<type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
				</parameter>
			</parameters>
			<return-value transfer-ownership="none">
				<type name="none"/>
			</return-value>
		</method>
		<method name="disable_backend" c:identifier="folks_backend_store_disable_backend">
			<parameters>
				<parameter name="name" transfer-ownership="none">
					<type name="utf8" c:type="const gchar*"/>
				</parameter>
				<parameter name="_callback_" transfer-ownership="none" allow-none="1" closure="3">
					<type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
				</parameter>
				<parameter name="_callback__target" transfer-ownership="none" allow-none="1">
					<type name="gpointer" c:type="void*"/>
				</parameter>
			</parameters>
			<return-value transfer-ownership="none">
				<type name="none"/>
			</return-value>
		</method>
		<method name="disable_backend_finish" c:identifier="folks_backend_store_disable_backend_finish">
			<parameters>
				<parameter name="_res_" transfer-ownership="none">
					<type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
				</parameter>
			</parameters>
			<return-value transfer-ownership="none">
				<type name="none"/>
			</return-value>
		</method>
		<property name="enabled-backends" writable="1">
			<type name="GLib.List" c:type="GList*">
				<type name="Folks.Backend" c:type="FolksBackend*"/>
			</type>
		</property>
		<property name="is-prepared" writable="1">
			<type name="gboolean" c:type="gboolean"/>
		</property>
		<glib:signal name="backend_available">
			<parameters>
				<parameter name="backend" transfer-ownership="none">
					<type name="Folks.Backend" c:type="FolksBackend*"/>
				</parameter>
			</parameters>
			<return-value transfer-ownership="none">
				<type name="none"/>
			</return-value>
		</glib:signal>
	</class>
	<record name="BackendStoreClass" c:type="FolksBackendStoreClass" glib:is-gtype-struct-for="BackendStore">
		<field name="parent_class">
			<type name="GObject.ObjectClass" c:type="GObjectClass"/>
		</field>
	</record>
	<record name="BackendStorePrivate" c:type="FolksBackendStorePrivate" disguised="1"/>
	<class name="Individual" c:type="FolksIndividual" glib:type-name="FolksIndividual" glib:get-type="folks_individual_get_type" glib:type-struct="IndividualClass" parent="GObject.Object">
		<implements name="Folks.Aliasable"/>
		<implements name="Folks.Avatar"/>
		<implements name="Folks.Favourite"/>
		<implements name="Folks.Groupable"/>
		<implements name="Folks.IMable"/>
		<implements name="Folks.Presence"/>
		<field name="parent_instance">
			<type name="GObject.Object" c:type="GObject"/>
		</field>
		<field name="priv">
			<type name="IndividualPrivate" c:type="FolksIndividualPrivate*"/>
		</field>
		<constructor name="new" c:identifier="folks_individual_new">
			<parameters>
				<parameter name="personas" transfer-ownership="none" allow-none="1">
					<type name="GLib.List" c:type="GList*">
						<type name="Folks.Persona" c:type="FolksPersona*"/>
					</type>
				</parameter>
			</parameters>
			<return-value transfer-ownership="full">
				<type name="Folks.Individual" c:type="FolksIndividual*"/>
			</return-value>
		</constructor>
		<property name="trust-level" writable="1">
			<type name="Folks.TrustLevel" c:type="FolksTrustLevel"/>
		</property>
		<property name="is-user" writable="1">
			<type name="gboolean" c:type="gboolean"/>
		</property>
		<property name="id" writable="1">
			<type name="utf8" c:type="gchar*"/>
		</property>
		<property name="personas" writable="1">
			<type name="GLib.List" c:type="GList*">
				<type name="Folks.Persona" c:type="FolksPersona*"/>
			</type>
		</property>
		<glib:signal name="removed">
			<parameters>
				<parameter name="replacement_individual" transfer-ownership="none" allow-none="1">
					<type name="Folks.Individual" c:type="FolksIndividual*"/>
				</parameter>
			</parameters>
			<return-value transfer-ownership="none">
				<type name="none"/>
			</return-value>
		</glib:signal>
		<glib:signal name="personas_changed">
			<parameters>
				<parameter name="added" transfer-ownership="none" allow-none="1">
					<type name="GLib.List" c:type="GList*">
						<type name="Folks.Persona" c:type="FolksPersona*"/>
					</type>
				</parameter>
				<parameter name="removed" transfer-ownership="none" allow-none="1">
					<type name="GLib.List" c:type="GList*">
						<type name="Folks.Persona" c:type="FolksPersona*"/>
					</type>
				</parameter>
			</parameters>
			<return-value transfer-ownership="none">
				<type name="none"/>
			</return-value>
		</glib:signal>
	</class>
	<record name="IndividualClass" c:type="FolksIndividualClass" glib:is-gtype-struct-for="Individual">
		<field name="parent_class">
			<type name="GObject.ObjectClass" c:type="GObjectClass"/>
		</field>
	</record>
	<record name="IndividualPrivate" c:type="FolksIndividualPrivate" disguised="1"/>
	<class name="IndividualAggregator" c:type="FolksIndividualAggregator" glib:type-name="FolksIndividualAggregator" glib:get-type="folks_individual_aggregator_get_type" glib:type-struct="IndividualAggregatorClass" parent="GObject.Object">
		<field name="parent_instance">
			<type name="GObject.Object" c:type="GObject"/>
		</field>
		<field name="priv">
			<type name="IndividualAggregatorPrivate" c:type="FolksIndividualAggregatorPrivate*"/>
		</field>
		<constructor name="new" c:identifier="folks_individual_aggregator_new">
			<return-value transfer-ownership="full">
				<type name="Folks.IndividualAggregator" c:type="FolksIndividualAggregator*"/>
			</return-value>
		</constructor>
		<method name="prepare" c:identifier="folks_individual_aggregator_prepare">
			<parameters>
				<parameter name="_callback_" transfer-ownership="none" allow-none="1" closure="2">
					<type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
				</parameter>
				<parameter name="_callback__target" transfer-ownership="none" allow-none="1">
					<type name="gpointer" c:type="void*"/>
				</parameter>
			</parameters>
			<return-value transfer-ownership="none">
				<type name="none"/>
			</return-value>
		</method>
		<method name="prepare_finish" c:identifier="folks_individual_aggregator_prepare_finish" throws="1">
			<parameters>
				<parameter name="_res_" transfer-ownership="none">
					<type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
				</parameter>
			</parameters>
			<return-value transfer-ownership="none">
				<type name="none"/>
			</return-value>
		</method>
		<method name="add_persona_from_details" c:identifier="folks_individual_aggregator_add_persona_from_details">
			<parameters>
				<parameter name="parent" transfer-ownership="none" allow-none="1">
					<type name="Folks.Individual" c:type="FolksIndividual*"/>
				</parameter>
				<parameter name="persona_store_type" transfer-ownership="none">
					<type name="utf8" c:type="const gchar*"/>
				</parameter>
				<parameter name="persona_store_id" transfer-ownership="none">
					<type name="utf8" c:type="const gchar*"/>
				</parameter>
				<parameter name="details" transfer-ownership="none">
					<type name="GLib.HashTable" c:type="GHashTable*">
						<type name="utf8" c:type="gchar*"/>
						<type name="GObject.Value" c:type="GValue*"/>
					</type>
				</parameter>
				<parameter name="_callback_" transfer-ownership="none" allow-none="1" closure="6">
					<type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
				</parameter>
				<parameter name="_callback__target" transfer-ownership="none" allow-none="1">
					<type name="gpointer" c:type="void*"/>
				</parameter>
			</parameters>
			<return-value transfer-ownership="none">
				<type name="none"/>
			</return-value>
		</method>
		<method name="add_persona_from_details_finish" c:identifier="folks_individual_aggregator_add_persona_from_details_finish" throws="1">
			<parameters>
				<parameter name="_res_" transfer-ownership="none">
					<type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
				</parameter>
			</parameters>
			<return-value transfer-ownership="full" allow-none="1">
				<type name="Folks.Persona" c:type="FolksPersona*"/>
			</return-value>
		</method>
		<method name="remove_individual" c:identifier="folks_individual_aggregator_remove_individual">
			<parameters>
				<parameter name="individual" transfer-ownership="none">
					<type name="Folks.Individual" c:type="FolksIndividual*"/>
				</parameter>
				<parameter name="_callback_" transfer-ownership="none" allow-none="1" closure="3">
					<type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
				</parameter>
				<parameter name="_callback__target" transfer-ownership="none" allow-none="1">
					<type name="gpointer" c:type="void*"/>
				</parameter>
			</parameters>
			<return-value transfer-ownership="none">
				<type name="none"/>
			</return-value>
		</method>
		<method name="remove_individual_finish" c:identifier="folks_individual_aggregator_remove_individual_finish" throws="1">
			<parameters>
				<parameter name="_res_" transfer-ownership="none">
					<type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
				</parameter>
			</parameters>
			<return-value transfer-ownership="none">
				<type name="none"/>
			</return-value>
		</method>
		<method name="remove_persona" c:identifier="folks_individual_aggregator_remove_persona">
			<parameters>
				<parameter name="persona" transfer-ownership="none">
					<type name="Folks.Persona" c:type="FolksPersona*"/>
				</parameter>
				<parameter name="_callback_" transfer-ownership="none" allow-none="1" closure="3">
					<type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
				</parameter>
				<parameter name="_callback__target" transfer-ownership="none" allow-none="1">
					<type name="gpointer" c:type="void*"/>
				</parameter>
			</parameters>
			<return-value transfer-ownership="none">
				<type name="none"/>
			</return-value>
		</method>
		<method name="remove_persona_finish" c:identifier="folks_individual_aggregator_remove_persona_finish" throws="1">
			<parameters>
				<parameter name="_res_" transfer-ownership="none">
					<type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
				</parameter>
			</parameters>
			<return-value transfer-ownership="none">
				<type name="none"/>
			</return-value>
		</method>
		<method name="link_personas" c:identifier="folks_individual_aggregator_link_personas">
			<parameters>
				<parameter name="_personas" transfer-ownership="none" allow-none="1">
					<type name="gpointer" c:type="void*"/>
				</parameter>
				<parameter name="_callback_" transfer-ownership="none" allow-none="1" closure="3">
					<type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
				</parameter>
				<parameter name="_callback__target" transfer-ownership="none" allow-none="1">
					<type name="gpointer" c:type="void*"/>
				</parameter>
			</parameters>
			<return-value transfer-ownership="none">
				<type name="none"/>
			</return-value>
		</method>
		<method name="link_personas_finish" c:identifier="folks_individual_aggregator_link_personas_finish" throws="1">
			<parameters>
				<parameter name="_res_" transfer-ownership="none">
					<type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
				</parameter>
			</parameters>
			<return-value transfer-ownership="none">
				<type name="none"/>
			</return-value>
		</method>
		<method name="unlink_individual" c:identifier="folks_individual_aggregator_unlink_individual">
			<parameters>
				<parameter name="individual" transfer-ownership="none">
					<type name="Folks.Individual" c:type="FolksIndividual*"/>
				</parameter>
				<parameter name="_callback_" transfer-ownership="none" allow-none="1" closure="3">
					<type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
				</parameter>
				<parameter name="_callback__target" transfer-ownership="none" allow-none="1">
					<type name="gpointer" c:type="void*"/>
				</parameter>
			</parameters>
			<return-value transfer-ownership="none">
				<type name="none"/>
			</return-value>
		</method>
		<method name="unlink_individual_finish" c:identifier="folks_individual_aggregator_unlink_individual_finish" throws="1">
			<parameters>
				<parameter name="_res_" transfer-ownership="none">
					<type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
				</parameter>
			</parameters>
			<return-value transfer-ownership="none">
				<type name="none"/>
			</return-value>
		</method>
		<property name="is-prepared">
			<type name="gboolean" c:type="gboolean"/>
		</property>
		<property name="individuals" writable="1">
			<type name="GLib.HashTable" c:type="GHashTable*">
				<type name="utf8" c:type="gchar*"/>
				<type name="Folks.Individual" c:type="FolksIndividual*"/>
			</type>
		</property>
		<property name="user" writable="1">
			<type name="Folks.Individual" c:type="FolksIndividual*"/>
		</property>
		<glib:signal name="individuals_changed">
			<parameters>
				<parameter name="added" transfer-ownership="none" allow-none="1">
					<type name="GLib.List" c:type="GList*">
						<type name="Folks.Individual" c:type="FolksIndividual*"/>
					</type>
				</parameter>
				<parameter name="removed" transfer-ownership="none" allow-none="1">
					<type name="GLib.List" c:type="GList*">
						<type name="Folks.Individual" c:type="FolksIndividual*"/>
					</type>
				</parameter>
				<parameter name="message" transfer-ownership="none" allow-none="1">
					<type name="utf8" c:type="const gchar*"/>
				</parameter>
				<parameter name="actor" transfer-ownership="none" allow-none="1">
					<type name="Folks.Persona" c:type="FolksPersona*"/>
				</parameter>
				<parameter name="reason" transfer-ownership="none">
					<type name="Folks.Groupable.ChangeReason" c:type="FolksGroupableChangeReason"/>
				</parameter>
			</parameters>
			<return-value transfer-ownership="none">
				<type name="none"/>
			</return-value>
		</glib:signal>
	</class>
	<record name="IndividualAggregatorClass" c:type="FolksIndividualAggregatorClass" glib:is-gtype-struct-for="IndividualAggregator">
		<field name="parent_class">
			<type name="GObject.ObjectClass" c:type="GObjectClass"/>
		</field>
	</record>
	<record name="IndividualAggregatorPrivate" c:type="FolksIndividualAggregatorPrivate" disguised="1"/>
	<class name="Persona" c:type="FolksPersona" glib:type-name="FolksPersona" glib:get-type="folks_persona_get_type" glib:type-struct="PersonaClass" parent="GObject.Object" abstract="1">
		<field name="parent_instance">
			<type name="GObject.Object" c:type="GObject"/>
		</field>
		<field name="priv">
			<type name="PersonaPrivate" c:type="FolksPersonaPrivate*"/>
		</field>
		<method name="linkable_property_to_links" c:identifier="folks_persona_linkable_property_to_links">
			<parameters>
				<parameter name="prop_name" transfer-ownership="none">
					<type name="utf8" c:type="const gchar*"/>
				</parameter>
				<parameter name="callback" transfer-ownership="none" closure="3">
					<type name="Folks.Persona.LinkablePropertyCallback" c:type="FolksPersonaLinkablePropertyCallback"/>
				</parameter>
				<parameter name="callback_target" transfer-ownership="none" allow-none="1">
					<type name="gpointer" c:type="void*"/>
				</parameter>
			</parameters>
			<return-value transfer-ownership="none">
				<type name="none"/>
			</return-value>
		</method>
		<virtual-method name="linkable_property_to_links" invoker="linkable_property_to_links">
			<parameters>
				<parameter name="prop_name" transfer-ownership="none">
					<type name="utf8" c:type="const gchar*"/>
				</parameter>
				<parameter name="callback" transfer-ownership="none" closure="3">
					<type name="Folks.Persona.LinkablePropertyCallback" c:type="FolksPersonaLinkablePropertyCallback"/>
				</parameter>
				<parameter name="callback_target" transfer-ownership="none" allow-none="1">
					<type name="gpointer" c:type="void*"/>
				</parameter>
			</parameters>
			<return-value transfer-ownership="none">
				<type name="none"/>
			</return-value>
		</virtual-method>
		<function name="build_uid" c:identifier="folks_persona_build_uid">
			<parameters>
				<parameter name="backend_name" transfer-ownership="none">
					<type name="utf8" c:type="const gchar*"/>
				</parameter>
				<parameter name="persona_store_id" transfer-ownership="none">
					<type name="utf8" c:type="const gchar*"/>
				</parameter>
				<parameter name="persona_id" transfer-ownership="none">
					<type name="utf8" c:type="const gchar*"/>
				</parameter>
			</parameters>
			<return-value transfer-ownership="full">
				<type name="utf8" c:type="gchar*"/>
			</return-value>
		</function>
		<function name="split_uid" c:identifier="folks_persona_split_uid">
			<parameters>
				<parameter name="uid" transfer-ownership="none">
					<type name="utf8" c:type="const gchar*"/>
				</parameter>
				<parameter name="backend_name" direction="out" transfer-ownership="full">
					<type name="utf8" c:type="gchar*"/>
				</parameter>
				<parameter name="persona_store_id" direction="out" transfer-ownership="full">
					<type name="utf8" c:type="gchar*"/>
				</parameter>
				<parameter name="persona_id" direction="out" transfer-ownership="full">
					<type name="utf8" c:type="gchar*"/>
				</parameter>
			</parameters>
			<return-value transfer-ownership="none">
				<type name="none"/>
			</return-value>
		</function>
		<constructor name="new" c:identifier="folks_persona_new">
			<return-value transfer-ownership="full">
				<type name="Folks.Persona" c:type="FolksPersona*"/>
			</return-value>
		</constructor>
		<property name="iid" writable="1" construct-only="1">
			<type name="utf8" c:type="gchar*"/>
		</property>
		<property name="uid" writable="1" construct-only="1">
			<type name="utf8" c:type="gchar*"/>
		</property>
		<property name="display-id" writable="1" construct-only="1">
			<type name="utf8" c:type="gchar*"/>
		</property>
		<property name="is-user" writable="1" construct-only="1">
			<type name="gboolean" c:type="gboolean"/>
		</property>
		<property name="store" writable="1" construct-only="1">
			<type name="Folks.PersonaStore" c:type="FolksPersonaStore*"/>
		</property>
		<property name="linkable-properties">
			<array>
				<type name="utf8" c:type="gchar*"/>
			</array>
		</property>
		<callback name="LinkablePropertyCallback" c:type="FolksPersonaLinkablePropertyCallback">
			<parameters>
				<parameter name="link" transfer-ownership="none">
					<type name="utf8" c:type="const gchar*"/>
				</parameter>
				<parameter name="user_data" transfer-ownership="none" closure="2">
					<type name="gpointer" c:type="void*"/>
				</parameter>
			</parameters>
			<return-value transfer-ownership="none">
				<type name="none"/>
			</return-value>
		</callback>
	</class>
	<record name="PersonaClass" c:type="FolksPersonaClass" glib:is-gtype-struct-for="Persona">
		<field name="parent_class">
			<type name="GObject.ObjectClass" c:type="GObjectClass"/>
		</field>
		<field name="linkable_property_to_links">
			<callback name="linkable_property_to_links" c:type="linkable_property_to_links">
				<parameters>
					<parameter name="self" transfer-ownership="none">
						<type name="Folks.Persona" c:type="FolksPersona*"/>
					</parameter>
					<parameter name="prop_name" transfer-ownership="none">
						<type name="utf8" c:type="const gchar*"/>
					</parameter>
					<parameter name="callback" transfer-ownership="none" closure="4">
						<type name="Folks.Persona.LinkablePropertyCallback" c:type="FolksPersonaLinkablePropertyCallback"/>
					</parameter>
					<parameter name="callback_target" transfer-ownership="none" allow-none="1">
						<type name="gpointer" c:type="void*"/>
					</parameter>
				</parameters>
				<return-value transfer-ownership="none">
					<type name="none"/>
				</return-value>
			</callback>
		</field>
	</record>
	<record name="PersonaPrivate" c:type="FolksPersonaPrivate" disguised="1"/>
	<class name="PersonaStore" c:type="FolksPersonaStore" glib:type-name="FolksPersonaStore" glib:get-type="folks_persona_store_get_type" glib:type-struct="PersonaStoreClass" parent="GObject.Object" abstract="1">
		<field name="parent_instance">
			<type name="GObject.Object" c:type="GObject"/>
		</field>
		<field name="priv">
			<type name="PersonaStorePrivate" c:type="FolksPersonaStorePrivate*"/>
		</field>
		<method name="prepare" c:identifier="folks_persona_store_prepare">
			<parameters>
				<parameter name="_callback_" transfer-ownership="none" allow-none="1" closure="2">
					<type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
				</parameter>
				<parameter name="_callback__target" transfer-ownership="none" allow-none="1">
					<type name="gpointer" c:type="void*"/>
				</parameter>
			</parameters>
			<return-value transfer-ownership="none">
				<type name="none"/>
			</return-value>
		</method>
		<method name="prepare_finish" c:identifier="folks_persona_store_prepare_finish" throws="1">
			<parameters>
				<parameter name="_res_" transfer-ownership="none">
					<type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
				</parameter>
			</parameters>
			<return-value transfer-ownership="none">
				<type name="none"/>
			</return-value>
		</method>
		<virtual-method name="prepare" invoker="prepare">
			<parameters>
				<parameter name="_callback_" transfer-ownership="none" allow-none="1" closure="2">
					<type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
				</parameter>
				<parameter name="_callback__target" transfer-ownership="none" allow-none="1">
					<type name="gpointer" c:type="void*"/>
				</parameter>
			</parameters>
			<return-value transfer-ownership="none">
				<type name="none"/>
			</return-value>
		</virtual-method>
		<virtual-method name="prepare_finish" invoker="prepare_finish" throws="1">
			<parameters>
				<parameter name="_res_" transfer-ownership="none">
					<type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
				</parameter>
			</parameters>
			<return-value transfer-ownership="none">
				<type name="none"/>
			</return-value>
		</virtual-method>
		<method name="flush" c:identifier="folks_persona_store_flush">
			<parameters>
				<parameter name="_callback_" transfer-ownership="none" allow-none="1" closure="2">
					<type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
				</parameter>
				<parameter name="_callback__target" transfer-ownership="none" allow-none="1">
					<type name="gpointer" c:type="void*"/>
				</parameter>
			</parameters>
			<return-value transfer-ownership="none">
				<type name="none"/>
			</return-value>
		</method>
		<method name="flush_finish" c:identifier="folks_persona_store_flush_finish">
			<parameters>
				<parameter name="_res_" transfer-ownership="none">
					<type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
				</parameter>
			</parameters>
			<return-value transfer-ownership="none">
				<type name="none"/>
			</return-value>
		</method>
		<virtual-method name="flush" invoker="flush">
			<parameters>
				<parameter name="_callback_" transfer-ownership="none" allow-none="1" closure="2">
					<type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
				</parameter>
				<parameter name="_callback__target" transfer-ownership="none" allow-none="1">
					<type name="gpointer" c:type="void*"/>
				</parameter>
			</parameters>
			<return-value transfer-ownership="none">
				<type name="none"/>
			</return-value>
		</virtual-method>
		<virtual-method name="flush_finish" invoker="flush_finish">
			<parameters>
				<parameter name="_res_" transfer-ownership="none">
					<type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
				</parameter>
			</parameters>
			<return-value transfer-ownership="none">
				<type name="none"/>
			</return-value>
		</virtual-method>
		<method name="add_persona_from_details" c:identifier="folks_persona_store_add_persona_from_details">
			<parameters>
				<parameter name="details" transfer-ownership="none">
					<type name="GLib.HashTable" c:type="GHashTable*">
						<type name="utf8" c:type="gchar*"/>
						<type name="GObject.Value" c:type="GValue*"/>
					</type>
				</parameter>
				<parameter name="_callback_" transfer-ownership="none" allow-none="1" closure="3">
					<type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
				</parameter>
				<parameter name="_callback__target" transfer-ownership="none" allow-none="1">
					<type name="gpointer" c:type="void*"/>
				</parameter>
			</parameters>
			<return-value transfer-ownership="none">
				<type name="none"/>
			</return-value>
		</method>
		<method name="add_persona_from_details_finish" c:identifier="folks_persona_store_add_persona_from_details_finish" throws="1">
			<parameters>
				<parameter name="_res_" transfer-ownership="none">
					<type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
				</parameter>
			</parameters>
			<return-value transfer-ownership="full" allow-none="1">
				<type name="Folks.Persona" c:type="FolksPersona*"/>
			</return-value>
		</method>
		<virtual-method name="add_persona_from_details" invoker="add_persona_from_details">
			<parameters>
				<parameter name="details" transfer-ownership="none">
					<type name="GLib.HashTable" c:type="GHashTable*">
						<type name="utf8" c:type="gchar*"/>
						<type name="GObject.Value" c:type="GValue*"/>
					</type>
				</parameter>
				<parameter name="_callback_" transfer-ownership="none" allow-none="1" closure="3">
					<type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
				</parameter>
				<parameter name="_callback__target" transfer-ownership="none" allow-none="1">
					<type name="gpointer" c:type="void*"/>
				</parameter>
			</parameters>
			<return-value transfer-ownership="none">
				<type name="none"/>
			</return-value>
		</virtual-method>
		<virtual-method name="add_persona_from_details_finish" invoker="add_persona_from_details_finish" throws="1">
			<parameters>
				<parameter name="_res_" transfer-ownership="none">
					<type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
				</parameter>
			</parameters>
			<return-value transfer-ownership="full" allow-none="1">
				<type name="Folks.Persona" c:type="FolksPersona*"/>
			</return-value>
		</virtual-method>
		<method name="remove_persona" c:identifier="folks_persona_store_remove_persona">
			<parameters>
				<parameter name="persona" transfer-ownership="none">
					<type name="Folks.Persona" c:type="FolksPersona*"/>
				</parameter>
				<parameter name="_callback_" transfer-ownership="none" allow-none="1" closure="3">
					<type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
				</parameter>
				<parameter name="_callback__target" transfer-ownership="none" allow-none="1">
					<type name="gpointer" c:type="void*"/>
				</parameter>
			</parameters>
			<return-value transfer-ownership="none">
				<type name="none"/>
			</return-value>
		</method>
		<method name="remove_persona_finish" c:identifier="folks_persona_store_remove_persona_finish" throws="1">
			<parameters>
				<parameter name="_res_" transfer-ownership="none">
					<type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
				</parameter>
			</parameters>
			<return-value transfer-ownership="none">
				<type name="none"/>
			</return-value>
		</method>
		<virtual-method name="remove_persona" invoker="remove_persona">
			<parameters>
				<parameter name="persona" transfer-ownership="none">
					<type name="Folks.Persona" c:type="FolksPersona*"/>
				</parameter>
				<parameter name="_callback_" transfer-ownership="none" allow-none="1" closure="3">
					<type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
				</parameter>
				<parameter name="_callback__target" transfer-ownership="none" allow-none="1">
					<type name="gpointer" c:type="void*"/>
				</parameter>
			</parameters>
			<return-value transfer-ownership="none">
				<type name="none"/>
			</return-value>
		</virtual-method>
		<virtual-method name="remove_persona_finish" invoker="remove_persona_finish" throws="1">
			<parameters>
				<parameter name="_res_" transfer-ownership="none">
					<type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
				</parameter>
			</parameters>
			<return-value transfer-ownership="none">
				<type name="none"/>
			</return-value>
		</virtual-method>
		<constructor name="new" c:identifier="folks_persona_store_new">
			<return-value transfer-ownership="full">
				<type name="Folks.PersonaStore" c:type="FolksPersonaStore*"/>
			</return-value>
		</constructor>
		<property name="type-id">
			<type name="utf8" c:type="gchar*"/>
		</property>
		<property name="display-name" writable="1" construct-only="1">
			<type name="utf8" c:type="gchar*"/>
		</property>
		<property name="id" writable="1" construct-only="1">
			<type name="utf8" c:type="gchar*"/>
		</property>
		<property name="personas">
			<type name="GLib.HashTable" c:type="GHashTable*">
				<type name="utf8" c:type="gchar*"/>
				<type name="Folks.Persona" c:type="FolksPersona*"/>
			</type>
		</property>
		<property name="can-add-personas">
			<type name="Folks.MaybeBool" c:type="FolksMaybeBool"/>
		</property>
		<property name="can-alias-personas">
			<type name="Folks.MaybeBool" c:type="FolksMaybeBool"/>
		</property>
		<property name="can-group-personas">
			<type name="Folks.MaybeBool" c:type="FolksMaybeBool"/>
		</property>
		<property name="can-remove-personas">
			<type name="Folks.MaybeBool" c:type="FolksMaybeBool"/>
		</property>
		<property name="is-prepared">
			<type name="gboolean" c:type="gboolean"/>
		</property>
		<property name="is-writeable" writable="1">
			<type name="gboolean" c:type="gboolean"/>
		</property>
		<property name="trust-level" writable="1">
			<type name="Folks.PersonaStoreTrust" c:type="FolksPersonaStoreTrust"/>
		</property>
		<glib:signal name="personas_changed">
			<parameters>
				<parameter name="added" transfer-ownership="none" allow-none="1">
					<type name="GLib.List" c:type="GList*">
						<type name="Folks.Persona" c:type="FolksPersona*"/>
					</type>
				</parameter>
				<parameter name="removed" transfer-ownership="none" allow-none="1">
					<type name="GLib.List" c:type="GList*">
						<type name="Folks.Persona" c:type="FolksPersona*"/>
					</type>
				</parameter>
				<parameter name="message" transfer-ownership="none" allow-none="1">
					<type name="utf8" c:type="const gchar*"/>
				</parameter>
				<parameter name="actor" transfer-ownership="none" allow-none="1">
					<type name="Folks.Persona" c:type="FolksPersona*"/>
				</parameter>
				<parameter name="reason" transfer-ownership="none">
					<type name="Folks.Groupable.ChangeReason" c:type="FolksGroupableChangeReason"/>
				</parameter>
			</parameters>
			<return-value transfer-ownership="none">
				<type name="none"/>
			</return-value>
		</glib:signal>
		<glib:signal name="removed">
			<return-value transfer-ownership="none">
				<type name="none"/>
			</return-value>
		</glib:signal>
	</class>
	<record name="PersonaStoreClass" c:type="FolksPersonaStoreClass" glib:is-gtype-struct-for="PersonaStore">
		<field name="parent_class">
			<type name="GObject.ObjectClass" c:type="GObjectClass"/>
		</field>
		<field name="prepare">
			<callback name="prepare" c:type="prepare">
				<parameters>
					<parameter name="self" transfer-ownership="none">
						<type name="Folks.PersonaStore" c:type="FolksPersonaStore*"/>
					</parameter>
					<parameter name="_callback_" transfer-ownership="none" allow-none="1" closure="3">
						<type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
					</parameter>
					<parameter name="_callback__target" transfer-ownership="none" allow-none="1">
						<type name="gpointer" c:type="void*"/>
					</parameter>
				</parameters>
				<return-value transfer-ownership="none">
					<type name="none"/>
				</return-value>
			</callback>
			<callback name="prepare_finish" c:type="prepare_finish" throws="1">
				<parameters>
					<parameter name="self" transfer-ownership="none">
						<type name="Folks.PersonaStore" c:type="FolksPersonaStore*"/>
					</parameter>
					<parameter name="_res_" transfer-ownership="none">
						<type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
					</parameter>
				</parameters>
				<return-value transfer-ownership="none">
					<type name="none"/>
				</return-value>
			</callback>
		</field>
		<field name="flush">
			<callback name="flush" c:type="flush">
				<parameters>
					<parameter name="self" transfer-ownership="none">
						<type name="Folks.PersonaStore" c:type="FolksPersonaStore*"/>
					</parameter>
					<parameter name="_callback_" transfer-ownership="none" allow-none="1" closure="3">
						<type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
					</parameter>
					<parameter name="_callback__target" transfer-ownership="none" allow-none="1">
						<type name="gpointer" c:type="void*"/>
					</parameter>
				</parameters>
				<return-value transfer-ownership="none">
					<type name="none"/>
				</return-value>
			</callback>
			<callback name="flush_finish" c:type="flush_finish">
				<parameters>
					<parameter name="self" transfer-ownership="none">
						<type name="Folks.PersonaStore" c:type="FolksPersonaStore*"/>
					</parameter>
					<parameter name="_res_" transfer-ownership="none">
						<type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
					</parameter>
				</parameters>
				<return-value transfer-ownership="none">
					<type name="none"/>
				</return-value>
			</callback>
		</field>
		<field name="add_persona_from_details">
			<callback name="add_persona_from_details" c:type="add_persona_from_details">
				<parameters>
					<parameter name="self" transfer-ownership="none">
						<type name="Folks.PersonaStore" c:type="FolksPersonaStore*"/>
					</parameter>
					<parameter name="details" transfer-ownership="none">
						<type name="GLib.HashTable" c:type="GHashTable*">
							<type name="utf8" c:type="gchar*"/>
							<type name="GObject.Value" c:type="GValue*"/>
						</type>
					</parameter>
					<parameter name="_callback_" transfer-ownership="none" allow-none="1" closure="4">
						<type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
					</parameter>
					<parameter name="_callback__target" transfer-ownership="none" allow-none="1">
						<type name="gpointer" c:type="void*"/>
					</parameter>
				</parameters>
				<return-value transfer-ownership="none">
					<type name="none"/>
				</return-value>
			</callback>
			<callback name="add_persona_from_details_finish" c:type="add_persona_from_details_finish" throws="1">
				<parameters>
					<parameter name="self" transfer-ownership="none">
						<type name="Folks.PersonaStore" c:type="FolksPersonaStore*"/>
					</parameter>
					<parameter name="_res_" transfer-ownership="none">
						<type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
					</parameter>
				</parameters>
				<return-value transfer-ownership="full" allow-none="1">
					<type name="Folks.Persona" c:type="FolksPersona*"/>
				</return-value>
			</callback>
		</field>
		<field name="remove_persona">
			<callback name="remove_persona" c:type="remove_persona">
				<parameters>
					<parameter name="self" transfer-ownership="none">
						<type name="Folks.PersonaStore" c:type="FolksPersonaStore*"/>
					</parameter>
					<parameter name="persona" transfer-ownership="none">
						<type name="Folks.Persona" c:type="FolksPersona*"/>
					</parameter>
					<parameter name="_callback_" transfer-ownership="none" allow-none="1" closure="4">
						<type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
					</parameter>
					<parameter name="_callback__target" transfer-ownership="none" allow-none="1">
						<type name="gpointer" c:type="void*"/>
					</parameter>
				</parameters>
				<return-value transfer-ownership="none">
					<type name="none"/>
				</return-value>
			</callback>
			<callback name="remove_persona_finish" c:type="remove_persona_finish" throws="1">
				<parameters>
					<parameter name="self" transfer-ownership="none">
						<type name="Folks.PersonaStore" c:type="FolksPersonaStore*"/>
					</parameter>
					<parameter name="_res_" transfer-ownership="none">
						<type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
					</parameter>
				</parameters>
				<return-value transfer-ownership="none">
					<type name="none"/>
				</return-value>
			</callback>
		</field>
	</record>
	<record name="PersonaStorePrivate" c:type="FolksPersonaStorePrivate" disguised="1"/>
	<interface name="Aliasable" c:type="FolksAliasable" glib:type-name="FolksAliasable" glib:get-type="folks_aliasable_get_type" glib:type-struct="AliasableIface">
		<prerequisite name="GObject.Object"/>
		<property name="alias" writable="1">
			<type name="utf8" c:type="gchar*"/>
		</property>
	</interface>
	<record name="AliasableIface" c:type="FolksAliasableIface" glib:is-gtype-struct-for="Aliasable">
	</record>
	<interface name="Avatar" c:type="FolksAvatar" glib:type-name="FolksAvatar" glib:get-type="folks_avatar_get_type" glib:type-struct="AvatarIface">
		<prerequisite name="GObject.Object"/>
		<property name="avatar" writable="1">
			<type name="Gio.File" c:type="GFile*"/>
		</property>
	</interface>
	<record name="AvatarIface" c:type="FolksAvatarIface" glib:is-gtype-struct-for="Avatar">
	</record>
	<interface name="Favourite" c:type="FolksFavourite" glib:type-name="FolksFavourite" glib:get-type="folks_favourite_get_type" glib:type-struct="FavouriteIface">
		<prerequisite name="GObject.Object"/>
		<property name="is-favourite" writable="1">
			<type name="gboolean" c:type="gboolean"/>
		</property>
	</interface>
	<record name="FavouriteIface" c:type="FolksFavouriteIface" glib:is-gtype-struct-for="Favourite">
	</record>
	<interface name="Groupable" c:type="FolksGroupable" glib:type-name="FolksGroupable" glib:get-type="folks_groupable_get_type" glib:type-struct="GroupableIface">
		<prerequisite name="GObject.Object"/>
		<enumeration name="ChangeReason" c:type="FolksGroupableChangeReason" glib:type-name="FolksGroupableChangeReason" glib:get-type="folks_groupable_change_reason_get_type">
			<member name="none" c:identifier="FOLKS_GROUPABLE_CHANGE_REASON_NONE" value="0"/>
			<member name="offline" c:identifier="FOLKS_GROUPABLE_CHANGE_REASON_OFFLINE" value="1"/>
			<member name="kicked" c:identifier="FOLKS_GROUPABLE_CHANGE_REASON_KICKED" value="2"/>
			<member name="busy" c:identifier="FOLKS_GROUPABLE_CHANGE_REASON_BUSY" value="3"/>
			<member name="invited" c:identifier="FOLKS_GROUPABLE_CHANGE_REASON_INVITED" value="4"/>
			<member name="banned" c:identifier="FOLKS_GROUPABLE_CHANGE_REASON_BANNED" value="5"/>
			<member name="error" c:identifier="FOLKS_GROUPABLE_CHANGE_REASON_ERROR" value="6"/>
			<member name="invalid_member" c:identifier="FOLKS_GROUPABLE_CHANGE_REASON_INVALID_MEMBER" value="7"/>
			<member name="no_answer" c:identifier="FOLKS_GROUPABLE_CHANGE_REASON_NO_ANSWER" value="8"/>
			<member name="renamed" c:identifier="FOLKS_GROUPABLE_CHANGE_REASON_RENAMED" value="9"/>
			<member name="permission_denied" c:identifier="FOLKS_GROUPABLE_CHANGE_REASON_PERMISSION_DENIED" value="10"/>
			<member name="separated" c:identifier="FOLKS_GROUPABLE_CHANGE_REASON_SEPARATED" value="11"/>
		</enumeration>
		<method name="change_group" c:identifier="folks_groupable_change_group">
			<parameters>
				<parameter name="group" transfer-ownership="none">
					<type name="utf8" c:type="const gchar*"/>
				</parameter>
				<parameter name="is_member" transfer-ownership="none">
					<type name="gboolean" c:type="gboolean"/>
				</parameter>
				<parameter name="_callback_" transfer-ownership="none" allow-none="1" closure="4">
					<type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
				</parameter>
				<parameter name="_callback__target" transfer-ownership="none" allow-none="1">
					<type name="gpointer" c:type="void*"/>
				</parameter>
			</parameters>
			<return-value transfer-ownership="none">
				<type name="none"/>
			</return-value>
		</method>
		<method name="change_group_finish" c:identifier="folks_groupable_change_group_finish" throws="1">
			<parameters>
				<parameter name="_res_" transfer-ownership="none">
					<type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
				</parameter>
			</parameters>
			<return-value transfer-ownership="none">
				<type name="none"/>
			</return-value>
		</method>
		<virtual-method name="change_group" invoker="change_group">
			<parameters>
				<parameter name="group" transfer-ownership="none">
					<type name="utf8" c:type="const gchar*"/>
				</parameter>
				<parameter name="is_member" transfer-ownership="none">
					<type name="gboolean" c:type="gboolean"/>
				</parameter>
				<parameter name="_callback_" transfer-ownership="none" allow-none="1" closure="4">
					<type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
				</parameter>
				<parameter name="_callback__target" transfer-ownership="none" allow-none="1">
					<type name="gpointer" c:type="void*"/>
				</parameter>
			</parameters>
			<return-value transfer-ownership="none">
				<type name="none"/>
			</return-value>
		</virtual-method>
		<virtual-method name="change_group_finish" invoker="change_group_finish" throws="1">
			<parameters>
				<parameter name="_res_" transfer-ownership="none">
					<type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
				</parameter>
			</parameters>
			<return-value transfer-ownership="none">
				<type name="none"/>
			</return-value>
		</virtual-method>
		<property name="groups" writable="1">
			<type name="GLib.HashTable" c:type="GHashTable*">
				<type name="utf8" c:type="gchar*"/>
				<type name="gboolean" c:type="gboolean"/>
			</type>
		</property>
		<glib:signal name="group_changed">
			<parameters>
				<parameter name="group" transfer-ownership="none">
					<type name="utf8" c:type="const gchar*"/>
				</parameter>
				<parameter name="is_member" transfer-ownership="none">
					<type name="gboolean" c:type="gboolean"/>
				</parameter>
			</parameters>
			<return-value transfer-ownership="none">
				<type name="none"/>
			</return-value>
		</glib:signal>
	</interface>
	<record name="GroupableIface" c:type="FolksGroupableIface" glib:is-gtype-struct-for="Groupable">
		<callback name="change_group" c:type="change_group">
			<parameters>
				<parameter name="self" transfer-ownership="none">
					<type name="Folks.Groupable" c:type="FolksGroupable*"/>
				</parameter>
				<parameter name="group" transfer-ownership="none">
					<type name="utf8" c:type="const gchar*"/>
				</parameter>
				<parameter name="is_member" transfer-ownership="none">
					<type name="gboolean" c:type="gboolean"/>
				</parameter>
				<parameter name="_callback_" transfer-ownership="none" allow-none="1" closure="5">
					<type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
				</parameter>
				<parameter name="_callback__target" transfer-ownership="none" allow-none="1">
					<type name="gpointer" c:type="void*"/>
				</parameter>
			</parameters>
			<return-value transfer-ownership="none">
				<type name="none"/>
			</return-value>
		</callback>
		<callback name="change_group_finish" c:type="change_group_finish" throws="1">
			<parameters>
				<parameter name="self" transfer-ownership="none">
					<type name="Folks.Groupable" c:type="FolksGroupable*"/>
				</parameter>
				<parameter name="_res_" transfer-ownership="none">
					<type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
				</parameter>
			</parameters>
			<return-value transfer-ownership="none">
				<type name="none"/>
			</return-value>
		</callback>
	</record>
	<interface name="IMable" c:type="FolksIMable" glib:type-name="FolksIMable" glib:get-type="folks_imable_get_type" glib:type-struct="IMableIface">
		<prerequisite name="GObject.Object"/>
		<function name="normalise_im_address" c:identifier="folks_imable_normalise_im_address">
			<parameters>
				<parameter name="im_address" transfer-ownership="none">
					<type name="utf8" c:type="const gchar*"/>
				</parameter>
				<parameter name="protocol" transfer-ownership="none">
					<type name="utf8" c:type="const gchar*"/>
				</parameter>
			</parameters>
			<return-value transfer-ownership="full">
				<type name="utf8" c:type="gchar*"/>
			</return-value>
		</function>
		<property name="im-addresses" writable="1">
			<type name="GLib.HashTable" c:type="GHashTable*">
				<type name="utf8" c:type="gchar*"/>
				<type name="GLib.GenericArray" c:type="GPtrArray*">
					<type name="utf8" c:type="gchar*"/>
				</type>
			</type>
		</property>
	</interface>
	<record name="IMableIface" c:type="FolksIMableIface" glib:is-gtype-struct-for="IMable">
	</record>
	<interface name="Presence" c:type="FolksPresence" glib:type-name="FolksPresence" glib:get-type="folks_presence_get_type" glib:type-struct="PresenceIface">
		<prerequisite name="GObject.Object"/>
		<function name="typecmp" c:identifier="folks_presence_typecmp">
			<parameters>
				<parameter name="type_a" transfer-ownership="none">
					<type name="Folks.PresenceType" c:type="FolksPresenceType"/>
				</parameter>
				<parameter name="type_b" transfer-ownership="none">
					<type name="Folks.PresenceType" c:type="FolksPresenceType"/>
				</parameter>
			</parameters>
			<return-value transfer-ownership="full">
				<type name="gint" c:type="gint"/>
			</return-value>
		</function>
		<method name="is_online" c:identifier="folks_presence_is_online">
			<return-value transfer-ownership="full">
				<type name="gboolean" c:type="gboolean"/>
			</return-value>
		</method>
		<property name="presence-type" writable="1">
			<type name="Folks.PresenceType" c:type="FolksPresenceType"/>
		</property>
		<property name="presence-message" writable="1">
			<type name="utf8" c:type="gchar*"/>
		</property>
	</interface>
	<record name="PresenceIface" c:type="FolksPresenceIface" glib:is-gtype-struct-for="Presence">
	</record>
</namespace>
</repository>