/* snapd-glib-2.vapi generated by vapigen, do not modify. */

[CCode (cprefix = "Snapd", gir_namespace = "Snapd", gir_version = "2", lower_case_cprefix = "snapd_")]
namespace Snapd {
	[CCode (cheader_filename = "snapd-glib/snapd-glib.h", type_id = "snapd_alias_get_type ()")]
	[Version (since = "1.8")]
	public class Alias : GLib.Object {
		[CCode (has_construct_function = false)]
		protected Alias ();
		[Version (deprecated = true, deprecated_since = "1.25", since = "1.8")]
		public unowned string? get_app ();
		[Version (since = "1.25")]
		public unowned string? get_app_auto ();
		[Version (since = "1.25")]
		public unowned string? get_app_manual ();
		[Version (since = "1.25")]
		public unowned string get_command ();
		public unowned string get_name ();
		public unowned string get_snap ();
		public Snapd.AliasStatus get_status ();
		public string app_auto { get; construct; }
		public string app_manual { get; construct; }
		public string command { get; construct; }
		public string name { get; construct; }
		public string snap { get; construct; }
		public Snapd.AliasStatus status { get; construct; }
	}
	[CCode (cheader_filename = "snapd-glib/snapd-glib.h", type_id = "snapd_app_get_type ()")]
	[Version (since = "1.0")]
	public class App : GLib.Object {
		[CCode (has_construct_function = false)]
		protected App ();
		[Version (since = "1.25")]
		public bool get_active ();
		[CCode (array_length = false, array_null_terminated = true)]
		[Version (deprecated = true, deprecated_since = "1.25", since = "1.7")]
		public unowned string[] get_aliases ();
		[Version (since = "1.41")]
		public unowned string? get_common_id ();
		[Version (since = "1.9")]
		public unowned Snapd.DaemonType? get_daemon_type ();
		[Version (since = "1.14")]
		public unowned string? get_desktop_file ();
		[Version (since = "1.25")]
		public bool get_enabled ();
		public unowned string get_name ();
		[Version (since = "1.25")]
		public unowned string get_snap ();
		public bool active { get; construct; }
		[CCode (array_length = false, array_null_terminated = true)]
		public string[] aliases { get; construct; }
		public string common_id { get; construct; }
		public Snapd.DaemonType daemon_type { get; construct; }
		public string desktop_file { get; construct; }
		public bool enabled { get; construct; }
		public string name { get; construct; }
		public string snap { get; construct; }
	}
	[CCode (cheader_filename = "snapd-glib/snapd-glib.h", type_id = "snapd_assertion_get_type ()")]
	[Version (since = "1.0")]
	public class Assertion : GLib.Object {
		[CCode (has_construct_function = false)]
		public Assertion (string content);
		public string? get_body ();
		public string? get_header (string name);
		[CCode (array_length = false, array_null_terminated = true)]
		public string[] get_headers ();
		public string get_signature ();
		[NoAccessorMethod]
		public string content { owned get; construct; }
	}
	[CCode (cheader_filename = "snapd-glib/snapd-glib.h", type_id = "snapd_auth_data_get_type ()")]
	[Version (since = "1.0")]
	public class AuthData : GLib.Object {
		[CCode (has_construct_function = false)]
		public AuthData (string macaroon, [CCode (array_length = false, array_null_terminated = true)] string[] discharges);
		[CCode (array_length = false, array_null_terminated = true)]
		public unowned string[] get_discharges ();
		public unowned string get_macaroon ();
		[CCode (array_length = false, array_null_terminated = true)]
		[NoAccessorMethod]
		public string[] discharges { owned get; set; }
		[NoAccessorMethod]
		public string macaroon { owned get; set; }
	}
	[CCode (cheader_filename = "snapd-glib/snapd-glib.h", type_id = "snapd_category_get_type ()")]
	[Version (since = "1.64")]
	public class Category : GLib.Object {
		[CCode (has_construct_function = false)]
		protected Category ();
		public bool get_featured ();
		public unowned string get_name ();
		public bool featured { get; construct; }
		public string name { get; construct; }
	}
	[CCode (cheader_filename = "snapd-glib/snapd-glib.h", type_id = "snapd_category_details_get_type ()")]
	[Version (since = "1.64")]
	public class CategoryDetails : GLib.Object {
		[CCode (has_construct_function = false)]
		protected CategoryDetails ();
		public unowned string get_name ();
		public string name { get; construct; }
	}
	[CCode (cheader_filename = "snapd-glib/snapd-glib.h", type_id = "snapd_change_get_type ()")]
	[Version (since = "1.5")]
	public class Change : GLib.Object {
		[CCode (has_construct_function = false)]
		protected Change ();
		[Version (since = "1.30")]
		public unowned string? get_error ();
		public unowned string get_id ();
		public unowned string get_kind ();
		public bool get_ready ();
		public unowned GLib.DateTime? get_ready_time ();
		public unowned GLib.DateTime get_spawn_time ();
		public unowned string get_status ();
		public unowned string get_summary ();
		public unowned GLib.GenericArray<Snapd.Task> get_tasks ();
		public string error { get; construct; }
		public string id { get; construct; }
		public string kind { get; construct; }
		public bool ready { get; construct; }
		public GLib.DateTime ready_time { get; construct; }
		public GLib.DateTime spawn_time { get; construct; }
		public string status { get; construct; }
		public string summary { get; construct; }
		public GLib.GenericArray<void*> tasks { get; construct; }
	}
	[CCode (cheader_filename = "snapd-glib/snapd-glib.h", type_id = "snapd_channel_get_type ()")]
	[Version (since = "1.22")]
	public class Channel : GLib.Object {
		[CCode (has_construct_function = false)]
		protected Channel ();
		[Version (since = "1.31")]
		public unowned string? get_branch ();
		public Snapd.Confinement get_confinement ();
		public unowned string get_epoch ();
		public unowned string get_name ();
		[Version (since = "1.46")]
		public unowned GLib.DateTime? get_released_at ();
		public unowned string get_revision ();
		[Version (since = "1.31")]
		public unowned string get_risk ();
		public int64 get_size ();
		[Version (since = "1.31")]
		public unowned string get_track ();
		public unowned string get_version ();
		public Snapd.Confinement confinement { get; construct; }
		public string epoch { get; construct; }
		public string name { get; construct; }
		public GLib.DateTime released_at { get; construct; }
		public string revision { get; construct; }
		public int64 size { get; construct; }
		public string version { get; construct; }
	}
	[CCode (cheader_filename = "snapd-glib/snapd-glib.h", type_id = "snapd_client_get_type ()")]
	[Version (since = "1.0")]
	public class Client : GLib.Object {
		[CCode (has_construct_function = false)]
		public Client ();
		[Version (since = "1.30")]
		public async Snapd.Change abort_change_async (string id, GLib.Cancellable? cancellable) throws GLib.Error;
		[Version (since = "1.30")]
		public Snapd.Change abort_change_sync (string id, GLib.Cancellable? cancellable = null) throws GLib.Error;
		[Version (since = "1.8")]
		public async bool add_assertions_async ([CCode (array_length = false, array_null_terminated = true)] string[] assertions, GLib.Cancellable? cancellable) throws GLib.Error;
		[Version (since = "1.8")]
		public bool add_assertions_sync ([CCode (array_length = false, array_null_terminated = true)] string[] assertions, GLib.Cancellable? cancellable = null) throws GLib.Error;
		[Version (since = "1.25")]
		public async bool alias_async (string snap, string app, string alias, [CCode (delegate_target_pos = 4.5)] Snapd.ProgressCallback? progress_callback, GLib.Cancellable? cancellable) throws GLib.Error;
		[Version (since = "1.25")]
		public bool alias_sync (string snap, string app, string alias, [CCode (delegate_target_pos = 4.5)] Snapd.ProgressCallback? progress_callback, GLib.Cancellable? cancellable = null) throws GLib.Error;
		[Version (since = "1.3")]
		public async bool buy_async (string id, double amount, string currency, GLib.Cancellable? cancellable) throws GLib.Error;
		[Version (since = "1.3")]
		public bool buy_sync (string id, double amount, string currency, GLib.Cancellable? cancellable = null) throws GLib.Error;
		[Version (since = "1.3")]
		public async bool check_buy_async (GLib.Cancellable? cancellable) throws GLib.Error;
		[Version (since = "1.3")]
		public bool check_buy_sync (GLib.Cancellable? cancellable = null) throws GLib.Error;
		[Version (since = "1.60")]
		public async bool check_themes_async ([CCode (array_length = false, array_null_terminated = true)] string[]? gtk_theme_names, [CCode (array_length = false, array_null_terminated = true)] string[]? icon_theme_names, [CCode (array_length = false, array_null_terminated = true)] string[]? sound_theme_names, GLib.Cancellable? cancellable, out GLib.HashTable<weak string,Snapd.ThemeStatus> gtk_theme_status, out GLib.HashTable<weak string,Snapd.ThemeStatus> icon_theme_status, out GLib.HashTable<weak string,Snapd.ThemeStatus> sound_theme_status) throws GLib.Error;
		[Version (since = "1.60")]
		public bool check_themes_sync ([CCode (array_length = false, array_null_terminated = true)] string[]? gtk_theme_names, [CCode (array_length = false, array_null_terminated = true)] string[]? icon_theme_names, [CCode (array_length = false, array_null_terminated = true)] string[]? sound_theme_names, out GLib.HashTable<weak string,Snapd.ThemeStatus> gtk_theme_status, out GLib.HashTable<weak string,Snapd.ThemeStatus> icon_theme_status, out GLib.HashTable<weak string,Snapd.ThemeStatus> sound_theme_status, GLib.Cancellable? cancellable = null) throws GLib.Error;
		[Version (deprecated = true, deprecated_since = "1.24", since = "1.3")]
		public async bool connect_async (GLib.Cancellable? cancellable) throws GLib.Error;
		public async bool connect_interface_async (string plug_snap, string plug_name, string slot_snap, string slot_name, [CCode (delegate_target_pos = 5.5)] Snapd.ProgressCallback? progress_callback, GLib.Cancellable? cancellable) throws GLib.Error;
		public bool connect_interface_sync (string plug_snap, string plug_name, string slot_snap, string slot_name, [CCode (delegate_target_pos = 5.5)] Snapd.ProgressCallback? progress_callback, GLib.Cancellable? cancellable = null) throws GLib.Error;
		public bool connect_sync (GLib.Cancellable? cancellable = null) throws GLib.Error;
		[Version (since = "1.3")]
		public async Snapd.UserInformation create_user_async (string email, Snapd.CreateUserFlags flags, GLib.Cancellable? cancellable) throws GLib.Error;
		[Version (since = "1.3")]
		public Snapd.UserInformation create_user_sync (string email, Snapd.CreateUserFlags flags, GLib.Cancellable? cancellable = null) throws GLib.Error;
		[Version (since = "1.3")]
		public async GLib.GenericArray<weak Snapd.UserInformation> create_users_async (GLib.Cancellable? cancellable) throws GLib.Error;
		[Version (since = "1.3")]
		public GLib.GenericArray<weak Snapd.UserInformation> create_users_sync (GLib.Cancellable? cancellable = null) throws GLib.Error;
		[Version (deprecated = true, deprecated_since = "1.25", since = "1.8")]
		public async bool disable_aliases_async (string snap, [CCode (array_length = false, array_null_terminated = true)] string[] aliases, [CCode (delegate_target_pos = 3.5)] Snapd.ProgressCallback? progress_callback, GLib.Cancellable? cancellable) throws GLib.Error;
		[Version (deprecated = true, deprecated_since = "1.25", since = "1.8")]
		public bool disable_aliases_sync (string snap, [CCode (array_length = false, array_null_terminated = true)] string[] aliases, [CCode (delegate_target_pos = 3.5)] Snapd.ProgressCallback? progress_callback, GLib.Cancellable? cancellable = null) throws GLib.Error;
		public async bool disable_async (string name, [CCode (delegate_target_pos = 2.5)] Snapd.ProgressCallback? progress_callback, GLib.Cancellable? cancellable) throws GLib.Error;
		public bool disable_sync (string name, [CCode (delegate_target_pos = 2.5)] Snapd.ProgressCallback? progress_callback, GLib.Cancellable? cancellable = null) throws GLib.Error;
		public async bool disconnect_interface_async (string plug_snap, string plug_name, string slot_snap, string slot_name, [CCode (delegate_target_pos = 5.5)] Snapd.ProgressCallback? progress_callback, GLib.Cancellable? cancellable) throws GLib.Error;
		public bool disconnect_interface_sync (string plug_snap, string plug_name, string slot_snap, string slot_name, [CCode (delegate_target_pos = 5.5)] Snapd.ProgressCallback? progress_callback, GLib.Cancellable? cancellable = null) throws GLib.Error;
		[Version (since = "1.54")]
		public async GLib.Bytes download_async (string name, string? channel, string? revision, GLib.Cancellable? cancellable) throws GLib.Error;
		[Version (since = "1.54")]
		public GLib.Bytes download_sync (string name, string? channel, string? revision, GLib.Cancellable? cancellable = null) throws GLib.Error;
		[Version (deprecated = true, deprecated_since = "1.25", since = "1.8")]
		public async bool enable_aliases_async (string snap, [CCode (array_length = false, array_null_terminated = true)] string[] aliases, [CCode (delegate_target_pos = 3.5)] Snapd.ProgressCallback? progress_callback, GLib.Cancellable? cancellable) throws GLib.Error;
		[Version (deprecated = true, deprecated_since = "1.25", since = "1.8")]
		public bool enable_aliases_sync (string snap, [CCode (array_length = false, array_null_terminated = true)] string[] aliases, [CCode (delegate_target_pos = 3.5)] Snapd.ProgressCallback? progress_callback, GLib.Cancellable? cancellable = null) throws GLib.Error;
		public async bool enable_async (string name, [CCode (delegate_target_pos = 2.5)] Snapd.ProgressCallback? progress_callback, GLib.Cancellable? cancellable) throws GLib.Error;
		public bool enable_sync (string name, [CCode (delegate_target_pos = 2.5)] Snapd.ProgressCallback? progress_callback, GLib.Cancellable? cancellable = null) throws GLib.Error;
		public async GLib.GenericArray<weak Snapd.Snap> find_async (Snapd.FindFlags flags, string? query, GLib.Cancellable? cancellable, out string suggested_currency) throws GLib.Error;
		[Version (since = "1.64")]
		public async GLib.GenericArray<weak Snapd.Snap> find_category_async (Snapd.FindFlags flags, string? category, string? query, GLib.Cancellable? cancellable, out string suggested_currency) throws GLib.Error;
		[Version (since = "1.64")]
		public GLib.GenericArray<weak Snapd.Snap> find_category_sync (Snapd.FindFlags flags, string? category, string? query, out string suggested_currency, GLib.Cancellable? cancellable = null) throws GLib.Error;
		[Version (since = "1.8")]
		public async GLib.GenericArray<weak Snapd.Snap> find_refreshable_async (GLib.Cancellable? cancellable) throws GLib.Error;
		[Version (since = "1.8")]
		public GLib.GenericArray<weak Snapd.Snap> find_refreshable_sync (GLib.Cancellable? cancellable = null) throws GLib.Error;
		[Version (deprecated = true, deprecated_since = "1.64", since = "1.7")]
		public async GLib.GenericArray<weak Snapd.Snap> find_section_async (Snapd.FindFlags flags, string? section, string? query, GLib.Cancellable? cancellable, out string suggested_currency) throws GLib.Error;
		[Version (deprecated = true, deprecated_since = "1.64", since = "1.7")]
		public GLib.GenericArray<weak Snapd.Snap> find_section_sync (Snapd.FindFlags flags, string? section, string? query, out string suggested_currency, GLib.Cancellable? cancellable = null) throws GLib.Error;
		public GLib.GenericArray<weak Snapd.Snap> find_sync (Snapd.FindFlags flags, string? query, out string suggested_currency, GLib.Cancellable? cancellable = null) throws GLib.Error;
		[Version (since = "1.64")]
		public async bool follow_logs_async ([CCode (array_length = false, array_null_terminated = true)] string[]? names, [CCode (delegate_target_pos = 2.5, scope = "async")] Snapd.LogCallback log_callback, GLib.Cancellable? cancellable) throws GLib.Error;
		[Version (since = "1.64")]
		public bool follow_logs_sync ([CCode (array_length = false, array_null_terminated = true)] string[]? names, [CCode (delegate_target_pos = 2.5, scope = "async")] Snapd.LogCallback log_callback, GLib.Cancellable? cancellable = null) throws GLib.Error;
		[CCode (has_construct_function = false)]
		[Version (since = "1.5")]
		public Client.from_socket (GLib.Socket socket);
		[Version (since = "1.8")]
		public async GLib.GenericArray<weak Snapd.Alias> get_aliases_async (GLib.Cancellable? cancellable) throws GLib.Error;
		[Version (since = "1.8")]
		public GLib.GenericArray<weak Snapd.Alias> get_aliases_sync (GLib.Cancellable? cancellable = null) throws GLib.Error;
		[Version (since = "1.19")]
		public bool get_allow_interaction ();
		[Version (since = "1.45")]
		public async GLib.GenericArray<weak Snapd.App> get_apps2_async (Snapd.GetAppsFlags flags, [CCode (array_length = false, array_null_terminated = true)] string[]? snaps, GLib.Cancellable? cancellable) throws GLib.Error;
		[Version (since = "1.45")]
		public GLib.GenericArray<weak Snapd.App> get_apps2_sync (Snapd.GetAppsFlags flags, [CCode (array_length = false, array_null_terminated = true)] string[]? snaps, GLib.Cancellable? cancellable = null) throws GLib.Error;
		[Version (deprecated = true, deprecated_since = "1.45", since = "1.25")]
		public async GLib.GenericArray<weak Snapd.App> get_apps_async (Snapd.GetAppsFlags flags, GLib.Cancellable? cancellable) throws GLib.Error;
		[Version (deprecated = true, deprecated_since = "1.45", since = "1.25")]
		public GLib.GenericArray<weak Snapd.App> get_apps_sync (Snapd.GetAppsFlags flags, GLib.Cancellable? cancellable = null) throws GLib.Error;
		[CCode (array_length = false, array_null_terminated = true)]
		[Version (since = "1.8")]
		public async string[] get_assertions_async (string type, GLib.Cancellable? cancellable) throws GLib.Error;
		[CCode (array_length = false, array_null_terminated = true)]
		[Version (since = "1.8")]
		public string[] get_assertions_sync (string type, GLib.Cancellable? cancellable = null) throws GLib.Error;
		public unowned Snapd.AuthData? get_auth_data ();
		[Version (since = "1.64")]
		public async GLib.GenericArray<weak Snapd.CategoryDetails> get_categories_async (GLib.Cancellable? cancellable) throws GLib.Error;
		[Version (since = "1.64")]
		public GLib.GenericArray<weak Snapd.CategoryDetails> get_categories_sync (GLib.Cancellable? cancellable = null) throws GLib.Error;
		[Version (since = "1.29")]
		public async Snapd.Change get_change_async (string id, GLib.Cancellable? cancellable) throws GLib.Error;
		[Version (since = "1.29")]
		public Snapd.Change get_change_sync (string id, GLib.Cancellable? cancellable = null) throws GLib.Error;
		[Version (since = "1.29")]
		public async GLib.GenericArray<weak Snapd.Change> get_changes_async (Snapd.ChangeFilter filter, string? snap_name, GLib.Cancellable? cancellable) throws GLib.Error;
		[Version (since = "1.29")]
		public GLib.GenericArray<weak Snapd.Change> get_changes_sync (Snapd.ChangeFilter filter, string? snap_name, GLib.Cancellable? cancellable = null) throws GLib.Error;
		[Version (since = "1.49")]
		public async bool get_connections2_async (Snapd.GetConnectionsFlags flags, string? snap, string? @interface, GLib.Cancellable? cancellable, out GLib.GenericArray<weak Snapd.Connection> established, out GLib.GenericArray<weak Snapd.Connection> undesired, out GLib.GenericArray<weak Snapd.Plug> plugs, out GLib.GenericArray<weak Snapd.Slot> slots) throws GLib.Error;
		[Version (since = "1.49")]
		public bool get_connections2_sync (Snapd.GetConnectionsFlags flags, string? snap, string? @interface, out GLib.GenericArray<weak Snapd.Connection> established, out GLib.GenericArray<weak Snapd.Connection> undesired, out GLib.GenericArray<weak Snapd.Plug> plugs, out GLib.GenericArray<weak Snapd.Slot> slots, GLib.Cancellable? cancellable = null) throws GLib.Error;
		[Version (deprecated = true, deprecated_since = "1.49", since = "1.48")]
		public async bool get_connections_async (GLib.Cancellable? cancellable, out GLib.GenericArray<weak Snapd.Connection> established, out GLib.GenericArray<weak Snapd.Connection> undesired, out GLib.GenericArray<weak Snapd.Plug> plugs, out GLib.GenericArray<weak Snapd.Slot> slots) throws GLib.Error;
		[Version (deprecated = true, deprecated_since = "1.49", since = "1.48")]
		public bool get_connections_sync (out GLib.GenericArray<weak Snapd.Connection> established, out GLib.GenericArray<weak Snapd.Connection> undesired, out GLib.GenericArray<weak Snapd.Plug> plugs, out GLib.GenericArray<weak Snapd.Slot> slots, GLib.Cancellable? cancellable = null) throws GLib.Error;
		public async Snapd.Icon get_icon_async (string name, GLib.Cancellable? cancellable) throws GLib.Error;
		public Snapd.Icon get_icon_sync (string name, GLib.Cancellable? cancellable = null) throws GLib.Error;
		[Version (since = "1.48")]
		public async GLib.GenericArray<weak Snapd.Interface> get_interfaces2_async (Snapd.GetInterfacesFlags flags, [CCode (array_length = false, array_null_terminated = true)] string[]? names, GLib.Cancellable? cancellable) throws GLib.Error;
		[Version (since = "1.48")]
		public GLib.GenericArray<weak Snapd.Interface> get_interfaces2_sync (Snapd.GetInterfacesFlags flags, [CCode (array_length = false, array_null_terminated = true)] string[]? names, GLib.Cancellable? cancellable = null) throws GLib.Error;
		[Version (deprecated = true, deprecated_since = "1.48", since = "1.0")]
		public async bool get_interfaces_async (GLib.Cancellable? cancellable, out GLib.GenericArray<weak Snapd.Plug> plugs, out GLib.GenericArray<weak Snapd.Slot> slots) throws GLib.Error;
		[Version (deprecated = true, deprecated_since = "1.48", since = "1.0")]
		public bool get_interfaces_sync (out GLib.GenericArray<weak Snapd.Plug> plugs, out GLib.GenericArray<weak Snapd.Slot> slots, GLib.Cancellable? cancellable = null) throws GLib.Error;
		[Version (since = "1.64")]
		public async GLib.GenericArray<weak Snapd.Log> get_logs_async ([CCode (array_length = false, array_null_terminated = true)] string[]? names, size_t n, GLib.Cancellable? cancellable) throws GLib.Error;
		[Version (since = "1.64")]
		public GLib.GenericArray<weak Snapd.Log> get_logs_sync ([CCode (array_length = false, array_null_terminated = true)] string[]? names, size_t n, GLib.Cancellable? cancellable = null) throws GLib.Error;
		[Version (since = "1.45")]
		public unowned Snapd.Maintenance? get_maintenance ();
		[CCode (array_length = false, array_null_terminated = true)]
		[Version (deprecated = true, deprecated_since = "1.64", since = "1.7")]
		public async string[] get_sections_async (GLib.Cancellable? cancellable) throws GLib.Error;
		[CCode (array_length = false, array_null_terminated = true)]
		[Version (deprecated = true, deprecated_since = "1.64", since = "1.7")]
		public string[] get_sections_sync (GLib.Cancellable? cancellable = null) throws GLib.Error;
		[Version (since = "1.42")]
		public async Snapd.Snap get_snap_async (string name, GLib.Cancellable? cancellable) throws GLib.Error;
		[Version (since = "1.48")]
		public async GLib.HashTable<weak string,weak GLib.Variant> get_snap_conf_async (string name, [CCode (array_length = false, array_null_terminated = true)] string[]? keys, GLib.Cancellable? cancellable) throws GLib.Error;
		[Version (since = "1.48")]
		public GLib.HashTable<weak string,weak GLib.Variant> get_snap_conf_sync (string name, [CCode (array_length = false, array_null_terminated = true)] string[]? keys, GLib.Cancellable? cancellable = null) throws GLib.Error;
		[Version (since = "1.42")]
		public Snapd.Snap get_snap_sync (string name, GLib.Cancellable? cancellable = null) throws GLib.Error;
		[Version (since = "1.42")]
		public async GLib.GenericArray<weak Snapd.Snap> get_snaps_async (Snapd.GetSnapsFlags flags, [CCode (array_length = false, array_null_terminated = true)] string[]? names, GLib.Cancellable? cancellable) throws GLib.Error;
		[Version (since = "1.42")]
		public GLib.GenericArray<weak Snapd.Snap> get_snaps_sync (Snapd.GetSnapsFlags flags, [CCode (array_length = false, array_null_terminated = true)] string[]? names, GLib.Cancellable? cancellable = null) throws GLib.Error;
		[Version (since = "1.24")]
		public unowned string get_socket_path ();
		public async Snapd.SystemInformation get_system_information_async (GLib.Cancellable? cancellable) throws GLib.Error;
		public Snapd.SystemInformation get_system_information_sync (GLib.Cancellable? cancellable = null) throws GLib.Error;
		[Version (since = "1.16")]
		public unowned string? get_user_agent ();
		[Version (since = "1.26")]
		public async GLib.GenericArray<weak Snapd.UserInformation> get_users_async (GLib.Cancellable? cancellable) throws GLib.Error;
		[Version (since = "1.26")]
		public GLib.GenericArray<weak Snapd.UserInformation> get_users_sync (GLib.Cancellable? cancellable = null) throws GLib.Error;
		[Version (since = "1.12")]
		public async bool install2_async (Snapd.InstallFlags flags, string name, string? channel, string? revision, [CCode (delegate_target_pos = 5.5)] Snapd.ProgressCallback? progress_callback, GLib.Cancellable? cancellable) throws GLib.Error;
		[Version (since = "1.12")]
		public bool install2_sync (Snapd.InstallFlags flags, string name, string? channel, string? revision, [CCode (delegate_target_pos = 5.5)] Snapd.ProgressCallback? progress_callback, GLib.Cancellable? cancellable = null) throws GLib.Error;
		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
		public async bool install_async (string name, string? channel, [CCode (delegate_target_pos = 3.5)] Snapd.ProgressCallback? progress_callback, GLib.Cancellable? cancellable) throws GLib.Error;
		[Version (since = "1.9")]
		public async bool install_stream_async (Snapd.InstallFlags flags, GLib.InputStream stream, [CCode (delegate_target_pos = 3.5)] Snapd.ProgressCallback? progress_callback, GLib.Cancellable? cancellable) throws GLib.Error;
		[Version (since = "1.9")]
		public bool install_stream_sync (Snapd.InstallFlags flags, GLib.InputStream stream, [CCode (delegate_target_pos = 3.5)] Snapd.ProgressCallback? progress_callback, GLib.Cancellable? cancellable = null) throws GLib.Error;
		[Version (deprecated = true, deprecated_since = "1.12", since = "1.0")]
		public bool install_sync (string name, string? channel, [CCode (delegate_target_pos = 3.5)] Snapd.ProgressCallback? progress_callback, GLib.Cancellable? cancellable = null) throws GLib.Error;
		[Version (since = "1.60")]
		public async bool install_themes_async ([CCode (array_length = false, array_null_terminated = true)] string[]? gtk_theme_names, [CCode (array_length = false, array_null_terminated = true)] string[]? icon_theme_names, [CCode (array_length = false, array_null_terminated = true)] string[]? sound_theme_names, [CCode (delegate_target_pos = 4.5)] Snapd.ProgressCallback? progress_callback, GLib.Cancellable? cancellable) throws GLib.Error;
		[Version (since = "1.60")]
		public bool install_themes_sync ([CCode (array_length = false, array_null_terminated = true)] string[]? gtk_theme_names, [CCode (array_length = false, array_null_terminated = true)] string[]? icon_theme_names, [CCode (array_length = false, array_null_terminated = true)] string[]? sound_theme_names, [CCode (delegate_target_pos = 4.5)] Snapd.ProgressCallback? progress_callback, GLib.Cancellable? cancellable = null) throws GLib.Error;
		[Version (deprecated = true, deprecated_since = "1.42", since = "1.0")]
		public async GLib.GenericArray<weak Snapd.Snap> list_async (GLib.Cancellable? cancellable) throws GLib.Error;
		[Version (deprecated = true, deprecated_since = "1.42", since = "1.0")]
		public async Snapd.Snap list_one_async (string name, GLib.Cancellable? cancellable) throws GLib.Error;
		[Version (deprecated = true, deprecated_since = "1.42", since = "1.0")]
		public Snapd.Snap list_one_sync (string name, GLib.Cancellable? cancellable = null) throws GLib.Error;
		[Version (deprecated = true, deprecated_since = "1.42", since = "1.0")]
		public GLib.GenericArray<weak Snapd.Snap> list_sync (GLib.Cancellable? cancellable = null) throws GLib.Error;
		[Version (since = "1.26")]
		public async Snapd.UserInformation login2_async (string email, string password, string? otp, GLib.Cancellable? cancellable) throws GLib.Error;
		[Version (since = "1.26")]
		public Snapd.UserInformation login2_sync (string email, string password, string? otp, GLib.Cancellable? cancellable = null) throws GLib.Error;
		[Version (deprecated = true, deprecated_since = "1.26", since = "1.0")]
		public async Snapd.AuthData login_async (string email, string password, string? otp, GLib.Cancellable? cancellable) throws GLib.Error;
		[Version (deprecated = true, deprecated_since = "1.26", since = "1.0")]
		public Snapd.AuthData login_sync (string email, string password, string? otp, GLib.Cancellable? cancellable = null) throws GLib.Error;
		[Version (since = "1.55")]
		public async bool logout_async (int64 id, GLib.Cancellable? cancellable) throws GLib.Error;
		[Version (since = "1.55")]
		public bool logout_sync (int64 id, GLib.Cancellable? cancellable = null) throws GLib.Error;
		[Version (since = "1.25")]
		public async bool prefer_async (string snap, [CCode (delegate_target_pos = 2.5)] Snapd.ProgressCallback? progress_callback, GLib.Cancellable? cancellable) throws GLib.Error;
		[Version (since = "1.25")]
		public bool prefer_sync (string snap, [CCode (delegate_target_pos = 2.5)] Snapd.ProgressCallback? progress_callback, GLib.Cancellable? cancellable = null) throws GLib.Error;
		[CCode (array_length = false, array_null_terminated = true)]
		[Version (since = "1.5")]
		public async string[] refresh_all_async ([CCode (delegate_target_pos = 1.5)] Snapd.ProgressCallback? progress_callback, GLib.Cancellable? cancellable) throws GLib.Error;
		[CCode (array_length = false, array_null_terminated = true)]
		[Version (since = "1.5")]
		public string[] refresh_all_sync ([CCode (delegate_target_pos = 1.5)] Snapd.ProgressCallback? progress_callback, GLib.Cancellable? cancellable = null) throws GLib.Error;
		public async bool refresh_async (string name, string? channel, [CCode (delegate_target_pos = 3.5)] Snapd.ProgressCallback? progress_callback, GLib.Cancellable? cancellable) throws GLib.Error;
		public bool refresh_sync (string name, string? channel, [CCode (delegate_target_pos = 3.5)] Snapd.ProgressCallback? progress_callback, GLib.Cancellable? cancellable = null) throws GLib.Error;
		[Version (since = "1.50")]
		public async bool remove2_async (Snapd.RemoveFlags flags, string name, [CCode (delegate_target_pos = 3.5)] Snapd.ProgressCallback? progress_callback, GLib.Cancellable? cancellable) throws GLib.Error;
		[Version (since = "1.50")]
		public bool remove2_sync (Snapd.RemoveFlags flags, string name, [CCode (delegate_target_pos = 3.5)] Snapd.ProgressCallback? progress_callback, GLib.Cancellable? cancellable = null) throws GLib.Error;
		public async bool remove_async (string name, [CCode (delegate_target_pos = 2.5)] Snapd.ProgressCallback? progress_callback, GLib.Cancellable? cancellable) throws GLib.Error;
		[Version (deprecated = true, deprecated_since = "1.50", since = "1.0")]
		public bool remove_sync (string name, [CCode (delegate_target_pos = 2.5)] Snapd.ProgressCallback? progress_callback, GLib.Cancellable? cancellable = null) throws GLib.Error;
		[Version (deprecated = true, deprecated_since = "1.25", since = "1.8")]
		public async bool reset_aliases_async (string snap, [CCode (array_length = false, array_null_terminated = true)] string[] aliases, [CCode (delegate_target_pos = 3.5)] Snapd.ProgressCallback? progress_callback, GLib.Cancellable? cancellable) throws GLib.Error;
		[Version (deprecated = true, deprecated_since = "1.25", since = "1.8")]
		public bool reset_aliases_sync (string snap, [CCode (array_length = false, array_null_terminated = true)] string[] aliases, [CCode (delegate_target_pos = 3.5)] Snapd.ProgressCallback? progress_callback, GLib.Cancellable? cancellable = null) throws GLib.Error;
		[Version (since = "1.59")]
		public async bool run_snapctl2_async (string context_id, [CCode (array_length = false, array_null_terminated = true)] string[] args, GLib.Cancellable? cancellable, out string stdout_output, out string stderr_output, out int exit_code) throws GLib.Error;
		[Version (since = "1.59")]
		public bool run_snapctl2_sync (string context_id, [CCode (array_length = false, array_null_terminated = true)] string[] args, out string stdout_output, out string stderr_output, out int exit_code, GLib.Cancellable? cancellable = null) throws GLib.Error;
		[Version (deprecated = true, deprecated_since = "1.59", since = "1.8")]
		public async bool run_snapctl_async (string context_id, [CCode (array_length = false, array_null_terminated = true)] string[] args, GLib.Cancellable? cancellable, out string stdout_output, out string stderr_output) throws GLib.Error;
		[Version (deprecated = true, deprecated_since = "1.59", since = "1.8")]
		public bool run_snapctl_sync (string context_id, [CCode (array_length = false, array_null_terminated = true)] string[] args, out string stdout_output, out string stderr_output, GLib.Cancellable? cancellable = null) throws GLib.Error;
		[Version (since = "1.19")]
		public void set_allow_interaction (bool allow_interaction);
		public void set_auth_data (Snapd.AuthData? auth_data);
		[Version (since = "1.48")]
		public async bool set_snap_conf_async (string name, GLib.HashTable<string,GLib.Variant> key_values, GLib.Cancellable? cancellable) throws GLib.Error;
		[Version (since = "1.48")]
		public bool set_snap_conf_sync (string name, GLib.HashTable<string,GLib.Variant> key_values, GLib.Cancellable? cancellable = null) throws GLib.Error;
		[Version (since = "1.24")]
		public void set_socket_path (string? socket_path);
		[Version (since = "1.16")]
		public void set_user_agent (string? user_agent);
		[Version (since = "1.26")]
		public async bool switch_async (string name, string channel, [CCode (delegate_target_pos = 3.5)] Snapd.ProgressCallback? progress_callback, GLib.Cancellable? cancellable) throws GLib.Error;
		[Version (since = "1.26")]
		public bool switch_sync (string name, string channel, [CCode (delegate_target_pos = 3.5)] Snapd.ProgressCallback? progress_callback, GLib.Cancellable? cancellable = null) throws GLib.Error;
		[Version (since = "1.9")]
		public async bool try_async (string path, [CCode (delegate_target_pos = 2.5)] Snapd.ProgressCallback? progress_callback, GLib.Cancellable? cancellable) throws GLib.Error;
		[Version (since = "1.9")]
		public bool try_sync (string path, [CCode (delegate_target_pos = 2.5)] Snapd.ProgressCallback? progress_callback, GLib.Cancellable? cancellable = null) throws GLib.Error;
		[Version (since = "1.25")]
		public async bool unalias_async (string? snap, string? alias, [CCode (delegate_target_pos = 3.5)] Snapd.ProgressCallback? progress_callback, GLib.Cancellable? cancellable) throws GLib.Error;
		[Version (since = "1.25")]
		public bool unalias_sync (string? snap, string? alias, [CCode (delegate_target_pos = 3.5)] Snapd.ProgressCallback? progress_callback, GLib.Cancellable? cancellable = null) throws GLib.Error;
	}
	[CCode (cheader_filename = "snapd-glib/snapd-glib.h", type_id = "snapd_connection_get_type ()")]
	[Version (since = "1.0")]
	public class Connection : GLib.Object {
		[CCode (has_construct_function = false)]
		protected Connection ();
		[Version (since = "1.48")]
		public bool get_gadget ();
		[Version (since = "1.48")]
		public unowned string get_interface ();
		[Version (since = "1.48")]
		public bool get_manual ();
		[Version (deprecated = true, deprecated_since = "1.48", since = "1.0")]
		public unowned string get_name ();
		[Version (since = "1.48")]
		public unowned Snapd.PlugRef get_plug ();
		[Version (since = "1.48")]
		public unowned GLib.Variant? get_plug_attribute (string name);
		[CCode (array_length = false, array_null_terminated = true)]
		[Version (since = "1.48")]
		public string[] get_plug_attribute_names (out uint length);
		[Version (since = "1.48")]
		public unowned Snapd.SlotRef get_slot ();
		[Version (since = "1.48")]
		public unowned GLib.Variant? get_slot_attribute (string name);
		[CCode (array_length = false, array_null_terminated = true)]
		[Version (since = "1.48")]
		public string[] get_slot_attribute_names (out uint length);
		[Version (deprecated = true, deprecated_since = "1.48", since = "1.0")]
		public unowned string get_snap ();
		[Version (since = "1.48")]
		public bool has_plug_attribute (string name);
		[Version (since = "1.48")]
		public bool has_slot_attribute (string name);
		public bool gadget { get; construct; }
		public string @interface { get; construct; }
		public bool manual { get; construct; }
		public string name { get; construct; }
		public Snapd.PlugRef plug { get; construct; }
		[NoAccessorMethod]
		public GLib.HashTable<void*,void*> plug_attrs { owned get; construct; }
		public Snapd.SlotRef slot { get; construct; }
		[NoAccessorMethod]
		public GLib.HashTable<void*,void*> slot_attrs { owned get; construct; }
		public string snap { get; construct; }
	}
	[CCode (cheader_filename = "snapd-glib/snapd-glib.h", type_id = "snapd_icon_get_type ()")]
	[Version (since = "1.0")]
	public class Icon : GLib.Object {
		[CCode (has_construct_function = false)]
		protected Icon ();
		public unowned GLib.Bytes get_data ();
		public unowned string get_mime_type ();
		public GLib.Bytes data { get; construct; }
		public string mime_type { get; construct; }
	}
	[CCode (cheader_filename = "snapd-glib/snapd-glib.h", type_id = "snapd_interface_get_type ()")]
	[Version (since = "1.48")]
	public class Interface : GLib.Object {
		[CCode (has_construct_function = false)]
		protected Interface ();
		public unowned string get_doc_url ();
		public unowned string get_name ();
		public unowned GLib.GenericArray<Snapd.Plug> get_plugs ();
		public unowned GLib.GenericArray<Snapd.Slot> get_slots ();
		public unowned string get_summary ();
		[Version (since = "1.57")]
		public string make_label ();
		public string doc_url { get; construct; }
		public string name { get; construct; }
		public GLib.GenericArray<void*> plugs { get; construct; }
		public GLib.GenericArray<void*> slots { get; construct; }
		public string summary { get; construct; }
	}
	[CCode (cheader_filename = "snapd-glib/snapd-glib.h", type_id = "snapd_log_get_type ()")]
	[Version (since = "1.64")]
	public class Log : GLib.Object {
		[CCode (has_construct_function = false)]
		protected Log ();
		public unowned string get_message ();
		public unowned string get_pid ();
		public unowned string get_sid ();
		public GLib.DateTime get_timestamp ();
		public string message { get; construct; }
		public string pid { get; construct; }
		public string sid { get; construct; }
		public GLib.DateTime timestamp { owned get; construct; }
	}
	[CCode (cheader_filename = "snapd-glib/snapd-glib.h", type_id = "snapd_maintenance_get_type ()")]
	[Version (since = "1.45")]
	public class Maintenance : GLib.Object {
		[CCode (has_construct_function = false)]
		protected Maintenance ();
		public Snapd.MaintenanceKind get_kind ();
		public unowned string get_message ();
		public Snapd.MaintenanceKind kind { get; construct; }
		public string message { get; construct; }
	}
	[CCode (cheader_filename = "snapd-glib/snapd-glib.h", type_id = "snapd_markdown_node_get_type ()")]
	[Version (since = "1.48")]
	public class MarkdownNode : GLib.Object {
		[CCode (has_construct_function = false)]
		protected MarkdownNode ();
		public unowned GLib.GenericArray<Snapd.MarkdownNode> get_children ();
		public Snapd.MarkdownNodeType get_node_type ();
		public unowned string get_text ();
		public GLib.GenericArray<void*> children { get; construct; }
		public Snapd.MarkdownNodeType node_type { get; construct; }
		public string text { get; construct; }
	}
	[CCode (cheader_filename = "snapd-glib/snapd-glib.h", type_id = "snapd_markdown_parser_get_type ()")]
	[Version (since = "1.48")]
	public class MarkdownParser : GLib.Object {
		[CCode (has_construct_function = false)]
		public MarkdownParser (Snapd.MarkdownVersion version);
		public bool get_preserve_whitespace ();
		public GLib.GenericArray<weak Snapd.MarkdownNode> parse (string text);
		public void set_preserve_whitespace (bool preserve_whitespace);
	}
	[CCode (cheader_filename = "snapd-glib/snapd-glib.h", type_id = "snapd_media_get_type ()")]
	[Version (since = "1.45")]
	public class Media : GLib.Object {
		[CCode (has_construct_function = false)]
		protected Media ();
		public uint get_height ();
		public unowned string get_media_type ();
		public unowned string get_url ();
		public uint get_width ();
		public uint height { get; construct; }
		[NoAccessorMethod]
		public string type { owned get; construct; }
		public string url { get; construct; }
		public uint width { get; construct; }
	}
	[CCode (cheader_filename = "snapd-glib/snapd-glib.h", type_id = "snapd_plug_get_type ()")]
	[Version (since = "1.0")]
	public class Plug : GLib.Object {
		[CCode (has_construct_function = false)]
		protected Plug ();
		[Version (since = "1.3")]
		public unowned GLib.Variant? get_attribute (string name);
		[CCode (array_length = false, array_null_terminated = true)]
		[Version (since = "1.3")]
		public string[] get_attribute_names (out uint length);
		[Version (since = "1.48")]
		public unowned GLib.GenericArray<Snapd.SlotRef> get_connected_slots ();
		[Version (deprecated = true, deprecated_since = "1.48", since = "1.0")]
		public unowned GLib.GenericArray<Snapd.Connection> get_connections ();
		public unowned string get_interface ();
		public unowned string get_label ();
		public unowned string get_name ();
		public unowned string get_snap ();
		[Version (since = "1.3")]
		public bool has_attribute (string name);
		[NoAccessorMethod]
		public GLib.HashTable<void*,void*> attributes { owned get; construct; }
		public GLib.GenericArray<void*> connections { get; construct; }
		public string @interface { get; construct; }
		public string label { get; construct; }
		public string name { get; construct; }
		public string snap { get; construct; }
	}
	[CCode (cheader_filename = "snapd-glib/snapd-glib.h", type_id = "snapd_plug_ref_get_type ()")]
	[Version (since = "1.0")]
	public class PlugRef : GLib.Object {
		[CCode (has_construct_function = false)]
		protected PlugRef ();
		[Version (since = "1.48")]
		public unowned string get_plug ();
		[Version (since = "1.48")]
		public unowned string get_snap ();
		public string plug { get; construct; }
		public string snap { get; construct; }
	}
	[CCode (cheader_filename = "snapd-glib/snapd-glib.h", type_id = "snapd_price_get_type ()")]
	[Version (since = "1.0")]
	public class Price : GLib.Object {
		[CCode (has_construct_function = false)]
		protected Price ();
		public double get_amount ();
		public unowned string get_currency ();
		public double amount { get; construct; }
		public string currency { get; construct; }
	}
	[CCode (cheader_filename = "snapd-glib/snapd-glib.h", type_id = "snapd_screenshot_get_type ()")]
	[Version (since = "1.0")]
	public class Screenshot : GLib.Object {
		[CCode (has_construct_function = false)]
		protected Screenshot ();
		public uint get_height ();
		public unowned string get_url ();
		public uint get_width ();
		public uint height { get; construct; }
		public string url { get; construct; }
		public uint width { get; construct; }
	}
	[CCode (cheader_filename = "snapd-glib/snapd-glib.h", type_id = "snapd_slot_get_type ()")]
	[Version (since = "1.0")]
	public class Slot : GLib.Object {
		[CCode (has_construct_function = false)]
		protected Slot ();
		[Version (since = "1.3")]
		public unowned GLib.Variant? get_attribute (string name);
		[CCode (array_length = false, array_null_terminated = true)]
		[Version (since = "1.3")]
		public string[] get_attribute_names (out uint length);
		[Version (since = "1.48")]
		public unowned GLib.GenericArray<Snapd.PlugRef> get_connected_plugs ();
		[Version (deprecated = true, deprecated_since = "1.48", since = "1.0")]
		public unowned GLib.GenericArray<Snapd.Connection> get_connections ();
		public unowned string get_interface ();
		public unowned string get_label ();
		public unowned string get_name ();
		public unowned string get_snap ();
		[Version (since = "1.3")]
		public bool has_attribute (string name);
		[NoAccessorMethod]
		public GLib.HashTable<void*,void*> attributes { owned get; construct; }
		public GLib.GenericArray<void*> connections { get; construct; }
		public string @interface { get; construct; }
		public string label { get; construct; }
		public string name { get; construct; }
		public string snap { get; construct; }
	}
	[CCode (cheader_filename = "snapd-glib/snapd-glib.h", type_id = "snapd_slot_ref_get_type ()")]
	[Version (since = "1.0")]
	public class SlotRef : GLib.Object {
		[CCode (has_construct_function = false)]
		protected SlotRef ();
		[Version (since = "1.48")]
		public unowned string get_slot ();
		[Version (since = "1.48")]
		public unowned string get_snap ();
		public string slot { get; construct; }
		public string snap { get; construct; }
	}
	[CCode (cheader_filename = "snapd-glib/snapd-glib.h", type_id = "snapd_snap_get_type ()")]
	[Version (since = "1.0")]
	public class Snap : GLib.Object {
		[CCode (has_construct_function = false)]
		protected Snap ();
		public unowned GLib.GenericArray<Snapd.App> get_apps ();
		[Version (since = "1.45")]
		public unowned string? get_base ();
		[Version (since = "1.25")]
		public unowned string? get_broken ();
		[Version (since = "1.64")]
		public unowned GLib.GenericArray<Snapd.Category> get_categories ();
		public unowned string get_channel ();
		[Version (since = "1.22")]
		public unowned GLib.GenericArray<Snapd.Channel> get_channels ();
		[CCode (array_length = false, array_null_terminated = true)]
		[Version (since = "1.41")]
		public unowned string[] get_common_ids ();
		public Snapd.Confinement get_confinement ();
		[Version (since = "1.13")]
		public unowned string get_contact ();
		public unowned string get_description ();
		[Version (deprecated = true, deprecated_since = "1.42", since = "1.0")]
		public unowned string get_developer ();
		public bool get_devmode ();
		public int64 get_download_size ();
		[Version (since = "1.64")]
		public unowned GLib.DateTime? get_hold ();
		public unowned string get_icon ();
		public unowned string get_id ();
		public unowned GLib.DateTime? get_install_date ();
		public int64 get_installed_size ();
		[Version (since = "1.8")]
		public bool get_jailmode ();
		[Version (since = "1.19")]
		public unowned string? get_license ();
		[Version (since = "1.45")]
		public unowned GLib.GenericArray<Snapd.Media> get_media ();
		[Version (since = "1.45")]
		public unowned string? get_mounted_from ();
		public unowned string get_name ();
		public unowned GLib.GenericArray<Snapd.Price> get_prices ();
		public bool get_private ();
		[Version (since = "1.42")]
		public unowned string get_publisher_display_name ();
		[Version (since = "1.42")]
		public unowned string get_publisher_id ();
		[Version (since = "1.42")]
		public unowned string get_publisher_username ();
		[Version (since = "1.42")]
		public Snapd.PublisherValidation get_publisher_validation ();
		public unowned string get_revision ();
		[Version (deprecated = true, deprecated_since = "1.45", since = "1.0")]
		public unowned GLib.GenericArray<Snapd.Screenshot> get_screenshots ();
		public Snapd.SnapType get_snap_type ();
		public Snapd.SnapStatus get_status ();
		[Version (since = "1.60")]
		public unowned string? get_store_url ();
		public unowned string get_summary ();
		[Version (since = "1.14")]
		public unowned string? get_title ();
		[Version (since = "1.7")]
		public unowned string get_tracking_channel ();
		[CCode (array_length = false, array_null_terminated = true)]
		[Version (since = "1.22")]
		public unowned string[] get_tracks ();
		public bool get_trymode ();
		public unowned string get_version ();
		[Version (since = "1.50")]
		public unowned string get_website ();
		[Version (since = "1.22")]
		public unowned Snapd.Channel? match_channel (string name);
		public GLib.GenericArray<void*> apps { get; construct; }
		public string @base { get; construct; }
		public string broken { get; construct; }
		public GLib.GenericArray<void*> categories { get; construct; }
		public string channel { get; construct; }
		public GLib.GenericArray<void*> channels { get; construct; }
		[CCode (array_length = false, array_null_terminated = true)]
		public string[] common_ids { get; construct; }
		public Snapd.Confinement confinement { get; construct; }
		public string contact { get; construct; }
		public string description { get; construct; }
		public string developer { get; construct; }
		public bool devmode { get; construct; }
		public int64 download_size { get; construct; }
		public GLib.DateTime hold { get; construct; }
		public string icon { get; construct; }
		public string id { get; construct; }
		public GLib.DateTime install_date { get; construct; }
		public int64 installed_size { get; construct; }
		public bool jailmode { get; construct; }
		public string license { get; construct; }
		public GLib.GenericArray<void*> media { get; construct; }
		public string mounted_from { get; construct; }
		public string name { get; construct; }
		public GLib.GenericArray<void*> prices { get; construct; }
		public bool @private { get; construct; }
		public string publisher_display_name { get; construct; }
		public string publisher_id { get; construct; }
		public string publisher_username { get; construct; }
		public Snapd.PublisherValidation publisher_validation { get; construct; }
		public string revision { get; construct; }
		public GLib.GenericArray<void*> screenshots { get; construct; }
		public Snapd.SnapType snap_type { get; construct; }
		public Snapd.SnapStatus status { get; construct; }
		public string store_url { get; construct; }
		public string summary { get; construct; }
		public string title { get; construct; }
		public string tracking_channel { get; construct; }
		[CCode (array_length = false, array_null_terminated = true)]
		public string[] tracks { get; construct; }
		public bool trymode { get; construct; }
		public string version { get; construct; }
		public string website { get; construct; }
	}
	[CCode (cheader_filename = "snapd-glib/snapd-glib.h", type_id = "snapd_system_information_get_type ()")]
	[Version (since = "1.0")]
	public class SystemInformation : GLib.Object {
		[CCode (has_construct_function = false)]
		protected SystemInformation ();
		[Version (since = "1.64")]
		public unowned string get_architecture ();
		[Version (since = "1.11")]
		public unowned string get_binaries_directory ();
		[Version (since = "1.40")]
		public unowned string get_build_id ();
		[Version (since = "1.15")]
		public Snapd.SystemConfinement get_confinement ();
		[Version (since = "1.11")]
		public unowned string get_kernel_version ();
		[Version (since = "1.7")]
		public bool get_managed ();
		[Version (since = "1.11")]
		public unowned string get_mount_directory ();
		public bool get_on_classic ();
		public unowned string get_os_id ();
		public unowned string get_os_version ();
		[Version (since = "1.42")]
		public unowned GLib.DateTime? get_refresh_hold ();
		[Version (since = "1.42")]
		public unowned GLib.DateTime? get_refresh_last ();
		[Version (since = "1.42")]
		public unowned GLib.DateTime? get_refresh_next ();
		[Version (since = "1.42")]
		public unowned string? get_refresh_schedule ();
		[Version (since = "1.42")]
		public unowned string? get_refresh_timer ();
		[Version (since = "1.42")]
		public unowned GLib.HashTable<string,string[]> get_sandbox_features ();
		public unowned string get_series ();
		[Version (since = "1.7")]
		public unowned string? get_store ();
		public unowned string get_version ();
		public string architecture { get; construct; }
		public string binaries_directory { get; construct; }
		public string build_id { get; construct; }
		public Snapd.SystemConfinement confinement { get; construct; }
		public string kernel_version { get; construct; }
		public bool managed { get; construct; }
		public string mount_directory { get; construct; }
		public bool on_classic { get; construct; }
		public string os_id { get; construct; }
		public string os_version { get; construct; }
		public GLib.DateTime refresh_hold { get; construct; }
		public GLib.DateTime refresh_last { get; construct; }
		public GLib.DateTime refresh_next { get; construct; }
		public string refresh_schedule { get; construct; }
		public string refresh_timer { get; construct; }
		public void* sandbox_features { get; construct; }
		public string series { get; construct; }
		public string store { get; construct; }
		public string version { get; construct; }
	}
	[CCode (cheader_filename = "snapd-glib/snapd-glib.h", type_id = "snapd_task_get_type ()")]
	[Version (since = "1.0")]
	public class Task : GLib.Object {
		[CCode (has_construct_function = false)]
		protected Task ();
		public unowned string get_id ();
		public unowned string get_kind ();
		public int64 get_progress_done ();
		[Version (since = "1.5")]
		public unowned string get_progress_label ();
		public int64 get_progress_total ();
		[Version (deprecated = true, deprecated_since = "1.5", since = "1.0")]
		public bool get_ready ();
		public unowned GLib.DateTime? get_ready_time ();
		public unowned GLib.DateTime get_spawn_time ();
		public unowned string get_status ();
		public unowned string get_summary ();
		public string id { get; construct; }
		public string kind { get; construct; }
		public int64 progress_done { get; construct; }
		public string progress_label { get; construct; }
		public int64 progress_total { get; construct; }
		public bool ready { get; construct; }
		public GLib.DateTime ready_time { get; construct; }
		public GLib.DateTime spawn_time { get; construct; }
		public string status { get; construct; }
		public string summary { get; construct; }
	}
	[CCode (cheader_filename = "snapd-glib/snapd-glib.h", type_id = "snapd_user_information_get_type ()")]
	[Version (since = "1.3")]
	public class UserInformation : GLib.Object {
		[CCode (has_construct_function = false)]
		protected UserInformation ();
		[Version (since = "1.26")]
		public unowned Snapd.AuthData? get_auth_data ();
		[Version (since = "1.26")]
		public unowned string get_email ();
		[Version (since = "1.26")]
		public int64 get_id ();
		[CCode (array_length = false, array_null_terminated = true)]
		public unowned string[] get_ssh_keys ();
		public unowned string get_username ();
		public Snapd.AuthData auth_data { get; construct; }
		public string email { get; construct; }
		public int64 id { get; construct; }
		[CCode (array_length = false, array_null_terminated = true)]
		public string[] ssh_keys { get; construct; }
		public string username { get; construct; }
	}
	[CCode (cheader_filename = "snapd-glib/snapd-glib.h", cprefix = "SNAPD_ALIAS_STATUS_", type_id = "snapd_alias_status_get_type ()")]
	[Version (since = "1.8")]
	public enum AliasStatus {
		UNKNOWN,
		DEFAULT,
		ENABLED,
		DISABLED,
		AUTO,
		MANUAL
	}
	[CCode (cheader_filename = "snapd-glib/snapd-glib.h", cprefix = "SNAPD_CHANGE_FILTER_", type_id = "snapd_change_filter_get_type ()")]
	[Version (since = "1.29")]
	public enum ChangeFilter {
		ALL,
		IN_PROGRESS,
		READY
	}
	[CCode (cheader_filename = "snapd-glib/snapd-glib.h", cprefix = "SNAPD_CONFINEMENT_", type_id = "snapd_confinement_get_type ()")]
	[Version (since = "1.0")]
	public enum Confinement {
		UNKNOWN,
		STRICT,
		DEVMODE,
		CLASSIC
	}
	[CCode (cheader_filename = "snapd-glib/snapd-glib.h", cprefix = "SNAPD_CREATE_USER_FLAGS_", type_id = "snapd_create_user_flags_get_type ()")]
	[Flags]
	[Version (since = "1.3")]
	public enum CreateUserFlags {
		NONE,
		SUDO,
		KNOWN
	}
	[CCode (cheader_filename = "snapd-glib/snapd-glib.h", cprefix = "SNAPD_DAEMON_TYPE_", type_id = "snapd_daemon_type_get_type ()")]
	[Version (since = "1.9")]
	public enum DaemonType {
		NONE,
		UNKNOWN,
		SIMPLE,
		FORKING,
		ONESHOT,
		DBUS,
		NOTIFY
	}
	[CCode (cheader_filename = "snapd-glib/snapd-glib.h", cprefix = "SNAPD_FIND_FLAGS_", type_id = "snapd_find_flags_get_type ()")]
	[Flags]
	[Version (since = "1.0")]
	public enum FindFlags {
		NONE,
		MATCH_NAME,
		SELECT_PRIVATE,
		SELECT_REFRESH,
		SCOPE_WIDE,
		MATCH_COMMON_ID
	}
	[CCode (cheader_filename = "snapd-glib/snapd-glib.h", cprefix = "SNAPD_GET_APPS_FLAGS_", type_id = "snapd_get_apps_flags_get_type ()")]
	[Flags]
	[Version (since = "1.25")]
	public enum GetAppsFlags {
		NONE,
		SELECT_SERVICES
	}
	[CCode (cheader_filename = "snapd-glib/snapd-glib.h", cprefix = "SNAPD_GET_CONNECTIONS_FLAGS_", type_id = "snapd_get_connections_flags_get_type ()")]
	[Flags]
	[Version (since = "1.49")]
	public enum GetConnectionsFlags {
		NONE,
		SELECT_ALL
	}
	[CCode (cheader_filename = "snapd-glib/snapd-glib.h", cprefix = "SNAPD_GET_INTERFACES_FLAGS_", type_id = "snapd_get_interfaces_flags_get_type ()")]
	[Flags]
	[Version (since = "1.48")]
	public enum GetInterfacesFlags {
		NONE,
		INCLUDE_DOCS,
		INCLUDE_PLUGS,
		INCLUDE_SLOTS,
		ONLY_CONNECTED
	}
	[CCode (cheader_filename = "snapd-glib/snapd-glib.h", cprefix = "SNAPD_GET_SNAPS_FLAGS_", type_id = "snapd_get_snaps_flags_get_type ()")]
	[Flags]
	[Version (since = "1.42")]
	public enum GetSnapsFlags {
		NONE,
		INCLUDE_INACTIVE
	}
	[CCode (cheader_filename = "snapd-glib/snapd-glib.h", cprefix = "SNAPD_INSTALL_FLAGS_", type_id = "snapd_install_flags_get_type ()")]
	[Flags]
	[Version (since = "1.12")]
	public enum InstallFlags {
		NONE,
		CLASSIC,
		DANGEROUS,
		DEVMODE,
		JAILMODE
	}
	[CCode (cheader_filename = "snapd-glib/snapd-glib.h", cprefix = "SNAPD_MAINTENANCE_KIND_", type_id = "snapd_maintenance_kind_get_type ()")]
	[Version (since = "1.45")]
	public enum MaintenanceKind {
		UNKNOWN,
		DAEMON_RESTART,
		SYSTEM_RESTART
	}
	[CCode (cheader_filename = "snapd-glib/snapd-glib.h", cprefix = "SNAPD_MARKDOWN_NODE_TYPE_", type_id = "snapd_markdown_node_type_get_type ()")]
	[Version (since = "1.48")]
	public enum MarkdownNodeType {
		TEXT,
		PARAGRAPH,
		UNORDERED_LIST,
		LIST_ITEM,
		CODE_BLOCK,
		CODE_SPAN,
		EMPHASIS,
		STRONG_EMPHASIS,
		URL
	}
	[CCode (cheader_filename = "snapd-glib/snapd-glib.h", cprefix = "SNAPD_MARKDOWN_", type_id = "snapd_markdown_version_get_type ()")]
	[Version (since = "1.48")]
	public enum MarkdownVersion {
		[CCode (cname = "SNAPD_MARKDOWN_VERSION_0")]
		@0
	}
	[CCode (cheader_filename = "snapd-glib/snapd-glib.h", cprefix = "SNAPD_PUBLISHER_VALIDATION_", type_id = "snapd_publisher_validation_get_type ()")]
	[Version (since = "1.42")]
	public enum PublisherValidation {
		UNKNOWN,
		UNPROVEN,
		VERIFIED,
		STARRED
	}
	[CCode (cheader_filename = "snapd-glib/snapd-glib.h", cprefix = "SNAPD_REMOVE_FLAGS_", type_id = "snapd_remove_flags_get_type ()")]
	[Flags]
	[Version (since = "1.50")]
	public enum RemoveFlags {
		NONE,
		PURGE
	}
	[CCode (cheader_filename = "snapd-glib/snapd-glib.h", cprefix = "SNAPD_SNAP_STATUS_", type_id = "snapd_snap_status_get_type ()")]
	[Version (since = "1.0")]
	public enum SnapStatus {
		UNKNOWN,
		AVAILABLE,
		PRICED,
		INSTALLED,
		ACTIVE
	}
	[CCode (cheader_filename = "snapd-glib/snapd-glib.h", cprefix = "SNAPD_SNAP_TYPE_", type_id = "snapd_snap_type_get_type ()")]
	[Version (since = "1.0")]
	public enum SnapType {
		UNKNOWN,
		APP,
		KERNEL,
		GADGET,
		OS,
		CORE,
		BASE,
		SNAPD
	}
	[CCode (cheader_filename = "snapd-glib/snapd-glib.h", cprefix = "SNAPD_SYSTEM_CONFINEMENT_", type_id = "snapd_system_confinement_get_type ()")]
	[Version (since = "1.15")]
	public enum SystemConfinement {
		UNKNOWN,
		STRICT,
		PARTIAL
	}
	[CCode (cheader_filename = "snapd-glib/snapd-glib.h", cprefix = "SNAPD_THEME_STATUS_", type_id = "snapd_theme_status_get_type ()")]
	[Version (since = "1.60")]
	public enum ThemeStatus {
		INSTALLED,
		AVAILABLE,
		UNAVAILABLE
	}
	[CCode (cheader_filename = "snapd-glib/snapd-glib.h", cprefix = "SNAPD_ERROR_", type_id = "snapd_error_get_type ()")]
	[Version (since = "1.0")]
	public errordomain Error {
		CONNECTION_FAILED,
		WRITE_FAILED,
		READ_FAILED,
		BAD_REQUEST,
		BAD_RESPONSE,
		AUTH_DATA_REQUIRED,
		AUTH_DATA_INVALID,
		TWO_FACTOR_REQUIRED,
		TWO_FACTOR_INVALID,
		PERMISSION_DENIED,
		FAILED,
		TERMS_NOT_ACCEPTED,
		PAYMENT_NOT_SETUP,
		PAYMENT_DECLINED,
		ALREADY_INSTALLED,
		NOT_INSTALLED,
		NO_UPDATE_AVAILABLE,
		PASSWORD_POLICY_ERROR,
		NEEDS_DEVMODE,
		NEEDS_CLASSIC,
		NEEDS_CLASSIC_SYSTEM,
		BAD_QUERY,
		NETWORK_TIMEOUT,
		NOT_FOUND,
		NOT_IN_STORE,
		AUTH_CANCELLED,
		NOT_CLASSIC,
		REVISION_NOT_AVAILABLE,
		CHANNEL_NOT_AVAILABLE,
		NOT_A_SNAP,
		DNS_FAILURE,
		OPTION_NOT_FOUND,
		UNSUCCESSFUL,
		APP_NOT_FOUND,
		ARCHITECTURE_NOT_AVAILABLE,
		CHANGE_CONFLICT,
		INTERFACES_UNCHANGED;
		public static GLib.Quark quark ();
	}
	[CCode (cheader_filename = "snapd-glib/snapd-glib.h", instance_pos = 2.9)]
	[Version (since = "1.64")]
	public delegate void LogCallback (Snapd.Client client, Snapd.Log log);
	[CCode (cheader_filename = "snapd-glib/snapd-glib.h", instance_pos = 3.9)]
	[Version (since = "1.0")]
	public delegate void ProgressCallback (Snapd.Client client, Snapd.Change change, void* deprecated);
	[CCode (cheader_filename = "snapd-glib/snapd-glib.h")]
	[Version (replacement = "Error.quark", since = "1.0")]
	public static GLib.Quark error_quark ();
	[CCode (cheader_filename = "snapd-glib/snapd-glib.h")]
	[Version (deprecated = true, deprecated_since = "1.34", since = "1.0")]
	public static async Snapd.AuthData login_async (string username, string password, string? otp, GLib.Cancellable? cancellable) throws GLib.Error;
	[CCode (cheader_filename = "snapd-glib/snapd-glib.h")]
	[Version (deprecated = true, deprecated_since = "1.34", since = "1.0")]
	public static Snapd.AuthData login_sync (string username, string password, string? otp, GLib.Cancellable? cancellable = null) throws GLib.Error;
}
