/*
 * This file is generated by gdbus-codegen, do not modify it.
 *
 * The license of this code is the same as for the D-Bus interface description
 * it was derived from. Note that it links to GLib, so must comply with the
 * LGPL linking clauses.
 */

#ifndef __SYSTEMD1_UNIT_INTERFACE_H__
#define __SYSTEMD1_UNIT_INTERFACE_H__

#include <gio/gio.h>

G_BEGIN_DECLS


/* ------------------------------------------------------------------------ */
/* Declarations for org.freedesktop.systemd1.Unit */

#define TYPE_SYSTEMD1_UNIT (systemd1_unit_get_type ())
#define SYSTEMD1_UNIT(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_SYSTEMD1_UNIT, Systemd1Unit))
#define IS_SYSTEMD1_UNIT(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_SYSTEMD1_UNIT))
#define SYSTEMD1_UNIT_GET_IFACE(o) (G_TYPE_INSTANCE_GET_INTERFACE ((o), TYPE_SYSTEMD1_UNIT, Systemd1UnitIface))

struct _Systemd1Unit;
typedef struct _Systemd1Unit Systemd1Unit;
typedef struct _Systemd1UnitIface Systemd1UnitIface;

struct _Systemd1UnitIface
{
  GTypeInterface parent_iface;


  gboolean (*handle_clean) (
    Systemd1Unit *object,
    GDBusMethodInvocation *invocation,
    const gchar *const *arg_mask);

  gboolean (*handle_enqueue_job) (
    Systemd1Unit *object,
    GDBusMethodInvocation *invocation,
    const gchar *arg_job_type,
    const gchar *arg_job_mode);

  gboolean (*handle_freeze) (
    Systemd1Unit *object,
    GDBusMethodInvocation *invocation);

  gboolean (*handle_kill) (
    Systemd1Unit *object,
    GDBusMethodInvocation *invocation,
    const gchar *arg_whom,
    gint arg_signal);

  gboolean (*handle_ref) (
    Systemd1Unit *object,
    GDBusMethodInvocation *invocation);

  gboolean (*handle_reload) (
    Systemd1Unit *object,
    GDBusMethodInvocation *invocation,
    const gchar *arg_mode);

  gboolean (*handle_reload_or_restart) (
    Systemd1Unit *object,
    GDBusMethodInvocation *invocation,
    const gchar *arg_mode);

  gboolean (*handle_reload_or_try_restart) (
    Systemd1Unit *object,
    GDBusMethodInvocation *invocation,
    const gchar *arg_mode);

  gboolean (*handle_reset_failed) (
    Systemd1Unit *object,
    GDBusMethodInvocation *invocation);

  gboolean (*handle_restart) (
    Systemd1Unit *object,
    GDBusMethodInvocation *invocation,
    const gchar *arg_mode);

  gboolean (*handle_set_properties) (
    Systemd1Unit *object,
    GDBusMethodInvocation *invocation,
    gboolean arg_runtime,
    GVariant *arg_properties);

  gboolean (*handle_start) (
    Systemd1Unit *object,
    GDBusMethodInvocation *invocation,
    const gchar *arg_mode);

  gboolean (*handle_stop) (
    Systemd1Unit *object,
    GDBusMethodInvocation *invocation,
    const gchar *arg_mode);

  gboolean (*handle_thaw) (
    Systemd1Unit *object,
    GDBusMethodInvocation *invocation);

  gboolean (*handle_try_restart) (
    Systemd1Unit *object,
    GDBusMethodInvocation *invocation,
    const gchar *arg_mode);

  gboolean (*handle_unref) (
    Systemd1Unit *object,
    GDBusMethodInvocation *invocation);

  guint64  (*get_active_enter_timestamp) (Systemd1Unit *object);

  guint64  (*get_active_enter_timestamp_monotonic) (Systemd1Unit *object);

  guint64  (*get_active_exit_timestamp) (Systemd1Unit *object);

  guint64  (*get_active_exit_timestamp_monotonic) (Systemd1Unit *object);

  const gchar * (*get_active_state) (Systemd1Unit *object);

  const gchar *const * (*get_after) (Systemd1Unit *object);

  gboolean  (*get_allow_isolate) (Systemd1Unit *object);

  gboolean  (*get_assert_result) (Systemd1Unit *object);

  guint64  (*get_assert_timestamp) (Systemd1Unit *object);

  guint64  (*get_assert_timestamp_monotonic) (Systemd1Unit *object);

  GVariant * (*get_asserts) (Systemd1Unit *object);

  const gchar *const * (*get_before) (Systemd1Unit *object);

  const gchar *const * (*get_binds_to) (Systemd1Unit *object);

  const gchar *const * (*get_bound_by) (Systemd1Unit *object);

  const gchar *const * (*get_can_clean) (Systemd1Unit *object);

  gboolean  (*get_can_freeze) (Systemd1Unit *object);

  gboolean  (*get_can_isolate) (Systemd1Unit *object);

  gboolean  (*get_can_reload) (Systemd1Unit *object);

  gboolean  (*get_can_start) (Systemd1Unit *object);

  gboolean  (*get_can_stop) (Systemd1Unit *object);

  const gchar * (*get_collect_mode) (Systemd1Unit *object);

  gboolean  (*get_condition_result) (Systemd1Unit *object);

  guint64  (*get_condition_timestamp) (Systemd1Unit *object);

  guint64  (*get_condition_timestamp_monotonic) (Systemd1Unit *object);

  GVariant * (*get_conditions) (Systemd1Unit *object);

  const gchar *const * (*get_conflicted_by) (Systemd1Unit *object);

  const gchar *const * (*get_conflicts) (Systemd1Unit *object);

  const gchar *const * (*get_consists_of) (Systemd1Unit *object);

  gboolean  (*get_default_dependencies) (Systemd1Unit *object);

  const gchar * (*get_description) (Systemd1Unit *object);

  const gchar *const * (*get_documentation) (Systemd1Unit *object);

  const gchar *const * (*get_drop_in_paths) (Systemd1Unit *object);

  const gchar * (*get_failure_action) (Systemd1Unit *object);

  gint  (*get_failure_action_exit_status) (Systemd1Unit *object);

  const gchar * (*get_following) (Systemd1Unit *object);

  const gchar * (*get_fragment_path) (Systemd1Unit *object);

  const gchar * (*get_freezer_state) (Systemd1Unit *object);

  const gchar * (*get_id) (Systemd1Unit *object);

  gboolean  (*get_ignore_on_isolate) (Systemd1Unit *object);

  guint64  (*get_inactive_enter_timestamp) (Systemd1Unit *object);

  guint64  (*get_inactive_enter_timestamp_monotonic) (Systemd1Unit *object);

  guint64  (*get_inactive_exit_timestamp) (Systemd1Unit *object);

  guint64  (*get_inactive_exit_timestamp_monotonic) (Systemd1Unit *object);

  const gchar * (*get_invocation_id) (Systemd1Unit *object);

  GVariant * (*get_job) (Systemd1Unit *object);

  guint64  (*get_job_running_timeout_usec) (Systemd1Unit *object);

  const gchar * (*get_job_timeout_action) (Systemd1Unit *object);

  const gchar * (*get_job_timeout_reboot_argument) (Systemd1Unit *object);

  guint64  (*get_job_timeout_usec) (Systemd1Unit *object);

  const gchar *const * (*get_joins_namespace_of) (Systemd1Unit *object);

  GVariant * (*get_load_error) (Systemd1Unit *object);

  const gchar * (*get_load_state) (Systemd1Unit *object);

  const gchar *const * (*get_markers) (Systemd1Unit *object);

  const gchar *const * (*get_names) (Systemd1Unit *object);

  gboolean  (*get_need_daemon_reload) (Systemd1Unit *object);

  const gchar *const * (*get_on_failure) (Systemd1Unit *object);

  const gchar * (*get_on_failure_job_mode) (Systemd1Unit *object);

  const gchar *const * (*get_on_failure_of) (Systemd1Unit *object);

  const gchar *const * (*get_on_success) (Systemd1Unit *object);

  const gchar * (*get_on_success_job_mode) (Systemd1Unit *object);

  const gchar *const * (*get_on_success_of) (Systemd1Unit *object);

  const gchar *const * (*get_part_of) (Systemd1Unit *object);

  gboolean  (*get_perpetual) (Systemd1Unit *object);

  const gchar *const * (*get_propagates_reload_to) (Systemd1Unit *object);

  const gchar *const * (*get_propagates_stop_to) (Systemd1Unit *object);

  const gchar * (*get_reboot_argument) (Systemd1Unit *object);

  const gchar *const * (*get_refs) (Systemd1Unit *object);

  gboolean  (*get_refuse_manual_start) (Systemd1Unit *object);

  gboolean  (*get_refuse_manual_stop) (Systemd1Unit *object);

  const gchar *const * (*get_reload_propagated_from) (Systemd1Unit *object);

  const gchar *const * (*get_required_by) (Systemd1Unit *object);

  const gchar *const * (*get_requires) (Systemd1Unit *object);

  const gchar *const * (*get_requires_mounts_for) (Systemd1Unit *object);

  const gchar *const * (*get_requisite) (Systemd1Unit *object);

  const gchar *const * (*get_requisite_of) (Systemd1Unit *object);

  const gchar *const * (*get_slice_of) (Systemd1Unit *object);

  const gchar * (*get_source_path) (Systemd1Unit *object);

  const gchar * (*get_start_limit_action) (Systemd1Unit *object);

  guint  (*get_start_limit_burst) (Systemd1Unit *object);

  guint64  (*get_start_limit_interval_usec) (Systemd1Unit *object);

  guint64  (*get_state_change_timestamp) (Systemd1Unit *object);

  guint64  (*get_state_change_timestamp_monotonic) (Systemd1Unit *object);

  const gchar *const * (*get_stop_propagated_from) (Systemd1Unit *object);

  gboolean  (*get_stop_when_unneeded) (Systemd1Unit *object);

  const gchar * (*get_sub_state) (Systemd1Unit *object);

  const gchar * (*get_success_action) (Systemd1Unit *object);

  gint  (*get_success_action_exit_status) (Systemd1Unit *object);

  gboolean  (*get_transient) (Systemd1Unit *object);

  const gchar *const * (*get_triggered_by) (Systemd1Unit *object);

  const gchar *const * (*get_triggers) (Systemd1Unit *object);

  const gchar * (*get_unit_file_preset) (Systemd1Unit *object);

  const gchar * (*get_unit_file_state) (Systemd1Unit *object);

  const gchar *const * (*get_wanted_by) (Systemd1Unit *object);

  const gchar *const * (*get_wants) (Systemd1Unit *object);

};

GType systemd1_unit_get_type (void) G_GNUC_CONST;

GDBusInterfaceInfo *systemd1_unit_interface_info (void);
guint systemd1_unit_override_properties (GObjectClass *klass, guint property_id_begin);


/* D-Bus method call completion functions: */
void systemd1_unit_complete_start (
    Systemd1Unit *object,
    GDBusMethodInvocation *invocation,
    const gchar *job);

void systemd1_unit_complete_stop (
    Systemd1Unit *object,
    GDBusMethodInvocation *invocation,
    const gchar *job);

void systemd1_unit_complete_reload (
    Systemd1Unit *object,
    GDBusMethodInvocation *invocation,
    const gchar *job);

void systemd1_unit_complete_restart (
    Systemd1Unit *object,
    GDBusMethodInvocation *invocation,
    const gchar *job);

void systemd1_unit_complete_try_restart (
    Systemd1Unit *object,
    GDBusMethodInvocation *invocation,
    const gchar *job);

void systemd1_unit_complete_reload_or_restart (
    Systemd1Unit *object,
    GDBusMethodInvocation *invocation,
    const gchar *job);

void systemd1_unit_complete_reload_or_try_restart (
    Systemd1Unit *object,
    GDBusMethodInvocation *invocation,
    const gchar *job);

void systemd1_unit_complete_enqueue_job (
    Systemd1Unit *object,
    GDBusMethodInvocation *invocation,
    guint job_id,
    const gchar *job_path,
    const gchar *unit_id,
    const gchar *unit_path,
    const gchar *job_type,
    GVariant *affected_jobs);

void systemd1_unit_complete_kill (
    Systemd1Unit *object,
    GDBusMethodInvocation *invocation);

void systemd1_unit_complete_reset_failed (
    Systemd1Unit *object,
    GDBusMethodInvocation *invocation);

void systemd1_unit_complete_set_properties (
    Systemd1Unit *object,
    GDBusMethodInvocation *invocation);

void systemd1_unit_complete_ref (
    Systemd1Unit *object,
    GDBusMethodInvocation *invocation);

void systemd1_unit_complete_unref (
    Systemd1Unit *object,
    GDBusMethodInvocation *invocation);

void systemd1_unit_complete_clean (
    Systemd1Unit *object,
    GDBusMethodInvocation *invocation);

void systemd1_unit_complete_freeze (
    Systemd1Unit *object,
    GDBusMethodInvocation *invocation);

void systemd1_unit_complete_thaw (
    Systemd1Unit *object,
    GDBusMethodInvocation *invocation);



/* D-Bus method calls: */
void systemd1_unit_call_start (
    Systemd1Unit *proxy,
    const gchar *arg_mode,
    GCancellable *cancellable,
    GAsyncReadyCallback callback,
    gpointer user_data);

gboolean systemd1_unit_call_start_finish (
    Systemd1Unit *proxy,
    gchar **out_job,
    GAsyncResult *res,
    GError **error);

gboolean systemd1_unit_call_start_sync (
    Systemd1Unit *proxy,
    const gchar *arg_mode,
    gchar **out_job,
    GCancellable *cancellable,
    GError **error);

void systemd1_unit_call_stop (
    Systemd1Unit *proxy,
    const gchar *arg_mode,
    GCancellable *cancellable,
    GAsyncReadyCallback callback,
    gpointer user_data);

gboolean systemd1_unit_call_stop_finish (
    Systemd1Unit *proxy,
    gchar **out_job,
    GAsyncResult *res,
    GError **error);

gboolean systemd1_unit_call_stop_sync (
    Systemd1Unit *proxy,
    const gchar *arg_mode,
    gchar **out_job,
    GCancellable *cancellable,
    GError **error);

void systemd1_unit_call_reload (
    Systemd1Unit *proxy,
    const gchar *arg_mode,
    GCancellable *cancellable,
    GAsyncReadyCallback callback,
    gpointer user_data);

gboolean systemd1_unit_call_reload_finish (
    Systemd1Unit *proxy,
    gchar **out_job,
    GAsyncResult *res,
    GError **error);

gboolean systemd1_unit_call_reload_sync (
    Systemd1Unit *proxy,
    const gchar *arg_mode,
    gchar **out_job,
    GCancellable *cancellable,
    GError **error);

void systemd1_unit_call_restart (
    Systemd1Unit *proxy,
    const gchar *arg_mode,
    GCancellable *cancellable,
    GAsyncReadyCallback callback,
    gpointer user_data);

gboolean systemd1_unit_call_restart_finish (
    Systemd1Unit *proxy,
    gchar **out_job,
    GAsyncResult *res,
    GError **error);

gboolean systemd1_unit_call_restart_sync (
    Systemd1Unit *proxy,
    const gchar *arg_mode,
    gchar **out_job,
    GCancellable *cancellable,
    GError **error);

void systemd1_unit_call_try_restart (
    Systemd1Unit *proxy,
    const gchar *arg_mode,
    GCancellable *cancellable,
    GAsyncReadyCallback callback,
    gpointer user_data);

gboolean systemd1_unit_call_try_restart_finish (
    Systemd1Unit *proxy,
    gchar **out_job,
    GAsyncResult *res,
    GError **error);

gboolean systemd1_unit_call_try_restart_sync (
    Systemd1Unit *proxy,
    const gchar *arg_mode,
    gchar **out_job,
    GCancellable *cancellable,
    GError **error);

void systemd1_unit_call_reload_or_restart (
    Systemd1Unit *proxy,
    const gchar *arg_mode,
    GCancellable *cancellable,
    GAsyncReadyCallback callback,
    gpointer user_data);

gboolean systemd1_unit_call_reload_or_restart_finish (
    Systemd1Unit *proxy,
    gchar **out_job,
    GAsyncResult *res,
    GError **error);

gboolean systemd1_unit_call_reload_or_restart_sync (
    Systemd1Unit *proxy,
    const gchar *arg_mode,
    gchar **out_job,
    GCancellable *cancellable,
    GError **error);

void systemd1_unit_call_reload_or_try_restart (
    Systemd1Unit *proxy,
    const gchar *arg_mode,
    GCancellable *cancellable,
    GAsyncReadyCallback callback,
    gpointer user_data);

gboolean systemd1_unit_call_reload_or_try_restart_finish (
    Systemd1Unit *proxy,
    gchar **out_job,
    GAsyncResult *res,
    GError **error);

gboolean systemd1_unit_call_reload_or_try_restart_sync (
    Systemd1Unit *proxy,
    const gchar *arg_mode,
    gchar **out_job,
    GCancellable *cancellable,
    GError **error);

void systemd1_unit_call_enqueue_job (
    Systemd1Unit *proxy,
    const gchar *arg_job_type,
    const gchar *arg_job_mode,
    GCancellable *cancellable,
    GAsyncReadyCallback callback,
    gpointer user_data);

gboolean systemd1_unit_call_enqueue_job_finish (
    Systemd1Unit *proxy,
    guint *out_job_id,
    gchar **out_job_path,
    gchar **out_unit_id,
    gchar **out_unit_path,
    gchar **out_job_type,
    GVariant **out_affected_jobs,
    GAsyncResult *res,
    GError **error);

gboolean systemd1_unit_call_enqueue_job_sync (
    Systemd1Unit *proxy,
    const gchar *arg_job_type,
    const gchar *arg_job_mode,
    guint *out_job_id,
    gchar **out_job_path,
    gchar **out_unit_id,
    gchar **out_unit_path,
    gchar **out_job_type,
    GVariant **out_affected_jobs,
    GCancellable *cancellable,
    GError **error);

void systemd1_unit_call_kill (
    Systemd1Unit *proxy,
    const gchar *arg_whom,
    gint arg_signal,
    GCancellable *cancellable,
    GAsyncReadyCallback callback,
    gpointer user_data);

gboolean systemd1_unit_call_kill_finish (
    Systemd1Unit *proxy,
    GAsyncResult *res,
    GError **error);

gboolean systemd1_unit_call_kill_sync (
    Systemd1Unit *proxy,
    const gchar *arg_whom,
    gint arg_signal,
    GCancellable *cancellable,
    GError **error);

void systemd1_unit_call_reset_failed (
    Systemd1Unit *proxy,
    GCancellable *cancellable,
    GAsyncReadyCallback callback,
    gpointer user_data);

gboolean systemd1_unit_call_reset_failed_finish (
    Systemd1Unit *proxy,
    GAsyncResult *res,
    GError **error);

gboolean systemd1_unit_call_reset_failed_sync (
    Systemd1Unit *proxy,
    GCancellable *cancellable,
    GError **error);

void systemd1_unit_call_set_properties (
    Systemd1Unit *proxy,
    gboolean arg_runtime,
    GVariant *arg_properties,
    GCancellable *cancellable,
    GAsyncReadyCallback callback,
    gpointer user_data);

gboolean systemd1_unit_call_set_properties_finish (
    Systemd1Unit *proxy,
    GAsyncResult *res,
    GError **error);

gboolean systemd1_unit_call_set_properties_sync (
    Systemd1Unit *proxy,
    gboolean arg_runtime,
    GVariant *arg_properties,
    GCancellable *cancellable,
    GError **error);

void systemd1_unit_call_ref (
    Systemd1Unit *proxy,
    GCancellable *cancellable,
    GAsyncReadyCallback callback,
    gpointer user_data);

gboolean systemd1_unit_call_ref_finish (
    Systemd1Unit *proxy,
    GAsyncResult *res,
    GError **error);

gboolean systemd1_unit_call_ref_sync (
    Systemd1Unit *proxy,
    GCancellable *cancellable,
    GError **error);

void systemd1_unit_call_unref (
    Systemd1Unit *proxy,
    GCancellable *cancellable,
    GAsyncReadyCallback callback,
    gpointer user_data);

gboolean systemd1_unit_call_unref_finish (
    Systemd1Unit *proxy,
    GAsyncResult *res,
    GError **error);

gboolean systemd1_unit_call_unref_sync (
    Systemd1Unit *proxy,
    GCancellable *cancellable,
    GError **error);

void systemd1_unit_call_clean (
    Systemd1Unit *proxy,
    const gchar *const *arg_mask,
    GCancellable *cancellable,
    GAsyncReadyCallback callback,
    gpointer user_data);

gboolean systemd1_unit_call_clean_finish (
    Systemd1Unit *proxy,
    GAsyncResult *res,
    GError **error);

gboolean systemd1_unit_call_clean_sync (
    Systemd1Unit *proxy,
    const gchar *const *arg_mask,
    GCancellable *cancellable,
    GError **error);

void systemd1_unit_call_freeze (
    Systemd1Unit *proxy,
    GCancellable *cancellable,
    GAsyncReadyCallback callback,
    gpointer user_data);

gboolean systemd1_unit_call_freeze_finish (
    Systemd1Unit *proxy,
    GAsyncResult *res,
    GError **error);

gboolean systemd1_unit_call_freeze_sync (
    Systemd1Unit *proxy,
    GCancellable *cancellable,
    GError **error);

void systemd1_unit_call_thaw (
    Systemd1Unit *proxy,
    GCancellable *cancellable,
    GAsyncReadyCallback callback,
    gpointer user_data);

gboolean systemd1_unit_call_thaw_finish (
    Systemd1Unit *proxy,
    GAsyncResult *res,
    GError **error);

gboolean systemd1_unit_call_thaw_sync (
    Systemd1Unit *proxy,
    GCancellable *cancellable,
    GError **error);



/* D-Bus property accessors: */
const gchar *systemd1_unit_get_id (Systemd1Unit *object);
gchar *systemd1_unit_dup_id (Systemd1Unit *object);
void systemd1_unit_set_id (Systemd1Unit *object, const gchar *value);

const gchar *const *systemd1_unit_get_names (Systemd1Unit *object);
gchar **systemd1_unit_dup_names (Systemd1Unit *object);
void systemd1_unit_set_names (Systemd1Unit *object, const gchar *const *value);

const gchar *systemd1_unit_get_following (Systemd1Unit *object);
gchar *systemd1_unit_dup_following (Systemd1Unit *object);
void systemd1_unit_set_following (Systemd1Unit *object, const gchar *value);

const gchar *const *systemd1_unit_get_requires (Systemd1Unit *object);
gchar **systemd1_unit_dup_requires (Systemd1Unit *object);
void systemd1_unit_set_requires (Systemd1Unit *object, const gchar *const *value);

const gchar *const *systemd1_unit_get_requisite (Systemd1Unit *object);
gchar **systemd1_unit_dup_requisite (Systemd1Unit *object);
void systemd1_unit_set_requisite (Systemd1Unit *object, const gchar *const *value);

const gchar *const *systemd1_unit_get_wants (Systemd1Unit *object);
gchar **systemd1_unit_dup_wants (Systemd1Unit *object);
void systemd1_unit_set_wants (Systemd1Unit *object, const gchar *const *value);

const gchar *const *systemd1_unit_get_binds_to (Systemd1Unit *object);
gchar **systemd1_unit_dup_binds_to (Systemd1Unit *object);
void systemd1_unit_set_binds_to (Systemd1Unit *object, const gchar *const *value);

const gchar *const *systemd1_unit_get_part_of (Systemd1Unit *object);
gchar **systemd1_unit_dup_part_of (Systemd1Unit *object);
void systemd1_unit_set_part_of (Systemd1Unit *object, const gchar *const *value);

const gchar *const *systemd1_unit_get_required_by (Systemd1Unit *object);
gchar **systemd1_unit_dup_required_by (Systemd1Unit *object);
void systemd1_unit_set_required_by (Systemd1Unit *object, const gchar *const *value);

const gchar *const *systemd1_unit_get_requisite_of (Systemd1Unit *object);
gchar **systemd1_unit_dup_requisite_of (Systemd1Unit *object);
void systemd1_unit_set_requisite_of (Systemd1Unit *object, const gchar *const *value);

const gchar *const *systemd1_unit_get_wanted_by (Systemd1Unit *object);
gchar **systemd1_unit_dup_wanted_by (Systemd1Unit *object);
void systemd1_unit_set_wanted_by (Systemd1Unit *object, const gchar *const *value);

const gchar *const *systemd1_unit_get_bound_by (Systemd1Unit *object);
gchar **systemd1_unit_dup_bound_by (Systemd1Unit *object);
void systemd1_unit_set_bound_by (Systemd1Unit *object, const gchar *const *value);

const gchar *const *systemd1_unit_get_consists_of (Systemd1Unit *object);
gchar **systemd1_unit_dup_consists_of (Systemd1Unit *object);
void systemd1_unit_set_consists_of (Systemd1Unit *object, const gchar *const *value);

const gchar *const *systemd1_unit_get_conflicts (Systemd1Unit *object);
gchar **systemd1_unit_dup_conflicts (Systemd1Unit *object);
void systemd1_unit_set_conflicts (Systemd1Unit *object, const gchar *const *value);

const gchar *const *systemd1_unit_get_conflicted_by (Systemd1Unit *object);
gchar **systemd1_unit_dup_conflicted_by (Systemd1Unit *object);
void systemd1_unit_set_conflicted_by (Systemd1Unit *object, const gchar *const *value);

const gchar *const *systemd1_unit_get_before (Systemd1Unit *object);
gchar **systemd1_unit_dup_before (Systemd1Unit *object);
void systemd1_unit_set_before (Systemd1Unit *object, const gchar *const *value);

const gchar *const *systemd1_unit_get_after (Systemd1Unit *object);
gchar **systemd1_unit_dup_after (Systemd1Unit *object);
void systemd1_unit_set_after (Systemd1Unit *object, const gchar *const *value);

const gchar *const *systemd1_unit_get_on_failure (Systemd1Unit *object);
gchar **systemd1_unit_dup_on_failure (Systemd1Unit *object);
void systemd1_unit_set_on_failure (Systemd1Unit *object, const gchar *const *value);

const gchar *const *systemd1_unit_get_on_failure_of (Systemd1Unit *object);
gchar **systemd1_unit_dup_on_failure_of (Systemd1Unit *object);
void systemd1_unit_set_on_failure_of (Systemd1Unit *object, const gchar *const *value);

const gchar *const *systemd1_unit_get_on_success (Systemd1Unit *object);
gchar **systemd1_unit_dup_on_success (Systemd1Unit *object);
void systemd1_unit_set_on_success (Systemd1Unit *object, const gchar *const *value);

const gchar *const *systemd1_unit_get_on_success_of (Systemd1Unit *object);
gchar **systemd1_unit_dup_on_success_of (Systemd1Unit *object);
void systemd1_unit_set_on_success_of (Systemd1Unit *object, const gchar *const *value);

const gchar *const *systemd1_unit_get_triggers (Systemd1Unit *object);
gchar **systemd1_unit_dup_triggers (Systemd1Unit *object);
void systemd1_unit_set_triggers (Systemd1Unit *object, const gchar *const *value);

const gchar *const *systemd1_unit_get_triggered_by (Systemd1Unit *object);
gchar **systemd1_unit_dup_triggered_by (Systemd1Unit *object);
void systemd1_unit_set_triggered_by (Systemd1Unit *object, const gchar *const *value);

const gchar *const *systemd1_unit_get_propagates_reload_to (Systemd1Unit *object);
gchar **systemd1_unit_dup_propagates_reload_to (Systemd1Unit *object);
void systemd1_unit_set_propagates_reload_to (Systemd1Unit *object, const gchar *const *value);

const gchar *const *systemd1_unit_get_reload_propagated_from (Systemd1Unit *object);
gchar **systemd1_unit_dup_reload_propagated_from (Systemd1Unit *object);
void systemd1_unit_set_reload_propagated_from (Systemd1Unit *object, const gchar *const *value);

const gchar *const *systemd1_unit_get_propagates_stop_to (Systemd1Unit *object);
gchar **systemd1_unit_dup_propagates_stop_to (Systemd1Unit *object);
void systemd1_unit_set_propagates_stop_to (Systemd1Unit *object, const gchar *const *value);

const gchar *const *systemd1_unit_get_stop_propagated_from (Systemd1Unit *object);
gchar **systemd1_unit_dup_stop_propagated_from (Systemd1Unit *object);
void systemd1_unit_set_stop_propagated_from (Systemd1Unit *object, const gchar *const *value);

const gchar *const *systemd1_unit_get_joins_namespace_of (Systemd1Unit *object);
gchar **systemd1_unit_dup_joins_namespace_of (Systemd1Unit *object);
void systemd1_unit_set_joins_namespace_of (Systemd1Unit *object, const gchar *const *value);

const gchar *const *systemd1_unit_get_slice_of (Systemd1Unit *object);
gchar **systemd1_unit_dup_slice_of (Systemd1Unit *object);
void systemd1_unit_set_slice_of (Systemd1Unit *object, const gchar *const *value);

const gchar *const *systemd1_unit_get_requires_mounts_for (Systemd1Unit *object);
gchar **systemd1_unit_dup_requires_mounts_for (Systemd1Unit *object);
void systemd1_unit_set_requires_mounts_for (Systemd1Unit *object, const gchar *const *value);

const gchar *const *systemd1_unit_get_documentation (Systemd1Unit *object);
gchar **systemd1_unit_dup_documentation (Systemd1Unit *object);
void systemd1_unit_set_documentation (Systemd1Unit *object, const gchar *const *value);

const gchar *systemd1_unit_get_description (Systemd1Unit *object);
gchar *systemd1_unit_dup_description (Systemd1Unit *object);
void systemd1_unit_set_description (Systemd1Unit *object, const gchar *value);

const gchar *systemd1_unit_get_load_state (Systemd1Unit *object);
gchar *systemd1_unit_dup_load_state (Systemd1Unit *object);
void systemd1_unit_set_load_state (Systemd1Unit *object, const gchar *value);

const gchar *systemd1_unit_get_active_state (Systemd1Unit *object);
gchar *systemd1_unit_dup_active_state (Systemd1Unit *object);
void systemd1_unit_set_active_state (Systemd1Unit *object, const gchar *value);

const gchar *systemd1_unit_get_freezer_state (Systemd1Unit *object);
gchar *systemd1_unit_dup_freezer_state (Systemd1Unit *object);
void systemd1_unit_set_freezer_state (Systemd1Unit *object, const gchar *value);

const gchar *systemd1_unit_get_sub_state (Systemd1Unit *object);
gchar *systemd1_unit_dup_sub_state (Systemd1Unit *object);
void systemd1_unit_set_sub_state (Systemd1Unit *object, const gchar *value);

const gchar *systemd1_unit_get_fragment_path (Systemd1Unit *object);
gchar *systemd1_unit_dup_fragment_path (Systemd1Unit *object);
void systemd1_unit_set_fragment_path (Systemd1Unit *object, const gchar *value);

const gchar *systemd1_unit_get_source_path (Systemd1Unit *object);
gchar *systemd1_unit_dup_source_path (Systemd1Unit *object);
void systemd1_unit_set_source_path (Systemd1Unit *object, const gchar *value);

const gchar *const *systemd1_unit_get_drop_in_paths (Systemd1Unit *object);
gchar **systemd1_unit_dup_drop_in_paths (Systemd1Unit *object);
void systemd1_unit_set_drop_in_paths (Systemd1Unit *object, const gchar *const *value);

const gchar *systemd1_unit_get_unit_file_state (Systemd1Unit *object);
gchar *systemd1_unit_dup_unit_file_state (Systemd1Unit *object);
void systemd1_unit_set_unit_file_state (Systemd1Unit *object, const gchar *value);

const gchar *systemd1_unit_get_unit_file_preset (Systemd1Unit *object);
gchar *systemd1_unit_dup_unit_file_preset (Systemd1Unit *object);
void systemd1_unit_set_unit_file_preset (Systemd1Unit *object, const gchar *value);

guint64 systemd1_unit_get_state_change_timestamp (Systemd1Unit *object);
void systemd1_unit_set_state_change_timestamp (Systemd1Unit *object, guint64 value);

guint64 systemd1_unit_get_state_change_timestamp_monotonic (Systemd1Unit *object);
void systemd1_unit_set_state_change_timestamp_monotonic (Systemd1Unit *object, guint64 value);

guint64 systemd1_unit_get_inactive_exit_timestamp (Systemd1Unit *object);
void systemd1_unit_set_inactive_exit_timestamp (Systemd1Unit *object, guint64 value);

guint64 systemd1_unit_get_inactive_exit_timestamp_monotonic (Systemd1Unit *object);
void systemd1_unit_set_inactive_exit_timestamp_monotonic (Systemd1Unit *object, guint64 value);

guint64 systemd1_unit_get_active_enter_timestamp (Systemd1Unit *object);
void systemd1_unit_set_active_enter_timestamp (Systemd1Unit *object, guint64 value);

guint64 systemd1_unit_get_active_enter_timestamp_monotonic (Systemd1Unit *object);
void systemd1_unit_set_active_enter_timestamp_monotonic (Systemd1Unit *object, guint64 value);

guint64 systemd1_unit_get_active_exit_timestamp (Systemd1Unit *object);
void systemd1_unit_set_active_exit_timestamp (Systemd1Unit *object, guint64 value);

guint64 systemd1_unit_get_active_exit_timestamp_monotonic (Systemd1Unit *object);
void systemd1_unit_set_active_exit_timestamp_monotonic (Systemd1Unit *object, guint64 value);

guint64 systemd1_unit_get_inactive_enter_timestamp (Systemd1Unit *object);
void systemd1_unit_set_inactive_enter_timestamp (Systemd1Unit *object, guint64 value);

guint64 systemd1_unit_get_inactive_enter_timestamp_monotonic (Systemd1Unit *object);
void systemd1_unit_set_inactive_enter_timestamp_monotonic (Systemd1Unit *object, guint64 value);

gboolean systemd1_unit_get_can_start (Systemd1Unit *object);
void systemd1_unit_set_can_start (Systemd1Unit *object, gboolean value);

gboolean systemd1_unit_get_can_stop (Systemd1Unit *object);
void systemd1_unit_set_can_stop (Systemd1Unit *object, gboolean value);

gboolean systemd1_unit_get_can_reload (Systemd1Unit *object);
void systemd1_unit_set_can_reload (Systemd1Unit *object, gboolean value);

gboolean systemd1_unit_get_can_isolate (Systemd1Unit *object);
void systemd1_unit_set_can_isolate (Systemd1Unit *object, gboolean value);

const gchar *const *systemd1_unit_get_can_clean (Systemd1Unit *object);
gchar **systemd1_unit_dup_can_clean (Systemd1Unit *object);
void systemd1_unit_set_can_clean (Systemd1Unit *object, const gchar *const *value);

gboolean systemd1_unit_get_can_freeze (Systemd1Unit *object);
void systemd1_unit_set_can_freeze (Systemd1Unit *object, gboolean value);

GVariant *systemd1_unit_get_job (Systemd1Unit *object);
GVariant *systemd1_unit_dup_job (Systemd1Unit *object);
void systemd1_unit_set_job (Systemd1Unit *object, GVariant *value);

gboolean systemd1_unit_get_stop_when_unneeded (Systemd1Unit *object);
void systemd1_unit_set_stop_when_unneeded (Systemd1Unit *object, gboolean value);

gboolean systemd1_unit_get_refuse_manual_start (Systemd1Unit *object);
void systemd1_unit_set_refuse_manual_start (Systemd1Unit *object, gboolean value);

gboolean systemd1_unit_get_refuse_manual_stop (Systemd1Unit *object);
void systemd1_unit_set_refuse_manual_stop (Systemd1Unit *object, gboolean value);

gboolean systemd1_unit_get_allow_isolate (Systemd1Unit *object);
void systemd1_unit_set_allow_isolate (Systemd1Unit *object, gboolean value);

gboolean systemd1_unit_get_default_dependencies (Systemd1Unit *object);
void systemd1_unit_set_default_dependencies (Systemd1Unit *object, gboolean value);

const gchar *systemd1_unit_get_on_success_job_mode (Systemd1Unit *object);
gchar *systemd1_unit_dup_on_success_job_mode (Systemd1Unit *object);
void systemd1_unit_set_on_success_job_mode (Systemd1Unit *object, const gchar *value);

const gchar *systemd1_unit_get_on_failure_job_mode (Systemd1Unit *object);
gchar *systemd1_unit_dup_on_failure_job_mode (Systemd1Unit *object);
void systemd1_unit_set_on_failure_job_mode (Systemd1Unit *object, const gchar *value);

gboolean systemd1_unit_get_ignore_on_isolate (Systemd1Unit *object);
void systemd1_unit_set_ignore_on_isolate (Systemd1Unit *object, gboolean value);

gboolean systemd1_unit_get_need_daemon_reload (Systemd1Unit *object);
void systemd1_unit_set_need_daemon_reload (Systemd1Unit *object, gboolean value);

const gchar *const *systemd1_unit_get_markers (Systemd1Unit *object);
gchar **systemd1_unit_dup_markers (Systemd1Unit *object);
void systemd1_unit_set_markers (Systemd1Unit *object, const gchar *const *value);

guint64 systemd1_unit_get_job_timeout_usec (Systemd1Unit *object);
void systemd1_unit_set_job_timeout_usec (Systemd1Unit *object, guint64 value);

guint64 systemd1_unit_get_job_running_timeout_usec (Systemd1Unit *object);
void systemd1_unit_set_job_running_timeout_usec (Systemd1Unit *object, guint64 value);

const gchar *systemd1_unit_get_job_timeout_action (Systemd1Unit *object);
gchar *systemd1_unit_dup_job_timeout_action (Systemd1Unit *object);
void systemd1_unit_set_job_timeout_action (Systemd1Unit *object, const gchar *value);

const gchar *systemd1_unit_get_job_timeout_reboot_argument (Systemd1Unit *object);
gchar *systemd1_unit_dup_job_timeout_reboot_argument (Systemd1Unit *object);
void systemd1_unit_set_job_timeout_reboot_argument (Systemd1Unit *object, const gchar *value);

gboolean systemd1_unit_get_condition_result (Systemd1Unit *object);
void systemd1_unit_set_condition_result (Systemd1Unit *object, gboolean value);

gboolean systemd1_unit_get_assert_result (Systemd1Unit *object);
void systemd1_unit_set_assert_result (Systemd1Unit *object, gboolean value);

guint64 systemd1_unit_get_condition_timestamp (Systemd1Unit *object);
void systemd1_unit_set_condition_timestamp (Systemd1Unit *object, guint64 value);

guint64 systemd1_unit_get_condition_timestamp_monotonic (Systemd1Unit *object);
void systemd1_unit_set_condition_timestamp_monotonic (Systemd1Unit *object, guint64 value);

guint64 systemd1_unit_get_assert_timestamp (Systemd1Unit *object);
void systemd1_unit_set_assert_timestamp (Systemd1Unit *object, guint64 value);

guint64 systemd1_unit_get_assert_timestamp_monotonic (Systemd1Unit *object);
void systemd1_unit_set_assert_timestamp_monotonic (Systemd1Unit *object, guint64 value);

GVariant *systemd1_unit_get_conditions (Systemd1Unit *object);
GVariant *systemd1_unit_dup_conditions (Systemd1Unit *object);
void systemd1_unit_set_conditions (Systemd1Unit *object, GVariant *value);

GVariant *systemd1_unit_get_asserts (Systemd1Unit *object);
GVariant *systemd1_unit_dup_asserts (Systemd1Unit *object);
void systemd1_unit_set_asserts (Systemd1Unit *object, GVariant *value);

GVariant *systemd1_unit_get_load_error (Systemd1Unit *object);
GVariant *systemd1_unit_dup_load_error (Systemd1Unit *object);
void systemd1_unit_set_load_error (Systemd1Unit *object, GVariant *value);

gboolean systemd1_unit_get_transient (Systemd1Unit *object);
void systemd1_unit_set_transient (Systemd1Unit *object, gboolean value);

gboolean systemd1_unit_get_perpetual (Systemd1Unit *object);
void systemd1_unit_set_perpetual (Systemd1Unit *object, gboolean value);

guint64 systemd1_unit_get_start_limit_interval_usec (Systemd1Unit *object);
void systemd1_unit_set_start_limit_interval_usec (Systemd1Unit *object, guint64 value);

guint systemd1_unit_get_start_limit_burst (Systemd1Unit *object);
void systemd1_unit_set_start_limit_burst (Systemd1Unit *object, guint value);

const gchar *systemd1_unit_get_start_limit_action (Systemd1Unit *object);
gchar *systemd1_unit_dup_start_limit_action (Systemd1Unit *object);
void systemd1_unit_set_start_limit_action (Systemd1Unit *object, const gchar *value);

const gchar *systemd1_unit_get_failure_action (Systemd1Unit *object);
gchar *systemd1_unit_dup_failure_action (Systemd1Unit *object);
void systemd1_unit_set_failure_action (Systemd1Unit *object, const gchar *value);

gint systemd1_unit_get_failure_action_exit_status (Systemd1Unit *object);
void systemd1_unit_set_failure_action_exit_status (Systemd1Unit *object, gint value);

const gchar *systemd1_unit_get_success_action (Systemd1Unit *object);
gchar *systemd1_unit_dup_success_action (Systemd1Unit *object);
void systemd1_unit_set_success_action (Systemd1Unit *object, const gchar *value);

gint systemd1_unit_get_success_action_exit_status (Systemd1Unit *object);
void systemd1_unit_set_success_action_exit_status (Systemd1Unit *object, gint value);

const gchar *systemd1_unit_get_reboot_argument (Systemd1Unit *object);
gchar *systemd1_unit_dup_reboot_argument (Systemd1Unit *object);
void systemd1_unit_set_reboot_argument (Systemd1Unit *object, const gchar *value);

const gchar *systemd1_unit_get_invocation_id (Systemd1Unit *object);
gchar *systemd1_unit_dup_invocation_id (Systemd1Unit *object);
void systemd1_unit_set_invocation_id (Systemd1Unit *object, const gchar *value);

const gchar *systemd1_unit_get_collect_mode (Systemd1Unit *object);
gchar *systemd1_unit_dup_collect_mode (Systemd1Unit *object);
void systemd1_unit_set_collect_mode (Systemd1Unit *object, const gchar *value);

const gchar *const *systemd1_unit_get_refs (Systemd1Unit *object);
gchar **systemd1_unit_dup_refs (Systemd1Unit *object);
void systemd1_unit_set_refs (Systemd1Unit *object, const gchar *const *value);


/* ---- */

#define TYPE_SYSTEMD1_UNIT_PROXY (systemd1_unit_proxy_get_type ())
#define SYSTEMD1_UNIT_PROXY(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_SYSTEMD1_UNIT_PROXY, Systemd1UnitProxy))
#define SYSTEMD1_UNIT_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), TYPE_SYSTEMD1_UNIT_PROXY, Systemd1UnitProxyClass))
#define SYSTEMD1_UNIT_PROXY_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), TYPE_SYSTEMD1_UNIT_PROXY, Systemd1UnitProxyClass))
#define IS_SYSTEMD1_UNIT_PROXY(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_SYSTEMD1_UNIT_PROXY))
#define IS_SYSTEMD1_UNIT_PROXY_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), TYPE_SYSTEMD1_UNIT_PROXY))

typedef struct _Systemd1UnitProxy Systemd1UnitProxy;
typedef struct _Systemd1UnitProxyClass Systemd1UnitProxyClass;
typedef struct _Systemd1UnitProxyPrivate Systemd1UnitProxyPrivate;

struct _Systemd1UnitProxy
{
  /*< private >*/
  GDBusProxy parent_instance;
  Systemd1UnitProxyPrivate *priv;
};

struct _Systemd1UnitProxyClass
{
  GDBusProxyClass parent_class;
};

GType systemd1_unit_proxy_get_type (void) G_GNUC_CONST;

#if GLIB_CHECK_VERSION(2, 44, 0)
G_DEFINE_AUTOPTR_CLEANUP_FUNC (Systemd1UnitProxy, g_object_unref)
#endif

void systemd1_unit_proxy_new (
    GDBusConnection     *connection,
    GDBusProxyFlags      flags,
    const gchar         *name,
    const gchar         *object_path,
    GCancellable        *cancellable,
    GAsyncReadyCallback  callback,
    gpointer             user_data);
Systemd1Unit *systemd1_unit_proxy_new_finish (
    GAsyncResult        *res,
    GError             **error);
Systemd1Unit *systemd1_unit_proxy_new_sync (
    GDBusConnection     *connection,
    GDBusProxyFlags      flags,
    const gchar         *name,
    const gchar         *object_path,
    GCancellable        *cancellable,
    GError             **error);

void systemd1_unit_proxy_new_for_bus (
    GBusType             bus_type,
    GDBusProxyFlags      flags,
    const gchar         *name,
    const gchar         *object_path,
    GCancellable        *cancellable,
    GAsyncReadyCallback  callback,
    gpointer             user_data);
Systemd1Unit *systemd1_unit_proxy_new_for_bus_finish (
    GAsyncResult        *res,
    GError             **error);
Systemd1Unit *systemd1_unit_proxy_new_for_bus_sync (
    GBusType             bus_type,
    GDBusProxyFlags      flags,
    const gchar         *name,
    const gchar         *object_path,
    GCancellable        *cancellable,
    GError             **error);


/* ---- */

#define TYPE_SYSTEMD1_UNIT_SKELETON (systemd1_unit_skeleton_get_type ())
#define SYSTEMD1_UNIT_SKELETON(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TYPE_SYSTEMD1_UNIT_SKELETON, Systemd1UnitSkeleton))
#define SYSTEMD1_UNIT_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), TYPE_SYSTEMD1_UNIT_SKELETON, Systemd1UnitSkeletonClass))
#define SYSTEMD1_UNIT_SKELETON_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), TYPE_SYSTEMD1_UNIT_SKELETON, Systemd1UnitSkeletonClass))
#define IS_SYSTEMD1_UNIT_SKELETON(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TYPE_SYSTEMD1_UNIT_SKELETON))
#define IS_SYSTEMD1_UNIT_SKELETON_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), TYPE_SYSTEMD1_UNIT_SKELETON))

typedef struct _Systemd1UnitSkeleton Systemd1UnitSkeleton;
typedef struct _Systemd1UnitSkeletonClass Systemd1UnitSkeletonClass;
typedef struct _Systemd1UnitSkeletonPrivate Systemd1UnitSkeletonPrivate;

struct _Systemd1UnitSkeleton
{
  /*< private >*/
  GDBusInterfaceSkeleton parent_instance;
  Systemd1UnitSkeletonPrivate *priv;
};

struct _Systemd1UnitSkeletonClass
{
  GDBusInterfaceSkeletonClass parent_class;
};

GType systemd1_unit_skeleton_get_type (void) G_GNUC_CONST;

#if GLIB_CHECK_VERSION(2, 44, 0)
G_DEFINE_AUTOPTR_CLEANUP_FUNC (Systemd1UnitSkeleton, g_object_unref)
#endif

Systemd1Unit *systemd1_unit_skeleton_new (void);


G_END_DECLS

#endif /* __SYSTEMD1_UNIT_INTERFACE_H__ */
