/* networkapplet.h generated by valac 0.56.19, the Vala compiler, do not modify */

#ifndef __BUDGIE_NETWORK_MANAGER_BUDGIE_NETWORK_APPLET_SRC_NETWORKAPPLET_H__
#define __BUDGIE_NETWORK_MANAGER_BUDGIE_NETWORK_APPLET_SRC_NETWORKAPPLET_H__

#include <stdlib.h>
#include <string.h>
#include <glib.h>
#include <libpeas.h>
#include <plugin.h>
#include <glib-object.h>
#include <gtk/gtk.h>
#include <NetworkManager.h>
#include <gio/gio.h>

G_BEGIN_DECLS

#define CONFIG_PACKAGE_NAME "budgie-extras"
#define CONFIG_PACKAGE_VERSION "2.2.3"
#define CONFIG_GETTEXT_PACKAGE "budgie-extras"
#define CONFIG_DATA_DIR "/usr/share"
#define CONFIG_LOCALE_DIR "/usr/share/locale"
#if !defined(VALA_EXTERN)
#if defined(_MSC_VER)
#define VALA_EXTERN __declspec(dllexport) extern
#elif __GNUC__ >= 4
#define VALA_EXTERN __attribute__((visibility("default"))) extern
#else
#define VALA_EXTERN extern
#endif
#endif

#define NETWORK_TYPE_PLUGIN (network_plugin_get_type ())
#define NETWORK_PLUGIN(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), NETWORK_TYPE_PLUGIN, NetworkPlugin))
#define NETWORK_PLUGIN_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), NETWORK_TYPE_PLUGIN, NetworkPluginClass))
#define NETWORK_IS_PLUGIN(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), NETWORK_TYPE_PLUGIN))
#define NETWORK_IS_PLUGIN_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), NETWORK_TYPE_PLUGIN))
#define NETWORK_PLUGIN_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), NETWORK_TYPE_PLUGIN, NetworkPluginClass))

typedef struct _NetworkPlugin NetworkPlugin;
typedef struct _NetworkPluginClass NetworkPluginClass;
typedef struct _NetworkPluginPrivate NetworkPluginPrivate;

#define NETWORK_TYPE_APPLET (network_applet_get_type ())
#define NETWORK_APPLET(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), NETWORK_TYPE_APPLET, NetworkApplet))
#define NETWORK_APPLET_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), NETWORK_TYPE_APPLET, NetworkAppletClass))
#define NETWORK_IS_APPLET(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), NETWORK_TYPE_APPLET))
#define NETWORK_IS_APPLET_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), NETWORK_TYPE_APPLET))
#define NETWORK_APPLET_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), NETWORK_TYPE_APPLET, NetworkAppletClass))

typedef struct _NetworkApplet NetworkApplet;
typedef struct _NetworkAppletClass NetworkAppletClass;
typedef struct _NetworkAppletPrivate NetworkAppletPrivate;
typedef enum  {
	NETWORK_STATE_DISCONNECTED,
	NETWORK_STATE_WIRED_UNPLUGGED,
	NETWORK_STATE_DISCONNECTED_WIRED,
	NETWORK_STATE_DISCONNECTED_AIRPLANE_MODE,
	NETWORK_STATE_CONNECTED_WIRED,
	NETWORK_STATE_CONNECTED_VPN,
	NETWORK_STATE_CONNECTED_WIFI,
	NETWORK_STATE_CONNECTED_WIFI_WEAK,
	NETWORK_STATE_CONNECTED_WIFI_OK,
	NETWORK_STATE_CONNECTED_WIFI_GOOD,
	NETWORK_STATE_CONNECTED_WIFI_EXCELLENT,
	NETWORK_STATE_CONNECTED_MOBILE_WEAK,
	NETWORK_STATE_CONNECTED_MOBILE_OK,
	NETWORK_STATE_CONNECTED_MOBILE_GOOD,
	NETWORK_STATE_CONNECTED_MOBILE_EXCELLENT,
	NETWORK_STATE_CONNECTING_WIFI,
	NETWORK_STATE_CONNECTING_MOBILE,
	NETWORK_STATE_CONNECTING_WIRED,
	NETWORK_STATE_CONNECTING_VPN,
	NETWORK_STATE_FAILED_WIRED,
	NETWORK_STATE_FAILED_WIFI,
	NETWORK_STATE_FAILED_MOBILE,
	NETWORK_STATE_FAILED_VPN
} NetworkState;

#define NETWORK_TYPE_STATE (network_state_get_type ())
typedef enum  {
	RF_KILL_DEVICE_TYPE_ALL = 0,
	RF_KILL_DEVICE_TYPE_WLAN,
	RF_KILL_DEVICE_TYPE_BLUETOOTH,
	RF_KILL_DEVICE_TYPE_UWB,
	RF_KILL_DEVICE_TYPE_WIMAX,
	RF_KILL_DEVICE_TYPE_WMAN
} RFKillDeviceType;

#define TYPE_RF_KILL_DEVICE_TYPE (rf_kill_device_type_get_type ())

#define TYPE_RF_KILL_DEVICE (rf_kill_device_get_type ())
#define RF_KILL_DEVICE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_RF_KILL_DEVICE, RFKillDevice))
#define RF_KILL_DEVICE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_RF_KILL_DEVICE, RFKillDeviceClass))
#define IS_RF_KILL_DEVICE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_RF_KILL_DEVICE))
#define IS_RF_KILL_DEVICE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_RF_KILL_DEVICE))
#define RF_KILL_DEVICE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_RF_KILL_DEVICE, RFKillDeviceClass))

typedef struct _RFKillDevice RFKillDevice;
typedef struct _RFKillDeviceClass RFKillDeviceClass;
typedef struct _RFKillDevicePrivate RFKillDevicePrivate;

#define TYPE_RF_KILL_MANAGER (rf_kill_manager_get_type ())
#define RF_KILL_MANAGER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_RF_KILL_MANAGER, RFKillManager))
#define RF_KILL_MANAGER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_RF_KILL_MANAGER, RFKillManagerClass))
#define IS_RF_KILL_MANAGER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_RF_KILL_MANAGER))
#define IS_RF_KILL_MANAGER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_RF_KILL_MANAGER))
#define RF_KILL_MANAGER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_RF_KILL_MANAGER, RFKillManagerClass))

typedef struct _RFKillManager RFKillManager;
typedef struct _RFKillManagerClass RFKillManagerClass;
typedef struct _RFKillManagerPrivate RFKillManagerPrivate;

#define NETWORK_TYPE_WIDGET_NM_INTERFACE (network_widget_nm_interface_get_type ())
#define NETWORK_WIDGET_NM_INTERFACE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), NETWORK_TYPE_WIDGET_NM_INTERFACE, NetworkWidgetNMInterface))
#define NETWORK_WIDGET_NM_INTERFACE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), NETWORK_TYPE_WIDGET_NM_INTERFACE, NetworkWidgetNMInterfaceClass))
#define NETWORK_IS_WIDGET_NM_INTERFACE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), NETWORK_TYPE_WIDGET_NM_INTERFACE))
#define NETWORK_IS_WIDGET_NM_INTERFACE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), NETWORK_TYPE_WIDGET_NM_INTERFACE))
#define NETWORK_WIDGET_NM_INTERFACE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), NETWORK_TYPE_WIDGET_NM_INTERFACE, NetworkWidgetNMInterfaceClass))

typedef struct _NetworkWidgetNMInterface NetworkWidgetNMInterface;
typedef struct _NetworkWidgetNMInterfaceClass NetworkWidgetNMInterfaceClass;
typedef struct _NetworkWidgetNMInterfacePrivate NetworkWidgetNMInterfacePrivate;

#define NETWORK_TYPE_ABSTRACT_ETHER_INTERFACE (network_abstract_ether_interface_get_type ())
#define NETWORK_ABSTRACT_ETHER_INTERFACE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), NETWORK_TYPE_ABSTRACT_ETHER_INTERFACE, NetworkAbstractEtherInterface))
#define NETWORK_ABSTRACT_ETHER_INTERFACE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), NETWORK_TYPE_ABSTRACT_ETHER_INTERFACE, NetworkAbstractEtherInterfaceClass))
#define NETWORK_IS_ABSTRACT_ETHER_INTERFACE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), NETWORK_TYPE_ABSTRACT_ETHER_INTERFACE))
#define NETWORK_IS_ABSTRACT_ETHER_INTERFACE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), NETWORK_TYPE_ABSTRACT_ETHER_INTERFACE))
#define NETWORK_ABSTRACT_ETHER_INTERFACE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), NETWORK_TYPE_ABSTRACT_ETHER_INTERFACE, NetworkAbstractEtherInterfaceClass))

typedef struct _NetworkAbstractEtherInterface NetworkAbstractEtherInterface;
typedef struct _NetworkAbstractEtherInterfaceClass NetworkAbstractEtherInterfaceClass;
typedef struct _NetworkAbstractEtherInterfacePrivate NetworkAbstractEtherInterfacePrivate;

#define NETWORK_TYPE_ABSTRACT_MODEM_INTERFACE (network_abstract_modem_interface_get_type ())
#define NETWORK_ABSTRACT_MODEM_INTERFACE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), NETWORK_TYPE_ABSTRACT_MODEM_INTERFACE, NetworkAbstractModemInterface))
#define NETWORK_ABSTRACT_MODEM_INTERFACE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), NETWORK_TYPE_ABSTRACT_MODEM_INTERFACE, NetworkAbstractModemInterfaceClass))
#define NETWORK_IS_ABSTRACT_MODEM_INTERFACE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), NETWORK_TYPE_ABSTRACT_MODEM_INTERFACE))
#define NETWORK_IS_ABSTRACT_MODEM_INTERFACE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), NETWORK_TYPE_ABSTRACT_MODEM_INTERFACE))
#define NETWORK_ABSTRACT_MODEM_INTERFACE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), NETWORK_TYPE_ABSTRACT_MODEM_INTERFACE, NetworkAbstractModemInterfaceClass))

typedef struct _NetworkAbstractModemInterface NetworkAbstractModemInterface;
typedef struct _NetworkAbstractModemInterfaceClass NetworkAbstractModemInterfaceClass;
typedef struct _NetworkAbstractModemInterfacePrivate NetworkAbstractModemInterfacePrivate;

#define NETWORK_TYPE_ABSTRACT_VPN_INTERFACE (network_abstract_vpn_interface_get_type ())
#define NETWORK_ABSTRACT_VPN_INTERFACE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), NETWORK_TYPE_ABSTRACT_VPN_INTERFACE, NetworkAbstractVpnInterface))
#define NETWORK_ABSTRACT_VPN_INTERFACE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), NETWORK_TYPE_ABSTRACT_VPN_INTERFACE, NetworkAbstractVpnInterfaceClass))
#define NETWORK_IS_ABSTRACT_VPN_INTERFACE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), NETWORK_TYPE_ABSTRACT_VPN_INTERFACE))
#define NETWORK_IS_ABSTRACT_VPN_INTERFACE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), NETWORK_TYPE_ABSTRACT_VPN_INTERFACE))
#define NETWORK_ABSTRACT_VPN_INTERFACE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), NETWORK_TYPE_ABSTRACT_VPN_INTERFACE, NetworkAbstractVpnInterfaceClass))

typedef struct _NetworkAbstractVpnInterface NetworkAbstractVpnInterface;
typedef struct _NetworkAbstractVpnInterfaceClass NetworkAbstractVpnInterfaceClass;
typedef struct _NetworkAbstractVpnInterfacePrivate NetworkAbstractVpnInterfacePrivate;

#define NETWORK_TYPE_VPN_MENU_ITEM (network_vpn_menu_item_get_type ())
#define NETWORK_VPN_MENU_ITEM(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), NETWORK_TYPE_VPN_MENU_ITEM, NetworkVpnMenuItem))
#define NETWORK_VPN_MENU_ITEM_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), NETWORK_TYPE_VPN_MENU_ITEM, NetworkVpnMenuItemClass))
#define NETWORK_IS_VPN_MENU_ITEM(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), NETWORK_TYPE_VPN_MENU_ITEM))
#define NETWORK_IS_VPN_MENU_ITEM_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), NETWORK_TYPE_VPN_MENU_ITEM))
#define NETWORK_VPN_MENU_ITEM_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), NETWORK_TYPE_VPN_MENU_ITEM, NetworkVpnMenuItemClass))

typedef struct _NetworkVpnMenuItem NetworkVpnMenuItem;
typedef struct _NetworkVpnMenuItemClass NetworkVpnMenuItemClass;

#define NETWORK_TYPE_ABSTRACT_WIFI_INTERFACE (network_abstract_wifi_interface_get_type ())
#define NETWORK_ABSTRACT_WIFI_INTERFACE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), NETWORK_TYPE_ABSTRACT_WIFI_INTERFACE, NetworkAbstractWifiInterface))
#define NETWORK_ABSTRACT_WIFI_INTERFACE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), NETWORK_TYPE_ABSTRACT_WIFI_INTERFACE, NetworkAbstractWifiInterfaceClass))
#define NETWORK_IS_ABSTRACT_WIFI_INTERFACE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), NETWORK_TYPE_ABSTRACT_WIFI_INTERFACE))
#define NETWORK_IS_ABSTRACT_WIFI_INTERFACE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), NETWORK_TYPE_ABSTRACT_WIFI_INTERFACE))
#define NETWORK_ABSTRACT_WIFI_INTERFACE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), NETWORK_TYPE_ABSTRACT_WIFI_INTERFACE, NetworkAbstractWifiInterfaceClass))

typedef struct _NetworkAbstractWifiInterface NetworkAbstractWifiInterface;
typedef struct _NetworkAbstractWifiInterfaceClass NetworkAbstractWifiInterfaceClass;
typedef struct _NetworkAbstractWifiInterfacePrivate NetworkAbstractWifiInterfacePrivate;

#define NETWORK_TYPE_WIFI_MENU_ITEM (network_wifi_menu_item_get_type ())
#define NETWORK_WIFI_MENU_ITEM(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), NETWORK_TYPE_WIFI_MENU_ITEM, NetworkWifiMenuItem))
#define NETWORK_WIFI_MENU_ITEM_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), NETWORK_TYPE_WIFI_MENU_ITEM, NetworkWifiMenuItemClass))
#define NETWORK_IS_WIFI_MENU_ITEM(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), NETWORK_TYPE_WIFI_MENU_ITEM))
#define NETWORK_IS_WIFI_MENU_ITEM_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), NETWORK_TYPE_WIFI_MENU_ITEM))
#define NETWORK_WIFI_MENU_ITEM_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), NETWORK_TYPE_WIFI_MENU_ITEM, NetworkWifiMenuItemClass))

typedef struct _NetworkWifiMenuItem NetworkWifiMenuItem;
typedef struct _NetworkWifiMenuItemClass NetworkWifiMenuItemClass;

#define NETWORK_TYPE_ABSTRACT_BLUETOOTH_INTERFACE (network_abstract_bluetooth_interface_get_type ())
#define NETWORK_ABSTRACT_BLUETOOTH_INTERFACE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), NETWORK_TYPE_ABSTRACT_BLUETOOTH_INTERFACE, NetworkAbstractBluetoothInterface))
#define NETWORK_ABSTRACT_BLUETOOTH_INTERFACE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), NETWORK_TYPE_ABSTRACT_BLUETOOTH_INTERFACE, NetworkAbstractBluetoothInterfaceClass))
#define NETWORK_IS_ABSTRACT_BLUETOOTH_INTERFACE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), NETWORK_TYPE_ABSTRACT_BLUETOOTH_INTERFACE))
#define NETWORK_IS_ABSTRACT_BLUETOOTH_INTERFACE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), NETWORK_TYPE_ABSTRACT_BLUETOOTH_INTERFACE))
#define NETWORK_ABSTRACT_BLUETOOTH_INTERFACE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), NETWORK_TYPE_ABSTRACT_BLUETOOTH_INTERFACE, NetworkAbstractBluetoothInterfaceClass))

typedef struct _NetworkAbstractBluetoothInterface NetworkAbstractBluetoothInterface;
typedef struct _NetworkAbstractBluetoothInterfaceClass NetworkAbstractBluetoothInterfaceClass;
typedef struct _NetworkAbstractBluetoothInterfacePrivate NetworkAbstractBluetoothInterfacePrivate;

#define NETWORK_WIDGETS_TYPE_NM_VISUALIZER (network_widgets_nm_visualizer_get_type ())
#define NETWORK_WIDGETS_NM_VISUALIZER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), NETWORK_WIDGETS_TYPE_NM_VISUALIZER, NetworkWidgetsNMVisualizer))
#define NETWORK_WIDGETS_NM_VISUALIZER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), NETWORK_WIDGETS_TYPE_NM_VISUALIZER, NetworkWidgetsNMVisualizerClass))
#define NETWORK_WIDGETS_IS_NM_VISUALIZER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), NETWORK_WIDGETS_TYPE_NM_VISUALIZER))
#define NETWORK_WIDGETS_IS_NM_VISUALIZER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), NETWORK_WIDGETS_TYPE_NM_VISUALIZER))
#define NETWORK_WIDGETS_NM_VISUALIZER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), NETWORK_WIDGETS_TYPE_NM_VISUALIZER, NetworkWidgetsNMVisualizerClass))

typedef struct _NetworkWidgetsNMVisualizer NetworkWidgetsNMVisualizer;
typedef struct _NetworkWidgetsNMVisualizerClass NetworkWidgetsNMVisualizerClass;
typedef struct _NetworkWidgetsNMVisualizerPrivate NetworkWidgetsNMVisualizerPrivate;
typedef struct _NetworkVpnMenuItemPrivate NetworkVpnMenuItemPrivate;

#define NETWORK_WIDGETS_TYPE_SEPARATOR (network_widgets_separator_get_type ())
#define NETWORK_WIDGETS_SEPARATOR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), NETWORK_WIDGETS_TYPE_SEPARATOR, NetworkWidgetsSeparator))
#define NETWORK_WIDGETS_SEPARATOR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), NETWORK_WIDGETS_TYPE_SEPARATOR, NetworkWidgetsSeparatorClass))
#define NETWORK_WIDGETS_IS_SEPARATOR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), NETWORK_WIDGETS_TYPE_SEPARATOR))
#define NETWORK_WIDGETS_IS_SEPARATOR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), NETWORK_WIDGETS_TYPE_SEPARATOR))
#define NETWORK_WIDGETS_SEPARATOR_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), NETWORK_WIDGETS_TYPE_SEPARATOR, NetworkWidgetsSeparatorClass))

typedef struct _NetworkWidgetsSeparator NetworkWidgetsSeparator;
typedef struct _NetworkWidgetsSeparatorClass NetworkWidgetsSeparatorClass;
typedef struct _NetworkWifiMenuItemPrivate NetworkWifiMenuItemPrivate;

#define NETWORK_WIDGETS_TYPE_DISPLAY_WIDGET (network_widgets_display_widget_get_type ())
#define NETWORK_WIDGETS_DISPLAY_WIDGET(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), NETWORK_WIDGETS_TYPE_DISPLAY_WIDGET, NetworkWidgetsDisplayWidget))
#define NETWORK_WIDGETS_DISPLAY_WIDGET_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), NETWORK_WIDGETS_TYPE_DISPLAY_WIDGET, NetworkWidgetsDisplayWidgetClass))
#define NETWORK_WIDGETS_IS_DISPLAY_WIDGET(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), NETWORK_WIDGETS_TYPE_DISPLAY_WIDGET))
#define NETWORK_WIDGETS_IS_DISPLAY_WIDGET_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), NETWORK_WIDGETS_TYPE_DISPLAY_WIDGET))
#define NETWORK_WIDGETS_DISPLAY_WIDGET_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), NETWORK_WIDGETS_TYPE_DISPLAY_WIDGET, NetworkWidgetsDisplayWidgetClass))

typedef struct _NetworkWidgetsDisplayWidget NetworkWidgetsDisplayWidget;
typedef struct _NetworkWidgetsDisplayWidgetClass NetworkWidgetsDisplayWidgetClass;
typedef struct _NetworkWidgetsDisplayWidgetPrivate NetworkWidgetsDisplayWidgetPrivate;

#define NETWORK_TYPE_ETHER_INTERFACE (network_ether_interface_get_type ())
#define NETWORK_ETHER_INTERFACE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), NETWORK_TYPE_ETHER_INTERFACE, NetworkEtherInterface))
#define NETWORK_ETHER_INTERFACE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), NETWORK_TYPE_ETHER_INTERFACE, NetworkEtherInterfaceClass))
#define NETWORK_IS_ETHER_INTERFACE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), NETWORK_TYPE_ETHER_INTERFACE))
#define NETWORK_IS_ETHER_INTERFACE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), NETWORK_TYPE_ETHER_INTERFACE))
#define NETWORK_ETHER_INTERFACE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), NETWORK_TYPE_ETHER_INTERFACE, NetworkEtherInterfaceClass))

typedef struct _NetworkEtherInterface NetworkEtherInterface;
typedef struct _NetworkEtherInterfaceClass NetworkEtherInterfaceClass;
typedef struct _NetworkEtherInterfacePrivate NetworkEtherInterfacePrivate;

#define NETWORK_TYPE_MODEM_INTERFACE (network_modem_interface_get_type ())
#define NETWORK_MODEM_INTERFACE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), NETWORK_TYPE_MODEM_INTERFACE, NetworkModemInterface))
#define NETWORK_MODEM_INTERFACE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), NETWORK_TYPE_MODEM_INTERFACE, NetworkModemInterfaceClass))
#define NETWORK_IS_MODEM_INTERFACE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), NETWORK_TYPE_MODEM_INTERFACE))
#define NETWORK_IS_MODEM_INTERFACE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), NETWORK_TYPE_MODEM_INTERFACE))
#define NETWORK_MODEM_INTERFACE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), NETWORK_TYPE_MODEM_INTERFACE, NetworkModemInterfaceClass))

typedef struct _NetworkModemInterface NetworkModemInterface;
typedef struct _NetworkModemInterfaceClass NetworkModemInterfaceClass;
typedef struct _NetworkModemInterfacePrivate NetworkModemInterfacePrivate;

#define NETWORK_TYPE_VPN_INTERFACE (network_vpn_interface_get_type ())
#define NETWORK_VPN_INTERFACE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), NETWORK_TYPE_VPN_INTERFACE, NetworkVpnInterface))
#define NETWORK_VPN_INTERFACE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), NETWORK_TYPE_VPN_INTERFACE, NetworkVpnInterfaceClass))
#define NETWORK_IS_VPN_INTERFACE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), NETWORK_TYPE_VPN_INTERFACE))
#define NETWORK_IS_VPN_INTERFACE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), NETWORK_TYPE_VPN_INTERFACE))
#define NETWORK_VPN_INTERFACE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), NETWORK_TYPE_VPN_INTERFACE, NetworkVpnInterfaceClass))

typedef struct _NetworkVpnInterface NetworkVpnInterface;
typedef struct _NetworkVpnInterfaceClass NetworkVpnInterfaceClass;
typedef struct _NetworkVpnInterfacePrivate NetworkVpnInterfacePrivate;

#define NETWORK_TYPE_WIFI_INTERFACE (network_wifi_interface_get_type ())
#define NETWORK_WIFI_INTERFACE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), NETWORK_TYPE_WIFI_INTERFACE, NetworkWifiInterface))
#define NETWORK_WIFI_INTERFACE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), NETWORK_TYPE_WIFI_INTERFACE, NetworkWifiInterfaceClass))
#define NETWORK_IS_WIFI_INTERFACE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), NETWORK_TYPE_WIFI_INTERFACE))
#define NETWORK_IS_WIFI_INTERFACE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), NETWORK_TYPE_WIFI_INTERFACE))
#define NETWORK_WIFI_INTERFACE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), NETWORK_TYPE_WIFI_INTERFACE, NetworkWifiInterfaceClass))

typedef struct _NetworkWifiInterface NetworkWifiInterface;
typedef struct _NetworkWifiInterfaceClass NetworkWifiInterfaceClass;
typedef struct _NetworkWifiInterfacePrivate NetworkWifiInterfacePrivate;

#define NETWORK_TYPE_BLUETOOTH_INTERFACE (network_bluetooth_interface_get_type ())
#define NETWORK_BLUETOOTH_INTERFACE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), NETWORK_TYPE_BLUETOOTH_INTERFACE, NetworkBluetoothInterface))
#define NETWORK_BLUETOOTH_INTERFACE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), NETWORK_TYPE_BLUETOOTH_INTERFACE, NetworkBluetoothInterfaceClass))
#define NETWORK_IS_BLUETOOTH_INTERFACE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), NETWORK_TYPE_BLUETOOTH_INTERFACE))
#define NETWORK_IS_BLUETOOTH_INTERFACE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), NETWORK_TYPE_BLUETOOTH_INTERFACE))
#define NETWORK_BLUETOOTH_INTERFACE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), NETWORK_TYPE_BLUETOOTH_INTERFACE, NetworkBluetoothInterfaceClass))

typedef struct _NetworkBluetoothInterface NetworkBluetoothInterface;
typedef struct _NetworkBluetoothInterfaceClass NetworkBluetoothInterfaceClass;
typedef struct _NetworkBluetoothInterfacePrivate NetworkBluetoothInterfacePrivate;

#define NETWORK_WIDGETS_TYPE_POPOVER_WIDGET (network_widgets_popover_widget_get_type ())
#define NETWORK_WIDGETS_POPOVER_WIDGET(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), NETWORK_WIDGETS_TYPE_POPOVER_WIDGET, NetworkWidgetsPopoverWidget))
#define NETWORK_WIDGETS_POPOVER_WIDGET_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), NETWORK_WIDGETS_TYPE_POPOVER_WIDGET, NetworkWidgetsPopoverWidgetClass))
#define NETWORK_WIDGETS_IS_POPOVER_WIDGET(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), NETWORK_WIDGETS_TYPE_POPOVER_WIDGET))
#define NETWORK_WIDGETS_IS_POPOVER_WIDGET_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), NETWORK_WIDGETS_TYPE_POPOVER_WIDGET))
#define NETWORK_WIDGETS_POPOVER_WIDGET_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), NETWORK_WIDGETS_TYPE_POPOVER_WIDGET, NetworkWidgetsPopoverWidgetClass))

typedef struct _NetworkWidgetsPopoverWidget NetworkWidgetsPopoverWidget;
typedef struct _NetworkWidgetsPopoverWidgetClass NetworkWidgetsPopoverWidgetClass;
typedef struct _NetworkWidgetsPopoverWidgetPrivate NetworkWidgetsPopoverWidgetPrivate;
typedef struct _NetworkWidgetsSeparatorPrivate NetworkWidgetsSeparatorPrivate;

#define NETWORK_WIDGETS_TYPE_SWITCH (network_widgets_switch_get_type ())
#define NETWORK_WIDGETS_SWITCH(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), NETWORK_WIDGETS_TYPE_SWITCH, NetworkWidgetsSwitch))
#define NETWORK_WIDGETS_SWITCH_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), NETWORK_WIDGETS_TYPE_SWITCH, NetworkWidgetsSwitchClass))
#define NETWORK_WIDGETS_IS_SWITCH(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), NETWORK_WIDGETS_TYPE_SWITCH))
#define NETWORK_WIDGETS_IS_SWITCH_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), NETWORK_WIDGETS_TYPE_SWITCH))
#define NETWORK_WIDGETS_SWITCH_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), NETWORK_WIDGETS_TYPE_SWITCH, NetworkWidgetsSwitchClass))

typedef struct _NetworkWidgetsSwitch NetworkWidgetsSwitch;
typedef struct _NetworkWidgetsSwitchClass NetworkWidgetsSwitchClass;
typedef struct _NetworkWidgetsSwitchPrivate NetworkWidgetsSwitchPrivate;

#define NETWORK_WIDGETS_TYPE_OVERLAY_ICON (network_widgets_overlay_icon_get_type ())
#define NETWORK_WIDGETS_OVERLAY_ICON(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), NETWORK_WIDGETS_TYPE_OVERLAY_ICON, NetworkWidgetsOverlayIcon))
#define NETWORK_WIDGETS_OVERLAY_ICON_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), NETWORK_WIDGETS_TYPE_OVERLAY_ICON, NetworkWidgetsOverlayIconClass))
#define NETWORK_WIDGETS_IS_OVERLAY_ICON(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), NETWORK_WIDGETS_TYPE_OVERLAY_ICON))
#define NETWORK_WIDGETS_IS_OVERLAY_ICON_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), NETWORK_WIDGETS_TYPE_OVERLAY_ICON))
#define NETWORK_WIDGETS_OVERLAY_ICON_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), NETWORK_WIDGETS_TYPE_OVERLAY_ICON, NetworkWidgetsOverlayIconClass))

typedef struct _NetworkWidgetsOverlayIcon NetworkWidgetsOverlayIcon;
typedef struct _NetworkWidgetsOverlayIconClass NetworkWidgetsOverlayIconClass;
typedef struct _NetworkWidgetsOverlayIconPrivate NetworkWidgetsOverlayIconPrivate;

struct _NetworkPlugin {
	PeasExtensionBase parent_instance;
	NetworkPluginPrivate * priv;
};

struct _NetworkPluginClass {
	PeasExtensionBaseClass parent_class;
};

struct _NetworkApplet {
	BudgieApplet parent_instance;
	NetworkAppletPrivate * priv;
	GtkEventBox* widget;
};

struct _NetworkAppletClass {
	BudgieAppletClass parent_class;
};

struct _RFKillDevice {
	GTypeInstance parent_instance;
	volatile int ref_count;
	RFKillDevicePrivate * priv;
	RFKillManager* manager;
	guint32 idx;
	RFKillDeviceType _device_type;
	gboolean _software_lock;
	gboolean _hardware_lock;
};

struct _RFKillDeviceClass {
	GTypeClass parent_class;
	void (*finalize) (RFKillDevice *self);
};

struct _RFKillManager {
	GObject parent_instance;
	RFKillManagerPrivate * priv;
	gint fd;
};

struct _RFKillManagerClass {
	GObjectClass parent_class;
};

struct _NetworkWidgetNMInterface {
	GtkBox parent_instance;
	NetworkWidgetNMInterfacePrivate * priv;
	NMDevice* device;
};

struct _NetworkWidgetNMInterfaceClass {
	GtkBoxClass parent_class;
	void (*update) (NetworkWidgetNMInterface* self);
	void (*update_name) (NetworkWidgetNMInterface* self, gint count);
};

struct _NetworkAbstractEtherInterface {
	NetworkWidgetNMInterface parent_instance;
	NetworkAbstractEtherInterfacePrivate * priv;
};

struct _NetworkAbstractEtherInterfaceClass {
	NetworkWidgetNMInterfaceClass parent_class;
};

struct _NetworkAbstractModemInterface {
	NetworkWidgetNMInterface parent_instance;
	NetworkAbstractModemInterfacePrivate * priv;
};

struct _NetworkAbstractModemInterfaceClass {
	NetworkWidgetNMInterfaceClass parent_class;
};

struct _NetworkAbstractVpnInterface {
	NetworkWidgetNMInterface parent_instance;
	NetworkAbstractVpnInterfacePrivate * priv;
	NMVpnConnection* active_vpn_connection;
	GtkListBox* vpn_list;
	NMClient* nm_client;
	NetworkVpnMenuItem* blank_item;
};

struct _NetworkAbstractVpnInterfaceClass {
	NetworkWidgetNMInterfaceClass parent_class;
	void (*vpn_activate_cb) (NetworkAbstractVpnInterface* self, NetworkVpnMenuItem* i);
	void (*vpn_deactivate_cb) (NetworkAbstractVpnInterface* self);
};

struct _NetworkAbstractWifiInterface {
	NetworkWidgetNMInterface parent_instance;
	NetworkAbstractWifiInterfacePrivate * priv;
	RFKillManager* rfkill;
	NMDeviceWifi* wifi_device;
	NMAccessPoint* active_ap;
	GtkListBox* wifi_list;
	NMClient* nm_client;
	NetworkWifiMenuItem* blank_item;
	GtkStack* placeholder;
	gboolean locked;
	gboolean software_locked;
	gboolean hardware_locked;
};

struct _NetworkAbstractWifiInterfaceClass {
	NetworkWidgetNMInterfaceClass parent_class;
	void (*wifi_activate_cb) (NetworkAbstractWifiInterface* self, NetworkWifiMenuItem* i);
};

struct _NetworkAbstractBluetoothInterface {
	NetworkWidgetNMInterface parent_instance;
	NetworkAbstractBluetoothInterfacePrivate * priv;
};

struct _NetworkAbstractBluetoothInterfaceClass {
	NetworkWidgetNMInterfaceClass parent_class;
};

struct _NetworkWidgetsNMVisualizer {
	GtkGrid parent_instance;
	NetworkWidgetsNMVisualizerPrivate * priv;
	NMClient* nm_client;
	NMVpnConnection* active_vpn_connection;
	GList* network_interface;
};

struct _NetworkWidgetsNMVisualizerClass {
	GtkGridClass parent_class;
	void (*build_ui) (NetworkWidgetsNMVisualizer* self);
	void (*add_interface) (NetworkWidgetsNMVisualizer* self, NetworkWidgetNMInterface* widget_interface);
	void (*remove_interface) (NetworkWidgetsNMVisualizer* self, NetworkWidgetNMInterface* widget_interface);
};

struct _NetworkVpnMenuItem {
	GtkListBoxRow parent_instance;
	NetworkVpnMenuItemPrivate * priv;
};

struct _NetworkVpnMenuItemClass {
	GtkListBoxRowClass parent_class;
};

struct _NetworkWifiMenuItem {
	GtkListBoxRow parent_instance;
	NetworkWifiMenuItemPrivate * priv;
};

struct _NetworkWifiMenuItemClass {
	GtkListBoxRowClass parent_class;
};

struct _NetworkWidgetsDisplayWidget {
	GtkBox parent_instance;
	NetworkWidgetsDisplayWidgetPrivate * priv;
};

struct _NetworkWidgetsDisplayWidgetClass {
	GtkBoxClass parent_class;
};

struct _NetworkEtherInterface {
	NetworkAbstractEtherInterface parent_instance;
	NetworkEtherInterfacePrivate * priv;
};

struct _NetworkEtherInterfaceClass {
	NetworkAbstractEtherInterfaceClass parent_class;
};

struct _NetworkModemInterface {
	NetworkAbstractModemInterface parent_instance;
	NetworkModemInterfacePrivate * priv;
};

struct _NetworkModemInterfaceClass {
	NetworkAbstractModemInterfaceClass parent_class;
};

struct _NetworkVpnInterface {
	NetworkAbstractVpnInterface parent_instance;
	NetworkVpnInterfacePrivate * priv;
};

struct _NetworkVpnInterfaceClass {
	NetworkAbstractVpnInterfaceClass parent_class;
};

struct _NetworkWifiInterface {
	NetworkAbstractWifiInterface parent_instance;
	NetworkWifiInterfacePrivate * priv;
};

struct _NetworkWifiInterfaceClass {
	NetworkAbstractWifiInterfaceClass parent_class;
};

struct _NetworkBluetoothInterface {
	NetworkAbstractBluetoothInterface parent_instance;
	NetworkBluetoothInterfacePrivate * priv;
};

struct _NetworkBluetoothInterfaceClass {
	NetworkAbstractBluetoothInterfaceClass parent_class;
};

struct _NetworkWidgetsPopoverWidget {
	NetworkWidgetsNMVisualizer parent_instance;
	NetworkWidgetsPopoverWidgetPrivate * priv;
};

struct _NetworkWidgetsPopoverWidgetClass {
	NetworkWidgetsNMVisualizerClass parent_class;
};

struct _NetworkWidgetsSeparator {
	GtkSeparator parent_instance;
	NetworkWidgetsSeparatorPrivate * priv;
};

struct _NetworkWidgetsSeparatorClass {
	GtkSeparatorClass parent_class;
};

struct _NetworkWidgetsSwitch {
	GtkBox parent_instance;
	NetworkWidgetsSwitchPrivate * priv;
};

struct _NetworkWidgetsSwitchClass {
	GtkBoxClass parent_class;
};

struct _NetworkWidgetsOverlayIcon {
	GtkOverlay parent_instance;
	NetworkWidgetsOverlayIconPrivate * priv;
};

struct _NetworkWidgetsOverlayIconClass {
	GtkOverlayClass parent_class;
};

GType network_plugin_register_type (GTypeModule * module);
VALA_EXTERN GType network_plugin_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (NetworkPlugin, g_object_unref)
VALA_EXTERN NetworkPlugin* network_plugin_new (void);
VALA_EXTERN NetworkPlugin* network_plugin_construct (GType object_type);
GType network_applet_register_type (GTypeModule * module);
VALA_EXTERN GType network_applet_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (NetworkApplet, g_object_unref)
VALA_EXTERN NetworkApplet* network_applet_new (void);
VALA_EXTERN NetworkApplet* network_applet_construct (GType object_type);
VALA_EXTERN void peas_register_types (GTypeModule* module);
VALA_EXTERN GType network_state_get_type (void) G_GNUC_CONST ;
VALA_EXTERN gint network_state_get_priority (NetworkState self);
VALA_EXTERN GType rf_kill_device_type_get_type (void) G_GNUC_CONST ;
VALA_EXTERN gpointer rf_kill_device_ref (gpointer instance);
VALA_EXTERN void rf_kill_device_unref (gpointer instance);
VALA_EXTERN GParamSpec* param_spec_rf_kill_device (const gchar* name,
                                       const gchar* nick,
                                       const gchar* blurb,
                                       GType object_type,
                                       GParamFlags flags);
VALA_EXTERN void value_set_rf_kill_device (GValue* value,
                               gpointer v_object);
VALA_EXTERN void value_take_rf_kill_device (GValue* value,
                                gpointer v_object);
VALA_EXTERN gpointer value_get_rf_kill_device (const GValue* value);
GType rf_kill_device_register_type (GTypeModule * module);
VALA_EXTERN GType rf_kill_device_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (RFKillDevice, rf_kill_device_unref)
GType rf_kill_manager_register_type (GTypeModule * module);
VALA_EXTERN GType rf_kill_manager_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (RFKillManager, g_object_unref)
VALA_EXTERN gboolean rf_kill_device_get_software_lock (RFKillDevice* self);
VALA_EXTERN void rf_kill_device_set_software_lock (RFKillDevice* self,
                                       gboolean value);
VALA_EXTERN gboolean rf_kill_device_get_hardware_lock (RFKillDevice* self);
VALA_EXTERN RFKillDeviceType rf_kill_device_get_device_type (RFKillDevice* self);
VALA_EXTERN RFKillManager* rf_kill_manager_new (void);
VALA_EXTERN RFKillManager* rf_kill_manager_construct (GType object_type);
VALA_EXTERN void rf_kill_manager_open (RFKillManager* self);
VALA_EXTERN GList* rf_kill_manager_get_devices (RFKillManager* self);
VALA_EXTERN void rf_kill_manager_set_software_lock (RFKillManager* self,
                                        RFKillDeviceType type,
                                        gboolean lock_enabled);
GType network_widget_nm_interface_register_type (GTypeModule * module);
VALA_EXTERN GType network_widget_nm_interface_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (NetworkWidgetNMInterface, g_object_unref)
GType network_abstract_ether_interface_register_type (GTypeModule * module);
VALA_EXTERN GType network_abstract_ether_interface_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (NetworkAbstractEtherInterface, g_object_unref)
VALA_EXTERN NetworkAbstractEtherInterface* network_abstract_ether_interface_construct (GType object_type);
GType network_abstract_modem_interface_register_type (GTypeModule * module);
VALA_EXTERN GType network_abstract_modem_interface_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (NetworkAbstractModemInterface, g_object_unref)
VALA_EXTERN NetworkAbstractModemInterface* network_abstract_modem_interface_construct (GType object_type);
GType network_abstract_vpn_interface_register_type (GTypeModule * module);
VALA_EXTERN GType network_abstract_vpn_interface_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (NetworkAbstractVpnInterface, g_object_unref)
GType network_vpn_menu_item_register_type (GTypeModule * module);
VALA_EXTERN GType network_vpn_menu_item_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (NetworkVpnMenuItem, g_object_unref)
VALA_EXTERN void network_abstract_vpn_interface_init_vpn_interface (NetworkAbstractVpnInterface* self,
                                                        NMClient* _nm_client);
VALA_EXTERN void network_abstract_vpn_interface_update_active_connection (NetworkAbstractVpnInterface* self);
VALA_EXTERN void network_abstract_vpn_interface_vpn_activate_cb (NetworkAbstractVpnInterface* self,
                                                     NetworkVpnMenuItem* i);
VALA_EXTERN void network_abstract_vpn_interface_vpn_deactivate_cb (NetworkAbstractVpnInterface* self);
VALA_EXTERN NetworkAbstractVpnInterface* network_abstract_vpn_interface_construct (GType object_type);
VALA_EXTERN NetworkVpnMenuItem* network_abstract_vpn_interface_get_active_vpn_item (NetworkAbstractVpnInterface* self);
VALA_EXTERN void network_abstract_vpn_interface_set_active_vpn_item (NetworkAbstractVpnInterface* self,
                                                         NetworkVpnMenuItem* value);
VALA_EXTERN NetworkState network_abstract_vpn_interface_get_vpn_state (NetworkAbstractVpnInterface* self);
VALA_EXTERN void network_abstract_vpn_interface_set_vpn_state (NetworkAbstractVpnInterface* self,
                                                   NetworkState value);
GType network_abstract_wifi_interface_register_type (GTypeModule * module);
VALA_EXTERN GType network_abstract_wifi_interface_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (NetworkAbstractWifiInterface, g_object_unref)
GType network_wifi_menu_item_register_type (GTypeModule * module);
VALA_EXTERN GType network_wifi_menu_item_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (NetworkWifiMenuItem, g_object_unref)
VALA_EXTERN void network_abstract_wifi_interface_init_wifi_interface (NetworkAbstractWifiInterface* self,
                                                          NMClient* nm_client,
                                                          NMDevice* _device);
VALA_EXTERN GtkLabel* network_abstract_wifi_interface_construct_placeholder_label (NetworkAbstractWifiInterface* self,
                                                                       const gchar* text,
                                                                       gboolean title);
VALA_EXTERN void network_abstract_wifi_interface_wifi_activate_cb (NetworkAbstractWifiInterface* self,
                                                       NetworkWifiMenuItem* i);
VALA_EXTERN NetworkAbstractWifiInterface* network_abstract_wifi_interface_construct (GType object_type);
VALA_EXTERN NetworkWifiMenuItem* network_abstract_wifi_interface_get_active_wifi_item (NetworkAbstractWifiInterface* self);
VALA_EXTERN void network_abstract_wifi_interface_set_active_wifi_item (NetworkAbstractWifiInterface* self,
                                                           NetworkWifiMenuItem* value);
GType network_abstract_bluetooth_interface_register_type (GTypeModule * module);
VALA_EXTERN GType network_abstract_bluetooth_interface_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (NetworkAbstractBluetoothInterface, g_object_unref)
VALA_EXTERN NetworkAbstractBluetoothInterface* network_abstract_bluetooth_interface_construct (GType object_type);
GType network_widgets_nm_visualizer_register_type (GTypeModule * module);
VALA_EXTERN GType network_widgets_nm_visualizer_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (NetworkWidgetsNMVisualizer, g_object_unref)
VALA_EXTERN void network_widgets_nm_visualizer_build_ui (NetworkWidgetsNMVisualizer* self);
VALA_EXTERN void network_widgets_nm_visualizer_add_interface (NetworkWidgetsNMVisualizer* self,
                                                  NetworkWidgetNMInterface* widget_interface);
VALA_EXTERN void network_widgets_nm_visualizer_remove_interface (NetworkWidgetsNMVisualizer* self,
                                                     NetworkWidgetNMInterface* widget_interface);
VALA_EXTERN NetworkWidgetsNMVisualizer* network_widgets_nm_visualizer_construct (GType object_type);
VALA_EXTERN gboolean network_widgets_nm_visualizer_get_secure (NetworkWidgetsNMVisualizer* self);
VALA_EXTERN const gchar* network_widgets_nm_visualizer_get_extra_info (NetworkWidgetsNMVisualizer* self);
VALA_EXTERN void network_widgets_nm_visualizer_set_extra_info (NetworkWidgetsNMVisualizer* self,
                                                   const gchar* value);
VALA_EXTERN NetworkState network_widgets_nm_visualizer_get_state (NetworkWidgetsNMVisualizer* self);
VALA_EXTERN NetworkVpnMenuItem* network_vpn_menu_item_new (NMRemoteConnection* _connection);
VALA_EXTERN NetworkVpnMenuItem* network_vpn_menu_item_construct (GType object_type,
                                                     NMRemoteConnection* _connection);
VALA_EXTERN NetworkVpnMenuItem* network_vpn_menu_item_new_blank (void);
VALA_EXTERN NetworkVpnMenuItem* network_vpn_menu_item_construct_blank (GType object_type);
VALA_EXTERN void network_vpn_menu_item_set_active (NetworkVpnMenuItem* self,
                                       gboolean active);
VALA_EXTERN NMRemoteConnection* network_vpn_menu_item_get_connection (NetworkVpnMenuItem* self);
VALA_EXTERN const gchar* network_vpn_menu_item_get_id (NetworkVpnMenuItem* self);
VALA_EXTERN NetworkState network_vpn_menu_item_get_vpn_state (NetworkVpnMenuItem* self);
VALA_EXTERN void network_vpn_menu_item_set_vpn_state (NetworkVpnMenuItem* self,
                                          NetworkState value);
VALA_EXTERN GtkRadioButton* network_vpn_menu_item_get_radio_button (NetworkVpnMenuItem* self);
VALA_EXTERN gboolean network_widget_nm_interface_is_device (NetworkWidgetNMInterface* self,
                                                NMDevice* device);
VALA_EXTERN void network_widget_nm_interface_update (NetworkWidgetNMInterface* self);
VALA_EXTERN void network_widget_nm_interface_update_name (NetworkWidgetNMInterface* self,
                                              gint count);
VALA_EXTERN NetworkWidgetNMInterface* network_widget_nm_interface_construct (GType object_type);
VALA_EXTERN NetworkState network_widget_nm_interface_get_state (NetworkWidgetNMInterface* self);
VALA_EXTERN void network_widget_nm_interface_set_state (NetworkWidgetNMInterface* self,
                                            NetworkState value);
VALA_EXTERN const gchar* network_widget_nm_interface_get_extra_info (NetworkWidgetNMInterface* self);
VALA_EXTERN void network_widget_nm_interface_set_extra_info (NetworkWidgetNMInterface* self,
                                                 const gchar* value);
VALA_EXTERN const gchar* network_widget_nm_interface_get_display_title (NetworkWidgetNMInterface* self);
VALA_EXTERN void network_widget_nm_interface_set_display_title (NetworkWidgetNMInterface* self,
                                                    const gchar* value);
GType network_widgets_separator_register_type (GTypeModule * module);
VALA_EXTERN GType network_widgets_separator_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (NetworkWidgetsSeparator, g_object_unref)
VALA_EXTERN NetworkWidgetsSeparator* network_widget_nm_interface_get_sep (NetworkWidgetNMInterface* self);
VALA_EXTERN NetworkWifiMenuItem* network_wifi_menu_item_new (NMAccessPoint* ap,
                                                 NetworkWifiMenuItem* previous);
VALA_EXTERN NetworkWifiMenuItem* network_wifi_menu_item_construct (GType object_type,
                                                       NMAccessPoint* ap,
                                                       NetworkWifiMenuItem* previous);
VALA_EXTERN NetworkWifiMenuItem* network_wifi_menu_item_new_blank (void);
VALA_EXTERN NetworkWifiMenuItem* network_wifi_menu_item_construct_blank (GType object_type);
VALA_EXTERN void network_wifi_menu_item_set_active (NetworkWifiMenuItem* self,
                                        gboolean active);
VALA_EXTERN void network_wifi_menu_item_add_ap (NetworkWifiMenuItem* self,
                                    NMAccessPoint* ap);
VALA_EXTERN gboolean network_wifi_menu_item_remove_ap (NetworkWifiMenuItem* self,
                                           NMAccessPoint* ap);
VALA_EXTERN NMAccessPoint* network_wifi_menu_item_get_nearest_ap (NetworkWifiMenuItem* self);
VALA_EXTERN NetworkState network_wifi_menu_item_get_state (NetworkWifiMenuItem* self);
VALA_EXTERN void network_wifi_menu_item_set_state (NetworkWifiMenuItem* self,
                                       NetworkState value);
VALA_EXTERN GBytes* network_wifi_menu_item_get_ssid (NetworkWifiMenuItem* self);
VALA_EXTERN guint8 network_wifi_menu_item_get_strength (NetworkWifiMenuItem* self);
GType network_widgets_display_widget_register_type (GTypeModule * module);
VALA_EXTERN GType network_widgets_display_widget_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (NetworkWidgetsDisplayWidget, g_object_unref)
VALA_EXTERN NetworkWidgetsDisplayWidget* network_widgets_display_widget_new (void);
VALA_EXTERN NetworkWidgetsDisplayWidget* network_widgets_display_widget_construct (GType object_type);
VALA_EXTERN void network_widgets_display_widget_update_state (NetworkWidgetsDisplayWidget* self,
                                                  NetworkState state,
                                                  gboolean secure,
                                                  const gchar* extra_info);
GType network_ether_interface_register_type (GTypeModule * module);
VALA_EXTERN GType network_ether_interface_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (NetworkEtherInterface, g_object_unref)
VALA_EXTERN NetworkEtherInterface* network_ether_interface_new (NMClient* nm_client,
                                                    NMDevice* _device);
VALA_EXTERN NetworkEtherInterface* network_ether_interface_construct (GType object_type,
                                                          NMClient* nm_client,
                                                          NMDevice* _device);
GType network_modem_interface_register_type (GTypeModule * module);
VALA_EXTERN GType network_modem_interface_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (NetworkModemInterface, g_object_unref)
VALA_EXTERN NetworkModemInterface* network_modem_interface_new (NMClient* nm_client,
                                                    NMDevice* _device);
VALA_EXTERN NetworkModemInterface* network_modem_interface_construct (GType object_type,
                                                          NMClient* nm_client,
                                                          NMDevice* _device);
VALA_EXTERN void network_modem_interface_prepare (NetworkModemInterface* self,
                                      GAsyncReadyCallback _callback_,
                                      gpointer _user_data_);
VALA_EXTERN void network_modem_interface_prepare_finish (NetworkModemInterface* self,
                                             GAsyncResult* _res_);
VALA_EXTERN guint32 network_modem_interface_get_signal_quality (NetworkModemInterface* self);
GType network_vpn_interface_register_type (GTypeModule * module);
VALA_EXTERN GType network_vpn_interface_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (NetworkVpnInterface, g_object_unref)
VALA_EXTERN NetworkVpnInterface* network_vpn_interface_new (NMClient* nm_client);
VALA_EXTERN NetworkVpnInterface* network_vpn_interface_construct (GType object_type,
                                                      NMClient* nm_client);
GType network_wifi_interface_register_type (GTypeModule * module);
VALA_EXTERN GType network_wifi_interface_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (NetworkWifiInterface, g_object_unref)
VALA_EXTERN NetworkWifiInterface* network_wifi_interface_new (NMClient* nm_client,
                                                  NMDevice* _device);
VALA_EXTERN NetworkWifiInterface* network_wifi_interface_construct (GType object_type,
                                                        NMClient* nm_client,
                                                        NMDevice* _device);
VALA_EXTERN void network_wifi_interface_start_scanning (NetworkWifiInterface* self);
VALA_EXTERN void network_wifi_interface_cancel_scanning (NetworkWifiInterface* self);
VALA_EXTERN gboolean network_wifi_interface_get_hidden_sensitivity (NetworkWifiInterface* self);
VALA_EXTERN void network_wifi_interface_set_hidden_sensitivity (NetworkWifiInterface* self,
                                                    gboolean value);
GType network_bluetooth_interface_register_type (GTypeModule * module);
VALA_EXTERN GType network_bluetooth_interface_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (NetworkBluetoothInterface, g_object_unref)
VALA_EXTERN NetworkBluetoothInterface* network_bluetooth_interface_new (NMClient* nm_client,
                                                            NMDevice* _device);
VALA_EXTERN NetworkBluetoothInterface* network_bluetooth_interface_construct (GType object_type,
                                                                  NMClient* nm_client,
                                                                  NMDevice* _device);
GType network_widgets_popover_widget_register_type (GTypeModule * module);
VALA_EXTERN GType network_widgets_popover_widget_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (NetworkWidgetsPopoverWidget, g_object_unref)
VALA_EXTERN void network_widgets_popover_widget_opened (NetworkWidgetsPopoverWidget* self);
VALA_EXTERN void network_widgets_popover_widget_closed (NetworkWidgetsPopoverWidget* self);
VALA_EXTERN NetworkWidgetsPopoverWidget* network_widgets_popover_widget_new (void);
VALA_EXTERN NetworkWidgetsPopoverWidget* network_widgets_popover_widget_construct (GType object_type);
VALA_EXTERN NetworkWidgetsSeparator* network_widgets_separator_new (void);
VALA_EXTERN NetworkWidgetsSeparator* network_widgets_separator_construct (GType object_type);
GType network_widgets_switch_register_type (GTypeModule * module);
VALA_EXTERN GType network_widgets_switch_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (NetworkWidgetsSwitch, g_object_unref)
VALA_EXTERN NetworkWidgetsSwitch* network_widgets_switch_new (const gchar* caption);
VALA_EXTERN NetworkWidgetsSwitch* network_widgets_switch_construct (GType object_type,
                                                        const gchar* caption);
VALA_EXTERN gboolean network_widgets_switch_get_active (NetworkWidgetsSwitch* self);
VALA_EXTERN void network_widgets_switch_set_active (NetworkWidgetsSwitch* self,
                                        gboolean value);
VALA_EXTERN gchar* network_widgets_switch_get_caption (NetworkWidgetsSwitch* self);
VALA_EXTERN void network_widgets_switch_set_caption (NetworkWidgetsSwitch* self,
                                         const gchar* value);
GType network_widgets_overlay_icon_register_type (GTypeModule * module);
VALA_EXTERN GType network_widgets_overlay_icon_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (NetworkWidgetsOverlayIcon, g_object_unref)
VALA_EXTERN NetworkWidgetsOverlayIcon* network_widgets_overlay_icon_new (const gchar* icon_name);
VALA_EXTERN NetworkWidgetsOverlayIcon* network_widgets_overlay_icon_construct (GType object_type,
                                                                   const gchar* icon_name);
VALA_EXTERN void network_widgets_overlay_icon_set_name (NetworkWidgetsOverlayIcon* self,
                                            const gchar* main_image_icon_name,
                                            const gchar* overlay_image_icon_name);

G_END_DECLS

#endif
