/* libnotify.vapi generated by vapigen, do not modify. */

[CCode (cprefix = "Notify", gir_namespace = "Notify", gir_version = "0.7", lower_case_cprefix = "notify_")]
namespace Notify {
	[CCode (cheader_filename = "libnotify/notify.h", type_id = "notify_notification_get_type ()")]
	public class Notification : GLib.Object {
		[CCode (has_construct_function = false)]
		public Notification (string summary, string? body, string? icon);
		public void add_action (string action, string label, owned Notify.ActionCallback callback);
		public void clear_actions ();
		public void clear_hints ();
		public bool close () throws GLib.Error;
		public int get_closed_reason ();
		[Version (since = "0.7.3")]
		public void set_app_name (string app_name);
		public void set_category (string category);
		[Version (since = "0.6")]
		public void set_hint (string key, GLib.Variant? value);
		[Version (deprecated = true, deprecated_since = "0.6.")]
		public void set_hint_byte (string key, [CCode (type = "guchar")] uchar value);
		[Version (deprecated = true, deprecated_since = "0.6.")]
		public void set_hint_byte_array (string key, [CCode (array_length_cname = "len", array_length_pos = 2.1, array_length_type = "gsize")] uchar[] value);
		[Version (deprecated = true, deprecated_since = "0.6.")]
		public void set_hint_double (string key, double value);
		[Version (deprecated = true, deprecated_since = "0.6.")]
		public void set_hint_int32 (string key, int value);
		[Version (deprecated = true, deprecated_since = "0.6.")]
		public void set_hint_string (string key, string value);
		[Version (deprecated = true, deprecated_since = "0.6.")]
		public void set_hint_uint32 (string key, uint value);
		[Version (deprecated = true)]
		public void set_icon_from_pixbuf (Gdk.Pixbuf icon);
		public void set_image_from_pixbuf (Gdk.Pixbuf pixbuf);
		public void set_timeout (int timeout);
		public void set_urgency (Notify.Urgency urgency);
		public bool show () throws GLib.Error;
		public bool update (string summary, string? body, string? icon);
		[NoAccessorMethod]
		public string app_name { owned get; set; }
		[NoAccessorMethod]
		public string body { owned get; set construct; }
		public int closed_reason { get; }
		[NoAccessorMethod]
		public string icon_name { owned get; set construct; }
		[NoAccessorMethod]
		public int id { get; set construct; }
		[NoAccessorMethod]
		public string summary { owned get; set construct; }
		public virtual signal void closed ();
	}
	[CCode (cheader_filename = "libnotify/notify.h", cprefix = "NOTIFY_URGENCY_", has_type_id = false)]
	public enum Urgency {
		LOW,
		NORMAL,
		CRITICAL
	}
	[CCode (cheader_filename = "libnotify/notify.h", instance_pos = 2.9)]
	public delegate void ActionCallback (Notify.Notification notification, string action);
	[CCode (cheader_filename = "libnotify/notify.h", cname = "NOTIFY_EXPIRES_DEFAULT")]
	public const int EXPIRES_DEFAULT;
	[CCode (cheader_filename = "libnotify/notify.h", cname = "NOTIFY_EXPIRES_NEVER")]
	public const int EXPIRES_NEVER;
	[CCode (cheader_filename = "libnotify/notify.h", cname = "NOTIFY_VERSION_MAJOR")]
	public const int VERSION_MAJOR;
	[CCode (cheader_filename = "libnotify/notify.h", cname = "NOTIFY_VERSION_MICRO")]
	public const int VERSION_MICRO;
	[CCode (cheader_filename = "libnotify/notify.h", cname = "NOTIFY_VERSION_MINOR")]
	public const int VERSION_MINOR;
	[CCode (cheader_filename = "libnotify/notify.h")]
	public static unowned string get_app_name ();
	[CCode (cheader_filename = "libnotify/notify.h")]
	public static GLib.List<string> get_server_caps ();
	[CCode (cheader_filename = "libnotify/notify.h")]
	public static bool get_server_info (out string ret_name, out string ret_vendor, out string ret_version, out string ret_spec_version);
	[CCode (cheader_filename = "libnotify/notify.h")]
	public static bool init (string app_name);
	[CCode (cheader_filename = "libnotify/notify.h")]
	public static bool is_initted ();
	[CCode (cheader_filename = "libnotify/notify.h")]
	public static void set_app_name (string app_name);
	[CCode (cheader_filename = "libnotify/notify.h")]
	public static void uninit ();
}
