+ PURPLE_STATUS_NUM_PRIMITIVES
+
+ ctypedef struct PurpleStatusType:
+ PurpleStatusPrimitive primitive
+ char *id
+ char *name
+ char *primary_attr_id
+ glib.gboolean saveable
+ glib.gboolean user_settable
+ glib.gboolean independent
+ glib.GList *attrs
+
+ ctypedef struct PurpleStatusAttr:
+ char *id
+ char *name
+ value.PurpleValue *value_type
+
+ ctypedef struct __ChatType:
+ conversation.PurpleConversation *conv
+ char *user
+
+ ctypedef struct __BuddyType:
+ account.PurpleAccount *account
+ char *name
+ blist.PurpleBuddy *buddy
+
+ ctypedef union __UnionType:
+ account.PurpleAccount *account
+ __ChatType chat
+ __BuddyType buddy
+
+ ctypedef struct PurplePresence:
+ PurplePresenceContext context
+ glib.gboolean idle
+ time_t idle_time
+ time_t login_time
+ glib.GList *statuses
+ glib.GHashTable *status_table
+ PurpleStatus *active_status
+ __UnionType u
+
+ ctypedef struct PurpleStatus:
+ PurpleStatusType *type
+ PurplePresence *presence
+ const_char *title
+ glib.gboolean active
+ glib.GHashTable *attr_values
+
+ ctypedef struct PurpleStatusBuddyKey:
+ account.PurpleAccount *account
+ char *name