/* folks.h generated by valac 0.52.0, the Vala compiler, do not modify */

#ifndef __FOLKS_FOLKS_FOLKS_H__
#define __FOLKS_FOLKS_FOLKS_H__

#include <glib-object.h>
#include <glib.h>
#include <stdlib.h>
#include <string.h>
#include <gee.h>
#include <gio/gio.h>
#include <float.h>
#include <math.h>

G_BEGIN_DECLS

#define FOLKS_TYPE_ABSTRACT_FIELD_DETAILS (folks_abstract_field_details_get_type ())
#define FOLKS_ABSTRACT_FIELD_DETAILS(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), FOLKS_TYPE_ABSTRACT_FIELD_DETAILS, FolksAbstractFieldDetails))
#define FOLKS_ABSTRACT_FIELD_DETAILS_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), FOLKS_TYPE_ABSTRACT_FIELD_DETAILS, FolksAbstractFieldDetailsClass))
#define FOLKS_IS_ABSTRACT_FIELD_DETAILS(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), FOLKS_TYPE_ABSTRACT_FIELD_DETAILS))
#define FOLKS_IS_ABSTRACT_FIELD_DETAILS_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), FOLKS_TYPE_ABSTRACT_FIELD_DETAILS))
#define FOLKS_ABSTRACT_FIELD_DETAILS_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), FOLKS_TYPE_ABSTRACT_FIELD_DETAILS, FolksAbstractFieldDetailsClass))

typedef struct _FolksAbstractFieldDetails FolksAbstractFieldDetails;
typedef struct _FolksAbstractFieldDetailsClass FolksAbstractFieldDetailsClass;
typedef struct _FolksAbstractFieldDetailsPrivate FolksAbstractFieldDetailsPrivate;

#define FOLKS_TYPE_ALIAS_DETAILS (folks_alias_details_get_type ())
#define FOLKS_ALIAS_DETAILS(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), FOLKS_TYPE_ALIAS_DETAILS, FolksAliasDetails))
#define FOLKS_IS_ALIAS_DETAILS(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), FOLKS_TYPE_ALIAS_DETAILS))
#define FOLKS_ALIAS_DETAILS_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), FOLKS_TYPE_ALIAS_DETAILS, FolksAliasDetailsIface))

typedef struct _FolksAliasDetails FolksAliasDetails;
typedef struct _FolksAliasDetailsIface FolksAliasDetailsIface;

#define FOLKS_TYPE_ANTI_LINKABLE (folks_anti_linkable_get_type ())
#define FOLKS_ANTI_LINKABLE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), FOLKS_TYPE_ANTI_LINKABLE, FolksAntiLinkable))
#define FOLKS_IS_ANTI_LINKABLE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), FOLKS_TYPE_ANTI_LINKABLE))
#define FOLKS_ANTI_LINKABLE_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), FOLKS_TYPE_ANTI_LINKABLE, FolksAntiLinkableIface))

typedef struct _FolksAntiLinkable FolksAntiLinkable;
typedef struct _FolksAntiLinkableIface FolksAntiLinkableIface;

#define FOLKS_TYPE_PERSONA (folks_persona_get_type ())
#define FOLKS_PERSONA(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), FOLKS_TYPE_PERSONA, FolksPersona))
#define FOLKS_PERSONA_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), FOLKS_TYPE_PERSONA, FolksPersonaClass))
#define FOLKS_IS_PERSONA(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), FOLKS_TYPE_PERSONA))
#define FOLKS_IS_PERSONA_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), FOLKS_TYPE_PERSONA))
#define FOLKS_PERSONA_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), FOLKS_TYPE_PERSONA, FolksPersonaClass))

typedef struct _FolksPersona FolksPersona;
typedef struct _FolksPersonaClass FolksPersonaClass;

#define FOLKS_TYPE_AVATAR_CACHE (folks_avatar_cache_get_type ())
#define FOLKS_AVATAR_CACHE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), FOLKS_TYPE_AVATAR_CACHE, FolksAvatarCache))
#define FOLKS_AVATAR_CACHE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), FOLKS_TYPE_AVATAR_CACHE, FolksAvatarCacheClass))
#define FOLKS_IS_AVATAR_CACHE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), FOLKS_TYPE_AVATAR_CACHE))
#define FOLKS_IS_AVATAR_CACHE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), FOLKS_TYPE_AVATAR_CACHE))
#define FOLKS_AVATAR_CACHE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), FOLKS_TYPE_AVATAR_CACHE, FolksAvatarCacheClass))

typedef struct _FolksAvatarCache FolksAvatarCache;
typedef struct _FolksAvatarCacheClass FolksAvatarCacheClass;
typedef struct _FolksAvatarCachePrivate FolksAvatarCachePrivate;

#define FOLKS_TYPE_AVATAR_DETAILS (folks_avatar_details_get_type ())
#define FOLKS_AVATAR_DETAILS(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), FOLKS_TYPE_AVATAR_DETAILS, FolksAvatarDetails))
#define FOLKS_IS_AVATAR_DETAILS(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), FOLKS_TYPE_AVATAR_DETAILS))
#define FOLKS_AVATAR_DETAILS_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), FOLKS_TYPE_AVATAR_DETAILS, FolksAvatarDetailsIface))

typedef struct _FolksAvatarDetails FolksAvatarDetails;
typedef struct _FolksAvatarDetailsIface FolksAvatarDetailsIface;

#define FOLKS_TYPE_BACKEND_STORE (folks_backend_store_get_type ())
#define FOLKS_BACKEND_STORE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), FOLKS_TYPE_BACKEND_STORE, FolksBackendStore))
#define FOLKS_BACKEND_STORE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), FOLKS_TYPE_BACKEND_STORE, FolksBackendStoreClass))
#define FOLKS_IS_BACKEND_STORE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), FOLKS_TYPE_BACKEND_STORE))
#define FOLKS_IS_BACKEND_STORE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), FOLKS_TYPE_BACKEND_STORE))
#define FOLKS_BACKEND_STORE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), FOLKS_TYPE_BACKEND_STORE, FolksBackendStoreClass))

typedef struct _FolksBackendStore FolksBackendStore;
typedef struct _FolksBackendStoreClass FolksBackendStoreClass;
typedef struct _FolksBackendStorePrivate FolksBackendStorePrivate;

#define FOLKS_TYPE_BACKEND (folks_backend_get_type ())
#define FOLKS_BACKEND(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), FOLKS_TYPE_BACKEND, FolksBackend))
#define FOLKS_BACKEND_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), FOLKS_TYPE_BACKEND, FolksBackendClass))
#define FOLKS_IS_BACKEND(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), FOLKS_TYPE_BACKEND))
#define FOLKS_IS_BACKEND_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), FOLKS_TYPE_BACKEND))
#define FOLKS_BACKEND_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), FOLKS_TYPE_BACKEND, FolksBackendClass))

typedef struct _FolksBackend FolksBackend;
typedef struct _FolksBackendClass FolksBackendClass;
typedef struct _FolksBackendPrivate FolksBackendPrivate;

#define FOLKS_TYPE_PERSONA_STORE (folks_persona_store_get_type ())
#define FOLKS_PERSONA_STORE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), FOLKS_TYPE_PERSONA_STORE, FolksPersonaStore))
#define FOLKS_PERSONA_STORE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), FOLKS_TYPE_PERSONA_STORE, FolksPersonaStoreClass))
#define FOLKS_IS_PERSONA_STORE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), FOLKS_TYPE_PERSONA_STORE))
#define FOLKS_IS_PERSONA_STORE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), FOLKS_TYPE_PERSONA_STORE))
#define FOLKS_PERSONA_STORE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), FOLKS_TYPE_PERSONA_STORE, FolksPersonaStoreClass))

typedef struct _FolksPersonaStore FolksPersonaStore;
typedef struct _FolksPersonaStoreClass FolksPersonaStoreClass;

#define FOLKS_TYPE_BIRTHDAY_DETAILS (folks_birthday_details_get_type ())
#define FOLKS_BIRTHDAY_DETAILS(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), FOLKS_TYPE_BIRTHDAY_DETAILS, FolksBirthdayDetails))
#define FOLKS_IS_BIRTHDAY_DETAILS(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), FOLKS_TYPE_BIRTHDAY_DETAILS))
#define FOLKS_BIRTHDAY_DETAILS_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), FOLKS_TYPE_BIRTHDAY_DETAILS, FolksBirthdayDetailsIface))

typedef struct _FolksBirthdayDetails FolksBirthdayDetails;
typedef struct _FolksBirthdayDetailsIface FolksBirthdayDetailsIface;

#define FOLKS_TYPE_DEBUG (folks_debug_get_type ())
#define FOLKS_DEBUG(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), FOLKS_TYPE_DEBUG, FolksDebug))
#define FOLKS_DEBUG_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), FOLKS_TYPE_DEBUG, FolksDebugClass))
#define FOLKS_IS_DEBUG(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), FOLKS_TYPE_DEBUG))
#define FOLKS_IS_DEBUG_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), FOLKS_TYPE_DEBUG))
#define FOLKS_DEBUG_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), FOLKS_TYPE_DEBUG, FolksDebugClass))

typedef struct _FolksDebug FolksDebug;
typedef struct _FolksDebugClass FolksDebugClass;
typedef struct _FolksDebugPrivate FolksDebugPrivate;

#define FOLKS_TYPE_EMAIL_FIELD_DETAILS (folks_email_field_details_get_type ())
#define FOLKS_EMAIL_FIELD_DETAILS(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), FOLKS_TYPE_EMAIL_FIELD_DETAILS, FolksEmailFieldDetails))
#define FOLKS_EMAIL_FIELD_DETAILS_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), FOLKS_TYPE_EMAIL_FIELD_DETAILS, FolksEmailFieldDetailsClass))
#define FOLKS_IS_EMAIL_FIELD_DETAILS(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), FOLKS_TYPE_EMAIL_FIELD_DETAILS))
#define FOLKS_IS_EMAIL_FIELD_DETAILS_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), FOLKS_TYPE_EMAIL_FIELD_DETAILS))
#define FOLKS_EMAIL_FIELD_DETAILS_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), FOLKS_TYPE_EMAIL_FIELD_DETAILS, FolksEmailFieldDetailsClass))

typedef struct _FolksEmailFieldDetails FolksEmailFieldDetails;
typedef struct _FolksEmailFieldDetailsClass FolksEmailFieldDetailsClass;
typedef struct _FolksEmailFieldDetailsPrivate FolksEmailFieldDetailsPrivate;

#define FOLKS_TYPE_EMAIL_DETAILS (folks_email_details_get_type ())
#define FOLKS_EMAIL_DETAILS(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), FOLKS_TYPE_EMAIL_DETAILS, FolksEmailDetails))
#define FOLKS_IS_EMAIL_DETAILS(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), FOLKS_TYPE_EMAIL_DETAILS))
#define FOLKS_EMAIL_DETAILS_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), FOLKS_TYPE_EMAIL_DETAILS, FolksEmailDetailsIface))

typedef struct _FolksEmailDetails FolksEmailDetails;
typedef struct _FolksEmailDetailsIface FolksEmailDetailsIface;

#define FOLKS_TYPE_EXTENDED_FIELD_DETAILS (folks_extended_field_details_get_type ())
#define FOLKS_EXTENDED_FIELD_DETAILS(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), FOLKS_TYPE_EXTENDED_FIELD_DETAILS, FolksExtendedFieldDetails))
#define FOLKS_EXTENDED_FIELD_DETAILS_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), FOLKS_TYPE_EXTENDED_FIELD_DETAILS, FolksExtendedFieldDetailsClass))
#define FOLKS_IS_EXTENDED_FIELD_DETAILS(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), FOLKS_TYPE_EXTENDED_FIELD_DETAILS))
#define FOLKS_IS_EXTENDED_FIELD_DETAILS_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), FOLKS_TYPE_EXTENDED_FIELD_DETAILS))
#define FOLKS_EXTENDED_FIELD_DETAILS_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), FOLKS_TYPE_EXTENDED_FIELD_DETAILS, FolksExtendedFieldDetailsClass))

typedef struct _FolksExtendedFieldDetails FolksExtendedFieldDetails;
typedef struct _FolksExtendedFieldDetailsClass FolksExtendedFieldDetailsClass;
typedef struct _FolksExtendedFieldDetailsPrivate FolksExtendedFieldDetailsPrivate;

#define FOLKS_TYPE_EXTENDED_INFO (folks_extended_info_get_type ())
#define FOLKS_EXTENDED_INFO(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), FOLKS_TYPE_EXTENDED_INFO, FolksExtendedInfo))
#define FOLKS_IS_EXTENDED_INFO(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), FOLKS_TYPE_EXTENDED_INFO))
#define FOLKS_EXTENDED_INFO_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), FOLKS_TYPE_EXTENDED_INFO, FolksExtendedInfoIface))

typedef struct _FolksExtendedInfo FolksExtendedInfo;
typedef struct _FolksExtendedInfoIface FolksExtendedInfoIface;

#define FOLKS_TYPE_FAVOURITE_DETAILS (folks_favourite_details_get_type ())
#define FOLKS_FAVOURITE_DETAILS(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), FOLKS_TYPE_FAVOURITE_DETAILS, FolksFavouriteDetails))
#define FOLKS_IS_FAVOURITE_DETAILS(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), FOLKS_TYPE_FAVOURITE_DETAILS))
#define FOLKS_FAVOURITE_DETAILS_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), FOLKS_TYPE_FAVOURITE_DETAILS, FolksFavouriteDetailsIface))

typedef struct _FolksFavouriteDetails FolksFavouriteDetails;
typedef struct _FolksFavouriteDetailsIface FolksFavouriteDetailsIface;
typedef enum  {
	FOLKS_GENDER_UNSPECIFIED,
	FOLKS_GENDER_MALE,
	FOLKS_GENDER_FEMALE
} FolksGender;

#define FOLKS_TYPE_GENDER (folks_gender_get_type ())

#define FOLKS_TYPE_GENDER_DETAILS (folks_gender_details_get_type ())
#define FOLKS_GENDER_DETAILS(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), FOLKS_TYPE_GENDER_DETAILS, FolksGenderDetails))
#define FOLKS_IS_GENDER_DETAILS(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), FOLKS_TYPE_GENDER_DETAILS))
#define FOLKS_GENDER_DETAILS_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), FOLKS_TYPE_GENDER_DETAILS, FolksGenderDetailsIface))

typedef struct _FolksGenderDetails FolksGenderDetails;
typedef struct _FolksGenderDetailsIface FolksGenderDetailsIface;

#define FOLKS_TYPE_GROUP_DETAILS (folks_group_details_get_type ())
#define FOLKS_GROUP_DETAILS(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), FOLKS_TYPE_GROUP_DETAILS, FolksGroupDetails))
#define FOLKS_IS_GROUP_DETAILS(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), FOLKS_TYPE_GROUP_DETAILS))
#define FOLKS_GROUP_DETAILS_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), FOLKS_TYPE_GROUP_DETAILS, FolksGroupDetailsIface))

typedef struct _FolksGroupDetails FolksGroupDetails;
typedef struct _FolksGroupDetailsIface FolksGroupDetailsIface;
typedef enum  {
	FOLKS_GROUP_DETAILS_CHANGE_REASON_NONE = 0,
	FOLKS_GROUP_DETAILS_CHANGE_REASON_OFFLINE = 1,
	FOLKS_GROUP_DETAILS_CHANGE_REASON_KICKED = 2,
	FOLKS_GROUP_DETAILS_CHANGE_REASON_BUSY = 3,
	FOLKS_GROUP_DETAILS_CHANGE_REASON_INVITED = 4,
	FOLKS_GROUP_DETAILS_CHANGE_REASON_BANNED = 5,
	FOLKS_GROUP_DETAILS_CHANGE_REASON_ERROR = 6,
	FOLKS_GROUP_DETAILS_CHANGE_REASON_INVALID_MEMBER = 7,
	FOLKS_GROUP_DETAILS_CHANGE_REASON_NO_ANSWER = 8,
	FOLKS_GROUP_DETAILS_CHANGE_REASON_RENAMED = 9,
	FOLKS_GROUP_DETAILS_CHANGE_REASON_PERMISSION_DENIED = 10,
	FOLKS_GROUP_DETAILS_CHANGE_REASON_SEPARATED = 11
} FolksGroupDetailsChangeReason;

#define FOLKS_GROUP_DETAILS_TYPE_CHANGE_REASON (folks_group_details_change_reason_get_type ())

#define FOLKS_TYPE_IM_FIELD_DETAILS (folks_im_field_details_get_type ())
#define FOLKS_IM_FIELD_DETAILS(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), FOLKS_TYPE_IM_FIELD_DETAILS, FolksImFieldDetails))
#define FOLKS_IM_FIELD_DETAILS_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), FOLKS_TYPE_IM_FIELD_DETAILS, FolksImFieldDetailsClass))
#define FOLKS_IS_IM_FIELD_DETAILS(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), FOLKS_TYPE_IM_FIELD_DETAILS))
#define FOLKS_IS_IM_FIELD_DETAILS_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), FOLKS_TYPE_IM_FIELD_DETAILS))
#define FOLKS_IM_FIELD_DETAILS_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), FOLKS_TYPE_IM_FIELD_DETAILS, FolksImFieldDetailsClass))

typedef struct _FolksImFieldDetails FolksImFieldDetails;
typedef struct _FolksImFieldDetailsClass FolksImFieldDetailsClass;
typedef struct _FolksImFieldDetailsPrivate FolksImFieldDetailsPrivate;

#define FOLKS_TYPE_IM_DETAILS (folks_im_details_get_type ())
#define FOLKS_IM_DETAILS(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), FOLKS_TYPE_IM_DETAILS, FolksImDetails))
#define FOLKS_IS_IM_DETAILS(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), FOLKS_TYPE_IM_DETAILS))
#define FOLKS_IM_DETAILS_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), FOLKS_TYPE_IM_DETAILS, FolksImDetailsIface))

typedef struct _FolksImDetails FolksImDetails;
typedef struct _FolksImDetailsIface FolksImDetailsIface;

#define FOLKS_TYPE_INDIVIDUAL_AGGREGATOR (folks_individual_aggregator_get_type ())
#define FOLKS_INDIVIDUAL_AGGREGATOR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), FOLKS_TYPE_INDIVIDUAL_AGGREGATOR, FolksIndividualAggregator))
#define FOLKS_INDIVIDUAL_AGGREGATOR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), FOLKS_TYPE_INDIVIDUAL_AGGREGATOR, FolksIndividualAggregatorClass))
#define FOLKS_IS_INDIVIDUAL_AGGREGATOR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), FOLKS_TYPE_INDIVIDUAL_AGGREGATOR))
#define FOLKS_IS_INDIVIDUAL_AGGREGATOR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), FOLKS_TYPE_INDIVIDUAL_AGGREGATOR))
#define FOLKS_INDIVIDUAL_AGGREGATOR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), FOLKS_TYPE_INDIVIDUAL_AGGREGATOR, FolksIndividualAggregatorClass))

typedef struct _FolksIndividualAggregator FolksIndividualAggregator;
typedef struct _FolksIndividualAggregatorClass FolksIndividualAggregatorClass;
typedef struct _FolksIndividualAggregatorPrivate FolksIndividualAggregatorPrivate;

#define FOLKS_TYPE_INDIVIDUAL (folks_individual_get_type ())
#define FOLKS_INDIVIDUAL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), FOLKS_TYPE_INDIVIDUAL, FolksIndividual))
#define FOLKS_INDIVIDUAL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), FOLKS_TYPE_INDIVIDUAL, FolksIndividualClass))
#define FOLKS_IS_INDIVIDUAL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), FOLKS_TYPE_INDIVIDUAL))
#define FOLKS_IS_INDIVIDUAL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), FOLKS_TYPE_INDIVIDUAL))
#define FOLKS_INDIVIDUAL_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), FOLKS_TYPE_INDIVIDUAL, FolksIndividualClass))

typedef struct _FolksIndividual FolksIndividual;
typedef struct _FolksIndividualClass FolksIndividualClass;
typedef enum  {
	FOLKS_MATCH_RESULT_NONE = -1,
	FOLKS_MATCH_RESULT_VERY_LOW = 0,
	FOLKS_MATCH_RESULT_LOW = 1,
	FOLKS_MATCH_RESULT_MEDIUM = 2,
	FOLKS_MATCH_RESULT_HIGH = 3,
	FOLKS_MATCH_RESULT_VERY_HIGH = 4,
	FOLKS_MATCH_RESULT_MIN = FOLKS_MATCH_RESULT_NONE,
	FOLKS_MATCH_RESULT_MAX = FOLKS_MATCH_RESULT_VERY_HIGH
} FolksMatchResult;

#define FOLKS_TYPE_MATCH_RESULT (folks_match_result_get_type ())
typedef enum  {
	FOLKS_TRUST_LEVEL_NONE,
	FOLKS_TRUST_LEVEL_PERSONAS
} FolksTrustLevel;

#define FOLKS_TYPE_TRUST_LEVEL (folks_trust_level_get_type ())

#define FOLKS_TYPE_INTERACTION_DETAILS (folks_interaction_details_get_type ())
#define FOLKS_INTERACTION_DETAILS(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), FOLKS_TYPE_INTERACTION_DETAILS, FolksInteractionDetails))
#define FOLKS_IS_INTERACTION_DETAILS(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), FOLKS_TYPE_INTERACTION_DETAILS))
#define FOLKS_INTERACTION_DETAILS_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), FOLKS_TYPE_INTERACTION_DETAILS, FolksInteractionDetailsIface))

typedef struct _FolksInteractionDetails FolksInteractionDetails;
typedef struct _FolksInteractionDetailsIface FolksInteractionDetailsIface;

#define FOLKS_TYPE_LOCAL_ID_DETAILS (folks_local_id_details_get_type ())
#define FOLKS_LOCAL_ID_DETAILS(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), FOLKS_TYPE_LOCAL_ID_DETAILS, FolksLocalIdDetails))
#define FOLKS_IS_LOCAL_ID_DETAILS(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), FOLKS_TYPE_LOCAL_ID_DETAILS))
#define FOLKS_LOCAL_ID_DETAILS_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), FOLKS_TYPE_LOCAL_ID_DETAILS, FolksLocalIdDetailsIface))

typedef struct _FolksLocalIdDetails FolksLocalIdDetails;
typedef struct _FolksLocalIdDetailsIface FolksLocalIdDetailsIface;

#define FOLKS_TYPE_LOCATION_DETAILS (folks_location_details_get_type ())
#define FOLKS_LOCATION_DETAILS(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), FOLKS_TYPE_LOCATION_DETAILS, FolksLocationDetails))
#define FOLKS_IS_LOCATION_DETAILS(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), FOLKS_TYPE_LOCATION_DETAILS))
#define FOLKS_LOCATION_DETAILS_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), FOLKS_TYPE_LOCATION_DETAILS, FolksLocationDetailsIface))

typedef struct _FolksLocationDetails FolksLocationDetails;
typedef struct _FolksLocationDetailsIface FolksLocationDetailsIface;

#define FOLKS_TYPE_LOCATION (folks_location_get_type ())
#define FOLKS_LOCATION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), FOLKS_TYPE_LOCATION, FolksLocation))
#define FOLKS_LOCATION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), FOLKS_TYPE_LOCATION, FolksLocationClass))
#define FOLKS_IS_LOCATION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), FOLKS_TYPE_LOCATION))
#define FOLKS_IS_LOCATION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), FOLKS_TYPE_LOCATION))
#define FOLKS_LOCATION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), FOLKS_TYPE_LOCATION, FolksLocationClass))

typedef struct _FolksLocation FolksLocation;
typedef struct _FolksLocationClass FolksLocationClass;

#define FOLKS_TYPE_NAME_DETAILS (folks_name_details_get_type ())
#define FOLKS_NAME_DETAILS(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), FOLKS_TYPE_NAME_DETAILS, FolksNameDetails))
#define FOLKS_IS_NAME_DETAILS(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), FOLKS_TYPE_NAME_DETAILS))
#define FOLKS_NAME_DETAILS_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), FOLKS_TYPE_NAME_DETAILS, FolksNameDetailsIface))

typedef struct _FolksNameDetails FolksNameDetails;
typedef struct _FolksNameDetailsIface FolksNameDetailsIface;

#define FOLKS_TYPE_STRUCTURED_NAME (folks_structured_name_get_type ())
#define FOLKS_STRUCTURED_NAME(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), FOLKS_TYPE_STRUCTURED_NAME, FolksStructuredName))
#define FOLKS_STRUCTURED_NAME_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), FOLKS_TYPE_STRUCTURED_NAME, FolksStructuredNameClass))
#define FOLKS_IS_STRUCTURED_NAME(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), FOLKS_TYPE_STRUCTURED_NAME))
#define FOLKS_IS_STRUCTURED_NAME_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), FOLKS_TYPE_STRUCTURED_NAME))
#define FOLKS_STRUCTURED_NAME_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), FOLKS_TYPE_STRUCTURED_NAME, FolksStructuredNameClass))

typedef struct _FolksStructuredName FolksStructuredName;
typedef struct _FolksStructuredNameClass FolksStructuredNameClass;

#define FOLKS_TYPE_NOTE_DETAILS (folks_note_details_get_type ())
#define FOLKS_NOTE_DETAILS(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), FOLKS_TYPE_NOTE_DETAILS, FolksNoteDetails))
#define FOLKS_IS_NOTE_DETAILS(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), FOLKS_TYPE_NOTE_DETAILS))
#define FOLKS_NOTE_DETAILS_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), FOLKS_TYPE_NOTE_DETAILS, FolksNoteDetailsIface))

typedef struct _FolksNoteDetails FolksNoteDetails;
typedef struct _FolksNoteDetailsIface FolksNoteDetailsIface;

#define FOLKS_TYPE_NOTE_FIELD_DETAILS (folks_note_field_details_get_type ())
#define FOLKS_NOTE_FIELD_DETAILS(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), FOLKS_TYPE_NOTE_FIELD_DETAILS, FolksNoteFieldDetails))
#define FOLKS_NOTE_FIELD_DETAILS_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), FOLKS_TYPE_NOTE_FIELD_DETAILS, FolksNoteFieldDetailsClass))
#define FOLKS_IS_NOTE_FIELD_DETAILS(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), FOLKS_TYPE_NOTE_FIELD_DETAILS))
#define FOLKS_IS_NOTE_FIELD_DETAILS_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), FOLKS_TYPE_NOTE_FIELD_DETAILS))
#define FOLKS_NOTE_FIELD_DETAILS_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), FOLKS_TYPE_NOTE_FIELD_DETAILS, FolksNoteFieldDetailsClass))

typedef struct _FolksNoteFieldDetails FolksNoteFieldDetails;
typedef struct _FolksNoteFieldDetailsClass FolksNoteFieldDetailsClass;

#define FOLKS_TYPE_PRESENCE_DETAILS (folks_presence_details_get_type ())
#define FOLKS_PRESENCE_DETAILS(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), FOLKS_TYPE_PRESENCE_DETAILS, FolksPresenceDetails))
#define FOLKS_IS_PRESENCE_DETAILS(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), FOLKS_TYPE_PRESENCE_DETAILS))
#define FOLKS_PRESENCE_DETAILS_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), FOLKS_TYPE_PRESENCE_DETAILS, FolksPresenceDetailsIface))

typedef struct _FolksPresenceDetails FolksPresenceDetails;
typedef struct _FolksPresenceDetailsIface FolksPresenceDetailsIface;
typedef enum  {
	FOLKS_PRESENCE_TYPE_UNSET,
	FOLKS_PRESENCE_TYPE_OFFLINE,
	FOLKS_PRESENCE_TYPE_AVAILABLE,
	FOLKS_PRESENCE_TYPE_AWAY,
	FOLKS_PRESENCE_TYPE_EXTENDED_AWAY,
	FOLKS_PRESENCE_TYPE_HIDDEN,
	FOLKS_PRESENCE_TYPE_BUSY,
	FOLKS_PRESENCE_TYPE_UNKNOWN,
	FOLKS_PRESENCE_TYPE_ERROR
} FolksPresenceType;

#define FOLKS_TYPE_PRESENCE_TYPE (folks_presence_type_get_type ())

#define FOLKS_TYPE_PHONE_DETAILS (folks_phone_details_get_type ())
#define FOLKS_PHONE_DETAILS(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), FOLKS_TYPE_PHONE_DETAILS, FolksPhoneDetails))
#define FOLKS_IS_PHONE_DETAILS(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), FOLKS_TYPE_PHONE_DETAILS))
#define FOLKS_PHONE_DETAILS_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), FOLKS_TYPE_PHONE_DETAILS, FolksPhoneDetailsIface))

typedef struct _FolksPhoneDetails FolksPhoneDetails;
typedef struct _FolksPhoneDetailsIface FolksPhoneDetailsIface;

#define FOLKS_TYPE_PHONE_FIELD_DETAILS (folks_phone_field_details_get_type ())
#define FOLKS_PHONE_FIELD_DETAILS(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), FOLKS_TYPE_PHONE_FIELD_DETAILS, FolksPhoneFieldDetails))
#define FOLKS_PHONE_FIELD_DETAILS_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), FOLKS_TYPE_PHONE_FIELD_DETAILS, FolksPhoneFieldDetailsClass))
#define FOLKS_IS_PHONE_FIELD_DETAILS(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), FOLKS_TYPE_PHONE_FIELD_DETAILS))
#define FOLKS_IS_PHONE_FIELD_DETAILS_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), FOLKS_TYPE_PHONE_FIELD_DETAILS))
#define FOLKS_PHONE_FIELD_DETAILS_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), FOLKS_TYPE_PHONE_FIELD_DETAILS, FolksPhoneFieldDetailsClass))

typedef struct _FolksPhoneFieldDetails FolksPhoneFieldDetails;
typedef struct _FolksPhoneFieldDetailsClass FolksPhoneFieldDetailsClass;

#define FOLKS_TYPE_POSTAL_ADDRESS_DETAILS (folks_postal_address_details_get_type ())
#define FOLKS_POSTAL_ADDRESS_DETAILS(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), FOLKS_TYPE_POSTAL_ADDRESS_DETAILS, FolksPostalAddressDetails))
#define FOLKS_IS_POSTAL_ADDRESS_DETAILS(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), FOLKS_TYPE_POSTAL_ADDRESS_DETAILS))
#define FOLKS_POSTAL_ADDRESS_DETAILS_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), FOLKS_TYPE_POSTAL_ADDRESS_DETAILS, FolksPostalAddressDetailsIface))

typedef struct _FolksPostalAddressDetails FolksPostalAddressDetails;
typedef struct _FolksPostalAddressDetailsIface FolksPostalAddressDetailsIface;

#define FOLKS_TYPE_POSTAL_ADDRESS_FIELD_DETAILS (folks_postal_address_field_details_get_type ())
#define FOLKS_POSTAL_ADDRESS_FIELD_DETAILS(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), FOLKS_TYPE_POSTAL_ADDRESS_FIELD_DETAILS, FolksPostalAddressFieldDetails))
#define FOLKS_POSTAL_ADDRESS_FIELD_DETAILS_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), FOLKS_TYPE_POSTAL_ADDRESS_FIELD_DETAILS, FolksPostalAddressFieldDetailsClass))
#define FOLKS_IS_POSTAL_ADDRESS_FIELD_DETAILS(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), FOLKS_TYPE_POSTAL_ADDRESS_FIELD_DETAILS))
#define FOLKS_IS_POSTAL_ADDRESS_FIELD_DETAILS_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), FOLKS_TYPE_POSTAL_ADDRESS_FIELD_DETAILS))
#define FOLKS_POSTAL_ADDRESS_FIELD_DETAILS_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), FOLKS_TYPE_POSTAL_ADDRESS_FIELD_DETAILS, FolksPostalAddressFieldDetailsClass))

typedef struct _FolksPostalAddressFieldDetails FolksPostalAddressFieldDetails;
typedef struct _FolksPostalAddressFieldDetailsClass FolksPostalAddressFieldDetailsClass;

#define FOLKS_TYPE_ROLE_DETAILS (folks_role_details_get_type ())
#define FOLKS_ROLE_DETAILS(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), FOLKS_TYPE_ROLE_DETAILS, FolksRoleDetails))
#define FOLKS_IS_ROLE_DETAILS(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), FOLKS_TYPE_ROLE_DETAILS))
#define FOLKS_ROLE_DETAILS_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), FOLKS_TYPE_ROLE_DETAILS, FolksRoleDetailsIface))

typedef struct _FolksRoleDetails FolksRoleDetails;
typedef struct _FolksRoleDetailsIface FolksRoleDetailsIface;

#define FOLKS_TYPE_ROLE_FIELD_DETAILS (folks_role_field_details_get_type ())
#define FOLKS_ROLE_FIELD_DETAILS(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), FOLKS_TYPE_ROLE_FIELD_DETAILS, FolksRoleFieldDetails))
#define FOLKS_ROLE_FIELD_DETAILS_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), FOLKS_TYPE_ROLE_FIELD_DETAILS, FolksRoleFieldDetailsClass))
#define FOLKS_IS_ROLE_FIELD_DETAILS(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), FOLKS_TYPE_ROLE_FIELD_DETAILS))
#define FOLKS_IS_ROLE_FIELD_DETAILS_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), FOLKS_TYPE_ROLE_FIELD_DETAILS))
#define FOLKS_ROLE_FIELD_DETAILS_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), FOLKS_TYPE_ROLE_FIELD_DETAILS, FolksRoleFieldDetailsClass))

typedef struct _FolksRoleFieldDetails FolksRoleFieldDetails;
typedef struct _FolksRoleFieldDetailsClass FolksRoleFieldDetailsClass;

#define FOLKS_TYPE_URL_DETAILS (folks_url_details_get_type ())
#define FOLKS_URL_DETAILS(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), FOLKS_TYPE_URL_DETAILS, FolksUrlDetails))
#define FOLKS_IS_URL_DETAILS(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), FOLKS_TYPE_URL_DETAILS))
#define FOLKS_URL_DETAILS_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), FOLKS_TYPE_URL_DETAILS, FolksUrlDetailsIface))

typedef struct _FolksUrlDetails FolksUrlDetails;
typedef struct _FolksUrlDetailsIface FolksUrlDetailsIface;

#define FOLKS_TYPE_URL_FIELD_DETAILS (folks_url_field_details_get_type ())
#define FOLKS_URL_FIELD_DETAILS(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), FOLKS_TYPE_URL_FIELD_DETAILS, FolksUrlFieldDetails))
#define FOLKS_URL_FIELD_DETAILS_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), FOLKS_TYPE_URL_FIELD_DETAILS, FolksUrlFieldDetailsClass))
#define FOLKS_IS_URL_FIELD_DETAILS(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), FOLKS_TYPE_URL_FIELD_DETAILS))
#define FOLKS_IS_URL_FIELD_DETAILS_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), FOLKS_TYPE_URL_FIELD_DETAILS))
#define FOLKS_URL_FIELD_DETAILS_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), FOLKS_TYPE_URL_FIELD_DETAILS, FolksUrlFieldDetailsClass))

typedef struct _FolksUrlFieldDetails FolksUrlFieldDetails;
typedef struct _FolksUrlFieldDetailsClass FolksUrlFieldDetailsClass;

#define FOLKS_TYPE_WEB_SERVICE_DETAILS (folks_web_service_details_get_type ())
#define FOLKS_WEB_SERVICE_DETAILS(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), FOLKS_TYPE_WEB_SERVICE_DETAILS, FolksWebServiceDetails))
#define FOLKS_IS_WEB_SERVICE_DETAILS(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), FOLKS_TYPE_WEB_SERVICE_DETAILS))
#define FOLKS_WEB_SERVICE_DETAILS_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), FOLKS_TYPE_WEB_SERVICE_DETAILS, FolksWebServiceDetailsIface))

typedef struct _FolksWebServiceDetails FolksWebServiceDetails;
typedef struct _FolksWebServiceDetailsIface FolksWebServiceDetailsIface;

#define FOLKS_TYPE_WEB_SERVICE_FIELD_DETAILS (folks_web_service_field_details_get_type ())
#define FOLKS_WEB_SERVICE_FIELD_DETAILS(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), FOLKS_TYPE_WEB_SERVICE_FIELD_DETAILS, FolksWebServiceFieldDetails))
#define FOLKS_WEB_SERVICE_FIELD_DETAILS_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), FOLKS_TYPE_WEB_SERVICE_FIELD_DETAILS, FolksWebServiceFieldDetailsClass))
#define FOLKS_IS_WEB_SERVICE_FIELD_DETAILS(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), FOLKS_TYPE_WEB_SERVICE_FIELD_DETAILS))
#define FOLKS_IS_WEB_SERVICE_FIELD_DETAILS_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), FOLKS_TYPE_WEB_SERVICE_FIELD_DETAILS))
#define FOLKS_WEB_SERVICE_FIELD_DETAILS_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), FOLKS_TYPE_WEB_SERVICE_FIELD_DETAILS, FolksWebServiceFieldDetailsClass))

typedef struct _FolksWebServiceFieldDetails FolksWebServiceFieldDetails;
typedef struct _FolksWebServiceFieldDetailsClass FolksWebServiceFieldDetailsClass;
typedef struct _FolksIndividualPrivate FolksIndividualPrivate;
typedef struct _FolksLocationPrivate FolksLocationPrivate;
typedef struct _FolksStructuredNamePrivate FolksStructuredNamePrivate;
typedef struct _FolksNoteFieldDetailsPrivate FolksNoteFieldDetailsPrivate;

#define FOLKS_TYPE_OBJECT_CACHE (folks_object_cache_get_type ())
#define FOLKS_OBJECT_CACHE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), FOLKS_TYPE_OBJECT_CACHE, FolksObjectCache))
#define FOLKS_OBJECT_CACHE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), FOLKS_TYPE_OBJECT_CACHE, FolksObjectCacheClass))
#define FOLKS_IS_OBJECT_CACHE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), FOLKS_TYPE_OBJECT_CACHE))
#define FOLKS_IS_OBJECT_CACHE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), FOLKS_TYPE_OBJECT_CACHE))
#define FOLKS_OBJECT_CACHE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), FOLKS_TYPE_OBJECT_CACHE, FolksObjectCacheClass))

typedef struct _FolksObjectCache FolksObjectCache;
typedef struct _FolksObjectCacheClass FolksObjectCacheClass;
typedef struct _FolksObjectCachePrivate FolksObjectCachePrivate;
typedef enum  {
	FOLKS_PERSONA_STORE_TRUST_NONE,
	FOLKS_PERSONA_STORE_TRUST_PARTIAL,
	FOLKS_PERSONA_STORE_TRUST_FULL
} FolksPersonaStoreTrust;

#define FOLKS_TYPE_PERSONA_STORE_TRUST (folks_persona_store_trust_get_type ())
typedef enum  {
	FOLKS_PERSONA_DETAIL_INVALID = -1,
	FOLKS_PERSONA_DETAIL_ALIAS = 0,
	FOLKS_PERSONA_DETAIL_AVATAR,
	FOLKS_PERSONA_DETAIL_BIRTHDAY,
	FOLKS_PERSONA_DETAIL_EMAIL_ADDRESSES,
	FOLKS_PERSONA_DETAIL_FULL_NAME,
	FOLKS_PERSONA_DETAIL_GENDER,
	FOLKS_PERSONA_DETAIL_IM_ADDRESSES,
	FOLKS_PERSONA_DETAIL_IS_FAVOURITE,
	FOLKS_PERSONA_DETAIL_LOCAL_IDS,
	FOLKS_PERSONA_DETAIL_LOCATION,
	FOLKS_PERSONA_DETAIL_NICKNAME,
	FOLKS_PERSONA_DETAIL_NOTES,
	FOLKS_PERSONA_DETAIL_PHONE_NUMBERS,
	FOLKS_PERSONA_DETAIL_POSTAL_ADDRESSES,
	FOLKS_PERSONA_DETAIL_ROLES,
	FOLKS_PERSONA_DETAIL_STRUCTURED_NAME,
	FOLKS_PERSONA_DETAIL_URLS,
	FOLKS_PERSONA_DETAIL_WEB_SERVICE_ADDRESSES,
	FOLKS_PERSONA_DETAIL_GROUPS,
	FOLKS_PERSONA_DETAIL_IM_INTERACTION_COUNT,
	FOLKS_PERSONA_DETAIL_LAST_IM_INTERACTION_DATETIME,
	FOLKS_PERSONA_DETAIL_CALL_INTERACTION_COUNT,
	FOLKS_PERSONA_DETAIL_LAST_CALL_INTERACTION_DATETIME,
	FOLKS_PERSONA_DETAIL_ANTI_LINKS,
	FOLKS_PERSONA_DETAIL_EXTENDED_INFO
} FolksPersonaDetail;

#define FOLKS_TYPE_PERSONA_DETAIL (folks_persona_detail_get_type ())
typedef struct _FolksPersonaStorePrivate FolksPersonaStorePrivate;
typedef enum  {
	FOLKS_MAYBE_BOOL_UNSET = 0,
	FOLKS_MAYBE_BOOL_FALSE = 1,
	FOLKS_MAYBE_BOOL_TRUE = 2
} FolksMaybeBool;

#define FOLKS_TYPE_MAYBE_BOOL (folks_maybe_bool_get_type ())
typedef struct _FolksPersonaPrivate FolksPersonaPrivate;
typedef void (*FolksPersonaLinkablePropertyCallback) (const gchar* link, gpointer user_data);
typedef struct _FolksPhoneFieldDetailsPrivate FolksPhoneFieldDetailsPrivate;

#define FOLKS_TYPE_POSTAL_ADDRESS (folks_postal_address_get_type ())
#define FOLKS_POSTAL_ADDRESS(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), FOLKS_TYPE_POSTAL_ADDRESS, FolksPostalAddress))
#define FOLKS_POSTAL_ADDRESS_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), FOLKS_TYPE_POSTAL_ADDRESS, FolksPostalAddressClass))
#define FOLKS_IS_POSTAL_ADDRESS(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), FOLKS_TYPE_POSTAL_ADDRESS))
#define FOLKS_IS_POSTAL_ADDRESS_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), FOLKS_TYPE_POSTAL_ADDRESS))
#define FOLKS_POSTAL_ADDRESS_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), FOLKS_TYPE_POSTAL_ADDRESS, FolksPostalAddressClass))

typedef struct _FolksPostalAddress FolksPostalAddress;
typedef struct _FolksPostalAddressClass FolksPostalAddressClass;
typedef struct _FolksPostalAddressPrivate FolksPostalAddressPrivate;
typedef struct _FolksPostalAddressFieldDetailsPrivate FolksPostalAddressFieldDetailsPrivate;

#define FOLKS_TYPE_POTENTIAL_MATCH (folks_potential_match_get_type ())
#define FOLKS_POTENTIAL_MATCH(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), FOLKS_TYPE_POTENTIAL_MATCH, FolksPotentialMatch))
#define FOLKS_POTENTIAL_MATCH_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), FOLKS_TYPE_POTENTIAL_MATCH, FolksPotentialMatchClass))
#define FOLKS_IS_POTENTIAL_MATCH(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), FOLKS_TYPE_POTENTIAL_MATCH))
#define FOLKS_IS_POTENTIAL_MATCH_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), FOLKS_TYPE_POTENTIAL_MATCH))
#define FOLKS_POTENTIAL_MATCH_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), FOLKS_TYPE_POTENTIAL_MATCH, FolksPotentialMatchClass))

typedef struct _FolksPotentialMatch FolksPotentialMatch;
typedef struct _FolksPotentialMatchClass FolksPotentialMatchClass;
typedef struct _FolksPotentialMatchPrivate FolksPotentialMatchPrivate;

#define FOLKS_TYPE_QUERY (folks_query_get_type ())
#define FOLKS_QUERY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), FOLKS_TYPE_QUERY, FolksQuery))
#define FOLKS_QUERY_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), FOLKS_TYPE_QUERY, FolksQueryClass))
#define FOLKS_IS_QUERY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), FOLKS_TYPE_QUERY))
#define FOLKS_IS_QUERY_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), FOLKS_TYPE_QUERY))
#define FOLKS_QUERY_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), FOLKS_TYPE_QUERY, FolksQueryClass))

typedef struct _FolksQuery FolksQuery;
typedef struct _FolksQueryClass FolksQueryClass;
typedef struct _FolksQueryPrivate FolksQueryPrivate;

#define FOLKS_TYPE_ROLE (folks_role_get_type ())
#define FOLKS_ROLE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), FOLKS_TYPE_ROLE, FolksRole))
#define FOLKS_ROLE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), FOLKS_TYPE_ROLE, FolksRoleClass))
#define FOLKS_IS_ROLE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), FOLKS_TYPE_ROLE))
#define FOLKS_IS_ROLE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), FOLKS_TYPE_ROLE))
#define FOLKS_ROLE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), FOLKS_TYPE_ROLE, FolksRoleClass))

typedef struct _FolksRole FolksRole;
typedef struct _FolksRoleClass FolksRoleClass;
typedef struct _FolksRolePrivate FolksRolePrivate;
typedef struct _FolksRoleFieldDetailsPrivate FolksRoleFieldDetailsPrivate;

#define FOLKS_TYPE_SEARCH_VIEW (folks_search_view_get_type ())
#define FOLKS_SEARCH_VIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), FOLKS_TYPE_SEARCH_VIEW, FolksSearchView))
#define FOLKS_SEARCH_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), FOLKS_TYPE_SEARCH_VIEW, FolksSearchViewClass))
#define FOLKS_IS_SEARCH_VIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), FOLKS_TYPE_SEARCH_VIEW))
#define FOLKS_IS_SEARCH_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), FOLKS_TYPE_SEARCH_VIEW))
#define FOLKS_SEARCH_VIEW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), FOLKS_TYPE_SEARCH_VIEW, FolksSearchViewClass))

typedef struct _FolksSearchView FolksSearchView;
typedef struct _FolksSearchViewClass FolksSearchViewClass;
typedef struct _FolksSearchViewPrivate FolksSearchViewPrivate;

#define FOLKS_TYPE_SIMPLE_QUERY (folks_simple_query_get_type ())
#define FOLKS_SIMPLE_QUERY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), FOLKS_TYPE_SIMPLE_QUERY, FolksSimpleQuery))
#define FOLKS_SIMPLE_QUERY_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), FOLKS_TYPE_SIMPLE_QUERY, FolksSimpleQueryClass))
#define FOLKS_IS_SIMPLE_QUERY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), FOLKS_TYPE_SIMPLE_QUERY))
#define FOLKS_IS_SIMPLE_QUERY_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), FOLKS_TYPE_SIMPLE_QUERY))
#define FOLKS_SIMPLE_QUERY_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), FOLKS_TYPE_SIMPLE_QUERY, FolksSimpleQueryClass))

typedef struct _FolksSimpleQuery FolksSimpleQuery;
typedef struct _FolksSimpleQueryClass FolksSimpleQueryClass;
typedef struct _FolksSimpleQueryPrivate FolksSimpleQueryPrivate;
typedef struct _FolksUrlFieldDetailsPrivate FolksUrlFieldDetailsPrivate;

#define FOLKS_TYPE_UTILS (folks_utils_get_type ())
#define FOLKS_UTILS(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), FOLKS_TYPE_UTILS, FolksUtils))
#define FOLKS_UTILS_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), FOLKS_TYPE_UTILS, FolksUtilsClass))
#define FOLKS_IS_UTILS(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), FOLKS_TYPE_UTILS))
#define FOLKS_IS_UTILS_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), FOLKS_TYPE_UTILS))
#define FOLKS_UTILS_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), FOLKS_TYPE_UTILS, FolksUtilsClass))

typedef struct _FolksUtils FolksUtils;
typedef struct _FolksUtilsClass FolksUtilsClass;
typedef struct _FolksUtilsPrivate FolksUtilsPrivate;
typedef struct _FolksWebServiceFieldDetailsPrivate FolksWebServiceFieldDetailsPrivate;

struct _FolksAbstractFieldDetails {
	GObject parent_instance;
	FolksAbstractFieldDetailsPrivate * priv;
};

struct _FolksAbstractFieldDetailsClass {
	GObjectClass parent_class;
	gboolean (*equal) (FolksAbstractFieldDetails* self, FolksAbstractFieldDetails* that);
	gboolean (*parameters_equal) (FolksAbstractFieldDetails* self, FolksAbstractFieldDetails* that);
	gboolean (*values_equal) (FolksAbstractFieldDetails* self, FolksAbstractFieldDetails* that);
	guint (*hash) (FolksAbstractFieldDetails* self);
	gconstpointer (*get_value) (FolksAbstractFieldDetails* self);
	void (*set_value) (FolksAbstractFieldDetails* self, gconstpointer value);
	const gchar* (*get_id) (FolksAbstractFieldDetails* self);
	void (*set_id) (FolksAbstractFieldDetails* self, const gchar* value);
	GeeMultiMap* (*get_parameters) (FolksAbstractFieldDetails* self);
	void (*set_parameters) (FolksAbstractFieldDetails* self, GeeMultiMap* value);
};

typedef enum  {
	FOLKS_PROPERTY_ERROR_NOT_WRITEABLE,
	FOLKS_PROPERTY_ERROR_INVALID_VALUE,
	FOLKS_PROPERTY_ERROR_UNKNOWN_ERROR,
	FOLKS_PROPERTY_ERROR_UNAVAILABLE
} FolksPropertyError;
#define FOLKS_PROPERTY_ERROR folks_property_error_quark ()
struct _FolksAliasDetailsIface {
	GTypeInterface parent_iface;
	void (*change_alias) (FolksAliasDetails* self, const gchar* alias, GAsyncReadyCallback _callback_, gpointer _user_data_);
	void (*change_alias_finish) (FolksAliasDetails* self, GAsyncResult* _res_, GError** error);
	const gchar* (*get_alias) (FolksAliasDetails* self);
	void (*set_alias) (FolksAliasDetails* self, const gchar* value);
};

struct _FolksAntiLinkableIface {
	GTypeInterface parent_iface;
	void (*change_anti_links) (FolksAntiLinkable* self, GeeSet* anti_links, GAsyncReadyCallback _callback_, gpointer _user_data_);
	void (*change_anti_links_finish) (FolksAntiLinkable* self, GAsyncResult* _res_, GError** error);
	GeeSet* (*get_anti_links) (FolksAntiLinkable* self);
	void (*set_anti_links) (FolksAntiLinkable* self, GeeSet* value);
};

struct _FolksAvatarCache {
	GObject parent_instance;
	FolksAvatarCachePrivate * priv;
};

struct _FolksAvatarCacheClass {
	GObjectClass parent_class;
};

struct _FolksAvatarDetailsIface {
	GTypeInterface parent_iface;
	void (*change_avatar) (FolksAvatarDetails* self, GLoadableIcon* avatar, GAsyncReadyCallback _callback_, gpointer _user_data_);
	void (*change_avatar_finish) (FolksAvatarDetails* self, GAsyncResult* _res_, GError** error);
	GLoadableIcon* (*get_avatar) (FolksAvatarDetails* self);
	void (*set_avatar) (FolksAvatarDetails* self, GLoadableIcon* value);
};

struct _FolksBackendStore {
	GObject parent_instance;
	FolksBackendStorePrivate * priv;
};

struct _FolksBackendStoreClass {
	GObjectClass parent_class;
};

struct _FolksBackend {
	GObject parent_instance;
	FolksBackendPrivate * priv;
};

struct _FolksBackendClass {
	GObjectClass parent_class;
	void (*disable_persona_store) (FolksBackend* self, FolksPersonaStore* store);
	void (*enable_persona_store) (FolksBackend* self, FolksPersonaStore* store);
	void (*set_persona_stores) (FolksBackend* self, GeeSet* storeids);
	void (*prepare) (FolksBackend* self, GAsyncReadyCallback _callback_, gpointer _user_data_);
	void (*prepare_finish) (FolksBackend* self, GAsyncResult* _res_, GError** error);
	void (*unprepare) (FolksBackend* self, GAsyncReadyCallback _callback_, gpointer _user_data_);
	void (*unprepare_finish) (FolksBackend* self, GAsyncResult* _res_, GError** error);
	gboolean (*get_is_prepared) (FolksBackend* self);
	gboolean (*get_is_quiescent) (FolksBackend* self);
	const gchar* (*get_name) (FolksBackend* self);
	GeeMap* (*get_persona_stores) (FolksBackend* self);
};

struct _FolksBirthdayDetailsIface {
	GTypeInterface parent_iface;
	void (*change_birthday) (FolksBirthdayDetails* self, GDateTime* birthday, GAsyncReadyCallback _callback_, gpointer _user_data_);
	void (*change_birthday_finish) (FolksBirthdayDetails* self, GAsyncResult* _res_, GError** error);
	void (*change_calendar_event_id) (FolksBirthdayDetails* self, const gchar* event_id, GAsyncReadyCallback _callback_, gpointer _user_data_);
	void (*change_calendar_event_id_finish) (FolksBirthdayDetails* self, GAsyncResult* _res_, GError** error);
	GDateTime* (*get_birthday) (FolksBirthdayDetails* self);
	void (*set_birthday) (FolksBirthdayDetails* self, GDateTime* value);
	const gchar* (*get_calendar_event_id) (FolksBirthdayDetails* self);
	void (*set_calendar_event_id) (FolksBirthdayDetails* self, const gchar* value);
};

struct _FolksDebug {
	GObject parent_instance;
	FolksDebugPrivate * priv;
};

struct _FolksDebugClass {
	GObjectClass parent_class;
};

struct _FolksEmailFieldDetails {
	FolksAbstractFieldDetails parent_instance;
	FolksEmailFieldDetailsPrivate * priv;
};

struct _FolksEmailFieldDetailsClass {
	FolksAbstractFieldDetailsClass parent_class;
};

struct _FolksEmailDetailsIface {
	GTypeInterface parent_iface;
	void (*change_email_addresses) (FolksEmailDetails* self, GeeSet* email_addresses, GAsyncReadyCallback _callback_, gpointer _user_data_);
	void (*change_email_addresses_finish) (FolksEmailDetails* self, GAsyncResult* _res_, GError** error);
	GeeSet* (*get_email_addresses) (FolksEmailDetails* self);
	void (*set_email_addresses) (FolksEmailDetails* self, GeeSet* value);
};

struct _FolksExtendedFieldDetails {
	FolksAbstractFieldDetails parent_instance;
	FolksExtendedFieldDetailsPrivate * priv;
};

struct _FolksExtendedFieldDetailsClass {
	FolksAbstractFieldDetailsClass parent_class;
};

struct _FolksExtendedInfoIface {
	GTypeInterface parent_iface;
	FolksExtendedFieldDetails* (*get_extended_field) (FolksExtendedInfo* self, const gchar* name);
	void (*change_extended_field) (FolksExtendedInfo* self, const gchar* name, FolksExtendedFieldDetails* value, GAsyncReadyCallback _callback_, gpointer _user_data_);
	void (*change_extended_field_finish) (FolksExtendedInfo* self, GAsyncResult* _res_, GError** error);
	void (*remove_extended_field) (FolksExtendedInfo* self, const gchar* name, GAsyncReadyCallback _callback_, gpointer _user_data_);
	void (*remove_extended_field_finish) (FolksExtendedInfo* self, GAsyncResult* _res_, GError** error);
};

struct _FolksFavouriteDetailsIface {
	GTypeInterface parent_iface;
	void (*change_is_favourite) (FolksFavouriteDetails* self, gboolean is_favourite, GAsyncReadyCallback _callback_, gpointer _user_data_);
	void (*change_is_favourite_finish) (FolksFavouriteDetails* self, GAsyncResult* _res_, GError** error);
	gboolean (*get_is_favourite) (FolksFavouriteDetails* self);
	void (*set_is_favourite) (FolksFavouriteDetails* self, gboolean value);
};

struct _FolksGenderDetailsIface {
	GTypeInterface parent_iface;
	void (*change_gender) (FolksGenderDetails* self, FolksGender gender, GAsyncReadyCallback _callback_, gpointer _user_data_);
	void (*change_gender_finish) (FolksGenderDetails* self, GAsyncResult* _res_, GError** error);
	FolksGender (*get_gender) (FolksGenderDetails* self);
	void (*set_gender) (FolksGenderDetails* self, FolksGender value);
};

struct _FolksGroupDetailsIface {
	GTypeInterface parent_iface;
	void (*change_group) (FolksGroupDetails* self, const gchar* group, gboolean is_member, GAsyncReadyCallback _callback_, gpointer _user_data_);
	void (*change_group_finish) (FolksGroupDetails* self, GAsyncResult* _res_, GError** error);
	void (*change_groups) (FolksGroupDetails* self, GeeSet* groups, GAsyncReadyCallback _callback_, gpointer _user_data_);
	void (*change_groups_finish) (FolksGroupDetails* self, GAsyncResult* _res_, GError** error);
	GeeSet* (*get_groups) (FolksGroupDetails* self);
	void (*set_groups) (FolksGroupDetails* self, GeeSet* value);
};

typedef enum  {
	FOLKS_IM_DETAILS_ERROR_INVALID_IM_ADDRESS
} FolksImDetailsError;
#define FOLKS_IM_DETAILS_ERROR folks_im_details_error_quark ()
struct _FolksImFieldDetails {
	FolksAbstractFieldDetails parent_instance;
	FolksImFieldDetailsPrivate * priv;
};

struct _FolksImFieldDetailsClass {
	FolksAbstractFieldDetailsClass parent_class;
};

struct _FolksImDetailsIface {
	GTypeInterface parent_iface;
	void (*change_im_addresses) (FolksImDetails* self, GeeMultiMap* im_addresses, GAsyncReadyCallback _callback_, gpointer _user_data_);
	void (*change_im_addresses_finish) (FolksImDetails* self, GAsyncResult* _res_, GError** error);
	GeeMultiMap* (*get_im_addresses) (FolksImDetails* self);
	void (*set_im_addresses) (FolksImDetails* self, GeeMultiMap* value);
};

typedef enum  {
	FOLKS_INDIVIDUAL_AGGREGATOR_ERROR_ADD_FAILED,
	FOLKS_INDIVIDUAL_AGGREGATOR_ERROR_NO_WRITEABLE_STORE,
	FOLKS_INDIVIDUAL_AGGREGATOR_ERROR_STORE_OFFLINE,
	FOLKS_INDIVIDUAL_AGGREGATOR_ERROR_PROPERTY_NOT_WRITEABLE,
	FOLKS_INDIVIDUAL_AGGREGATOR_ERROR_NO_PRIMARY_STORE
} FolksIndividualAggregatorError;
#define FOLKS_INDIVIDUAL_AGGREGATOR_ERROR folks_individual_aggregator_error_quark ()
struct _FolksIndividualAggregator {
	GObject parent_instance;
	FolksIndividualAggregatorPrivate * priv;
};

struct _FolksIndividualAggregatorClass {
	GObjectClass parent_class;
};

struct _FolksInteractionDetailsIface {
	GTypeInterface parent_iface;
	guint (*get_im_interaction_count) (FolksInteractionDetails* self);
	GDateTime* (*get_last_im_interaction_datetime) (FolksInteractionDetails* self);
	guint (*get_call_interaction_count) (FolksInteractionDetails* self);
	GDateTime* (*get_last_call_interaction_datetime) (FolksInteractionDetails* self);
};

struct _FolksLocalIdDetailsIface {
	GTypeInterface parent_iface;
	void (*change_local_ids) (FolksLocalIdDetails* self, GeeSet* local_ids, GAsyncReadyCallback _callback_, gpointer _user_data_);
	void (*change_local_ids_finish) (FolksLocalIdDetails* self, GAsyncResult* _res_, GError** error);
	GeeSet* (*get_local_ids) (FolksLocalIdDetails* self);
	void (*set_local_ids) (FolksLocalIdDetails* self, GeeSet* value);
};

struct _FolksLocationDetailsIface {
	GTypeInterface parent_iface;
	void (*change_location) (FolksLocationDetails* self, FolksLocation* location, GAsyncReadyCallback _callback_, gpointer _user_data_);
	void (*change_location_finish) (FolksLocationDetails* self, GAsyncResult* _res_, GError** error);
	FolksLocation* (*get_location) (FolksLocationDetails* self);
	void (*set_location) (FolksLocationDetails* self, FolksLocation* value);
};

struct _FolksNameDetailsIface {
	GTypeInterface parent_iface;
	void (*change_structured_name) (FolksNameDetails* self, FolksStructuredName* name, GAsyncReadyCallback _callback_, gpointer _user_data_);
	void (*change_structured_name_finish) (FolksNameDetails* self, GAsyncResult* _res_, GError** error);
	void (*change_full_name) (FolksNameDetails* self, const gchar* full_name, GAsyncReadyCallback _callback_, gpointer _user_data_);
	void (*change_full_name_finish) (FolksNameDetails* self, GAsyncResult* _res_, GError** error);
	void (*change_nickname) (FolksNameDetails* self, const gchar* nickname, GAsyncReadyCallback _callback_, gpointer _user_data_);
	void (*change_nickname_finish) (FolksNameDetails* self, GAsyncResult* _res_, GError** error);
	FolksStructuredName* (*get_structured_name) (FolksNameDetails* self);
	void (*set_structured_name) (FolksNameDetails* self, FolksStructuredName* value);
	const gchar* (*get_full_name) (FolksNameDetails* self);
	void (*set_full_name) (FolksNameDetails* self, const gchar* value);
	const gchar* (*get_nickname) (FolksNameDetails* self);
	void (*set_nickname) (FolksNameDetails* self, const gchar* value);
};

struct _FolksNoteDetailsIface {
	GTypeInterface parent_iface;
	void (*change_notes) (FolksNoteDetails* self, GeeSet* notes, GAsyncReadyCallback _callback_, gpointer _user_data_);
	void (*change_notes_finish) (FolksNoteDetails* self, GAsyncResult* _res_, GError** error);
	GeeSet* (*get_notes) (FolksNoteDetails* self);
	void (*set_notes) (FolksNoteDetails* self, GeeSet* value);
};

struct _FolksPresenceDetailsIface {
	GTypeInterface parent_iface;
	FolksPresenceType (*get_presence_type) (FolksPresenceDetails* self);
	void (*set_presence_type) (FolksPresenceDetails* self, FolksPresenceType value);
	const gchar* (*get_presence_message) (FolksPresenceDetails* self);
	void (*set_presence_message) (FolksPresenceDetails* self, const gchar* value);
	gchar** (*get_client_types) (FolksPresenceDetails* self, gint* result_length1);
	void (*set_client_types) (FolksPresenceDetails* self, gchar** value, gint value_length1);
	const gchar* (*get_presence_status) (FolksPresenceDetails* self);
	void (*set_presence_status) (FolksPresenceDetails* self, const gchar* value);
};

struct _FolksPhoneDetailsIface {
	GTypeInterface parent_iface;
	void (*change_phone_numbers) (FolksPhoneDetails* self, GeeSet* phone_numbers, GAsyncReadyCallback _callback_, gpointer _user_data_);
	void (*change_phone_numbers_finish) (FolksPhoneDetails* self, GAsyncResult* _res_, GError** error);
	GeeSet* (*get_phone_numbers) (FolksPhoneDetails* self);
	void (*set_phone_numbers) (FolksPhoneDetails* self, GeeSet* value);
};

struct _FolksPostalAddressDetailsIface {
	GTypeInterface parent_iface;
	void (*change_postal_addresses) (FolksPostalAddressDetails* self, GeeSet* postal_addresses, GAsyncReadyCallback _callback_, gpointer _user_data_);
	void (*change_postal_addresses_finish) (FolksPostalAddressDetails* self, GAsyncResult* _res_, GError** error);
	GeeSet* (*get_postal_addresses) (FolksPostalAddressDetails* self);
	void (*set_postal_addresses) (FolksPostalAddressDetails* self, GeeSet* value);
};

struct _FolksRoleDetailsIface {
	GTypeInterface parent_iface;
	void (*change_roles) (FolksRoleDetails* self, GeeSet* roles, GAsyncReadyCallback _callback_, gpointer _user_data_);
	void (*change_roles_finish) (FolksRoleDetails* self, GAsyncResult* _res_, GError** error);
	GeeSet* (*get_roles) (FolksRoleDetails* self);
	void (*set_roles) (FolksRoleDetails* self, GeeSet* value);
};

struct _FolksUrlDetailsIface {
	GTypeInterface parent_iface;
	void (*change_urls) (FolksUrlDetails* self, GeeSet* urls, GAsyncReadyCallback _callback_, gpointer _user_data_);
	void (*change_urls_finish) (FolksUrlDetails* self, GAsyncResult* _res_, GError** error);
	GeeSet* (*get_urls) (FolksUrlDetails* self);
	void (*set_urls) (FolksUrlDetails* self, GeeSet* value);
};

struct _FolksWebServiceDetailsIface {
	GTypeInterface parent_iface;
	void (*change_web_service_addresses) (FolksWebServiceDetails* self, GeeMultiMap* web_service_addresses, GAsyncReadyCallback _callback_, gpointer _user_data_);
	void (*change_web_service_addresses_finish) (FolksWebServiceDetails* self, GAsyncResult* _res_, GError** error);
	GeeMultiMap* (*get_web_service_addresses) (FolksWebServiceDetails* self);
	void (*set_web_service_addresses) (FolksWebServiceDetails* self, GeeMultiMap* value);
};

struct _FolksIndividual {
	GObject parent_instance;
	FolksIndividualPrivate * priv;
};

struct _FolksIndividualClass {
	GObjectClass parent_class;
};

struct _FolksLocation {
	GObject parent_instance;
	FolksLocationPrivate * priv;
	gdouble latitude;
	gdouble longitude;
};

struct _FolksLocationClass {
	GObjectClass parent_class;
};

struct _FolksStructuredName {
	GObject parent_instance;
	FolksStructuredNamePrivate * priv;
};

struct _FolksStructuredNameClass {
	GObjectClass parent_class;
};

struct _FolksNoteFieldDetails {
	FolksAbstractFieldDetails parent_instance;
	FolksNoteFieldDetailsPrivate * priv;
};

struct _FolksNoteFieldDetailsClass {
	FolksAbstractFieldDetailsClass parent_class;
};

struct _FolksObjectCache {
	GObject parent_instance;
	FolksObjectCachePrivate * priv;
};

struct _FolksObjectCacheClass {
	GObjectClass parent_class;
	GVariantType* (*get_serialised_object_type) (FolksObjectCache* self, guint8 object_version);
	guint8 (*get_serialised_object_version) (FolksObjectCache* self);
	GVariant* (*serialise_object) (FolksObjectCache* self, gconstpointer object);
	gpointer (*deserialise_object) (FolksObjectCache* self, GVariant* variant, guint8 object_version);
};

typedef enum  {
	FOLKS_PERSONA_STORE_ERROR_INVALID_ARGUMENT,
	FOLKS_PERSONA_STORE_ERROR_CREATE_FAILED,
	FOLKS_PERSONA_STORE_ERROR_UNSUPPORTED_ON_USER,
	FOLKS_PERSONA_STORE_ERROR_STORE_OFFLINE,
	FOLKS_PERSONA_STORE_ERROR_READ_ONLY,
	FOLKS_PERSONA_STORE_ERROR_PERMISSION_DENIED,
	FOLKS_PERSONA_STORE_ERROR_REMOVE_FAILED,
	FOLKS_PERSONA_STORE_ERROR_UNSUPPORTED_ON_NON_USER
} FolksPersonaStoreError;
#define FOLKS_PERSONA_STORE_ERROR folks_persona_store_error_quark ()
struct _FolksPersonaStore {
	GObject parent_instance;
	FolksPersonaStorePrivate * priv;
};

struct _FolksPersonaStoreClass {
	GObjectClass parent_class;
	void (*prepare) (FolksPersonaStore* self, GAsyncReadyCallback _callback_, gpointer _user_data_);
	void (*prepare_finish) (FolksPersonaStore* self, GAsyncResult* _res_, GError** error);
	void (*flush) (FolksPersonaStore* self, GAsyncReadyCallback _callback_, gpointer _user_data_);
	void (*flush_finish) (FolksPersonaStore* self, GAsyncResult* _res_);
	void (*add_persona_from_details) (FolksPersonaStore* self, GHashTable* details, GAsyncReadyCallback _callback_, gpointer _user_data_);
	FolksPersona* (*add_persona_from_details_finish) (FolksPersonaStore* self, GAsyncResult* _res_, GError** error);
	void (*remove_persona) (FolksPersonaStore* self, FolksPersona* persona, GAsyncReadyCallback _callback_, gpointer _user_data_);
	void (*remove_persona_finish) (FolksPersonaStore* self, GAsyncResult* _res_, GError** error);
	const gchar* (*get_type_id) (FolksPersonaStore* self);
	GeeMap* (*get_personas) (FolksPersonaStore* self);
	FolksMaybeBool (*get_can_add_personas) (FolksPersonaStore* self);
	FolksMaybeBool (*get_can_alias_personas) (FolksPersonaStore* self);
	FolksMaybeBool (*get_can_group_personas) (FolksPersonaStore* self);
	FolksMaybeBool (*get_can_remove_personas) (FolksPersonaStore* self);
	gboolean (*get_is_prepared) (FolksPersonaStore* self);
	gboolean (*get_is_quiescent) (FolksPersonaStore* self);
	gchar** (*get_always_writeable_properties) (FolksPersonaStore* self, gint* result_length1);
};

struct _FolksPersona {
	GObject parent_instance;
	FolksPersonaPrivate * priv;
};

struct _FolksPersonaClass {
	GObjectClass parent_class;
	void (*linkable_property_to_links) (FolksPersona* self, const gchar* prop_name, FolksPersonaLinkablePropertyCallback callback, gpointer callback_target);
	gchar** (*get_linkable_properties) (FolksPersona* self, gint* result_length1);
	gchar** (*get_writeable_properties) (FolksPersona* self, gint* result_length1);
};

struct _FolksPhoneFieldDetails {
	FolksAbstractFieldDetails parent_instance;
	FolksPhoneFieldDetailsPrivate * priv;
};

struct _FolksPhoneFieldDetailsClass {
	FolksAbstractFieldDetailsClass parent_class;
};

struct _FolksPostalAddress {
	GObject parent_instance;
	FolksPostalAddressPrivate * priv;
};

struct _FolksPostalAddressClass {
	GObjectClass parent_class;
};

struct _FolksPostalAddressFieldDetails {
	FolksAbstractFieldDetails parent_instance;
	FolksPostalAddressFieldDetailsPrivate * priv;
};

struct _FolksPostalAddressFieldDetailsClass {
	FolksAbstractFieldDetailsClass parent_class;
};

struct _FolksPotentialMatch {
	GObject parent_instance;
	FolksPotentialMatchPrivate * priv;
};

struct _FolksPotentialMatchClass {
	GObjectClass parent_class;
};

struct _FolksQuery {
	GObject parent_instance;
	FolksQueryPrivate * priv;
};

struct _FolksQueryClass {
	GObjectClass parent_class;
	guint (*is_match) (FolksQuery* self, FolksIndividual* individual);
	gchar** (*get_match_fields) (FolksQuery* self, gint* result_length1);
	void (*set_match_fields) (FolksQuery* self, gchar** value, gint value_length1);
};

struct _FolksRole {
	GObject parent_instance;
	FolksRolePrivate * priv;
};

struct _FolksRoleClass {
	GObjectClass parent_class;
};

struct _FolksRoleFieldDetails {
	FolksAbstractFieldDetails parent_instance;
	FolksRoleFieldDetailsPrivate * priv;
};

struct _FolksRoleFieldDetailsClass {
	FolksAbstractFieldDetailsClass parent_class;
};

struct _FolksSearchView {
	GObject parent_instance;
	FolksSearchViewPrivate * priv;
};

struct _FolksSearchViewClass {
	GObjectClass parent_class;
};

struct _FolksSimpleQuery {
	FolksQuery parent_instance;
	FolksSimpleQueryPrivate * priv;
};

struct _FolksSimpleQueryClass {
	FolksQueryClass parent_class;
};

struct _FolksUrlFieldDetails {
	FolksAbstractFieldDetails parent_instance;
	FolksUrlFieldDetailsPrivate * priv;
};

struct _FolksUrlFieldDetailsClass {
	FolksAbstractFieldDetailsClass parent_class;
};

struct _FolksUtils {
	GObject parent_instance;
	FolksUtilsPrivate * priv;
};

struct _FolksUtilsClass {
	GObjectClass parent_class;
};

struct _FolksWebServiceFieldDetails {
	FolksAbstractFieldDetails parent_instance;
	FolksWebServiceFieldDetailsPrivate * priv;
};

struct _FolksWebServiceFieldDetailsClass {
	FolksAbstractFieldDetailsClass parent_class;
};

GType folks_abstract_field_details_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (FolksAbstractFieldDetails, g_object_unref)
#define FOLKS_ABSTRACT_FIELD_DETAILS_PARAM_TYPE "type"
#define FOLKS_ABSTRACT_FIELD_DETAILS_PARAM_TYPE_HOME "home"
#define FOLKS_ABSTRACT_FIELD_DETAILS_PARAM_TYPE_WORK "work"
#define FOLKS_ABSTRACT_FIELD_DETAILS_PARAM_TYPE_OTHER "other"
GeeCollection* folks_abstract_field_details_get_parameter_values (FolksAbstractFieldDetails* self,
                                                                  const gchar* parameter_name);
void folks_abstract_field_details_add_parameter (FolksAbstractFieldDetails* self,
                                                 const gchar* parameter_name,
                                                 const gchar* parameter_value);
void folks_abstract_field_details_set_parameter (FolksAbstractFieldDetails* self,
                                                 const gchar* parameter_name,
                                                 const gchar* parameter_value);
void folks_abstract_field_details_extend_parameters (FolksAbstractFieldDetails* self,
                                                     GeeMultiMap* additional);
void folks_abstract_field_details_remove_parameter_all (FolksAbstractFieldDetails* self,
                                                        const gchar* parameter_name);
gboolean folks_abstract_field_details_equal (FolksAbstractFieldDetails* self,
                                             FolksAbstractFieldDetails* that);
gboolean folks_abstract_field_details_equal_static (FolksAbstractFieldDetails* left,
                                                    FolksAbstractFieldDetails* right);
gboolean folks_abstract_field_details_parameters_equal (FolksAbstractFieldDetails* self,
                                                        FolksAbstractFieldDetails* that);
gboolean folks_abstract_field_details_values_equal (FolksAbstractFieldDetails* self,
                                                    FolksAbstractFieldDetails* that);
guint folks_abstract_field_details_hash (FolksAbstractFieldDetails* self);
guint folks_abstract_field_details_hash_static (FolksAbstractFieldDetails* value);
FolksAbstractFieldDetails* folks_abstract_field_details_construct (GType object_type,
                                                                   GType t_type,
                                                                   GBoxedCopyFunc t_dup_func,
                                                                   GDestroyNotify t_destroy_func);
gconstpointer folks_abstract_field_details_get_value (FolksAbstractFieldDetails* self);
void folks_abstract_field_details_set_value (FolksAbstractFieldDetails* self,
                                             gconstpointer value);
GType folks_abstract_field_details_get_value_type (FolksAbstractFieldDetails* self);
const gchar* folks_abstract_field_details_get_id (FolksAbstractFieldDetails* self);
void folks_abstract_field_details_set_id (FolksAbstractFieldDetails* self,
                                          const gchar* value);
GeeMultiMap* folks_abstract_field_details_get_parameters (FolksAbstractFieldDetails* self);
void folks_abstract_field_details_set_parameters (FolksAbstractFieldDetails* self,
                                                  GeeMultiMap* value);
GQuark folks_property_error_quark (void);
GType folks_alias_details_get_type (void) G_GNUC_CONST ;
void folks_alias_details_change_alias (FolksAliasDetails* self,
                                       const gchar* alias,
                                       GAsyncReadyCallback _callback_,
                                       gpointer _user_data_);
void folks_alias_details_change_alias_finish (FolksAliasDetails* self,
                                              GAsyncResult* _res_,
                                              GError** error);
const gchar* folks_alias_details_get_alias (FolksAliasDetails* self);
void folks_alias_details_set_alias (FolksAliasDetails* self,
                                    const gchar* value);
GType folks_persona_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (FolksPersona, g_object_unref)
GType folks_anti_linkable_get_type (void) G_GNUC_CONST ;
void folks_anti_linkable_change_anti_links (FolksAntiLinkable* self,
                                            GeeSet* anti_links,
                                            GAsyncReadyCallback _callback_,
                                            gpointer _user_data_);
void folks_anti_linkable_change_anti_links_finish (FolksAntiLinkable* self,
                                                   GAsyncResult* _res_,
                                                   GError** error);
gboolean folks_anti_linkable_has_anti_link_with_persona (FolksAntiLinkable* self,
                                                         FolksPersona* other_persona);
void folks_anti_linkable_add_anti_links (FolksAntiLinkable* self,
                                         GeeSet* other_personas,
                                         GAsyncReadyCallback _callback_,
                                         gpointer _user_data_);
void folks_anti_linkable_add_anti_links_finish (FolksAntiLinkable* self,
                                                GAsyncResult* _res_,
                                                GError** error);
void folks_anti_linkable_remove_anti_links (FolksAntiLinkable* self,
                                            GeeSet* other_personas,
                                            GAsyncReadyCallback _callback_,
                                            gpointer _user_data_);
void folks_anti_linkable_remove_anti_links_finish (FolksAntiLinkable* self,
                                                   GAsyncResult* _res_,
                                                   GError** error);
void folks_anti_linkable_add_global_anti_link (FolksAntiLinkable* self,
                                               GAsyncReadyCallback _callback_,
                                               gpointer _user_data_);
void folks_anti_linkable_add_global_anti_link_finish (FolksAntiLinkable* self,
                                                      GAsyncResult* _res_,
                                                      GError** error);
void folks_anti_linkable_remove_global_anti_link (FolksAntiLinkable* self,
                                                  GAsyncReadyCallback _callback_,
                                                  gpointer _user_data_);
void folks_anti_linkable_remove_global_anti_link_finish (FolksAntiLinkable* self,
                                                         GAsyncResult* _res_,
                                                         GError** error);
gboolean folks_anti_linkable_has_global_anti_link (FolksAntiLinkable* self);
GeeSet* folks_anti_linkable_get_anti_links (FolksAntiLinkable* self);
void folks_anti_linkable_set_anti_links (FolksAntiLinkable* self,
                                         GeeSet* value);
GType folks_avatar_cache_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (FolksAvatarCache, g_object_unref)
FolksAvatarCache* folks_avatar_cache_dup (void);
void folks_avatar_cache_load_avatar (FolksAvatarCache* self,
                                     const gchar* id,
                                     GAsyncReadyCallback _callback_,
                                     gpointer _user_data_);
GLoadableIcon* folks_avatar_cache_load_avatar_finish (FolksAvatarCache* self,
                                                      GAsyncResult* _res_,
                                                      GError** error);
void folks_avatar_cache_store_avatar (FolksAvatarCache* self,
                                      const gchar* id,
                                      GLoadableIcon* avatar,
                                      GAsyncReadyCallback _callback_,
                                      gpointer _user_data_);
gchar* folks_avatar_cache_store_avatar_finish (FolksAvatarCache* self,
                                               GAsyncResult* _res_,
                                               GError** error);
void folks_avatar_cache_remove_avatar (FolksAvatarCache* self,
                                       const gchar* id,
                                       GAsyncReadyCallback _callback_,
                                       gpointer _user_data_);
void folks_avatar_cache_remove_avatar_finish (FolksAvatarCache* self,
                                              GAsyncResult* _res_,
                                              GError** error);
gchar* folks_avatar_cache_build_uri_for_avatar (FolksAvatarCache* self,
                                                const gchar* id);
GType folks_avatar_details_get_type (void) G_GNUC_CONST ;
void folks_avatar_details_change_avatar (FolksAvatarDetails* self,
                                         GLoadableIcon* avatar,
                                         GAsyncReadyCallback _callback_,
                                         gpointer _user_data_);
void folks_avatar_details_change_avatar_finish (FolksAvatarDetails* self,
                                                GAsyncResult* _res_,
                                                GError** error);
GLoadableIcon* folks_avatar_details_get_avatar (FolksAvatarDetails* self);
void folks_avatar_details_set_avatar (FolksAvatarDetails* self,
                                      GLoadableIcon* value);
GType folks_backend_store_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (FolksBackendStore, g_object_unref)
extern gchar* folks_backend_store_KEY_FILE_GROUP_ALL_OTHERS;
FolksBackendStore* folks_backend_store_dup (void);
void folks_backend_store_prepare (FolksBackendStore* self,
                                  GAsyncReadyCallback _callback_,
                                  gpointer _user_data_);
void folks_backend_store_prepare_finish (FolksBackendStore* self,
                                         GAsyncResult* _res_);
void folks_backend_store_load_backends (FolksBackendStore* self,
                                        GAsyncReadyCallback _callback_,
                                        gpointer _user_data_);
void folks_backend_store_load_backends_finish (FolksBackendStore* self,
                                               GAsyncResult* _res_,
                                               GError** error);
GType folks_backend_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (FolksBackend, g_object_unref)
void folks_backend_store_add_backend (FolksBackendStore* self,
                                      FolksBackend* backend);
FolksBackend* folks_backend_store_dup_backend_by_name (FolksBackendStore* self,
                                                       const gchar* name);
GeeCollection* folks_backend_store_list_backends (FolksBackendStore* self);
void folks_backend_store_enable_backend (FolksBackendStore* self,
                                         const gchar* name,
                                         GAsyncReadyCallback _callback_,
                                         gpointer _user_data_);
void folks_backend_store_enable_backend_finish (FolksBackendStore* self,
                                                GAsyncResult* _res_);
void folks_backend_store_disable_backend (FolksBackendStore* self,
                                          const gchar* name,
                                          GAsyncReadyCallback _callback_,
                                          gpointer _user_data_);
void folks_backend_store_disable_backend_finish (FolksBackendStore* self,
                                                 GAsyncResult* _res_);
GeeMap* folks_backend_store_get_enabled_backends (FolksBackendStore* self);
gboolean folks_backend_store_get_is_prepared (FolksBackendStore* self);
GType folks_persona_store_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (FolksPersonaStore, g_object_unref)
void folks_backend_disable_persona_store (FolksBackend* self,
                                          FolksPersonaStore* store);
void folks_backend_enable_persona_store (FolksBackend* self,
                                         FolksPersonaStore* store);
void folks_backend_set_persona_stores (FolksBackend* self,
                                       GeeSet* storeids);
void folks_backend_prepare (FolksBackend* self,
                            GAsyncReadyCallback _callback_,
                            gpointer _user_data_);
void folks_backend_prepare_finish (FolksBackend* self,
                                   GAsyncResult* _res_,
                                   GError** error);
void folks_backend_unprepare (FolksBackend* self,
                              GAsyncReadyCallback _callback_,
                              gpointer _user_data_);
void folks_backend_unprepare_finish (FolksBackend* self,
                                     GAsyncResult* _res_,
                                     GError** error);
FolksBackend* folks_backend_construct (GType object_type);
gboolean folks_backend_get_is_prepared (FolksBackend* self);
gboolean folks_backend_get_is_quiescent (FolksBackend* self);
const gchar* folks_backend_get_name (FolksBackend* self);
GeeMap* folks_backend_get_persona_stores (FolksBackend* self);
GType folks_birthday_details_get_type (void) G_GNUC_CONST ;
void folks_birthday_details_change_birthday (FolksBirthdayDetails* self,
                                             GDateTime* birthday,
                                             GAsyncReadyCallback _callback_,
                                             gpointer _user_data_);
void folks_birthday_details_change_birthday_finish (FolksBirthdayDetails* self,
                                                    GAsyncResult* _res_,
                                                    GError** error);
void folks_birthday_details_change_calendar_event_id (FolksBirthdayDetails* self,
                                                      const gchar* event_id,
                                                      GAsyncReadyCallback _callback_,
                                                      gpointer _user_data_);
void folks_birthday_details_change_calendar_event_id_finish (FolksBirthdayDetails* self,
                                                             GAsyncResult* _res_,
                                                             GError** error);
GDateTime* folks_birthday_details_get_birthday (FolksBirthdayDetails* self);
void folks_birthday_details_set_birthday (FolksBirthdayDetails* self,
                                          GDateTime* value);
const gchar* folks_birthday_details_get_calendar_event_id (FolksBirthdayDetails* self);
void folks_birthday_details_set_calendar_event_id (FolksBirthdayDetails* self,
                                                   const gchar* value);
GType folks_debug_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (FolksDebug, g_object_unref)
#define FOLKS_DEBUG_STATUS_LOG_DOMAIN "folks-status"
FolksDebug* folks_debug_dup (void);
FolksDebug* folks_debug_dup_with_flags (const gchar* debug_flags,
                                        gboolean colour_enabled);
void folks_debug_emit_print_status (FolksDebug* self);
void folks_debug_indent (FolksDebug* self);
void folks_debug_unindent (FolksDebug* self);
void folks_debug_print_line (FolksDebug* self,
                             const gchar* domain,
                             GLogLevelFlags level,
                             const gchar* format,
                             ...)  G_GNUC_PRINTF(4,5) ;
void folks_debug_print_heading (FolksDebug* self,
                                const gchar* domain,
                                GLogLevelFlags level,
                                const gchar* format,
                                ...)  G_GNUC_PRINTF(4,5) ;
void folks_debug_print_key_value_pairs (FolksDebug* self,
                                        const gchar* domain,
                                        GLogLevelFlags level,
                                        ...);
gboolean folks_debug_get_colour_enabled (FolksDebug* self);
void folks_debug_set_colour_enabled (FolksDebug* self,
                                     gboolean value);
gboolean folks_debug_get_debug_output_enabled (FolksDebug* self);
void folks_debug_set_debug_output_enabled (FolksDebug* self,
                                           gboolean value);
GType folks_email_field_details_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (FolksEmailFieldDetails, g_object_unref)
FolksEmailFieldDetails* folks_email_field_details_new (const gchar* value,
                                                       GeeMultiMap* parameters);
FolksEmailFieldDetails* folks_email_field_details_construct (GType object_type,
                                                             const gchar* value,
                                                             GeeMultiMap* parameters);
GType folks_email_details_get_type (void) G_GNUC_CONST ;
void folks_email_details_change_email_addresses (FolksEmailDetails* self,
                                                 GeeSet* email_addresses,
                                                 GAsyncReadyCallback _callback_,
                                                 gpointer _user_data_);
void folks_email_details_change_email_addresses_finish (FolksEmailDetails* self,
                                                        GAsyncResult* _res_,
                                                        GError** error);
GeeSet* folks_email_details_get_email_addresses (FolksEmailDetails* self);
void folks_email_details_set_email_addresses (FolksEmailDetails* self,
                                              GeeSet* value);
GType folks_extended_field_details_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (FolksExtendedFieldDetails, g_object_unref)
FolksExtendedFieldDetails* folks_extended_field_details_new (const gchar* value,
                                                             GeeMultiMap* parameters);
FolksExtendedFieldDetails* folks_extended_field_details_construct (GType object_type,
                                                                   const gchar* value,
                                                                   GeeMultiMap* parameters);
GType folks_extended_info_get_type (void) G_GNUC_CONST ;
FolksExtendedFieldDetails* folks_extended_info_get_extended_field (FolksExtendedInfo* self,
                                                                   const gchar* name);
void folks_extended_info_change_extended_field (FolksExtendedInfo* self,
                                                const gchar* name,
                                                FolksExtendedFieldDetails* value,
                                                GAsyncReadyCallback _callback_,
                                                gpointer _user_data_);
void folks_extended_info_change_extended_field_finish (FolksExtendedInfo* self,
                                                       GAsyncResult* _res_,
                                                       GError** error);
void folks_extended_info_remove_extended_field (FolksExtendedInfo* self,
                                                const gchar* name,
                                                GAsyncReadyCallback _callback_,
                                                gpointer _user_data_);
void folks_extended_info_remove_extended_field_finish (FolksExtendedInfo* self,
                                                       GAsyncResult* _res_,
                                                       GError** error);
GType folks_favourite_details_get_type (void) G_GNUC_CONST ;
void folks_favourite_details_change_is_favourite (FolksFavouriteDetails* self,
                                                  gboolean is_favourite,
                                                  GAsyncReadyCallback _callback_,
                                                  gpointer _user_data_);
void folks_favourite_details_change_is_favourite_finish (FolksFavouriteDetails* self,
                                                         GAsyncResult* _res_,
                                                         GError** error);
gboolean folks_favourite_details_get_is_favourite (FolksFavouriteDetails* self);
void folks_favourite_details_set_is_favourite (FolksFavouriteDetails* self,
                                               gboolean value);
GType folks_gender_get_type (void) G_GNUC_CONST ;
GType folks_gender_details_get_type (void) G_GNUC_CONST ;
void folks_gender_details_change_gender (FolksGenderDetails* self,
                                         FolksGender gender,
                                         GAsyncReadyCallback _callback_,
                                         gpointer _user_data_);
void folks_gender_details_change_gender_finish (FolksGenderDetails* self,
                                                GAsyncResult* _res_,
                                                GError** error);
FolksGender folks_gender_details_get_gender (FolksGenderDetails* self);
void folks_gender_details_set_gender (FolksGenderDetails* self,
                                      FolksGender value);
GType folks_group_details_get_type (void) G_GNUC_CONST ;
GType folks_group_details_change_reason_get_type (void) G_GNUC_CONST ;
void folks_group_details_change_group (FolksGroupDetails* self,
                                       const gchar* group,
                                       gboolean is_member,
                                       GAsyncReadyCallback _callback_,
                                       gpointer _user_data_);
void folks_group_details_change_group_finish (FolksGroupDetails* self,
                                              GAsyncResult* _res_,
                                              GError** error);
void folks_group_details_change_groups (FolksGroupDetails* self,
                                        GeeSet* groups,
                                        GAsyncReadyCallback _callback_,
                                        gpointer _user_data_);
void folks_group_details_change_groups_finish (FolksGroupDetails* self,
                                               GAsyncResult* _res_,
                                               GError** error);
GeeSet* folks_group_details_get_groups (FolksGroupDetails* self);
void folks_group_details_set_groups (FolksGroupDetails* self,
                                     GeeSet* value);
GQuark folks_im_details_error_quark (void);
GType folks_im_field_details_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (FolksImFieldDetails, g_object_unref)
FolksImFieldDetails* folks_im_field_details_new (const gchar* value,
                                                 GeeMultiMap* parameters);
FolksImFieldDetails* folks_im_field_details_construct (GType object_type,
                                                       const gchar* value,
                                                       GeeMultiMap* parameters);
GType folks_im_details_get_type (void) G_GNUC_CONST ;
void folks_im_details_change_im_addresses (FolksImDetails* self,
                                           GeeMultiMap* im_addresses,
                                           GAsyncReadyCallback _callback_,
                                           gpointer _user_data_);
void folks_im_details_change_im_addresses_finish (FolksImDetails* self,
                                                  GAsyncResult* _res_,
                                                  GError** error);
gchar* folks_im_details_normalise_im_address (const gchar* im_address,
                                              const gchar* protocol,
                                              GError** error);
GeeMultiMap* folks_im_details_get_im_addresses (FolksImDetails* self);
void folks_im_details_set_im_addresses (FolksImDetails* self,
                                        GeeMultiMap* value);
GQuark folks_individual_aggregator_error_quark (void);
GType folks_individual_aggregator_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (FolksIndividualAggregator, g_object_unref)
FolksIndividualAggregator* folks_individual_aggregator_dup (void);
FolksIndividualAggregator* folks_individual_aggregator_new (void) G_GNUC_DEPRECATED ;
FolksIndividualAggregator* folks_individual_aggregator_construct (GType object_type) G_GNUC_DEPRECATED ;
FolksIndividualAggregator* folks_individual_aggregator_dup_with_backend_store (FolksBackendStore* store);
FolksIndividualAggregator* folks_individual_aggregator_new_with_backend_store (FolksBackendStore* store) G_GNUC_DEPRECATED ;
FolksIndividualAggregator* folks_individual_aggregator_construct_with_backend_store (GType object_type,
                                                                                     FolksBackendStore* store) G_GNUC_DEPRECATED ;
void folks_individual_aggregator_prepare (FolksIndividualAggregator* self,
                                          GAsyncReadyCallback _callback_,
                                          gpointer _user_data_);
void folks_individual_aggregator_prepare_finish (FolksIndividualAggregator* self,
                                                 GAsyncResult* _res_,
                                                 GError** error);
void folks_individual_aggregator_unprepare (FolksIndividualAggregator* self,
                                            GAsyncReadyCallback _callback_,
                                            gpointer _user_data_);
void folks_individual_aggregator_unprepare_finish (FolksIndividualAggregator* self,
                                                   GAsyncResult* _res_,
                                                   GError** error);
GType folks_individual_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (FolksIndividual, g_object_unref)
GType folks_match_result_get_type (void) G_GNUC_CONST ;
GeeMap* folks_individual_aggregator_get_potential_matches (FolksIndividualAggregator* self,
                                                           FolksIndividual* matchee,
                                                           FolksMatchResult min_threshold);
GeeMap* folks_individual_aggregator_get_all_potential_matches (FolksIndividualAggregator* self,
                                                               FolksMatchResult min_threshold);
void folks_individual_aggregator_add_persona_from_details (FolksIndividualAggregator* self,
                                                           FolksIndividual* parent,
                                                           FolksPersonaStore* persona_store,
                                                           GHashTable* details,
                                                           GAsyncReadyCallback _callback_,
                                                           gpointer _user_data_);
FolksPersona* folks_individual_aggregator_add_persona_from_details_finish (FolksIndividualAggregator* self,
                                                                           GAsyncResult* _res_,
                                                                           GError** error);
void folks_individual_aggregator_remove_individual (FolksIndividualAggregator* self,
                                                    FolksIndividual* individual,
                                                    GAsyncReadyCallback _callback_,
                                                    gpointer _user_data_);
void folks_individual_aggregator_remove_individual_finish (FolksIndividualAggregator* self,
                                                           GAsyncResult* _res_,
                                                           GError** error);
void folks_individual_aggregator_remove_persona (FolksIndividualAggregator* self,
                                                 FolksPersona* persona,
                                                 GAsyncReadyCallback _callback_,
                                                 gpointer _user_data_);
void folks_individual_aggregator_remove_persona_finish (FolksIndividualAggregator* self,
                                                        GAsyncResult* _res_,
                                                        GError** error);
void folks_individual_aggregator_link_personas (FolksIndividualAggregator* self,
                                                GeeSet* personas,
                                                GAsyncReadyCallback _callback_,
                                                gpointer _user_data_);
void folks_individual_aggregator_link_personas_finish (FolksIndividualAggregator* self,
                                                       GAsyncResult* _res_,
                                                       GError** error);
void folks_individual_aggregator_unlink_individual (FolksIndividualAggregator* self,
                                                    FolksIndividual* individual,
                                                    GAsyncReadyCallback _callback_,
                                                    gpointer _user_data_);
void folks_individual_aggregator_unlink_individual_finish (FolksIndividualAggregator* self,
                                                           GAsyncResult* _res_,
                                                           GError** error);
void folks_individual_aggregator_ensure_individual_property_writeable (FolksIndividualAggregator* self,
                                                                       FolksIndividual* individual,
                                                                       const gchar* property_name,
                                                                       GAsyncReadyCallback _callback_,
                                                                       gpointer _user_data_);
FolksPersona* folks_individual_aggregator_ensure_individual_property_writeable_finish (FolksIndividualAggregator* self,
                                                                                       GAsyncResult* _res_,
                                                                                       GError** error);
void folks_individual_aggregator_look_up_individual (FolksIndividualAggregator* self,
                                                     const gchar* id,
                                                     GAsyncReadyCallback _callback_,
                                                     gpointer _user_data_);
FolksIndividual* folks_individual_aggregator_look_up_individual_finish (FolksIndividualAggregator* self,
                                                                        GAsyncResult* _res_,
                                                                        GError** error);
gboolean folks_individual_aggregator_get_is_prepared (FolksIndividualAggregator* self);
gboolean folks_individual_aggregator_get_is_quiescent (FolksIndividualAggregator* self);
FolksPersonaStore* folks_individual_aggregator_get_primary_store (FolksIndividualAggregator* self);
FolksBackendStore* folks_individual_aggregator_get_backend_store (FolksIndividualAggregator* self);
GeeMap* folks_individual_aggregator_get_individuals (FolksIndividualAggregator* self);
FolksIndividual* folks_individual_aggregator_get_user (FolksIndividualAggregator* self);
GType folks_trust_level_get_type (void) G_GNUC_CONST ;
GType folks_interaction_details_get_type (void) G_GNUC_CONST ;
GType folks_local_id_details_get_type (void) G_GNUC_CONST ;
GType folks_location_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (FolksLocation, g_object_unref)
GType folks_location_details_get_type (void) G_GNUC_CONST ;
GType folks_structured_name_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (FolksStructuredName, g_object_unref)
GType folks_name_details_get_type (void) G_GNUC_CONST ;
GType folks_note_field_details_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (FolksNoteFieldDetails, g_object_unref)
GType folks_note_details_get_type (void) G_GNUC_CONST ;
GType folks_presence_type_get_type (void) G_GNUC_CONST ;
GType folks_presence_details_get_type (void) G_GNUC_CONST ;
GType folks_phone_field_details_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (FolksPhoneFieldDetails, g_object_unref)
GType folks_phone_details_get_type (void) G_GNUC_CONST ;
GType folks_postal_address_field_details_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (FolksPostalAddressFieldDetails, g_object_unref)
GType folks_postal_address_details_get_type (void) G_GNUC_CONST ;
GType folks_role_field_details_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (FolksRoleFieldDetails, g_object_unref)
GType folks_role_details_get_type (void) G_GNUC_CONST ;
GType folks_url_field_details_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (FolksUrlFieldDetails, g_object_unref)
GType folks_url_details_get_type (void) G_GNUC_CONST ;
GType folks_web_service_field_details_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (FolksWebServiceFieldDetails, g_object_unref)
GType folks_web_service_details_get_type (void) G_GNUC_CONST ;
FolksIndividual* folks_individual_new (GeeSet* personas);
FolksIndividual* folks_individual_construct (GType object_type,
                                             GeeSet* personas);
gboolean folks_individual_has_anti_link_with_persona (FolksIndividual* self,
                                                      FolksPersona* p);
gboolean folks_individual_has_anti_link_with_individual (FolksIndividual* self,
                                                         FolksIndividual* i);
FolksTrustLevel folks_individual_get_trust_level (FolksIndividual* self);
gboolean folks_individual_get_is_user (FolksIndividual* self);
const gchar* folks_individual_get_id (FolksIndividual* self);
const gchar* folks_individual_get_display_name (FolksIndividual* self);
GeeSet* folks_individual_get_personas (FolksIndividual* self);
void folks_individual_set_personas (FolksIndividual* self,
                                    GeeSet* value);
guint folks_interaction_details_get_im_interaction_count (FolksInteractionDetails* self);
GDateTime* folks_interaction_details_get_last_im_interaction_datetime (FolksInteractionDetails* self);
guint folks_interaction_details_get_call_interaction_count (FolksInteractionDetails* self);
GDateTime* folks_interaction_details_get_last_call_interaction_datetime (FolksInteractionDetails* self);
void folks_local_id_details_change_local_ids (FolksLocalIdDetails* self,
                                              GeeSet* local_ids,
                                              GAsyncReadyCallback _callback_,
                                              gpointer _user_data_);
void folks_local_id_details_change_local_ids_finish (FolksLocalIdDetails* self,
                                                     GAsyncResult* _res_,
                                                     GError** error);
GeeSet* folks_local_id_details_get_local_ids (FolksLocalIdDetails* self);
void folks_local_id_details_set_local_ids (FolksLocalIdDetails* self,
                                           GeeSet* value);
FolksLocation* folks_location_new (gdouble latitude,
                                   gdouble longitude);
FolksLocation* folks_location_construct (GType object_type,
                                         gdouble latitude,
                                         gdouble longitude);
gboolean folks_location_equal (FolksLocation* self,
                               FolksLocation* other);
gboolean folks_location_equal_coordinates (FolksLocation* self,
                                           gdouble latitude,
                                           gdouble longitude);
void folks_location_details_change_location (FolksLocationDetails* self,
                                             FolksLocation* location,
                                             GAsyncReadyCallback _callback_,
                                             gpointer _user_data_);
void folks_location_details_change_location_finish (FolksLocationDetails* self,
                                                    GAsyncResult* _res_,
                                                    GError** error);
FolksLocation* folks_location_details_get_location (FolksLocationDetails* self);
void folks_location_details_set_location (FolksLocationDetails* self,
                                          FolksLocation* value);
FolksStructuredName* folks_structured_name_new (const gchar* family_name,
                                                const gchar* given_name,
                                                const gchar* additional_names,
                                                const gchar* prefixes,
                                                const gchar* suffixes);
FolksStructuredName* folks_structured_name_construct (GType object_type,
                                                      const gchar* family_name,
                                                      const gchar* given_name,
                                                      const gchar* additional_names,
                                                      const gchar* prefixes,
                                                      const gchar* suffixes);
FolksStructuredName* folks_structured_name_new_simple (const gchar* family_name,
                                                       const gchar* given_name);
FolksStructuredName* folks_structured_name_construct_simple (GType object_type,
                                                             const gchar* family_name,
                                                             const gchar* given_name);
gboolean folks_structured_name_is_empty (FolksStructuredName* self);
gboolean folks_structured_name_equal (FolksStructuredName* self,
                                      FolksStructuredName* other);
gchar* folks_structured_name_to_string (FolksStructuredName* self);
gchar* folks_structured_name_to_string_with_format (FolksStructuredName* self,
                                                    const gchar* name_fmt);
const gchar* folks_structured_name_get_family_name (FolksStructuredName* self);
void folks_structured_name_set_family_name (FolksStructuredName* self,
                                            const gchar* value);
const gchar* folks_structured_name_get_given_name (FolksStructuredName* self);
void folks_structured_name_set_given_name (FolksStructuredName* self,
                                           const gchar* value);
const gchar* folks_structured_name_get_additional_names (FolksStructuredName* self);
void folks_structured_name_set_additional_names (FolksStructuredName* self,
                                                 const gchar* value);
const gchar* folks_structured_name_get_prefixes (FolksStructuredName* self);
void folks_structured_name_set_prefixes (FolksStructuredName* self,
                                         const gchar* value);
const gchar* folks_structured_name_get_suffixes (FolksStructuredName* self);
void folks_structured_name_set_suffixes (FolksStructuredName* self,
                                         const gchar* value);
void folks_name_details_change_structured_name (FolksNameDetails* self,
                                                FolksStructuredName* name,
                                                GAsyncReadyCallback _callback_,
                                                gpointer _user_data_);
void folks_name_details_change_structured_name_finish (FolksNameDetails* self,
                                                       GAsyncResult* _res_,
                                                       GError** error);
void folks_name_details_change_full_name (FolksNameDetails* self,
                                          const gchar* full_name,
                                          GAsyncReadyCallback _callback_,
                                          gpointer _user_data_);
void folks_name_details_change_full_name_finish (FolksNameDetails* self,
                                                 GAsyncResult* _res_,
                                                 GError** error);
void folks_name_details_change_nickname (FolksNameDetails* self,
                                         const gchar* nickname,
                                         GAsyncReadyCallback _callback_,
                                         gpointer _user_data_);
void folks_name_details_change_nickname_finish (FolksNameDetails* self,
                                                GAsyncResult* _res_,
                                                GError** error);
FolksStructuredName* folks_name_details_get_structured_name (FolksNameDetails* self);
void folks_name_details_set_structured_name (FolksNameDetails* self,
                                             FolksStructuredName* value);
const gchar* folks_name_details_get_full_name (FolksNameDetails* self);
void folks_name_details_set_full_name (FolksNameDetails* self,
                                       const gchar* value);
const gchar* folks_name_details_get_nickname (FolksNameDetails* self);
void folks_name_details_set_nickname (FolksNameDetails* self,
                                      const gchar* value);
FolksNoteFieldDetails* folks_note_field_details_new (const gchar* value,
                                                     GeeMultiMap* parameters,
                                                     const gchar* uid);
FolksNoteFieldDetails* folks_note_field_details_construct (GType object_type,
                                                           const gchar* value,
                                                           GeeMultiMap* parameters,
                                                           const gchar* uid);
const gchar* folks_note_field_details_get_uid (FolksNoteFieldDetails* self) G_GNUC_DEPRECATED ;
void folks_note_field_details_set_uid (FolksNoteFieldDetails* self,
                                       const gchar* value) G_GNUC_DEPRECATED ;
void folks_note_details_change_notes (FolksNoteDetails* self,
                                      GeeSet* notes,
                                      GAsyncReadyCallback _callback_,
                                      gpointer _user_data_);
void folks_note_details_change_notes_finish (FolksNoteDetails* self,
                                             GAsyncResult* _res_,
                                             GError** error);
GeeSet* folks_note_details_get_notes (FolksNoteDetails* self);
void folks_note_details_set_notes (FolksNoteDetails* self,
                                   GeeSet* value);
GType folks_object_cache_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (FolksObjectCache, g_object_unref)
GVariantType* folks_object_cache_get_serialised_object_type (FolksObjectCache* self,
                                                             guint8 object_version);
guint8 folks_object_cache_get_serialised_object_version (FolksObjectCache* self);
GVariant* folks_object_cache_serialise_object (FolksObjectCache* self,
                                               gconstpointer object);
gpointer folks_object_cache_deserialise_object (FolksObjectCache* self,
                                                GVariant* variant,
                                                guint8 object_version);
FolksObjectCache* folks_object_cache_construct (GType object_type,
                                                GType t_type,
                                                GBoxedCopyFunc t_dup_func,
                                                GDestroyNotify t_destroy_func,
                                                const gchar* type_id,
                                                const gchar* id);
void folks_object_cache_load_objects (FolksObjectCache* self,
                                      GCancellable* cancellable,
                                      GAsyncReadyCallback _callback_,
                                      gpointer _user_data_);
GeeSet* folks_object_cache_load_objects_finish (FolksObjectCache* self,
                                                GAsyncResult* _res_);
void folks_object_cache_store_objects (FolksObjectCache* self,
                                       GeeSet* objects,
                                       GCancellable* cancellable,
                                       GAsyncReadyCallback _callback_,
                                       gpointer _user_data_);
void folks_object_cache_store_objects_finish (FolksObjectCache* self,
                                              GAsyncResult* _res_);
void folks_object_cache_clear_cache (FolksObjectCache* self,
                                     GAsyncReadyCallback _callback_,
                                     gpointer _user_data_);
void folks_object_cache_clear_cache_finish (FolksObjectCache* self,
                                            GAsyncResult* _res_);
const gchar* folks_object_cache_get_type_id (FolksObjectCache* self);
const gchar* folks_object_cache_get_id (FolksObjectCache* self);
GType folks_persona_store_trust_get_type (void) G_GNUC_CONST ;
GQuark folks_persona_store_error_quark (void);
GType folks_persona_detail_get_type (void) G_GNUC_CONST ;
GType folks_maybe_bool_get_type (void) G_GNUC_CONST ;
const gchar* folks_persona_store_detail_key (FolksPersonaDetail detail);
void _folks_persona_store_emit_personas_changed (FolksPersonaStore* self,
                                                 GeeSet* added,
                                                 GeeSet* removed,
                                                 const gchar* message,
                                                 FolksPersona* actor,
                                                 FolksGroupDetailsChangeReason reason);
void folks_persona_store_prepare (FolksPersonaStore* self,
                                  GAsyncReadyCallback _callback_,
                                  gpointer _user_data_);
void folks_persona_store_prepare_finish (FolksPersonaStore* self,
                                         GAsyncResult* _res_,
                                         GError** error);
void folks_persona_store_flush (FolksPersonaStore* self,
                                GAsyncReadyCallback _callback_,
                                gpointer _user_data_);
void folks_persona_store_flush_finish (FolksPersonaStore* self,
                                       GAsyncResult* _res_);
void folks_persona_store_add_persona_from_details (FolksPersonaStore* self,
                                                   GHashTable* details,
                                                   GAsyncReadyCallback _callback_,
                                                   gpointer _user_data_);
FolksPersona* folks_persona_store_add_persona_from_details_finish (FolksPersonaStore* self,
                                                                   GAsyncResult* _res_,
                                                                   GError** error);
void folks_persona_store_remove_persona (FolksPersonaStore* self,
                                         FolksPersona* persona,
                                         GAsyncReadyCallback _callback_,
                                         gpointer _user_data_);
void folks_persona_store_remove_persona_finish (FolksPersonaStore* self,
                                                GAsyncResult* _res_,
                                                GError** error);
FolksPersonaStore* folks_persona_store_construct (GType object_type);
const gchar* folks_persona_store_get_type_id (FolksPersonaStore* self);
const gchar* folks_persona_store_get_display_name (FolksPersonaStore* self);
const gchar* folks_persona_store_get_id (FolksPersonaStore* self);
GeeMap* folks_persona_store_get_personas (FolksPersonaStore* self);
FolksMaybeBool folks_persona_store_get_can_add_personas (FolksPersonaStore* self);
FolksMaybeBool folks_persona_store_get_can_alias_personas (FolksPersonaStore* self) G_GNUC_DEPRECATED ;
FolksMaybeBool folks_persona_store_get_can_group_personas (FolksPersonaStore* self) G_GNUC_DEPRECATED ;
FolksMaybeBool folks_persona_store_get_can_remove_personas (FolksPersonaStore* self);
gboolean folks_persona_store_get_is_prepared (FolksPersonaStore* self);
gboolean folks_persona_store_get_is_quiescent (FolksPersonaStore* self);
gboolean folks_persona_store_get_is_writeable (FolksPersonaStore* self) G_GNUC_DEPRECATED ;
void folks_persona_store_set_is_writeable (FolksPersonaStore* self,
                                           gboolean value) G_GNUC_DEPRECATED ;
FolksPersonaStoreTrust folks_persona_store_get_trust_level (FolksPersonaStore* self);
void folks_persona_store_set_trust_level (FolksPersonaStore* self,
                                          FolksPersonaStoreTrust value);
gchar** folks_persona_store_get_always_writeable_properties (FolksPersonaStore* self,
                                                             gint* result_length1);
gboolean folks_persona_store_get_is_primary_store (FolksPersonaStore* self);
gboolean folks_persona_store_get_is_user_set_default (FolksPersonaStore* self);
void folks_persona_linkable_property_to_links (FolksPersona* self,
                                               const gchar* prop_name,
                                               FolksPersonaLinkablePropertyCallback callback,
                                               gpointer callback_target);
gchar* folks_persona_build_uid (const gchar* backend_name,
                                const gchar* persona_store_id,
                                const gchar* persona_id);
void folks_persona_split_uid (const gchar* uid,
                              gchar* * backend_name,
                              gchar* * persona_store_id,
                              gchar* * persona_id);
FolksPersona* folks_persona_construct (GType object_type);
const gchar* folks_persona_get_iid (FolksPersona* self);
const gchar* folks_persona_get_uid (FolksPersona* self);
const gchar* folks_persona_get_display_id (FolksPersona* self);
gboolean folks_persona_get_is_user (FolksPersona* self);
FolksPersonaStore* folks_persona_get_store (FolksPersona* self);
FolksIndividual* folks_persona_get_individual (FolksPersona* self);
gchar** folks_persona_get_linkable_properties (FolksPersona* self,
                                               gint* result_length1);
gchar** folks_persona_get_writeable_properties (FolksPersona* self,
                                                gint* result_length1);
FolksPhoneFieldDetails* folks_phone_field_details_new (const gchar* value,
                                                       GeeMultiMap* parameters);
FolksPhoneFieldDetails* folks_phone_field_details_construct (GType object_type,
                                                             const gchar* value,
                                                             GeeMultiMap* parameters);
gchar* folks_phone_field_details_get_normalised (FolksPhoneFieldDetails* self);
void folks_phone_details_change_phone_numbers (FolksPhoneDetails* self,
                                               GeeSet* phone_numbers,
                                               GAsyncReadyCallback _callback_,
                                               gpointer _user_data_);
void folks_phone_details_change_phone_numbers_finish (FolksPhoneDetails* self,
                                                      GAsyncResult* _res_,
                                                      GError** error);
GeeSet* folks_phone_details_get_phone_numbers (FolksPhoneDetails* self);
void folks_phone_details_set_phone_numbers (FolksPhoneDetails* self,
                                            GeeSet* value);
GType folks_postal_address_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (FolksPostalAddress, g_object_unref)
FolksPostalAddress* folks_postal_address_new (const gchar* po_box,
                                              const gchar* extension,
                                              const gchar* street,
                                              const gchar* locality,
                                              const gchar* region,
                                              const gchar* postal_code,
                                              const gchar* country,
                                              const gchar* address_format,
                                              const gchar* uid);
FolksPostalAddress* folks_postal_address_construct (GType object_type,
                                                    const gchar* po_box,
                                                    const gchar* extension,
                                                    const gchar* street,
                                                    const gchar* locality,
                                                    const gchar* region,
                                                    const gchar* postal_code,
                                                    const gchar* country,
                                                    const gchar* address_format,
                                                    const gchar* uid);
gboolean folks_postal_address_is_empty (FolksPostalAddress* self);
gboolean folks_postal_address_equal (FolksPostalAddress* self,
                                     FolksPostalAddress* with);
gchar* folks_postal_address_to_string (FolksPostalAddress* self);
const gchar* folks_postal_address_get_po_box (FolksPostalAddress* self);
void folks_postal_address_set_po_box (FolksPostalAddress* self,
                                      const gchar* value);
const gchar* folks_postal_address_get_extension (FolksPostalAddress* self);
void folks_postal_address_set_extension (FolksPostalAddress* self,
                                         const gchar* value);
const gchar* folks_postal_address_get_street (FolksPostalAddress* self);
void folks_postal_address_set_street (FolksPostalAddress* self,
                                      const gchar* value);
const gchar* folks_postal_address_get_locality (FolksPostalAddress* self);
void folks_postal_address_set_locality (FolksPostalAddress* self,
                                        const gchar* value);
const gchar* folks_postal_address_get_region (FolksPostalAddress* self);
void folks_postal_address_set_region (FolksPostalAddress* self,
                                      const gchar* value);
const gchar* folks_postal_address_get_postal_code (FolksPostalAddress* self);
void folks_postal_address_set_postal_code (FolksPostalAddress* self,
                                           const gchar* value);
const gchar* folks_postal_address_get_country (FolksPostalAddress* self);
void folks_postal_address_set_country (FolksPostalAddress* self,
                                       const gchar* value);
const gchar* folks_postal_address_get_address_format (FolksPostalAddress* self);
void folks_postal_address_set_address_format (FolksPostalAddress* self,
                                              const gchar* value);
const gchar* folks_postal_address_get_uid (FolksPostalAddress* self) G_GNUC_DEPRECATED ;
void folks_postal_address_set_uid (FolksPostalAddress* self,
                                   const gchar* value) G_GNUC_DEPRECATED ;
FolksPostalAddressFieldDetails* folks_postal_address_field_details_new (FolksPostalAddress* value,
                                                                        GeeMultiMap* parameters);
FolksPostalAddressFieldDetails* folks_postal_address_field_details_construct (GType object_type,
                                                                              FolksPostalAddress* value,
                                                                              GeeMultiMap* parameters);
void folks_postal_address_details_change_postal_addresses (FolksPostalAddressDetails* self,
                                                           GeeSet* postal_addresses,
                                                           GAsyncReadyCallback _callback_,
                                                           gpointer _user_data_);
void folks_postal_address_details_change_postal_addresses_finish (FolksPostalAddressDetails* self,
                                                                  GAsyncResult* _res_,
                                                                  GError** error);
GeeSet* folks_postal_address_details_get_postal_addresses (FolksPostalAddressDetails* self);
void folks_postal_address_details_set_postal_addresses (FolksPostalAddressDetails* self,
                                                        GeeSet* value);
GType folks_potential_match_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (FolksPotentialMatch, g_object_unref)
extern GeeSet* folks_potential_match_known_email_aliases;
FolksPotentialMatch* folks_potential_match_new (void);
FolksPotentialMatch* folks_potential_match_construct (GType object_type);
FolksMatchResult folks_potential_match_potential_match (FolksPotentialMatch* self,
                                                        FolksIndividual* a,
                                                        FolksIndividual* b);
const gchar* folks_presence_details_get_default_message_from_type (FolksPresenceType type);
gint folks_presence_details_typecmp (FolksPresenceType type_a,
                                     FolksPresenceType type_b);
gboolean folks_presence_details_is_online (FolksPresenceDetails* self);
FolksPresenceType folks_presence_details_get_presence_type (FolksPresenceDetails* self);
void folks_presence_details_set_presence_type (FolksPresenceDetails* self,
                                               FolksPresenceType value);
const gchar* folks_presence_details_get_presence_message (FolksPresenceDetails* self);
void folks_presence_details_set_presence_message (FolksPresenceDetails* self,
                                                  const gchar* value);
gchar** folks_presence_details_get_client_types (FolksPresenceDetails* self,
                                                 gint* result_length1);
void folks_presence_details_set_client_types (FolksPresenceDetails* self,
                                              gchar** value,
                                              gint value_length1);
const gchar* folks_presence_details_get_presence_status (FolksPresenceDetails* self);
void folks_presence_details_set_presence_status (FolksPresenceDetails* self,
                                                 const gchar* value);
GType folks_query_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (FolksQuery, g_object_unref)
guint folks_query_is_match (FolksQuery* self,
                            FolksIndividual* individual);
FolksQuery* folks_query_construct (GType object_type);
gchar** folks_query_get_match_fields (FolksQuery* self,
                                      gint* result_length1);
GType folks_role_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (FolksRole, g_object_unref)
FolksRole* folks_role_new (const gchar* title,
                           const gchar* organisation_name,
                           const gchar* uid);
FolksRole* folks_role_construct (GType object_type,
                                 const gchar* title,
                                 const gchar* organisation_name,
                                 const gchar* uid);
gboolean folks_role_is_empty (FolksRole* self);
gboolean folks_role_equal (FolksRole* a,
                           FolksRole* b);
guint folks_role_hash (FolksRole* r);
gchar* folks_role_to_string (FolksRole* self);
const gchar* folks_role_get_organisation_name (FolksRole* self);
void folks_role_set_organisation_name (FolksRole* self,
                                       const gchar* value);
const gchar* folks_role_get_title (FolksRole* self);
void folks_role_set_title (FolksRole* self,
                           const gchar* value);
const gchar* folks_role_get_role (FolksRole* self);
void folks_role_set_role (FolksRole* self,
                          const gchar* value);
const gchar* folks_role_get_uid (FolksRole* self) G_GNUC_DEPRECATED ;
void folks_role_set_uid (FolksRole* self,
                         const gchar* value) G_GNUC_DEPRECATED ;
FolksRoleFieldDetails* folks_role_field_details_new (FolksRole* value,
                                                     GeeMultiMap* parameters);
FolksRoleFieldDetails* folks_role_field_details_construct (GType object_type,
                                                           FolksRole* value,
                                                           GeeMultiMap* parameters);
void folks_role_details_change_roles (FolksRoleDetails* self,
                                      GeeSet* roles,
                                      GAsyncReadyCallback _callback_,
                                      gpointer _user_data_);
void folks_role_details_change_roles_finish (FolksRoleDetails* self,
                                             GAsyncResult* _res_,
                                             GError** error);
GeeSet* folks_role_details_get_roles (FolksRoleDetails* self);
void folks_role_details_set_roles (FolksRoleDetails* self,
                                   GeeSet* value);
GType folks_search_view_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (FolksSearchView, g_object_unref)
FolksSearchView* folks_search_view_new (FolksIndividualAggregator* aggregator,
                                        FolksQuery* query);
FolksSearchView* folks_search_view_construct (GType object_type,
                                              FolksIndividualAggregator* aggregator,
                                              FolksQuery* query);
void folks_search_view_prepare (FolksSearchView* self,
                                GAsyncReadyCallback _callback_,
                                gpointer _user_data_);
void folks_search_view_prepare_finish (FolksSearchView* self,
                                       GAsyncResult* _res_,
                                       GError** error);
void folks_search_view_unprepare (FolksSearchView* self,
                                  GAsyncReadyCallback _callback_,
                                  gpointer _user_data_);
void folks_search_view_unprepare_finish (FolksSearchView* self,
                                         GAsyncResult* _res_,
                                         GError** error);
void folks_search_view_refresh (FolksSearchView* self,
                                GAsyncReadyCallback _callback_,
                                gpointer _user_data_);
void folks_search_view_refresh_finish (FolksSearchView* self,
                                       GAsyncResult* _res_,
                                       GError** error);
FolksIndividualAggregator* folks_search_view_get_aggregator (FolksSearchView* self);
FolksQuery* folks_search_view_get_query (FolksSearchView* self);
void folks_search_view_set_query (FolksSearchView* self,
                                  FolksQuery* value);
GeeSortedSet* folks_search_view_get_individuals (FolksSearchView* self);
gboolean folks_search_view_get_is_prepared (FolksSearchView* self);
gboolean folks_search_view_get_is_quiescent (FolksSearchView* self);
GType folks_simple_query_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (FolksSimpleQuery, g_object_unref)
FolksSimpleQuery* folks_simple_query_new (const gchar* query_string,
                                          gchar** match_fields,
                                          gint match_fields_length1);
FolksSimpleQuery* folks_simple_query_construct (GType object_type,
                                                const gchar* query_string,
                                                gchar** match_fields,
                                                gint match_fields_length1);
const gchar* folks_simple_query_get_query_string (FolksSimpleQuery* self);
void folks_simple_query_set_query_string (FolksSimpleQuery* self,
                                          const gchar* value);
const gchar* folks_simple_query_get_query_locale (FolksSimpleQuery* self);
void folks_simple_query_set_query_locale (FolksSimpleQuery* self,
                                          const gchar* value);
#define FOLKS_URL_FIELD_DETAILS_PARAM_TYPE_HOME_PAGE "x-home-page"
#define FOLKS_URL_FIELD_DETAILS_PARAM_TYPE_BLOG "x-blog"
#define FOLKS_URL_FIELD_DETAILS_PARAM_TYPE_PROFILE "x-profile"
#define FOLKS_URL_FIELD_DETAILS_PARAM_TYPE_FTP "x-ftp"
FolksUrlFieldDetails* folks_url_field_details_new (const gchar* value,
                                                   GeeMultiMap* parameters);
FolksUrlFieldDetails* folks_url_field_details_construct (GType object_type,
                                                         const gchar* value,
                                                         GeeMultiMap* parameters);
void folks_url_details_change_urls (FolksUrlDetails* self,
                                    GeeSet* urls,
                                    GAsyncReadyCallback _callback_,
                                    gpointer _user_data_);
void folks_url_details_change_urls_finish (FolksUrlDetails* self,
                                           GAsyncResult* _res_,
                                           GError** error);
GeeSet* folks_url_details_get_urls (FolksUrlDetails* self);
void folks_url_details_set_urls (FolksUrlDetails* self,
                                 GeeSet* value);
GType folks_utils_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (FolksUtils, g_object_unref)
FolksUtils* folks_utils_new (void) G_GNUC_DEPRECATED ;
FolksUtils* folks_utils_construct (GType object_type) G_GNUC_DEPRECATED ;
gboolean folks_utils_multi_map_str_str_equal (GeeMultiMap* a,
                                              GeeMultiMap* b);
gboolean folks_utils_multi_map_str_afd_equal (GeeMultiMap* a,
                                              GeeMultiMap* b);
gboolean folks_utils_set_afd_equal (GeeSet* a,
                                    GeeSet* b);
gboolean folks_utils_set_string_afd_equal (GeeSet* a,
                                           GeeSet* b);
FolksWebServiceFieldDetails* folks_web_service_field_details_new (const gchar* value,
                                                                  GeeMultiMap* parameters);
FolksWebServiceFieldDetails* folks_web_service_field_details_construct (GType object_type,
                                                                        const gchar* value,
                                                                        GeeMultiMap* parameters);
void folks_web_service_details_change_web_service_addresses (FolksWebServiceDetails* self,
                                                             GeeMultiMap* web_service_addresses,
                                                             GAsyncReadyCallback _callback_,
                                                             gpointer _user_data_);
void folks_web_service_details_change_web_service_addresses_finish (FolksWebServiceDetails* self,
                                                                    GAsyncResult* _res_,
                                                                    GError** error);
GeeMultiMap* folks_web_service_details_get_web_service_addresses (FolksWebServiceDetails* self);
void folks_web_service_details_set_web_service_addresses (FolksWebServiceDetails* self,
                                                          GeeMultiMap* value);

extern const gchar* FOLKS_QUERY_MATCH_FIELDS_NAMES[4];
extern const gchar* FOLKS_QUERY_MATCH_FIELDS_ADDRESSES[6];
extern const gchar* FOLKS_QUERY_MATCH_FIELDS_MISC[3];

G_END_DECLS

#endif
