/* io.elementary.settings.sharing.h generated by valac 0.56.18-dirty, the Vala compiler, do not modify */

#ifndef __SRC_IO_ELEMENTARY_SETTINGS_SHARING_H__
#define __SRC_IO_ELEMENTARY_SETTINGS_SHARING_H__

#include <switchboard.h>
#include <glib-object.h>
#include <gio/gio.h>
#include <gmodule.h>
#include <glib.h>
#include <stdlib.h>
#include <string.h>

G_BEGIN_DECLS

#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 SHARING_BACKEND_SHARING_DBUS_INTERFACE_SERVICE_NAME "org.gnome.SettingsDaemon.Sharing"
#define SHARING_BACKEND_SHARING_DBUS_INTERFACE_OBJECT_PATH "/org/gnome/SettingsDaemon/Sharing"
#define GETTEXT_PACKAGE "io.elementary.settings.sharing"
#define LOCALEDIR "/usr/share/locale"

#define SHARING_TYPE_PLUG (sharing_plug_get_type ())
#define SHARING_PLUG(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SHARING_TYPE_PLUG, SharingPlug))
#define SHARING_PLUG_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SHARING_TYPE_PLUG, SharingPlugClass))
#define SHARING_IS_PLUG(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SHARING_TYPE_PLUG))
#define SHARING_IS_PLUG_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SHARING_TYPE_PLUG))
#define SHARING_PLUG_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SHARING_TYPE_PLUG, SharingPlugClass))

typedef struct _SharingPlug SharingPlug;
typedef struct _SharingPlugClass SharingPlugClass;
typedef struct _SharingPlugPrivate SharingPlugPrivate;

#define SHARING_WIDGETS_TYPE_DLNA_PAGE (sharing_widgets_dlna_page_get_type ())
#define SHARING_WIDGETS_DLNA_PAGE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SHARING_WIDGETS_TYPE_DLNA_PAGE, SharingWidgetsDLNAPage))
#define SHARING_WIDGETS_DLNA_PAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SHARING_WIDGETS_TYPE_DLNA_PAGE, SharingWidgetsDLNAPageClass))
#define SHARING_WIDGETS_IS_DLNA_PAGE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SHARING_WIDGETS_TYPE_DLNA_PAGE))
#define SHARING_WIDGETS_IS_DLNA_PAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SHARING_WIDGETS_TYPE_DLNA_PAGE))
#define SHARING_WIDGETS_DLNA_PAGE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SHARING_WIDGETS_TYPE_DLNA_PAGE, SharingWidgetsDLNAPageClass))

typedef struct _SharingWidgetsDLNAPage SharingWidgetsDLNAPage;
typedef struct _SharingWidgetsDLNAPageClass SharingWidgetsDLNAPageClass;
typedef struct _SharingWidgetsDLNAPagePrivate SharingWidgetsDLNAPagePrivate;

#define SHARING_WIDGETS_TYPE_BLUETOOTH_PAGE (sharing_widgets_bluetooth_page_get_type ())
#define SHARING_WIDGETS_BLUETOOTH_PAGE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SHARING_WIDGETS_TYPE_BLUETOOTH_PAGE, SharingWidgetsBluetoothPage))
#define SHARING_WIDGETS_BLUETOOTH_PAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SHARING_WIDGETS_TYPE_BLUETOOTH_PAGE, SharingWidgetsBluetoothPageClass))
#define SHARING_WIDGETS_IS_BLUETOOTH_PAGE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SHARING_WIDGETS_TYPE_BLUETOOTH_PAGE))
#define SHARING_WIDGETS_IS_BLUETOOTH_PAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SHARING_WIDGETS_TYPE_BLUETOOTH_PAGE))
#define SHARING_WIDGETS_BLUETOOTH_PAGE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SHARING_WIDGETS_TYPE_BLUETOOTH_PAGE, SharingWidgetsBluetoothPageClass))

typedef struct _SharingWidgetsBluetoothPage SharingWidgetsBluetoothPage;
typedef struct _SharingWidgetsBluetoothPageClass SharingWidgetsBluetoothPageClass;
typedef struct _SharingWidgetsBluetoothPagePrivate SharingWidgetsBluetoothPagePrivate;

#define SHARING_BACKEND_TYPE_RYGEL_STARTUP_MANAGER (sharing_backend_rygel_startup_manager_get_type ())
#define SHARING_BACKEND_RYGEL_STARTUP_MANAGER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SHARING_BACKEND_TYPE_RYGEL_STARTUP_MANAGER, SharingBackendRygelStartupManager))
#define SHARING_BACKEND_RYGEL_STARTUP_MANAGER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SHARING_BACKEND_TYPE_RYGEL_STARTUP_MANAGER, SharingBackendRygelStartupManagerClass))
#define SHARING_BACKEND_IS_RYGEL_STARTUP_MANAGER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SHARING_BACKEND_TYPE_RYGEL_STARTUP_MANAGER))
#define SHARING_BACKEND_IS_RYGEL_STARTUP_MANAGER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SHARING_BACKEND_TYPE_RYGEL_STARTUP_MANAGER))
#define SHARING_BACKEND_RYGEL_STARTUP_MANAGER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SHARING_BACKEND_TYPE_RYGEL_STARTUP_MANAGER, SharingBackendRygelStartupManagerClass))

typedef struct _SharingBackendRygelStartupManager SharingBackendRygelStartupManager;
typedef struct _SharingBackendRygelStartupManagerClass SharingBackendRygelStartupManagerClass;
typedef struct _SharingBackendRygelStartupManagerPrivate SharingBackendRygelStartupManagerPrivate;

#define SHARING_BACKEND_TYPE_RYGEL_CONFIG_FILE (sharing_backend_rygel_config_file_get_type ())
#define SHARING_BACKEND_RYGEL_CONFIG_FILE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SHARING_BACKEND_TYPE_RYGEL_CONFIG_FILE, SharingBackendRygelConfigFile))
#define SHARING_BACKEND_RYGEL_CONFIG_FILE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), SHARING_BACKEND_TYPE_RYGEL_CONFIG_FILE, SharingBackendRygelConfigFileClass))
#define SHARING_BACKEND_IS_RYGEL_CONFIG_FILE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SHARING_BACKEND_TYPE_RYGEL_CONFIG_FILE))
#define SHARING_BACKEND_IS_RYGEL_CONFIG_FILE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), SHARING_BACKEND_TYPE_RYGEL_CONFIG_FILE))
#define SHARING_BACKEND_RYGEL_CONFIG_FILE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SHARING_BACKEND_TYPE_RYGEL_CONFIG_FILE, SharingBackendRygelConfigFileClass))

typedef struct _SharingBackendRygelConfigFile SharingBackendRygelConfigFile;
typedef struct _SharingBackendRygelConfigFileClass SharingBackendRygelConfigFileClass;
typedef struct _SharingBackendRygelConfigFilePrivate SharingBackendRygelConfigFilePrivate;

#define SHARING_BACKEND_TYPE_SHARING_DBUS_INTERFACE (sharing_backend_sharing_dbus_interface_get_type ())
#define SHARING_BACKEND_SHARING_DBUS_INTERFACE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SHARING_BACKEND_TYPE_SHARING_DBUS_INTERFACE, SharingBackendSharingDBusInterface))
#define SHARING_BACKEND_IS_SHARING_DBUS_INTERFACE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SHARING_BACKEND_TYPE_SHARING_DBUS_INTERFACE))
#define SHARING_BACKEND_SHARING_DBUS_INTERFACE_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), SHARING_BACKEND_TYPE_SHARING_DBUS_INTERFACE, SharingBackendSharingDBusInterfaceIface))

typedef struct _SharingBackendSharingDBusInterface SharingBackendSharingDBusInterface;
typedef struct _SharingBackendSharingDBusInterfaceIface SharingBackendSharingDBusInterfaceIface;

#define SHARING_BACKEND_TYPE_SHARING_DBUS_INTERFACE_PROXY (sharing_backend_sharing_dbus_interface_proxy_get_type ())

#define SHARING_BACKEND_SHARING_DBUS_INTERFACE_TYPE_SHARING_NETWORK (sharing_backend_sharing_dbus_interface_sharing_network_get_type ())
typedef struct _SharingBackendSharingDBusInterfaceSharingNetwork SharingBackendSharingDBusInterfaceSharingNetwork;

struct _SharingPlug {
	SwitchboardPlug parent_instance;
	SharingPlugPrivate * priv;
};

struct _SharingPlugClass {
	SwitchboardPlugClass parent_class;
};

struct _SharingWidgetsDLNAPage {
	SwitchboardSettingsPage parent_instance;
	SharingWidgetsDLNAPagePrivate * priv;
};

struct _SharingWidgetsDLNAPageClass {
	SwitchboardSettingsPageClass parent_class;
};

struct _SharingWidgetsBluetoothPage {
	SwitchboardSettingsPage parent_instance;
	SharingWidgetsBluetoothPagePrivate * priv;
};

struct _SharingWidgetsBluetoothPageClass {
	SwitchboardSettingsPageClass parent_class;
};

struct _SharingBackendRygelStartupManager {
	GObject parent_instance;
	SharingBackendRygelStartupManagerPrivate * priv;
};

struct _SharingBackendRygelStartupManagerClass {
	GObjectClass parent_class;
};

struct _SharingBackendRygelConfigFile {
	GObject parent_instance;
	SharingBackendRygelConfigFilePrivate * priv;
};

struct _SharingBackendRygelConfigFileClass {
	GObjectClass parent_class;
};

struct _SharingBackendSharingDBusInterfaceSharingNetwork {
	gchar* uuid;
	gchar* network_name;
	gchar* carrier_type;
};

struct _SharingBackendSharingDBusInterfaceIface {
	GTypeInterface parent_iface;
	void (*enable_service) (SharingBackendSharingDBusInterface* self, const gchar* service_name, GError** error);
	void (*disable_service) (SharingBackendSharingDBusInterface* self, const gchar* service_name, const gchar* network, GError** error);
	SharingBackendSharingDBusInterfaceSharingNetwork* (*list_networks) (SharingBackendSharingDBusInterface* self, const gchar* service_name, gint* result_length1, GError** error);
	gchar* (*get_current_network) (SharingBackendSharingDBusInterface* self);
};

VALA_EXTERN GType sharing_plug_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (SharingPlug, g_object_unref)
VALA_EXTERN SharingPlug* sharing_plug_new (void);
VALA_EXTERN SharingPlug* sharing_plug_construct (GType object_type);
VALA_EXTERN SwitchboardPlug* get_plug (GModule* module);
VALA_EXTERN GType sharing_widgets_dlna_page_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (SharingWidgetsDLNAPage, g_object_unref)
VALA_EXTERN SharingWidgetsDLNAPage* sharing_widgets_dlna_page_new (void);
VALA_EXTERN SharingWidgetsDLNAPage* sharing_widgets_dlna_page_construct (GType object_type);
VALA_EXTERN GType sharing_widgets_bluetooth_page_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (SharingWidgetsBluetoothPage, g_object_unref)
VALA_EXTERN SharingWidgetsBluetoothPage* sharing_widgets_bluetooth_page_new (void);
VALA_EXTERN SharingWidgetsBluetoothPage* sharing_widgets_bluetooth_page_construct (GType object_type);
VALA_EXTERN GType sharing_backend_rygel_startup_manager_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (SharingBackendRygelStartupManager, g_object_unref)
VALA_EXTERN void sharing_backend_rygel_startup_manager_set_service_enabled (SharingBackendRygelStartupManager* self,
                                                                gboolean enable,
                                                                GAsyncReadyCallback _callback_,
                                                                gpointer _user_data_);
VALA_EXTERN void sharing_backend_rygel_startup_manager_set_service_enabled_finish (SharingBackendRygelStartupManager* self,
                                                                       GAsyncResult* _res_);
VALA_EXTERN gboolean sharing_backend_rygel_startup_manager_get_service_enabled (SharingBackendRygelStartupManager* self);
VALA_EXTERN SharingBackendRygelStartupManager* sharing_backend_rygel_startup_manager_new (void);
VALA_EXTERN SharingBackendRygelStartupManager* sharing_backend_rygel_startup_manager_construct (GType object_type);
VALA_EXTERN GType sharing_backend_rygel_config_file_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (SharingBackendRygelConfigFile, g_object_unref)
VALA_EXTERN gboolean sharing_backend_rygel_config_file_get_media_type_enabled (SharingBackendRygelConfigFile* self,
                                                                   const gchar* media_type_id);
VALA_EXTERN gchar* sharing_backend_rygel_config_file_get_media_type_folder (SharingBackendRygelConfigFile* self,
                                                                const gchar* media_type_id);
VALA_EXTERN void sharing_backend_rygel_config_file_set_media_type_enabled (SharingBackendRygelConfigFile* self,
                                                               const gchar* media_type_id,
                                                               gboolean enable);
VALA_EXTERN void sharing_backend_rygel_config_file_set_media_type_folder (SharingBackendRygelConfigFile* self,
                                                              const gchar* media_type_id,
                                                              const gchar* folder_path);
VALA_EXTERN gboolean sharing_backend_rygel_config_file_save (SharingBackendRygelConfigFile* self);
VALA_EXTERN SharingBackendRygelConfigFile* sharing_backend_rygel_config_file_new (void);
VALA_EXTERN SharingBackendRygelConfigFile* sharing_backend_rygel_config_file_construct (GType object_type);
VALA_EXTERN GType sharing_backend_sharing_dbus_interface_proxy_get_type (void) G_GNUC_CONST ;
VALA_EXTERN guint sharing_backend_sharing_dbus_interface_register_object (void* object,
                                                              GDBusConnection* connection,
                                                              const gchar* path,
                                                              GError** error);
VALA_EXTERN GType sharing_backend_sharing_dbus_interface_sharing_network_get_type (void) G_GNUC_CONST ;
VALA_EXTERN SharingBackendSharingDBusInterfaceSharingNetwork* sharing_backend_sharing_dbus_interface_sharing_network_dup (const SharingBackendSharingDBusInterfaceSharingNetwork* self);
VALA_EXTERN void sharing_backend_sharing_dbus_interface_sharing_network_free (SharingBackendSharingDBusInterfaceSharingNetwork* self);
VALA_EXTERN void sharing_backend_sharing_dbus_interface_sharing_network_copy (const SharingBackendSharingDBusInterfaceSharingNetwork* self,
                                                                  SharingBackendSharingDBusInterfaceSharingNetwork* dest);
VALA_EXTERN void sharing_backend_sharing_dbus_interface_sharing_network_destroy (SharingBackendSharingDBusInterfaceSharingNetwork* self);
G_DEFINE_AUTO_CLEANUP_CLEAR_FUNC (SharingBackendSharingDBusInterfaceSharingNetwork, sharing_backend_sharing_dbus_interface_sharing_network_destroy)
VALA_EXTERN GType sharing_backend_sharing_dbus_interface_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (SharingBackendSharingDBusInterface, g_object_unref)
VALA_EXTERN void sharing_backend_sharing_dbus_interface_enable_service (SharingBackendSharingDBusInterface* self,
                                                            const gchar* service_name,
                                                            GError** error);
VALA_EXTERN void sharing_backend_sharing_dbus_interface_disable_service (SharingBackendSharingDBusInterface* self,
                                                             const gchar* service_name,
                                                             const gchar* network,
                                                             GError** error);
VALA_EXTERN SharingBackendSharingDBusInterfaceSharingNetwork* sharing_backend_sharing_dbus_interface_list_networks (SharingBackendSharingDBusInterface* self,
                                                                                                        const gchar* service_name,
                                                                                                        gint* result_length1,
                                                                                                        GError** error);
VALA_EXTERN gchar* sharing_backend_sharing_dbus_interface_get_current_network (SharingBackendSharingDBusInterface* self);

G_END_DECLS

#endif
