G_BEGIN_DECLS

typedef void (*tp_cli_connection_signal_callback_new_channel) (TpConnection *proxy,
    const gchar *arg_object_path,
    const gchar *arg_channel_type,
    guint arg_handle_type,
    guint arg_handle,
    gboolean arg_suppress_handler,
    gpointer user_data, GObject *weak_object);
TpProxySignalConnection *tp_cli_connection_connect_to_new_channel (TpConnection *proxy,
    tp_cli_connection_signal_callback_new_channel callback,
    gpointer user_data,
    GDestroyNotify destroy,
    GObject *weak_object,
    GError **error);

typedef void (*tp_cli_connection_signal_callback_status_changed) (TpConnection *proxy,
    guint arg_status,
    guint arg_reason,
    gpointer user_data, GObject *weak_object);
TpProxySignalConnection *tp_cli_connection_connect_to_status_changed (TpConnection *proxy,
    tp_cli_connection_signal_callback_status_changed callback,
    gpointer user_data,
    GDestroyNotify destroy,
    GObject *weak_object,
    GError **error);

typedef void (*tp_cli_connection_callback_for_connect) (TpConnection *proxy,
    const GError *error, gpointer user_data,
    GObject *weak_object);

TpProxyPendingCall *tp_cli_connection_call_connect (TpConnection *proxy,
    gint timeout_ms,
    tp_cli_connection_callback_for_connect callback,
    gpointer user_data,
    GDestroyNotify destroy,
    GObject *weak_object);

gboolean tp_cli_connection_run_connect (TpConnection *proxy,
    gint timeout_ms,
    GError **error,
    GMainLoop **loop);


typedef void (*tp_cli_connection_callback_for_disconnect) (TpConnection *proxy,
    const GError *error, gpointer user_data,
    GObject *weak_object);

TpProxyPendingCall *tp_cli_connection_call_disconnect (TpConnection *proxy,
    gint timeout_ms,
    tp_cli_connection_callback_for_disconnect callback,
    gpointer user_data,
    GDestroyNotify destroy,
    GObject *weak_object);

gboolean tp_cli_connection_run_disconnect (TpConnection *proxy,
    gint timeout_ms,
    GError **error,
    GMainLoop **loop);


typedef void (*tp_cli_connection_callback_for_get_interfaces) (TpConnection *proxy,
    const gchar **out0,
    const GError *error, gpointer user_data,
    GObject *weak_object);

TpProxyPendingCall *tp_cli_connection_call_get_interfaces (TpConnection *proxy,
    gint timeout_ms,
    tp_cli_connection_callback_for_get_interfaces callback,
    gpointer user_data,
    GDestroyNotify destroy,
    GObject *weak_object);

gboolean tp_cli_connection_run_get_interfaces (TpConnection *proxy,
    gint timeout_ms,
    gchar ***out0,
    GError **error,
    GMainLoop **loop);


typedef void (*tp_cli_connection_callback_for_get_protocol) (TpConnection *proxy,
    const gchar *out0,
    const GError *error, gpointer user_data,
    GObject *weak_object);

TpProxyPendingCall *tp_cli_connection_call_get_protocol (TpConnection *proxy,
    gint timeout_ms,
    tp_cli_connection_callback_for_get_protocol callback,
    gpointer user_data,
    GDestroyNotify destroy,
    GObject *weak_object);

gboolean tp_cli_connection_run_get_protocol (TpConnection *proxy,
    gint timeout_ms,
    gchar **out0,
    GError **error,
    GMainLoop **loop);


typedef void (*tp_cli_connection_callback_for_get_self_handle) (TpConnection *proxy,
    guint out0,
    const GError *error, gpointer user_data,
    GObject *weak_object);

TpProxyPendingCall *tp_cli_connection_call_get_self_handle (TpConnection *proxy,
    gint timeout_ms,
    tp_cli_connection_callback_for_get_self_handle callback,
    gpointer user_data,
    GDestroyNotify destroy,
    GObject *weak_object);

gboolean tp_cli_connection_run_get_self_handle (TpConnection *proxy,
    gint timeout_ms,
    guint *out0,
    GError **error,
    GMainLoop **loop);


typedef void (*tp_cli_connection_callback_for_get_status) (TpConnection *proxy,
    guint out0,
    const GError *error, gpointer user_data,
    GObject *weak_object);

TpProxyPendingCall *tp_cli_connection_call_get_status (TpConnection *proxy,
    gint timeout_ms,
    tp_cli_connection_callback_for_get_status callback,
    gpointer user_data,
    GDestroyNotify destroy,
    GObject *weak_object);

gboolean tp_cli_connection_run_get_status (TpConnection *proxy,
    gint timeout_ms,
    guint *out0,
    GError **error,
    GMainLoop **loop);


typedef void (*tp_cli_connection_callback_for_hold_handles) (TpConnection *proxy,
    const GError *error, gpointer user_data,
    GObject *weak_object);

TpProxyPendingCall *tp_cli_connection_call_hold_handles (TpConnection *proxy,
    gint timeout_ms,
    guint in_handle_type,
    const GArray *in_handles,
    tp_cli_connection_callback_for_hold_handles callback,
    gpointer user_data,
    GDestroyNotify destroy,
    GObject *weak_object);

gboolean tp_cli_connection_run_hold_handles (TpConnection *proxy,
    gint timeout_ms,
    guint in_handle_type,
    const GArray *in_handles,
    GError **error,
    GMainLoop **loop);


typedef void (*tp_cli_connection_callback_for_inspect_handles) (TpConnection *proxy,
    const gchar **out0,
    const GError *error, gpointer user_data,
    GObject *weak_object);

TpProxyPendingCall *tp_cli_connection_call_inspect_handles (TpConnection *proxy,
    gint timeout_ms,
    guint in_handle_type,
    const GArray *in_handles,
    tp_cli_connection_callback_for_inspect_handles callback,
    gpointer user_data,
    GDestroyNotify destroy,
    GObject *weak_object);

gboolean tp_cli_connection_run_inspect_handles (TpConnection *proxy,
    gint timeout_ms,
    guint in_handle_type,
    const GArray *in_handles,
    gchar ***out0,
    GError **error,
    GMainLoop **loop);


typedef void (*tp_cli_connection_callback_for_list_channels) (TpConnection *proxy,
    const GPtrArray *out0,
    const GError *error, gpointer user_data,
    GObject *weak_object);

TpProxyPendingCall *tp_cli_connection_call_list_channels (TpConnection *proxy,
    gint timeout_ms,
    tp_cli_connection_callback_for_list_channels callback,
    gpointer user_data,
    GDestroyNotify destroy,
    GObject *weak_object);

gboolean tp_cli_connection_run_list_channels (TpConnection *proxy,
    gint timeout_ms,
    GPtrArray **out0,
    GError **error,
    GMainLoop **loop);


typedef void (*tp_cli_connection_callback_for_release_handles) (TpConnection *proxy,
    const GError *error, gpointer user_data,
    GObject *weak_object);

TpProxyPendingCall *tp_cli_connection_call_release_handles (TpConnection *proxy,
    gint timeout_ms,
    guint in_handle_type,
    const GArray *in_handles,
    tp_cli_connection_callback_for_release_handles callback,
    gpointer user_data,
    GDestroyNotify destroy,
    GObject *weak_object);

gboolean tp_cli_connection_run_release_handles (TpConnection *proxy,
    gint timeout_ms,
    guint in_handle_type,
    const GArray *in_handles,
    GError **error,
    GMainLoop **loop);


typedef void (*tp_cli_connection_callback_for_request_channel) (TpConnection *proxy,
    const gchar *out0,
    const GError *error, gpointer user_data,
    GObject *weak_object);

TpProxyPendingCall *tp_cli_connection_call_request_channel (TpConnection *proxy,
    gint timeout_ms,
    const gchar *in_type,
    guint in_handle_type,
    guint in_handle,
    gboolean in_suppress_handler,
    tp_cli_connection_callback_for_request_channel callback,
    gpointer user_data,
    GDestroyNotify destroy,
    GObject *weak_object);

gboolean tp_cli_connection_run_request_channel (TpConnection *proxy,
    gint timeout_ms,
    const gchar *in_type,
    guint in_handle_type,
    guint in_handle,
    gboolean in_suppress_handler,
    gchar **out0,
    GError **error,
    GMainLoop **loop);


typedef void (*tp_cli_connection_callback_for_request_handles) (TpConnection *proxy,
    const GArray *out0,
    const GError *error, gpointer user_data,
    GObject *weak_object);

TpProxyPendingCall *tp_cli_connection_call_request_handles (TpConnection *proxy,
    gint timeout_ms,
    guint in_handle_type,
    const gchar **in_names,
    tp_cli_connection_callback_for_request_handles callback,
    gpointer user_data,
    GDestroyNotify destroy,
    GObject *weak_object);

gboolean tp_cli_connection_run_request_handles (TpConnection *proxy,
    gint timeout_ms,
    guint in_handle_type,
    const gchar **in_names,
    GArray **out0,
    GError **error,
    GMainLoop **loop);


typedef void (*tp_cli_connection_interface_aliasing_signal_callback_aliases_changed) (TpConnection *proxy,
    const GPtrArray *arg_aliases,
    gpointer user_data, GObject *weak_object);
TpProxySignalConnection *tp_cli_connection_interface_aliasing_connect_to_aliases_changed (TpConnection *proxy,
    tp_cli_connection_interface_aliasing_signal_callback_aliases_changed callback,
    gpointer user_data,
    GDestroyNotify destroy,
    GObject *weak_object,
    GError **error);

typedef void (*tp_cli_connection_interface_aliasing_callback_for_get_alias_flags) (TpConnection *proxy,
    guint out0,
    const GError *error, gpointer user_data,
    GObject *weak_object);

TpProxyPendingCall *tp_cli_connection_interface_aliasing_call_get_alias_flags (TpConnection *proxy,
    gint timeout_ms,
    tp_cli_connection_interface_aliasing_callback_for_get_alias_flags callback,
    gpointer user_data,
    GDestroyNotify destroy,
    GObject *weak_object);

gboolean tp_cli_connection_interface_aliasing_run_get_alias_flags (TpConnection *proxy,
    gint timeout_ms,
    guint *out0,
    GError **error,
    GMainLoop **loop);


typedef void (*tp_cli_connection_interface_aliasing_callback_for_request_aliases) (TpConnection *proxy,
    const gchar **out0,
    const GError *error, gpointer user_data,
    GObject *weak_object);

TpProxyPendingCall *tp_cli_connection_interface_aliasing_call_request_aliases (TpConnection *proxy,
    gint timeout_ms,
    const GArray *in_contacts,
    tp_cli_connection_interface_aliasing_callback_for_request_aliases callback,
    gpointer user_data,
    GDestroyNotify destroy,
    GObject *weak_object);

gboolean tp_cli_connection_interface_aliasing_run_request_aliases (TpConnection *proxy,
    gint timeout_ms,
    const GArray *in_contacts,
    gchar ***out0,
    GError **error,
    GMainLoop **loop);


typedef void (*tp_cli_connection_interface_aliasing_callback_for_set_aliases) (TpConnection *proxy,
    const GError *error, gpointer user_data,
    GObject *weak_object);

TpProxyPendingCall *tp_cli_connection_interface_aliasing_call_set_aliases (TpConnection *proxy,
    gint timeout_ms,
    GHashTable *in_aliases,
    tp_cli_connection_interface_aliasing_callback_for_set_aliases callback,
    gpointer user_data,
    GDestroyNotify destroy,
    GObject *weak_object);

gboolean tp_cli_connection_interface_aliasing_run_set_aliases (TpConnection *proxy,
    gint timeout_ms,
    GHashTable *in_aliases,
    GError **error,
    GMainLoop **loop);


typedef void (*tp_cli_connection_interface_avatars_signal_callback_avatar_updated) (TpConnection *proxy,
    guint arg_contact,
    const gchar *arg_new_avatar_token,
    gpointer user_data, GObject *weak_object);
TpProxySignalConnection *tp_cli_connection_interface_avatars_connect_to_avatar_updated (TpConnection *proxy,
    tp_cli_connection_interface_avatars_signal_callback_avatar_updated callback,
    gpointer user_data,
    GDestroyNotify destroy,
    GObject *weak_object,
    GError **error);

typedef void (*tp_cli_connection_interface_avatars_signal_callback_avatar_retrieved) (TpConnection *proxy,
    guint arg_contact,
    const gchar *arg_token,
    const GArray *arg_avatar,
    const gchar *arg_type,
    gpointer user_data, GObject *weak_object);
TpProxySignalConnection *tp_cli_connection_interface_avatars_connect_to_avatar_retrieved (TpConnection *proxy,
    tp_cli_connection_interface_avatars_signal_callback_avatar_retrieved callback,
    gpointer user_data,
    GDestroyNotify destroy,
    GObject *weak_object,
    GError **error);

typedef void (*tp_cli_connection_interface_avatars_callback_for_get_avatar_requirements) (TpConnection *proxy,
    const gchar **out0,
    guint out1,
    guint out2,
    guint out3,
    guint out4,
    guint out5,
    const GError *error, gpointer user_data,
    GObject *weak_object);

TpProxyPendingCall *tp_cli_connection_interface_avatars_call_get_avatar_requirements (TpConnection *proxy,
    gint timeout_ms,
    tp_cli_connection_interface_avatars_callback_for_get_avatar_requirements callback,
    gpointer user_data,
    GDestroyNotify destroy,
    GObject *weak_object);

gboolean tp_cli_connection_interface_avatars_run_get_avatar_requirements (TpConnection *proxy,
    gint timeout_ms,
    gchar ***out0,
    guint *out1,
    guint *out2,
    guint *out3,
    guint *out4,
    guint *out5,
    GError **error,
    GMainLoop **loop);


typedef void (*tp_cli_connection_interface_avatars_callback_for_get_avatar_tokens) (TpConnection *proxy,
    const gchar **out0,
    const GError *error, gpointer user_data,
    GObject *weak_object);

TpProxyPendingCall *tp_cli_connection_interface_avatars_call_get_avatar_tokens (TpConnection *proxy,
    gint timeout_ms,
    const GArray *in_contacts,
    tp_cli_connection_interface_avatars_callback_for_get_avatar_tokens callback,
    gpointer user_data,
    GDestroyNotify destroy,
    GObject *weak_object);

gboolean tp_cli_connection_interface_avatars_run_get_avatar_tokens (TpConnection *proxy,
    gint timeout_ms,
    const GArray *in_contacts,
    gchar ***out0,
    GError **error,
    GMainLoop **loop);


typedef void (*tp_cli_connection_interface_avatars_callback_for_get_known_avatar_tokens) (TpConnection *proxy,
    GHashTable *out0,
    const GError *error, gpointer user_data,
    GObject *weak_object);

TpProxyPendingCall *tp_cli_connection_interface_avatars_call_get_known_avatar_tokens (TpConnection *proxy,
    gint timeout_ms,
    const GArray *in_contacts,
    tp_cli_connection_interface_avatars_callback_for_get_known_avatar_tokens callback,
    gpointer user_data,
    GDestroyNotify destroy,
    GObject *weak_object);

gboolean tp_cli_connection_interface_avatars_run_get_known_avatar_tokens (TpConnection *proxy,
    gint timeout_ms,
    const GArray *in_contacts,
    GHashTable **out0,
    GError **error,
    GMainLoop **loop);


typedef void (*tp_cli_connection_interface_avatars_callback_for_request_avatar) (TpConnection *proxy,
    const GArray *out0,
    const gchar *out1,
    const GError *error, gpointer user_data,
    GObject *weak_object);

TpProxyPendingCall *tp_cli_connection_interface_avatars_call_request_avatar (TpConnection *proxy,
    gint timeout_ms,
    guint in_contact,
    tp_cli_connection_interface_avatars_callback_for_request_avatar callback,
    gpointer user_data,
    GDestroyNotify destroy,
    GObject *weak_object);

gboolean tp_cli_connection_interface_avatars_run_request_avatar (TpConnection *proxy,
    gint timeout_ms,
    guint in_contact,
    GArray **out0,
    gchar **out1,
    GError **error,
    GMainLoop **loop);


typedef void (*tp_cli_connection_interface_avatars_callback_for_request_avatars) (TpConnection *proxy,
    const GError *error, gpointer user_data,
    GObject *weak_object);

TpProxyPendingCall *tp_cli_connection_interface_avatars_call_request_avatars (TpConnection *proxy,
    gint timeout_ms,
    const GArray *in_contacts,
    tp_cli_connection_interface_avatars_callback_for_request_avatars callback,
    gpointer user_data,
    GDestroyNotify destroy,
    GObject *weak_object);

gboolean tp_cli_connection_interface_avatars_run_request_avatars (TpConnection *proxy,
    gint timeout_ms,
    const GArray *in_contacts,
    GError **error,
    GMainLoop **loop);


typedef void (*tp_cli_connection_interface_avatars_callback_for_set_avatar) (TpConnection *proxy,
    const gchar *out0,
    const GError *error, gpointer user_data,
    GObject *weak_object);

TpProxyPendingCall *tp_cli_connection_interface_avatars_call_set_avatar (TpConnection *proxy,
    gint timeout_ms,
    const GArray *in_avatar,
    const gchar *in_mime_type,
    tp_cli_connection_interface_avatars_callback_for_set_avatar callback,
    gpointer user_data,
    GDestroyNotify destroy,
    GObject *weak_object);

gboolean tp_cli_connection_interface_avatars_run_set_avatar (TpConnection *proxy,
    gint timeout_ms,
    const GArray *in_avatar,
    const gchar *in_mime_type,
    gchar **out0,
    GError **error,
    GMainLoop **loop);


typedef void (*tp_cli_connection_interface_avatars_callback_for_clear_avatar) (TpConnection *proxy,
    const GError *error, gpointer user_data,
    GObject *weak_object);

TpProxyPendingCall *tp_cli_connection_interface_avatars_call_clear_avatar (TpConnection *proxy,
    gint timeout_ms,
    tp_cli_connection_interface_avatars_callback_for_clear_avatar callback,
    gpointer user_data,
    GDestroyNotify destroy,
    GObject *weak_object);

gboolean tp_cli_connection_interface_avatars_run_clear_avatar (TpConnection *proxy,
    gint timeout_ms,
    GError **error,
    GMainLoop **loop);


typedef void (*tp_cli_connection_interface_capabilities_signal_callback_capabilities_changed) (TpConnection *proxy,
    const GPtrArray *arg_caps,
    gpointer user_data, GObject *weak_object);
TpProxySignalConnection *tp_cli_connection_interface_capabilities_connect_to_capabilities_changed (TpConnection *proxy,
    tp_cli_connection_interface_capabilities_signal_callback_capabilities_changed callback,
    gpointer user_data,
    GDestroyNotify destroy,
    GObject *weak_object,
    GError **error);

typedef void (*tp_cli_connection_interface_capabilities_callback_for_advertise_capabilities) (TpConnection *proxy,
    const GPtrArray *out0,
    const GError *error, gpointer user_data,
    GObject *weak_object);

TpProxyPendingCall *tp_cli_connection_interface_capabilities_call_advertise_capabilities (TpConnection *proxy,
    gint timeout_ms,
    const GPtrArray *in_add,
    const gchar **in_remove,
    tp_cli_connection_interface_capabilities_callback_for_advertise_capabilities callback,
    gpointer user_data,
    GDestroyNotify destroy,
    GObject *weak_object);

gboolean tp_cli_connection_interface_capabilities_run_advertise_capabilities (TpConnection *proxy,
    gint timeout_ms,
    const GPtrArray *in_add,
    const gchar **in_remove,
    GPtrArray **out0,
    GError **error,
    GMainLoop **loop);


typedef void (*tp_cli_connection_interface_capabilities_callback_for_get_capabilities) (TpConnection *proxy,
    const GPtrArray *out0,
    const GError *error, gpointer user_data,
    GObject *weak_object);

TpProxyPendingCall *tp_cli_connection_interface_capabilities_call_get_capabilities (TpConnection *proxy,
    gint timeout_ms,
    const GArray *in_handles,
    tp_cli_connection_interface_capabilities_callback_for_get_capabilities callback,
    gpointer user_data,
    GDestroyNotify destroy,
    GObject *weak_object);

gboolean tp_cli_connection_interface_capabilities_run_get_capabilities (TpConnection *proxy,
    gint timeout_ms,
    const GArray *in_handles,
    GPtrArray **out0,
    GError **error,
    GMainLoop **loop);


typedef void (*tp_cli_connection_interface_presence_signal_callback_presence_update) (TpConnection *proxy,
    GHashTable *arg_presence,
    gpointer user_data, GObject *weak_object);
TpProxySignalConnection *tp_cli_connection_interface_presence_connect_to_presence_update (TpConnection *proxy,
    tp_cli_connection_interface_presence_signal_callback_presence_update callback,
    gpointer user_data,
    GDestroyNotify destroy,
    GObject *weak_object,
    GError **error);

typedef void (*tp_cli_connection_interface_presence_callback_for_add_status) (TpConnection *proxy,
    const GError *error, gpointer user_data,
    GObject *weak_object);

TpProxyPendingCall *tp_cli_connection_interface_presence_call_add_status (TpConnection *proxy,
    gint timeout_ms,
    const gchar *in_status,
    GHashTable *in_parms,
    tp_cli_connection_interface_presence_callback_for_add_status callback,
    gpointer user_data,
    GDestroyNotify destroy,
    GObject *weak_object);

gboolean tp_cli_connection_interface_presence_run_add_status (TpConnection *proxy,
    gint timeout_ms,
    const gchar *in_status,
    GHashTable *in_parms,
    GError **error,
    GMainLoop **loop);


typedef void (*tp_cli_connection_interface_presence_callback_for_clear_status) (TpConnection *proxy,
    const GError *error, gpointer user_data,
    GObject *weak_object);

TpProxyPendingCall *tp_cli_connection_interface_presence_call_clear_status (TpConnection *proxy,
    gint timeout_ms,
    tp_cli_connection_interface_presence_callback_for_clear_status callback,
    gpointer user_data,
    GDestroyNotify destroy,
    GObject *weak_object);

gboolean tp_cli_connection_interface_presence_run_clear_status (TpConnection *proxy,
    gint timeout_ms,
    GError **error,
    GMainLoop **loop);


typedef void (*tp_cli_connection_interface_presence_callback_for_get_presence) (TpConnection *proxy,
    GHashTable *out_presence,
    const GError *error, gpointer user_data,
    GObject *weak_object);

TpProxyPendingCall *tp_cli_connection_interface_presence_call_get_presence (TpConnection *proxy,
    gint timeout_ms,
    const GArray *in_contacts,
    tp_cli_connection_interface_presence_callback_for_get_presence callback,
    gpointer user_data,
    GDestroyNotify destroy,
    GObject *weak_object);

gboolean tp_cli_connection_interface_presence_run_get_presence (TpConnection *proxy,
    gint timeout_ms,
    const GArray *in_contacts,
    GHashTable **out_presence,
    GError **error,
    GMainLoop **loop);


typedef void (*tp_cli_connection_interface_presence_callback_for_get_statuses) (TpConnection *proxy,
    GHashTable *out0,
    const GError *error, gpointer user_data,
    GObject *weak_object);

TpProxyPendingCall *tp_cli_connection_interface_presence_call_get_statuses (TpConnection *proxy,
    gint timeout_ms,
    tp_cli_connection_interface_presence_callback_for_get_statuses callback,
    gpointer user_data,
    GDestroyNotify destroy,
    GObject *weak_object);

gboolean tp_cli_connection_interface_presence_run_get_statuses (TpConnection *proxy,
    gint timeout_ms,
    GHashTable **out0,
    GError **error,
    GMainLoop **loop);


typedef void (*tp_cli_connection_interface_presence_callback_for_remove_status) (TpConnection *proxy,
    const GError *error, gpointer user_data,
    GObject *weak_object);

TpProxyPendingCall *tp_cli_connection_interface_presence_call_remove_status (TpConnection *proxy,
    gint timeout_ms,
    const gchar *in_status,
    tp_cli_connection_interface_presence_callback_for_remove_status callback,
    gpointer user_data,
    GDestroyNotify destroy,
    GObject *weak_object);

gboolean tp_cli_connection_interface_presence_run_remove_status (TpConnection *proxy,
    gint timeout_ms,
    const gchar *in_status,
    GError **error,
    GMainLoop **loop);


typedef void (*tp_cli_connection_interface_presence_callback_for_request_presence) (TpConnection *proxy,
    const GError *error, gpointer user_data,
    GObject *weak_object);

TpProxyPendingCall *tp_cli_connection_interface_presence_call_request_presence (TpConnection *proxy,
    gint timeout_ms,
    const GArray *in_contacts,
    tp_cli_connection_interface_presence_callback_for_request_presence callback,
    gpointer user_data,
    GDestroyNotify destroy,
    GObject *weak_object);

gboolean tp_cli_connection_interface_presence_run_request_presence (TpConnection *proxy,
    gint timeout_ms,
    const GArray *in_contacts,
    GError **error,
    GMainLoop **loop);


typedef void (*tp_cli_connection_interface_presence_callback_for_set_last_activity_time) (TpConnection *proxy,
    const GError *error, gpointer user_data,
    GObject *weak_object);

TpProxyPendingCall *tp_cli_connection_interface_presence_call_set_last_activity_time (TpConnection *proxy,
    gint timeout_ms,
    guint in_time,
    tp_cli_connection_interface_presence_callback_for_set_last_activity_time callback,
    gpointer user_data,
    GDestroyNotify destroy,
    GObject *weak_object);

gboolean tp_cli_connection_interface_presence_run_set_last_activity_time (TpConnection *proxy,
    gint timeout_ms,
    guint in_time,
    GError **error,
    GMainLoop **loop);


typedef void (*tp_cli_connection_interface_presence_callback_for_set_status) (TpConnection *proxy,
    const GError *error, gpointer user_data,
    GObject *weak_object);

TpProxyPendingCall *tp_cli_connection_interface_presence_call_set_status (TpConnection *proxy,
    gint timeout_ms,
    GHashTable *in_statuses,
    tp_cli_connection_interface_presence_callback_for_set_status callback,
    gpointer user_data,
    GDestroyNotify destroy,
    GObject *weak_object);

gboolean tp_cli_connection_interface_presence_run_set_status (TpConnection *proxy,
    gint timeout_ms,
    GHashTable *in_statuses,
    GError **error,
    GMainLoop **loop);


G_END_DECLS
