/* libxfce4windowing-0.vapi generated by vapigen, do not modify. */

[CCode (cprefix = "Xfw", gir_namespace = "Libxfce4windowing", gir_version = "0.0", lower_case_cprefix = "libxfce4windowing_")]
namespace Xfw {
	[CCode (cheader_filename = "libxfce4windowing/libxfce4windowing.h", type_id = "xfw_application_get_type ()")]
	public abstract class Application : GLib.Object {
		[CCode (has_construct_function = false)]
		protected Application ();
		[CCode (cname = "xfw_application_get_class_id")]
		[Version (since = "4.19.3")]
		public unowned string get_class_id ();
		[CCode (cname = "xfw_application_get_gicon")]
		[Version (since = "4.19.1")]
		public unowned GLib.Icon get_gicon ();
		[CCode (cname = "xfw_application_get_icon")]
		public unowned Gdk.Pixbuf? get_icon (int size, int scale);
		[CCode (cname = "xfw_application_get_instance")]
		public unowned Xfw.ApplicationInstance? get_instance (Xfw.Window window);
		[CCode (cname = "xfw_application_get_instances")]
		public unowned GLib.List<Xfw.ApplicationInstance>? get_instances ();
		[CCode (cname = "xfw_application_get_name")]
		public unowned string get_name ();
		[CCode (cname = "xfw_application_get_windows")]
		public unowned GLib.List<Xfw.Window> get_windows ();
		[CCode (cname = "xfw_application_icon_is_fallback")]
		[Version (since = "4.19.1")]
		public bool icon_is_fallback ();
		[NoAccessorMethod]
		[Version (since = "4.19.3")]
		public string class_id { owned get; }
		[NoAccessorMethod]
		public GLib.Icon gicon { owned get; }
		[NoAccessorMethod]
		public GLib.List<Xfw.ApplicationInstance> instances { owned get; }
		[NoAccessorMethod]
		public string name { owned get; }
		[NoAccessorMethod]
		public GLib.List<Xfw.Window> windows { owned get; }
		public signal void icon_changed ();
	}
	[CCode (cheader_filename = "libxfce4windowing/libxfce4windowing.h", has_type_id = false)]
	[Compact]
	public class ApplicationInstance {
		[CCode (cname = "xfw_application_instance_get_name")]
		[Version (since = "4.19.1")]
		public unowned string get_name ();
		[CCode (cname = "xfw_application_instance_get_pid")]
		[Version (since = "4.19.1")]
		public int get_pid ();
		[CCode (cname = "xfw_application_instance_get_windows")]
		[Version (since = "4.19.1")]
		public unowned GLib.List<Xfw.Window> get_windows ();
	}
	[CCode (cheader_filename = "libxfce4windowing/libxfce4windowing.h", type_id = "xfw_monitor_get_type ()")]
	public abstract class Monitor : GLib.Object {
		[CCode (has_construct_function = false)]
		protected Monitor ();
		[CCode (cname = "xfw_monitor_get_connector")]
		[Version (since = "4.19.4")]
		public unowned string get_connector ();
		[CCode (cname = "xfw_monitor_get_description")]
		[Version (since = "4.19.4")]
		public unowned string get_description ();
		[CCode (cname = "xfw_monitor_get_fractional_scale")]
		[Version (since = "4.19.4")]
		public double get_fractional_scale ();
		[CCode (cname = "xfw_monitor_get_gdk_monitor")]
		[Version (since = "4.19.4")]
		public unowned Gdk.Monitor get_gdk_monitor ();
		[CCode (cname = "xfw_monitor_get_identifier")]
		[Version (since = "4.19.4")]
		public unowned string get_identifier ();
		[CCode (cname = "xfw_monitor_get_logical_geometry")]
		[Version (since = "4.19.4")]
		public Gdk.Rectangle get_logical_geometry ();
		[CCode (cname = "xfw_monitor_get_make")]
		[Version (since = "4.19.4")]
		public unowned string? get_make ();
		[CCode (cname = "xfw_monitor_get_model")]
		[Version (since = "4.19.4")]
		public unowned string? get_model ();
		[CCode (cname = "xfw_monitor_get_physical_geometry")]
		[Version (since = "4.19.4")]
		public Gdk.Rectangle get_physical_geometry ();
		[CCode (cname = "xfw_monitor_get_physical_size")]
		[Version (since = "4.19.4")]
		public void get_physical_size (out uint width_mm, out uint height_mm);
		[CCode (cname = "xfw_monitor_get_refresh")]
		[Version (since = "4.19.4")]
		public uint get_refresh ();
		[CCode (cname = "xfw_monitor_get_scale")]
		[Version (since = "4.19.4")]
		public uint get_scale ();
		[CCode (cname = "xfw_monitor_get_serial")]
		[Version (since = "4.19.4")]
		public unowned string? get_serial ();
		[CCode (cname = "xfw_monitor_get_subpixel")]
		[Version (since = "4.19.4")]
		public Xfw.MonitorSubpixel get_subpixel ();
		[CCode (cname = "xfw_monitor_get_transform")]
		[Version (since = "4.19.4")]
		public Xfw.MonitorTransform get_transform ();
		[CCode (cname = "xfw_monitor_get_workarea")]
		[Version (since = "4.19.4")]
		public Gdk.Rectangle get_workarea ();
		[NoAccessorMethod]
		[Version (since = "4.19.4")]
		public string connector { owned get; }
		[NoAccessorMethod]
		[Version (since = "4.19.4")]
		public string description { owned get; }
		[NoAccessorMethod]
		[Version (since = "4.19.4")]
		public double fractional_scale { get; }
		[NoAccessorMethod]
		public Gdk.Monitor gdk_monitor { owned get; }
		[NoAccessorMethod]
		[Version (since = "4.19.4")]
		public uint height_mm { get; }
		[NoAccessorMethod]
		[Version (since = "4.19.4")]
		public string identifier { owned get; }
		[NoAccessorMethod]
		[Version (since = "4.19.4")]
		public bool is_primary { get; }
		[NoAccessorMethod]
		[Version (since = "4.19.4")]
		public Gdk.Rectangle logical_geometry { owned get; }
		[NoAccessorMethod]
		[Version (since = "4.19.4")]
		public string make { owned get; }
		[NoAccessorMethod]
		[Version (since = "4.19.4")]
		public string model { owned get; }
		[NoAccessorMethod]
		[Version (since = "4.19.4")]
		public Gdk.Rectangle physical_geometry { owned get; }
		[NoAccessorMethod]
		[Version (since = "4.19.4")]
		public uint refresh { get; }
		[NoAccessorMethod]
		[Version (since = "4.19.4")]
		public uint scale { get; }
		[NoAccessorMethod]
		[Version (since = "4.19.4")]
		public string serial { owned get; }
		[NoAccessorMethod]
		[Version (since = "4.19.4")]
		public Xfw.MonitorSubpixel subpixel { get; }
		[NoAccessorMethod]
		public Xfw.MonitorTransform transform { get; }
		[NoAccessorMethod]
		[Version (since = "4.19.4")]
		public uint width_mm { get; }
		[NoAccessorMethod]
		public Gdk.Rectangle workarea { owned get; }
	}
	[CCode (cheader_filename = "libxfce4windowing/libxfce4windowing.h", type_id = "xfw_screen_get_type ()")]
	public abstract class Screen : GLib.Object {
		[CCode (has_construct_function = false)]
		protected Screen ();
		[CCode (cname = "xfw_screen_get_active_window")]
		public unowned Xfw.Window? get_active_window ();
		[CCode (cname = "xfw_screen_get_default")]
		public static Xfw.Screen get_default ();
		[CCode (cname = "xfw_screen_get_monitor_from_gdk_monitor")]
		[Version (since = "4.20.6")]
		public unowned Xfw.Monitor? get_monitor_from_gdk_monitor (Gdk.Monitor monitor);
		[CCode (cname = "xfw_screen_get_monitors")]
		[Version (since = "4.19.4")]
		public unowned GLib.List<Xfw.Monitor>? get_monitors ();
		[CCode (cname = "xfw_screen_get_primary_monitor")]
		[Version (since = "4.19.4")]
		public unowned Xfw.Monitor? get_primary_monitor ();
		[CCode (cname = "xfw_screen_get_seats")]
		public unowned GLib.List<Xfw.Seat>? get_seats ();
		[CCode (cname = "xfw_screen_get_show_desktop")]
		public bool get_show_desktop ();
		[CCode (cname = "xfw_screen_get_windows")]
		public unowned GLib.List<Xfw.Window>? get_windows ();
		[CCode (cname = "xfw_screen_get_windows_stacked")]
		public unowned GLib.List<Xfw.Window>? get_windows_stacked ();
		[CCode (cname = "xfw_screen_get_workspace_manager")]
		public unowned Xfw.WorkspaceManager get_workspace_manager ();
		[CCode (cname = "xfw_screen_set_show_desktop")]
		public void set_show_desktop (bool show);
		[NoAccessorMethod]
		public Xfw.Window active_window { owned get; }
		[NoAccessorMethod]
		public Gdk.Screen gdk_screen { owned get; construct; }
		[NoAccessorMethod]
		public bool show_desktop { get; set; }
		[NoAccessorMethod]
		public Xfw.WorkspaceManager workspace_manager { owned get; }
		public signal void active_window_changed (Xfw.Window window);
		[Version (since = "4.19.4")]
		public signal void monitor_added (Xfw.Monitor monitor);
		[Version (since = "4.19.4")]
		public signal void monitor_removed (Xfw.Monitor monitor);
		[Version (since = "4.19.4")]
		public signal void monitors_changed ();
		public signal void seat_added (Xfw.Seat seat);
		public signal void seat_removed (Xfw.Seat seat);
		public signal void window_closed (Xfw.Window window);
		public signal void window_manager_changed ();
		public signal void window_opened (Xfw.Window window);
		public signal void window_stacking_changed ();
	}
	[CCode (cheader_filename = "libxfce4windowing/libxfce4windowing.h", type_id = "xfw_seat_get_type ()")]
	public class Seat : GLib.Object {
		[CCode (has_construct_function = false)]
		protected Seat ();
		[CCode (cname = "xfw_seat_get_name")]
		public unowned string get_name ();
		[NoAccessorMethod]
		public string name { owned get; construct; }
	}
	[CCode (cheader_filename = "libxfce4windowing/libxfce4windowing.h", type_id = "xfw_window_get_type ()")]
	public abstract class Window : GLib.Object {
		[CCode (has_construct_function = false)]
		protected Window ();
		[CCode (cname = "xfw_window_activate")]
		public bool activate (Xfw.Seat seat, uint64 event_timestamp) throws GLib.Error;
		[CCode (cname = "xfw_window_close")]
		public bool close (uint64 event_timestamp) throws GLib.Error;
		[CCode (cname = "xfw_window_get_application")]
		public unowned Xfw.Application get_application ();
		[CCode (cname = "xfw_window_get_capabilities")]
		public Xfw.WindowCapabilities get_capabilities ();
		[CCode (array_length = false, array_null_terminated = true, cname = "xfw_window_get_class_ids")]
		[Version (since = "4.19.3")]
		public unowned string[] get_class_ids ();
		[CCode (cname = "xfw_window_get_geometry")]
		public unowned Gdk.Rectangle? get_geometry ();
		[CCode (cname = "xfw_window_get_gicon")]
		[Version (since = "4.19.1")]
		public unowned GLib.Icon get_gicon ();
		[CCode (cname = "xfw_window_get_icon")]
		public unowned Gdk.Pixbuf? get_icon (int size, int scale);
		[CCode (cname = "xfw_window_get_monitors")]
		public unowned GLib.List<Xfw.Monitor>? get_monitors ();
		[CCode (cname = "xfw_window_get_name")]
		public unowned string? get_name ();
		[CCode (cname = "xfw_window_get_screen")]
		public unowned Xfw.Screen get_screen ();
		[CCode (cname = "xfw_window_get_state")]
		public Xfw.WindowState get_state ();
		[CCode (cname = "xfw_window_get_window_type")]
		public Xfw.WindowType get_window_type ();
		[CCode (cname = "xfw_window_get_workspace")]
		public unowned Xfw.Workspace? get_workspace ();
		[CCode (cname = "xfw_window_icon_is_fallback")]
		[Version (since = "4.19.1")]
		public bool icon_is_fallback ();
		[CCode (cname = "xfw_window_is_above")]
		public bool is_above ();
		[CCode (cname = "xfw_window_is_active")]
		public bool is_active ();
		[CCode (cname = "xfw_window_is_below")]
		public bool is_below ();
		[CCode (cname = "xfw_window_is_fullscreen")]
		public bool is_fullscreen ();
		[CCode (cname = "xfw_window_is_in_viewport")]
		public bool is_in_viewport (Xfw.Workspace workspace);
		[CCode (cname = "xfw_window_is_maximized")]
		public bool is_maximized ();
		[CCode (cname = "xfw_window_is_minimized")]
		public bool is_minimized ();
		[CCode (cname = "xfw_window_is_on_workspace")]
		public bool is_on_workspace (Xfw.Workspace workspace);
		[CCode (cname = "xfw_window_is_pinned")]
		public bool is_pinned ();
		[CCode (cname = "xfw_window_is_shaded")]
		public bool is_shaded ();
		[CCode (cname = "xfw_window_is_skip_pager")]
		public bool is_skip_pager ();
		[CCode (cname = "xfw_window_is_skip_tasklist")]
		public bool is_skip_tasklist ();
		[CCode (cname = "xfw_window_is_urgent")]
		public bool is_urgent ();
		[CCode (cname = "xfw_window_move_to_workspace")]
		public bool move_to_workspace (Xfw.Workspace workspace) throws GLib.Error;
		[CCode (cname = "xfw_window_set_above")]
		public bool set_above (bool is_above) throws GLib.Error;
		[CCode (cname = "xfw_window_set_below")]
		public bool set_below (bool is_below) throws GLib.Error;
		[CCode (cname = "xfw_window_set_button_geometry")]
		public bool set_button_geometry (Gdk.Window relative_to, Gdk.Rectangle rect) throws GLib.Error;
		[CCode (cname = "xfw_window_set_fullscreen")]
		public bool set_fullscreen (bool is_fullscreen) throws GLib.Error;
		[CCode (cname = "xfw_window_set_geometry")]
		public bool set_geometry (Gdk.Rectangle rect) throws GLib.Error;
		[CCode (cname = "xfw_window_set_maximized")]
		public bool set_maximized (bool is_maximized) throws GLib.Error;
		[CCode (cname = "xfw_window_set_minimized")]
		public bool set_minimized (bool is_minimized) throws GLib.Error;
		[CCode (cname = "xfw_window_set_pinned")]
		public bool set_pinned (bool is_pinned) throws GLib.Error;
		[CCode (cname = "xfw_window_set_shaded")]
		public bool set_shaded (bool is_shaded) throws GLib.Error;
		[CCode (cname = "xfw_window_set_skip_pager")]
		public bool set_skip_pager (bool is_skip_pager) throws GLib.Error;
		[CCode (cname = "xfw_window_set_skip_tasklist")]
		public bool set_skip_tasklist (bool is_skip_tasklist) throws GLib.Error;
		[CCode (cname = "xfw_window_start_move")]
		public bool start_move () throws GLib.Error;
		[CCode (cname = "xfw_window_start_resize")]
		public bool start_resize () throws GLib.Error;
		[CCode (cname = "xfw_window_x11_get_xid")]
		[Version (since = "4.19.3")]
		public X.Window x11_get_xid ();
		[NoAccessorMethod]
		public Xfw.Application application { owned get; }
		[NoAccessorMethod]
		public Xfw.WindowCapabilities capabilities { get; }
		[CCode (array_length = false, array_null_terminated = true)]
		[NoAccessorMethod]
		[Version (since = "4.19.3")]
		public string[] class_ids { owned get; }
		[NoAccessorMethod]
		public GLib.Icon gicon { owned get; }
		[NoAccessorMethod]
		public GLib.List<Xfw.Monitor> monitors { owned get; }
		[NoAccessorMethod]
		public string name { owned get; }
		[NoAccessorMethod]
		public Xfw.Screen screen { owned get; construct; }
		[NoAccessorMethod]
		public Xfw.WindowState state { get; }
		[NoAccessorMethod]
		public Xfw.WindowType type { get; }
		[NoAccessorMethod]
		public Xfw.Workspace workspace { owned get; }
		public signal void capabilities_changed (Xfw.WindowCapabilities changed_mask, Xfw.WindowCapabilities new_state);
		[Version (since = "4.19.3")]
		public signal void class_changed ();
		public signal void closed ();
		public signal void geometry_changed ();
		public signal void icon_changed ();
		public signal void name_changed ();
		public signal void state_changed (Xfw.WindowState changed_mask, Xfw.WindowState new_state);
		public signal void type_changed (Xfw.WindowType old_type);
		public signal void workspace_changed ();
	}
	[CCode (cheader_filename = "libxfce4windowing/libxfce4windowing.h", has_type_id = false)]
	[Compact]
	public class WorkspaceGroupInterface {
	}
	[CCode (cheader_filename = "libxfce4windowing/libxfce4windowing.h", has_type_id = false)]
	[Compact]
	public class WorkspaceInterface {
	}
	[CCode (cheader_filename = "libxfce4windowing/libxfce4windowing.h", has_type_id = false)]
	[Compact]
	public class WorkspaceManagerInterface {
	}
	[CCode (cheader_filename = "libxfce4windowing/libxfce4windowing.h", type_id = "xfw_workspace_get_type ()")]
	public interface Workspace : GLib.Object {
		[CCode (cname = "xfw_workspace_activate")]
		public bool activate () throws GLib.Error;
		[CCode (cname = "xfw_workspace_assign_to_workspace_group")]
		public bool assign_to_workspace_group (Xfw.WorkspaceGroup group) throws GLib.Error;
		[CCode (cname = "xfw_workspace_get_capabilities")]
		public Xfw.WorkspaceCapabilities get_capabilities ();
		[CCode (cname = "xfw_workspace_get_geometry")]
		public unowned Gdk.Rectangle? get_geometry ();
		[CCode (cname = "xfw_workspace_get_id")]
		public unowned string get_id ();
		[CCode (cname = "xfw_workspace_get_layout_column")]
		public int get_layout_column ();
		[CCode (cname = "xfw_workspace_get_layout_row")]
		public int get_layout_row ();
		[CCode (cname = "xfw_workspace_get_name")]
		public unowned string get_name ();
		[CCode (cname = "xfw_workspace_get_neighbor")]
		public unowned Xfw.Workspace? get_neighbor (Xfw.Direction direction);
		[CCode (cname = "xfw_workspace_get_number")]
		public uint get_number ();
		[CCode (cname = "xfw_workspace_get_state")]
		public Xfw.WorkspaceState get_state ();
		[CCode (cname = "xfw_workspace_get_workspace_group")]
		public unowned Xfw.WorkspaceGroup? get_workspace_group ();
		[CCode (cname = "xfw_workspace_remove")]
		public bool remove () throws GLib.Error;
		[NoAccessorMethod]
		public abstract Xfw.WorkspaceCapabilities capabilities { get; set construct; }
		[NoAccessorMethod]
		[Version (since = "4.20.6")]
		public abstract Gdk.Rectangle geometry { owned get; }
		[NoAccessorMethod]
		public abstract Xfw.WorkspaceGroup group { owned get; }
		[NoAccessorMethod]
		public abstract string id { owned get; }
		[NoAccessorMethod]
		public abstract int layout_column { get; }
		[NoAccessorMethod]
		public abstract int layout_row { get; }
		[NoAccessorMethod]
		public abstract string name { owned get; set construct; }
		[NoAccessorMethod]
		public abstract uint number { get; construct; }
		[NoAccessorMethod]
		public abstract Xfw.WorkspaceState state { get; set construct; }
		public signal void capabilities_changed (Xfw.WorkspaceCapabilities changed_mask, Xfw.WorkspaceCapabilities new_capabilities);
		public signal void group_changed (Xfw.WorkspaceGroup previous_group);
		public signal void name_changed ();
		public signal void state_changed (Xfw.WorkspaceState changed_mask, Xfw.WorkspaceState new_state);
	}
	[CCode (cheader_filename = "libxfce4windowing/libxfce4windowing.h", type_id = "xfw_workspace_group_get_type ()")]
	public interface WorkspaceGroup : GLib.Object {
		[CCode (cname = "xfw_workspace_group_create_workspace")]
		public bool create_workspace (string name) throws GLib.Error;
		[CCode (cname = "xfw_workspace_group_get_active_workspace")]
		public unowned Xfw.Workspace? get_active_workspace ();
		[CCode (cname = "xfw_workspace_group_get_capabilities")]
		public Xfw.WorkspaceGroupCapabilities get_capabilities ();
		[CCode (cname = "xfw_workspace_group_get_monitors")]
		public unowned GLib.List<Xfw.Monitor>? get_monitors ();
		[CCode (cname = "xfw_workspace_group_get_workspace_count")]
		public uint get_workspace_count ();
		[CCode (cname = "xfw_workspace_group_get_workspace_manager")]
		public unowned Xfw.WorkspaceManager get_workspace_manager ();
		[CCode (cname = "xfw_workspace_group_list_workspaces")]
		public unowned GLib.List<Xfw.Workspace>? list_workspaces ();
		[CCode (cname = "xfw_workspace_group_move_viewport")]
		public bool move_viewport (int x, int y) throws GLib.Error;
		[CCode (cname = "xfw_workspace_group_set_layout")]
		public bool set_layout (int rows, int columns) throws GLib.Error;
		[NoAccessorMethod]
		public abstract Xfw.Workspace active_workspace { owned get; }
		[NoAccessorMethod]
		public abstract GLib.List<Xfw.Monitor> monitors { owned get; }
		[NoAccessorMethod]
		public abstract Xfw.Screen screen { owned get; construct; }
		[NoAccessorMethod]
		public abstract Xfw.WorkspaceManager workspace_manager { owned get; construct; }
		[NoAccessorMethod]
		public abstract GLib.List<Xfw.Workspace> workspaces { owned get; }
		public signal void active_workspace_changed (Xfw.Workspace? previously_active_workspace);
		public signal void capabilities_changed (Xfw.WorkspaceGroupCapabilities changed_mask, Xfw.WorkspaceGroupCapabilities new_capabilities);
		public signal void monitor_added (Xfw.Monitor monitor);
		public signal void monitor_removed (Xfw.Monitor monitor);
		public signal void monitors_changed ();
		public signal void viewports_changed ();
		public signal void workspace_added (Xfw.Workspace workspace);
		public signal void workspace_removed (Xfw.Workspace workspace);
	}
	[CCode (cheader_filename = "libxfce4windowing/libxfce4windowing.h", type_id = "xfw_workspace_manager_get_type ()")]
	public interface WorkspaceManager : GLib.Object {
		[CCode (cname = "xfw_workspace_manager_list_workspace_groups")]
		public unowned GLib.List<Xfw.WorkspaceGroup>? list_workspace_groups ();
		[CCode (cname = "xfw_workspace_manager_list_workspaces")]
		public unowned GLib.List<Xfw.Workspace>? list_workspaces ();
		[NoAccessorMethod]
		public abstract Xfw.Screen screen { owned get; construct; }
		public signal void workspace_created (Xfw.Workspace workspace);
		public signal void workspace_destroyed (Xfw.Workspace workspace);
		public signal void workspace_group_created (Xfw.WorkspaceGroup group);
		public signal void workspace_group_destroyed (Xfw.WorkspaceGroup group);
	}
	[CCode (cheader_filename = "libxfce4windowing/libxfce4windowing.h", cprefix = "XFW_CLIENT_TYPE_", has_type_id = false)]
	[Version (since = "4.19.3")]
	public enum ClientType {
		APPLICATION,
		PAGER
	}
	[CCode (cheader_filename = "libxfce4windowing/libxfce4windowing.h", cprefix = "XFW_DIRECTION_", type_id = "xfw_direction_get_type ()")]
	public enum Direction {
		UP,
		DOWN,
		LEFT,
		RIGHT
	}
	[CCode (cheader_filename = "libxfce4windowing/libxfce4windowing.h", cprefix = "XFW_MONITOR_SUBPIXEL_", type_id = "xfw_monitor_subpixel_get_type ()")]
	[Version (since = "4.19.4")]
	public enum MonitorSubpixel {
		UNKNOWN,
		NONE,
		HRGB,
		HBGR,
		VRGB,
		VBGR
	}
	[CCode (cheader_filename = "libxfce4windowing/libxfce4windowing.h", cprefix = "XFW_MONITOR_TRANSFORM_", type_id = "xfw_monitor_transform_get_type ()")]
	[Version (since = "4.19.4")]
	public enum MonitorTransform {
		NORMAL,
		@90,
		@180,
		@270,
		FLIPPED,
		FLIPPED_90,
		FLIPPED_180,
		FLIPPED_270
	}
	[CCode (cheader_filename = "libxfce4windowing/libxfce4windowing.h", cprefix = "XFW_WINDOW_CAPABILITIES_", type_id = "xfw_window_capabilities_get_type ()")]
	[Flags]
	public enum WindowCapabilities {
		NONE,
		CAN_MINIMIZE,
		CAN_UNMINIMIZE,
		CAN_MAXIMIZE,
		CAN_UNMAXIMIZE,
		CAN_FULLSCREEN,
		CAN_UNFULLSCREEN,
		CAN_SHADE,
		CAN_UNSHADE,
		CAN_MOVE,
		CAN_RESIZE,
		CAN_PLACE_ABOVE,
		CAN_UNPLACE_ABOVE,
		CAN_PLACE_BELOW,
		CAN_UNPLACE_BELOW,
		CAN_CHANGE_WORKSPACE
	}
	[CCode (cheader_filename = "libxfce4windowing/libxfce4windowing.h", cprefix = "XFW_WINDOW_STATE_", type_id = "xfw_window_state_get_type ()")]
	[Flags]
	public enum WindowState {
		NONE,
		ACTIVE,
		MINIMIZED,
		MAXIMIZED,
		FULLSCREEN,
		SKIP_PAGER,
		SKIP_TASKLIST,
		PINNED,
		SHADED,
		ABOVE,
		BELOW,
		URGENT
	}
	[CCode (cheader_filename = "libxfce4windowing/libxfce4windowing.h", cprefix = "XFW_WINDOW_TYPE_", type_id = "xfw_window_type_get_type ()")]
	public enum WindowType {
		NORMAL,
		DESKTOP,
		DOCK,
		DIALOG,
		TOOLBAR,
		MENU,
		UTILITY,
		SPLASHSCREEN
	}
	[CCode (cheader_filename = "libxfce4windowing/libxfce4windowing.h", cprefix = "XFW_WINDOWING_", has_type_id = false)]
	public enum Windowing {
		UNKNOWN,
		X11,
		WAYLAND
	}
	[CCode (cheader_filename = "libxfce4windowing/libxfce4windowing.h", cprefix = "XFW_WORKSPACE_CAPABILITIES_", type_id = "xfw_workspace_capabilities_get_type ()")]
	[Flags]
	public enum WorkspaceCapabilities {
		NONE,
		ACTIVATE,
		REMOVE
	}
	[CCode (cheader_filename = "libxfce4windowing/libxfce4windowing.h", cprefix = "XFW_WORKSPACE_GROUP_CAPABILITIES_", type_id = "xfw_workspace_group_capabilities_get_type ()")]
	[Flags]
	public enum WorkspaceGroupCapabilities {
		NONE,
		CREATE_WORKSPACE,
		MOVE_VIEWPORT,
		SET_LAYOUT
	}
	[CCode (cheader_filename = "libxfce4windowing/libxfce4windowing.h", cprefix = "XFW_WORKSPACE_STATE_", type_id = "xfw_workspace_state_get_type ()")]
	[Flags]
	public enum WorkspaceState {
		NONE,
		ACTIVE,
		URGENT,
		HIDDEN,
		VIRTUAL
	}
	[CCode (cheader_filename = "libxfce4windowing/libxfce4windowing.h", cprefix = "XFW_ERROR_", has_type_id = false)]
	public errordomain Error {
		UNSUPPORTED,
		INTERNAL
	}
	[CCode (cheader_filename = "libxfce4windowing/libxfce4windowing.h", cname = "LIBXFCE4WINDOWING_MAJOR_VERSION")]
	public const int MAJOR_VERSION;
	[CCode (cheader_filename = "libxfce4windowing/libxfce4windowing.h", cname = "LIBXFCE4WINDOWING_MICRO_VERSION")]
	public const int MICRO_VERSION;
	[CCode (cheader_filename = "libxfce4windowing/libxfce4windowing.h", cname = "LIBXFCE4WINDOWING_MINOR_VERSION")]
	public const int MINOR_VERSION;
	[CCode (cheader_filename = "libxfce4windowing/libxfce4windowing.h")]
	public static unowned string? check_version (uint required_major, uint required_minor, uint required_micro);
	[CCode (cheader_filename = "libxfce4windowing/libxfce4windowing.h", cname = "xfw_error_quark")]
	public static GLib.Quark error_quark ();
	[CCode (cheader_filename = "libxfce4windowing/libxfce4windowing.h", cname = "xfw_set_client_type")]
	[Version (since = "4.19.3")]
	public static void set_client_type (Xfw.ClientType client_type);
	[CCode (cheader_filename = "libxfce4windowing/libxfce4windowing.h", cname = "xfw_windowing_get")]
	public static Xfw.Windowing windowing_get ();
}
