/* tracker-control-2.0.vapi generated by vapigen, do not modify. */

[CCode (cprefix = "Tracker", gir_namespace = "TrackerControl", gir_version = "2.0", lower_case_cprefix = "tracker_")]
namespace Tracker {
	[CCode (cheader_filename = "libtracker-control/tracker-control.h", type_id = "tracker_miner_manager_get_type ()")]
	public class MinerManager : GLib.Object, GLib.Initable {
		[CCode (has_construct_function = false)]
		[Version (since = "0.8")]
		public MinerManager ();
		[Version (since = "0.8")]
		public static GLib.Quark error_quark ();
		[CCode (has_construct_function = false)]
		[Version (since = "0.10.5")]
		public MinerManager.full (bool auto_start) throws GLib.Error;
		[Version (since = "0.8")]
		public GLib.SList<string>? get_available ();
		[Version (since = "0.8")]
		public unowned string get_description (string miner);
		[Version (since = "0.8")]
		public unowned string get_display_name (string miner);
		[Version (since = "0.8")]
		public GLib.SList<string>? get_running ();
		[Version (since = "0.12")]
		public bool get_status (string miner, out string status, out double progress, out int remaining_time);
		[Version (since = "2.0")]
		public bool index_file (GLib.File file, GLib.Cancellable? cancellable = null) throws GLib.Error;
		[Version (since = "0.16")]
		public async bool index_file_async (GLib.File file, GLib.Cancellable? cancellable) throws GLib.Error;
		[Version (since = "1.10")]
		public bool index_file_for_process (GLib.File file, GLib.Cancellable? cancellable = null) throws GLib.Error;
		[Version (since = "1.10")]
		public async bool index_file_for_process_async (GLib.File file, GLib.Cancellable? cancellable) throws GLib.Error;
		[Version (since = "0.8")]
		public bool is_active (string miner);
		[Version (since = "0.8")]
		public bool is_paused (string miner, [CCode (array_length = false, array_null_terminated = true)] out string[] applications, [CCode (array_length = false, array_null_terminated = true)] out string[] reasons);
		[Version (since = "0.8")]
		public bool pause (string miner, string reason, out uint32 cookie);
		[Version (since = "0.10.15")]
		public bool pause_for_process (string miner, string reason, out uint32 cookie);
		[Version (since = "0.10")]
		public bool reindex_by_mimetype ([CCode (array_length = false, array_null_terminated = true)] string[] mimetypes) throws GLib.Error;
		[Version (since = "0.8")]
		public bool resume (string miner, uint32 cookie);
		[NoAccessorMethod]
		public bool auto_start { get; construct; }
		[NoAccessorMethod]
		public string domain_ontology { owned get; construct; }
		[Version (since = "0.8")]
		public virtual signal void miner_activated (string miner_name);
		[Version (since = "0.8")]
		public virtual signal void miner_deactivated (string miner_name);
		[Version (since = "0.8")]
		public virtual signal void miner_paused (string miner_name);
		[Version (since = "0.12")]
		public virtual signal void miner_progress (string miner_name, string status, double progress, int remaining_time);
		[Version (since = "0.8")]
		public virtual signal void miner_resumed (string miner_name);
	}
	[CCode (cheader_filename = "libtracker-control/tracker-control.h", cprefix = "TRACKER_MINER_MANAGER_ERROR_", has_type_id = false)]
	[Version (since = "0.8")]
	public enum MinerManagerError {
		NOT_AVAILABLE,
		NOENT
	}
}
