/* screentime-limits.h generated by valac 0.56.19, the Vala compiler, do not modify */

#ifndef __SRC_PLUG_SCREENTIME_LIMITS_H__
#define __SRC_PLUG_SCREENTIME_LIMITS_H__

#include <gtk/gtk.h>
#include <glib-object.h>
#include <switchboard.h>
#include <gio/gio.h>
#include <gmodule.h>
#include <act/act.h>
#include <glib.h>
#include <granite-7.h>
#include <stdlib.h>
#include <string.h>
#include <polkit/polkit.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 PC_CONSTANTS_LOGIN_IFACE "org.freedesktop.login1"
#define PC_CONSTANTS_LOGIN_OBJECT_PATH "/org/freedesktop/login1"
#define PC_CONSTANTS_DBUS_PROPERTIES_IFACE "org.freedesktop.DBus.Properties"
#define PC_CONSTANTS_PARENTAL_CONTROLS_IFACE "org.pantheon.ParentalControls"
#define PC_CONSTANTS_PARENTAL_CONTROLS_OBJECT_PATH "/org/pantheon/ParentalControls"
#define PC_CONSTANTS_PARENTAL_CONTROLS_ACTION_ID "io.elementary.settings.screentime-limits.administration"
#define PC_CONSTANTS_PLANK_CONF_DIR "/.config/plank/dock1/settings"
#define PC_CONSTANTS_DAEMON_CONF_FILE "/etc/pantheon-parental-controls/daemon.conf"
#define PC_CONSTANTS_DAEMON_KEY_ACTIVE "Active"
#define PC_CONSTANTS_DAEMON_KEY_TARGETS "Targets"
#define PC_CONSTANTS_DAEMON_KEY_ADMIN "Admin"
#define PC_CONSTANTS_DAEMON_KEY_BLOCK_URLS "BlockUrls"
#define PC_CONSTANTS_PAM_CONF_START "## PANTHEON_PARENTAL_CONTROLS_START"
#define PC_CONSTANTS_PAM_CONF_END "## PANTHEON_PARENTAL_CONTROLS_END"
#define PC_CONSTANTS_PAM_TIME_CONF_PATH "/etc/security/time.conf"
#define PC_CONSTANTS_CLIENT_PATH "/usr/lib/pantheon-parental-controls-client"
#define PC_CONSTANTS_GETTEXT_PACKAGE "io.elementary.settings.screentime-limits"
#define PC_CONSTANTS_LOCALEDIR "/usr/share/locale"

#define PC_TYPE_MAIN_BOX (pc_main_box_get_type ())
#define PC_MAIN_BOX(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), PC_TYPE_MAIN_BOX, PCMainBox))
#define PC_MAIN_BOX_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), PC_TYPE_MAIN_BOX, PCMainBoxClass))
#define PC_IS_MAIN_BOX(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), PC_TYPE_MAIN_BOX))
#define PC_IS_MAIN_BOX_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), PC_TYPE_MAIN_BOX))
#define PC_MAIN_BOX_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), PC_TYPE_MAIN_BOX, PCMainBoxClass))

typedef struct _PCMainBox PCMainBox;
typedef struct _PCMainBoxClass PCMainBoxClass;
typedef struct _PCMainBoxPrivate PCMainBoxPrivate;

#define PC_TYPE_PLUG (pc_plug_get_type ())
#define PC_PLUG(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), PC_TYPE_PLUG, PCPlug))
#define PC_PLUG_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), PC_TYPE_PLUG, PCPlugClass))
#define PC_IS_PLUG(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), PC_TYPE_PLUG))
#define PC_IS_PLUG_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), PC_TYPE_PLUG))
#define PC_PLUG_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), PC_TYPE_PLUG, PCPlugClass))

typedef struct _PCPlug PCPlug;
typedef struct _PCPlugClass PCPlugClass;
typedef struct _PCPlugPrivate PCPlugPrivate;

#define PC_WIDGETS_TYPE_APPS_BOX (pc_widgets_apps_box_get_type ())
#define PC_WIDGETS_APPS_BOX(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), PC_WIDGETS_TYPE_APPS_BOX, PCWidgetsAppsBox))
#define PC_WIDGETS_APPS_BOX_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), PC_WIDGETS_TYPE_APPS_BOX, PCWidgetsAppsBoxClass))
#define PC_WIDGETS_IS_APPS_BOX(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), PC_WIDGETS_TYPE_APPS_BOX))
#define PC_WIDGETS_IS_APPS_BOX_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), PC_WIDGETS_TYPE_APPS_BOX))
#define PC_WIDGETS_APPS_BOX_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), PC_WIDGETS_TYPE_APPS_BOX, PCWidgetsAppsBoxClass))

typedef struct _PCWidgetsAppsBox PCWidgetsAppsBox;
typedef struct _PCWidgetsAppsBoxClass PCWidgetsAppsBoxClass;
typedef struct _PCWidgetsAppsBoxPrivate PCWidgetsAppsBoxPrivate;

#define PC_WIDGETS_TYPE_TIME_LIMIT_VIEW (pc_widgets_time_limit_view_get_type ())
#define PC_WIDGETS_TIME_LIMIT_VIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), PC_WIDGETS_TYPE_TIME_LIMIT_VIEW, PCWidgetsTimeLimitView))
#define PC_WIDGETS_TIME_LIMIT_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), PC_WIDGETS_TYPE_TIME_LIMIT_VIEW, PCWidgetsTimeLimitViewClass))
#define PC_WIDGETS_IS_TIME_LIMIT_VIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), PC_WIDGETS_TYPE_TIME_LIMIT_VIEW))
#define PC_WIDGETS_IS_TIME_LIMIT_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), PC_WIDGETS_TYPE_TIME_LIMIT_VIEW))
#define PC_WIDGETS_TIME_LIMIT_VIEW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), PC_WIDGETS_TYPE_TIME_LIMIT_VIEW, PCWidgetsTimeLimitViewClass))

typedef struct _PCWidgetsTimeLimitView PCWidgetsTimeLimitView;
typedef struct _PCWidgetsTimeLimitViewClass PCWidgetsTimeLimitViewClass;
typedef struct _PCWidgetsTimeLimitViewPrivate PCWidgetsTimeLimitViewPrivate;

#define PC_WIDGETS_TYPE_INTERNET_BOX (pc_widgets_internet_box_get_type ())
#define PC_WIDGETS_INTERNET_BOX(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), PC_WIDGETS_TYPE_INTERNET_BOX, PCWidgetsInternetBox))
#define PC_WIDGETS_INTERNET_BOX_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), PC_WIDGETS_TYPE_INTERNET_BOX, PCWidgetsInternetBoxClass))
#define PC_WIDGETS_IS_INTERNET_BOX(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), PC_WIDGETS_TYPE_INTERNET_BOX))
#define PC_WIDGETS_IS_INTERNET_BOX_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), PC_WIDGETS_TYPE_INTERNET_BOX))
#define PC_WIDGETS_INTERNET_BOX_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), PC_WIDGETS_TYPE_INTERNET_BOX, PCWidgetsInternetBoxClass))

typedef struct _PCWidgetsInternetBox PCWidgetsInternetBox;
typedef struct _PCWidgetsInternetBoxClass PCWidgetsInternetBoxClass;
typedef struct _PCWidgetsInternetBoxPrivate PCWidgetsInternetBoxPrivate;

#define PC_WIDGETS_TYPE_CONTROL_PAGE (pc_widgets_control_page_get_type ())
#define PC_WIDGETS_CONTROL_PAGE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), PC_WIDGETS_TYPE_CONTROL_PAGE, PCWidgetsControlPage))
#define PC_WIDGETS_CONTROL_PAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), PC_WIDGETS_TYPE_CONTROL_PAGE, PCWidgetsControlPageClass))
#define PC_WIDGETS_IS_CONTROL_PAGE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), PC_WIDGETS_TYPE_CONTROL_PAGE))
#define PC_WIDGETS_IS_CONTROL_PAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), PC_WIDGETS_TYPE_CONTROL_PAGE))
#define PC_WIDGETS_CONTROL_PAGE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), PC_WIDGETS_TYPE_CONTROL_PAGE, PCWidgetsControlPageClass))

typedef struct _PCWidgetsControlPage PCWidgetsControlPage;
typedef struct _PCWidgetsControlPageClass PCWidgetsControlPageClass;
typedef struct _PCWidgetsControlPagePrivate PCWidgetsControlPagePrivate;

#define PC_WIDGETS_TYPE_APP_CHOOSER (pc_widgets_app_chooser_get_type ())
#define PC_WIDGETS_APP_CHOOSER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), PC_WIDGETS_TYPE_APP_CHOOSER, PCWidgetsAppChooser))
#define PC_WIDGETS_APP_CHOOSER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), PC_WIDGETS_TYPE_APP_CHOOSER, PCWidgetsAppChooserClass))
#define PC_WIDGETS_IS_APP_CHOOSER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), PC_WIDGETS_TYPE_APP_CHOOSER))
#define PC_WIDGETS_IS_APP_CHOOSER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), PC_WIDGETS_TYPE_APP_CHOOSER))
#define PC_WIDGETS_APP_CHOOSER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), PC_WIDGETS_TYPE_APP_CHOOSER, PCWidgetsAppChooserClass))

typedef struct _PCWidgetsAppChooser PCWidgetsAppChooser;
typedef struct _PCWidgetsAppChooserClass PCWidgetsAppChooserClass;
typedef struct _PCWidgetsAppChooserPrivate PCWidgetsAppChooserPrivate;

#define PC_WIDGETS_TYPE_APP_ROW (pc_widgets_app_row_get_type ())
#define PC_WIDGETS_APP_ROW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), PC_WIDGETS_TYPE_APP_ROW, PCWidgetsAppRow))
#define PC_WIDGETS_APP_ROW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), PC_WIDGETS_TYPE_APP_ROW, PCWidgetsAppRowClass))
#define PC_WIDGETS_IS_APP_ROW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), PC_WIDGETS_TYPE_APP_ROW))
#define PC_WIDGETS_IS_APP_ROW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), PC_WIDGETS_TYPE_APP_ROW))
#define PC_WIDGETS_APP_ROW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), PC_WIDGETS_TYPE_APP_ROW, PCWidgetsAppRowClass))

typedef struct _PCWidgetsAppRow PCWidgetsAppRow;
typedef struct _PCWidgetsAppRowClass PCWidgetsAppRowClass;
typedef struct _PCWidgetsAppRowPrivate PCWidgetsAppRowPrivate;

#define PC_TYPE_CUPS_PK_HELPER (pc_cups_pk_helper_get_type ())
#define PC_CUPS_PK_HELPER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), PC_TYPE_CUPS_PK_HELPER, PCCupsPkHelper))
#define PC_IS_CUPS_PK_HELPER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), PC_TYPE_CUPS_PK_HELPER))
#define PC_CUPS_PK_HELPER_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), PC_TYPE_CUPS_PK_HELPER, PCCupsPkHelperIface))

typedef struct _PCCupsPkHelper PCCupsPkHelper;
typedef struct _PCCupsPkHelperIface PCCupsPkHelperIface;

#define PC_TYPE_CUPS_PK_HELPER_PROXY (pc_cups_pk_helper_proxy_get_type ())

#define PC_TYPE_IPARENTAL_CONTROLS (pc_iparental_controls_get_type ())
#define PC_IPARENTAL_CONTROLS(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), PC_TYPE_IPARENTAL_CONTROLS, PCIParentalControls))
#define PC_IS_IPARENTAL_CONTROLS(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), PC_TYPE_IPARENTAL_CONTROLS))
#define PC_IPARENTAL_CONTROLS_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), PC_TYPE_IPARENTAL_CONTROLS, PCIParentalControlsIface))

typedef struct _PCIParentalControls PCIParentalControls;
typedef struct _PCIParentalControlsIface PCIParentalControlsIface;

#define PC_TYPE_IPARENTAL_CONTROLS_PROXY (pc_iparental_controls_proxy_get_type ())

#define PC_TYPE_UTILS (pc_utils_get_type ())
#define PC_UTILS(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), PC_TYPE_UTILS, PCUtils))
#define PC_UTILS_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), PC_TYPE_UTILS, PCUtilsClass))
#define PC_IS_UTILS(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), PC_TYPE_UTILS))
#define PC_IS_UTILS_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), PC_TYPE_UTILS))
#define PC_UTILS_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), PC_TYPE_UTILS, PCUtilsClass))

typedef struct _PCUtils PCUtils;
typedef struct _PCUtilsClass PCUtilsClass;
typedef struct _PCUtilsPrivate PCUtilsPrivate;

#define PC_UTILS_TYPE_DUMMY_PARENTAL_CONTROLS (pc_utils_dummy_parental_controls_get_type ())
#define PC_UTILS_DUMMY_PARENTAL_CONTROLS(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), PC_UTILS_TYPE_DUMMY_PARENTAL_CONTROLS, PCUtilsDummyParentalControls))
#define PC_UTILS_DUMMY_PARENTAL_CONTROLS_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), PC_UTILS_TYPE_DUMMY_PARENTAL_CONTROLS, PCUtilsDummyParentalControlsClass))
#define PC_UTILS_IS_DUMMY_PARENTAL_CONTROLS(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), PC_UTILS_TYPE_DUMMY_PARENTAL_CONTROLS))
#define PC_UTILS_IS_DUMMY_PARENTAL_CONTROLS_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), PC_UTILS_TYPE_DUMMY_PARENTAL_CONTROLS))
#define PC_UTILS_DUMMY_PARENTAL_CONTROLS_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), PC_UTILS_TYPE_DUMMY_PARENTAL_CONTROLS, PCUtilsDummyParentalControlsClass))

typedef struct _PCUtilsDummyParentalControls PCUtilsDummyParentalControls;
typedef struct _PCUtilsDummyParentalControlsClass PCUtilsDummyParentalControlsClass;
typedef struct _PCUtilsDummyParentalControlsPrivate PCUtilsDummyParentalControlsPrivate;

#define PC_PAM_TYPE_WRITER (pc_pam_writer_get_type ())
#define PC_PAM_WRITER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), PC_PAM_TYPE_WRITER, PCPAMWriter))
#define PC_PAM_WRITER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), PC_PAM_TYPE_WRITER, PCPAMWriterClass))
#define PC_PAM_IS_WRITER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), PC_PAM_TYPE_WRITER))
#define PC_PAM_IS_WRITER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), PC_PAM_TYPE_WRITER))
#define PC_PAM_WRITER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), PC_PAM_TYPE_WRITER, PCPAMWriterClass))

typedef struct _PCPAMWriter PCPAMWriter;
typedef struct _PCPAMWriterClass PCPAMWriterClass;
typedef struct _PCPAMWriterPrivate PCPAMWriterPrivate;
typedef enum  {
	PC_PAM_DAY_TYPE_UNKNOWN,
	PC_PAM_DAY_TYPE_ALL,
	PC_PAM_DAY_TYPE_WEEKDAY,
	PC_PAM_DAY_TYPE_WEEKEND
} PCPAMDayType;

#define PC_PAM_TYPE_DAY_TYPE (pc_pam_day_type_get_type ())

#define PC_PAM_TYPE_TIME_INFO (pc_pam_time_info_get_type ())
#define PC_PAM_TIME_INFO(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), PC_PAM_TYPE_TIME_INFO, PCPAMTimeInfo))
#define PC_PAM_TIME_INFO_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), PC_PAM_TYPE_TIME_INFO, PCPAMTimeInfoClass))
#define PC_PAM_IS_TIME_INFO(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), PC_PAM_TYPE_TIME_INFO))
#define PC_PAM_IS_TIME_INFO_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), PC_PAM_TYPE_TIME_INFO))
#define PC_PAM_TIME_INFO_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), PC_PAM_TYPE_TIME_INFO, PCPAMTimeInfoClass))

typedef struct _PCPAMTimeInfo PCPAMTimeInfo;
typedef struct _PCPAMTimeInfoClass PCPAMTimeInfoClass;
typedef struct _PCPAMTimeInfoPrivate PCPAMTimeInfoPrivate;

#define PC_PAM_TYPE_TOKEN (pc_pam_token_get_type ())
#define PC_PAM_TOKEN(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), PC_PAM_TYPE_TOKEN, PCPAMToken))
#define PC_PAM_TOKEN_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), PC_PAM_TYPE_TOKEN, PCPAMTokenClass))
#define PC_PAM_IS_TOKEN(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), PC_PAM_TYPE_TOKEN))
#define PC_PAM_IS_TOKEN_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), PC_PAM_TYPE_TOKEN))
#define PC_PAM_TOKEN_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), PC_PAM_TYPE_TOKEN, PCPAMTokenClass))

typedef struct _PCPAMToken PCPAMToken;
typedef struct _PCPAMTokenClass PCPAMTokenClass;
typedef struct _PCPAMTokenPrivate PCPAMTokenPrivate;

#define PC_PAM_TYPE_READER (pc_pam_reader_get_type ())
#define PC_PAM_READER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), PC_PAM_TYPE_READER, PCPAMReader))
#define PC_PAM_READER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), PC_PAM_TYPE_READER, PCPAMReaderClass))
#define PC_PAM_IS_READER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), PC_PAM_TYPE_READER))
#define PC_PAM_IS_READER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), PC_PAM_TYPE_READER))
#define PC_PAM_READER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), PC_PAM_TYPE_READER, PCPAMReaderClass))

typedef struct _PCPAMReader PCPAMReader;
typedef struct _PCPAMReaderClass PCPAMReaderClass;
typedef struct _PCPAMReaderPrivate PCPAMReaderPrivate;

struct _PCMainBox {
	GtkBox parent_instance;
	PCMainBoxPrivate * priv;
};

struct _PCMainBoxClass {
	GtkBoxClass parent_class;
};

struct _PCPlug {
	SwitchboardPlug parent_instance;
	PCPlugPrivate * priv;
};

struct _PCPlugClass {
	SwitchboardPlugClass parent_class;
};

struct _PCWidgetsAppsBox {
	GtkGrid parent_instance;
	PCWidgetsAppsBoxPrivate * priv;
};

struct _PCWidgetsAppsBoxClass {
	GtkGridClass parent_class;
};

struct _PCWidgetsTimeLimitView {
	GtkBox parent_instance;
	PCWidgetsTimeLimitViewPrivate * priv;
};

struct _PCWidgetsTimeLimitViewClass {
	GtkBoxClass parent_class;
};

struct _PCWidgetsInternetBox {
	GtkBox parent_instance;
	PCWidgetsInternetBoxPrivate * priv;
};

struct _PCWidgetsInternetBoxClass {
	GtkBoxClass parent_class;
};

struct _PCWidgetsControlPage {
	SwitchboardSettingsPage parent_instance;
	PCWidgetsControlPagePrivate * priv;
	GtkStack* stack;
};

struct _PCWidgetsControlPageClass {
	SwitchboardSettingsPageClass parent_class;
};

struct _PCWidgetsAppChooser {
	GraniteDialog parent_instance;
	PCWidgetsAppChooserPrivate * priv;
};

struct _PCWidgetsAppChooserClass {
	GraniteDialogClass parent_class;
};

struct _PCWidgetsAppRow {
	GtkListBoxRow parent_instance;
	PCWidgetsAppRowPrivate * priv;
};

struct _PCWidgetsAppRowClass {
	GtkListBoxRowClass parent_class;
};

struct _PCCupsPkHelperIface {
	GTypeInterface parent_iface;
	void (*printer_set_users_allowed) (PCCupsPkHelper* self, const gchar* printer, gchar** users, gint users_length1, GError** error);
	void (*printer_set_users_denied) (PCCupsPkHelper* self, const gchar* printer, gchar** users, gint users_length1, GError** error);
};

struct _PCIParentalControlsIface {
	GTypeInterface parent_iface;
	void (*add_restriction_for_user) (PCIParentalControls* self, const gchar* input, gboolean clean, GAsyncReadyCallback _callback_, gpointer _user_data_);
	void (*add_restriction_for_user_finish) (PCIParentalControls* self, GAsyncResult* _res_, GError** error);
	void (*remove_restriction_for_user) (PCIParentalControls* self, const gchar* username, GAsyncReadyCallback _callback_, gpointer _user_data_);
	void (*remove_restriction_for_user_finish) (PCIParentalControls* self, GAsyncResult* _res_, GError** error);
	void (*finish_app_authorization) (PCIParentalControls* self, const gchar* username, gchar** args, gint args_length1, GAsyncReadyCallback _callback_, gpointer _user_data_);
	void (*finish_app_authorization_finish) (PCIParentalControls* self, GAsyncResult* _res_, GError** error);
	void (*get_user_daemon_active) (PCIParentalControls* self, const gchar* username, GAsyncReadyCallback _callback_, gpointer _user_data_);
	gboolean (*get_user_daemon_active_finish) (PCIParentalControls* self, GAsyncResult* _res_, GError** error);
	void (*get_user_daemon_admin) (PCIParentalControls* self, const gchar* username, GAsyncReadyCallback _callback_, gpointer _user_data_);
	gboolean (*get_user_daemon_admin_finish) (PCIParentalControls* self, GAsyncResult* _res_, GError** error);
	void (*get_user_daemon_block_urls) (PCIParentalControls* self, const gchar* username, GAsyncReadyCallback _callback_, gpointer _user_data_);
	gchar** (*get_user_daemon_block_urls_finish) (PCIParentalControls* self, GAsyncResult* _res_, gint* result_length1, GError** error);
	void (*get_user_daemon_targets) (PCIParentalControls* self, const gchar* username, GAsyncReadyCallback _callback_, gpointer _user_data_);
	gchar** (*get_user_daemon_targets_finish) (PCIParentalControls* self, GAsyncResult* _res_, gint* result_length1, GError** error);
	void (*lock_dock_icons_for_user) (PCIParentalControls* self, const gchar* username, gboolean lock, GAsyncReadyCallback _callback_, gpointer _user_data_);
	void (*lock_dock_icons_for_user_finish) (PCIParentalControls* self, GAsyncResult* _res_, GError** error);
	void (*set_user_daemon_active) (PCIParentalControls* self, const gchar* username, gboolean active, GAsyncReadyCallback _callback_, gpointer _user_data_);
	void (*set_user_daemon_active_finish) (PCIParentalControls* self, GAsyncResult* _res_, GError** error);
	void (*set_user_daemon_admin) (PCIParentalControls* self, const gchar* username, gboolean admin, GAsyncReadyCallback _callback_, gpointer _user_data_);
	void (*set_user_daemon_admin_finish) (PCIParentalControls* self, GAsyncResult* _res_, GError** error);
	void (*set_user_daemon_block_urls) (PCIParentalControls* self, const gchar* username, gchar** block_urls, gint block_urls_length1, GAsyncReadyCallback _callback_, gpointer _user_data_);
	void (*set_user_daemon_block_urls_finish) (PCIParentalControls* self, GAsyncResult* _res_, GError** error);
	void (*set_user_daemon_targets) (PCIParentalControls* self, const gchar* username, gchar** targets, gint targets_length1, GAsyncReadyCallback _callback_, gpointer _user_data_);
	void (*set_user_daemon_targets_finish) (PCIParentalControls* self, GAsyncResult* _res_, GError** error);
};

struct _PCUtils {
	GTypeInstance parent_instance;
	volatile int ref_count;
	PCUtilsPrivate * priv;
};

struct _PCUtilsClass {
	GTypeClass parent_class;
	void (*finalize) (PCUtils *self);
};

struct _PCUtilsDummyParentalControls {
	GObject parent_instance;
	PCUtilsDummyParentalControlsPrivate * priv;
};

struct _PCUtilsDummyParentalControlsClass {
	GObjectClass parent_class;
};

struct _PCPAMWriter {
	GObject parent_instance;
	PCPAMWriterPrivate * priv;
};

struct _PCPAMWriterClass {
	GObjectClass parent_class;
};

struct _PCPAMTimeInfo {
	GTypeInstance parent_instance;
	volatile int ref_count;
	PCPAMTimeInfoPrivate * priv;
	PCPAMDayType day_type;
	gchar* from;
	gchar* to;
};

struct _PCPAMTimeInfoClass {
	GTypeClass parent_class;
	void (*finalize) (PCPAMTimeInfo *self);
};

struct _PCPAMToken {
	GObject parent_instance;
	PCPAMTokenPrivate * priv;
	gchar** services;
	gint services_length1;
	gchar** ttys;
	gint ttys_length1;
	gchar** users;
	gint users_length1;
	gchar** times;
	gint times_length1;
};

struct _PCPAMTokenClass {
	GObjectClass parent_class;
};

struct _PCPAMReader {
	GObject parent_instance;
	PCPAMReaderPrivate * priv;
};

struct _PCPAMReaderClass {
	GObjectClass parent_class;
};

VALA_EXTERN GType pc_main_box_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (PCMainBox, g_object_unref)
VALA_EXTERN PCMainBox* pc_main_box_new (void);
VALA_EXTERN PCMainBox* pc_main_box_construct (GType object_type);
VALA_EXTERN GType pc_plug_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (PCPlug, g_object_unref)
VALA_EXTERN PCPlug* pc_plug_new (void);
VALA_EXTERN PCPlug* pc_plug_construct (GType object_type);
VALA_EXTERN SwitchboardPlug* get_plug (GModule* module);
VALA_EXTERN GType pc_widgets_apps_box_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (PCWidgetsAppsBox, g_object_unref)
VALA_EXTERN PCWidgetsAppsBox* pc_widgets_apps_box_new (ActUser* user);
VALA_EXTERN PCWidgetsAppsBox* pc_widgets_apps_box_construct (GType object_type,
                                                 ActUser* user);
VALA_EXTERN void pc_widgets_apps_box_set_restrictions_active (PCWidgetsAppsBox* self,
                                                  gboolean active);
VALA_EXTERN ActUser* pc_widgets_apps_box_get_user (PCWidgetsAppsBox* self);
VALA_EXTERN GType pc_widgets_time_limit_view_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (PCWidgetsTimeLimitView, g_object_unref)
VALA_EXTERN PCWidgetsTimeLimitView* pc_widgets_time_limit_view_new (ActUser* user);
VALA_EXTERN PCWidgetsTimeLimitView* pc_widgets_time_limit_view_construct (GType object_type,
                                                              ActUser* user);
VALA_EXTERN void pc_widgets_time_limit_view_update_pam (PCWidgetsTimeLimitView* self,
                                            gboolean daemon_active);
VALA_EXTERN ActUser* pc_widgets_time_limit_view_get_user (PCWidgetsTimeLimitView* self);
VALA_EXTERN GType pc_widgets_internet_box_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (PCWidgetsInternetBox, g_object_unref)
VALA_EXTERN PCWidgetsInternetBox* pc_widgets_internet_box_new (ActUser* user);
VALA_EXTERN PCWidgetsInternetBox* pc_widgets_internet_box_construct (GType object_type,
                                                         ActUser* user);
VALA_EXTERN ActUser* pc_widgets_internet_box_get_user (PCWidgetsInternetBox* self);
VALA_EXTERN GType pc_widgets_control_page_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (PCWidgetsControlPage, g_object_unref)
VALA_EXTERN PCWidgetsControlPage* pc_widgets_control_page_new (ActUser* user);
VALA_EXTERN PCWidgetsControlPage* pc_widgets_control_page_construct (GType object_type,
                                                         ActUser* user);
VALA_EXTERN void pc_widgets_control_page_update_user (PCWidgetsControlPage* self);
VALA_EXTERN ActUser* pc_widgets_control_page_get_user (PCWidgetsControlPage* self);
VALA_EXTERN GType pc_widgets_app_chooser_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (PCWidgetsAppChooser, g_object_unref)
VALA_EXTERN PCWidgetsAppChooser* pc_widgets_app_chooser_new (void);
VALA_EXTERN PCWidgetsAppChooser* pc_widgets_app_chooser_construct (GType object_type);
VALA_EXTERN GType pc_widgets_app_row_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (PCWidgetsAppRow, g_object_unref)
VALA_EXTERN PCWidgetsAppRow* pc_widgets_app_row_new (GAppInfo* app_info);
VALA_EXTERN PCWidgetsAppRow* pc_widgets_app_row_construct (GType object_type,
                                               GAppInfo* app_info);
VALA_EXTERN PCWidgetsAppRow* pc_widgets_app_row_new_with_delete_button (GAppInfo* app_info);
VALA_EXTERN PCWidgetsAppRow* pc_widgets_app_row_construct_with_delete_button (GType object_type,
                                                                  GAppInfo* app_info);
VALA_EXTERN gchar* pc_widgets_app_row_get_flatpak_ref_for_id (const gchar* id);
VALA_EXTERN GAppInfo* pc_widgets_app_row_get_app_info (PCWidgetsAppRow* self);
VALA_EXTERN gboolean pc_widgets_app_row_get_has_delete (PCWidgetsAppRow* self);
VALA_EXTERN gboolean pc_widgets_app_row_get_is_flatpak (PCWidgetsAppRow* self);
VALA_EXTERN gchar* pc_widgets_app_row_get_flatpak_ref (PCWidgetsAppRow* self);
VALA_EXTERN GType pc_cups_pk_helper_proxy_get_type (void) G_GNUC_CONST ;
VALA_EXTERN guint pc_cups_pk_helper_register_object (void* object,
                                         GDBusConnection* connection,
                                         const gchar* path,
                                         GError** error);
VALA_EXTERN GType pc_cups_pk_helper_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (PCCupsPkHelper, g_object_unref)
VALA_EXTERN void pc_cups_pk_helper_printer_set_users_allowed (PCCupsPkHelper* self,
                                                  const gchar* printer,
                                                  gchar** users,
                                                  gint users_length1,
                                                  GError** error);
VALA_EXTERN void pc_cups_pk_helper_printer_set_users_denied (PCCupsPkHelper* self,
                                                 const gchar* printer,
                                                 gchar** users,
                                                 gint users_length1,
                                                 GError** error);
VALA_EXTERN GType pc_iparental_controls_proxy_get_type (void) G_GNUC_CONST ;
VALA_EXTERN guint pc_iparental_controls_register_object (void* object,
                                             GDBusConnection* connection,
                                             const gchar* path,
                                             GError** error);
VALA_EXTERN GType pc_iparental_controls_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (PCIParentalControls, g_object_unref)
VALA_EXTERN void pc_iparental_controls_add_restriction_for_user (PCIParentalControls* self,
                                                     const gchar* input,
                                                     gboolean clean,
                                                     GAsyncReadyCallback _callback_,
                                                     gpointer _user_data_);
VALA_EXTERN void pc_iparental_controls_add_restriction_for_user_finish (PCIParentalControls* self,
                                                            GAsyncResult* _res_,
                                                            GError** error);
VALA_EXTERN void pc_iparental_controls_remove_restriction_for_user (PCIParentalControls* self,
                                                        const gchar* username,
                                                        GAsyncReadyCallback _callback_,
                                                        gpointer _user_data_);
VALA_EXTERN void pc_iparental_controls_remove_restriction_for_user_finish (PCIParentalControls* self,
                                                               GAsyncResult* _res_,
                                                               GError** error);
VALA_EXTERN void pc_iparental_controls_finish_app_authorization (PCIParentalControls* self,
                                                     const gchar* username,
                                                     gchar** args,
                                                     gint args_length1,
                                                     GAsyncReadyCallback _callback_,
                                                     gpointer _user_data_);
VALA_EXTERN void pc_iparental_controls_finish_app_authorization_finish (PCIParentalControls* self,
                                                            GAsyncResult* _res_,
                                                            GError** error);
VALA_EXTERN void pc_iparental_controls_get_user_daemon_active (PCIParentalControls* self,
                                                   const gchar* username,
                                                   GAsyncReadyCallback _callback_,
                                                   gpointer _user_data_);
VALA_EXTERN gboolean pc_iparental_controls_get_user_daemon_active_finish (PCIParentalControls* self,
                                                              GAsyncResult* _res_,
                                                              GError** error);
VALA_EXTERN void pc_iparental_controls_get_user_daemon_admin (PCIParentalControls* self,
                                                  const gchar* username,
                                                  GAsyncReadyCallback _callback_,
                                                  gpointer _user_data_);
VALA_EXTERN gboolean pc_iparental_controls_get_user_daemon_admin_finish (PCIParentalControls* self,
                                                             GAsyncResult* _res_,
                                                             GError** error);
VALA_EXTERN void pc_iparental_controls_get_user_daemon_block_urls (PCIParentalControls* self,
                                                       const gchar* username,
                                                       GAsyncReadyCallback _callback_,
                                                       gpointer _user_data_);
VALA_EXTERN gchar** pc_iparental_controls_get_user_daemon_block_urls_finish (PCIParentalControls* self,
                                                                 GAsyncResult* _res_,
                                                                 gint* result_length1,
                                                                 GError** error);
VALA_EXTERN void pc_iparental_controls_get_user_daemon_targets (PCIParentalControls* self,
                                                    const gchar* username,
                                                    GAsyncReadyCallback _callback_,
                                                    gpointer _user_data_);
VALA_EXTERN gchar** pc_iparental_controls_get_user_daemon_targets_finish (PCIParentalControls* self,
                                                              GAsyncResult* _res_,
                                                              gint* result_length1,
                                                              GError** error);
VALA_EXTERN void pc_iparental_controls_lock_dock_icons_for_user (PCIParentalControls* self,
                                                     const gchar* username,
                                                     gboolean lock,
                                                     GAsyncReadyCallback _callback_,
                                                     gpointer _user_data_);
VALA_EXTERN void pc_iparental_controls_lock_dock_icons_for_user_finish (PCIParentalControls* self,
                                                            GAsyncResult* _res_,
                                                            GError** error);
VALA_EXTERN void pc_iparental_controls_set_user_daemon_active (PCIParentalControls* self,
                                                   const gchar* username,
                                                   gboolean active,
                                                   GAsyncReadyCallback _callback_,
                                                   gpointer _user_data_);
VALA_EXTERN void pc_iparental_controls_set_user_daemon_active_finish (PCIParentalControls* self,
                                                          GAsyncResult* _res_,
                                                          GError** error);
VALA_EXTERN void pc_iparental_controls_set_user_daemon_admin (PCIParentalControls* self,
                                                  const gchar* username,
                                                  gboolean admin,
                                                  GAsyncReadyCallback _callback_,
                                                  gpointer _user_data_);
VALA_EXTERN void pc_iparental_controls_set_user_daemon_admin_finish (PCIParentalControls* self,
                                                         GAsyncResult* _res_,
                                                         GError** error);
VALA_EXTERN void pc_iparental_controls_set_user_daemon_block_urls (PCIParentalControls* self,
                                                       const gchar* username,
                                                       gchar** block_urls,
                                                       gint block_urls_length1,
                                                       GAsyncReadyCallback _callback_,
                                                       gpointer _user_data_);
VALA_EXTERN void pc_iparental_controls_set_user_daemon_block_urls_finish (PCIParentalControls* self,
                                                              GAsyncResult* _res_,
                                                              GError** error);
VALA_EXTERN void pc_iparental_controls_set_user_daemon_targets (PCIParentalControls* self,
                                                    const gchar* username,
                                                    gchar** targets,
                                                    gint targets_length1,
                                                    GAsyncReadyCallback _callback_,
                                                    gpointer _user_data_);
VALA_EXTERN void pc_iparental_controls_set_user_daemon_targets_finish (PCIParentalControls* self,
                                                           GAsyncResult* _res_,
                                                           GError** error);
VALA_EXTERN gpointer pc_utils_ref (gpointer instance);
VALA_EXTERN void pc_utils_unref (gpointer instance);
VALA_EXTERN GParamSpec* pc_param_spec_utils (const gchar* name,
                                 const gchar* nick,
                                 const gchar* blurb,
                                 GType object_type,
                                 GParamFlags flags);
VALA_EXTERN void pc_value_set_utils (GValue* value,
                         gpointer v_object);
VALA_EXTERN void pc_value_take_utils (GValue* value,
                          gpointer v_object);
VALA_EXTERN gpointer pc_value_get_utils (const GValue* value);
VALA_EXTERN GType pc_utils_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (PCUtils, pc_utils_unref)
VALA_EXTERN PCIParentalControls* pc_utils_get_api (void);
VALA_EXTERN PolkitPermission* pc_utils_get_permission (void);
VALA_EXTERN gchar* pc_utils_create_markup (const gchar* name,
                               const gchar* comment);
VALA_EXTERN ActUserManager* pc_utils_get_usermanager (void);
VALA_EXTERN ActUser* pc_utils_get_current_user (void);
VALA_EXTERN gchar* pc_utils_info_to_exec_path (GAppInfo* info,
                                   gchar*** args,
                                   gint* args_length1);
VALA_EXTERN gchar* pc_utils_remove_comments (const gchar* str);
VALA_EXTERN PCUtils* pc_utils_new (void);
VALA_EXTERN PCUtils* pc_utils_construct (GType object_type);
VALA_EXTERN GType pc_utils_dummy_parental_controls_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (PCUtilsDummyParentalControls, g_object_unref)
VALA_EXTERN PCUtilsDummyParentalControls* pc_utils_dummy_parental_controls_new (void);
VALA_EXTERN PCUtilsDummyParentalControls* pc_utils_dummy_parental_controls_construct (GType object_type);
VALA_EXTERN GType pc_pam_writer_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (PCPAMWriter, g_object_unref)
VALA_EXTERN PCPAMWriter* pc_pam_writer_new_for_time (void);
VALA_EXTERN PCPAMWriter* pc_pam_writer_new (const gchar* filename);
VALA_EXTERN PCPAMWriter* pc_pam_writer_construct (GType object_type,
                                      const gchar* filename);
VALA_EXTERN void pc_pam_writer_add_restriction_for_user (PCPAMWriter* self,
                                             const gchar* input,
                                             gboolean clean);
VALA_EXTERN void pc_pam_writer_remove_restriction_for_user (PCPAMWriter* self,
                                                const gchar* username);
VALA_EXTERN GType pc_pam_day_type_get_type (void) G_GNUC_CONST ;
VALA_EXTERN PCPAMDayType pc_pam_day_type_to_enum (const gchar* str);
VALA_EXTERN gchar* pc_pam_day_type_to_string (PCPAMDayType self);
VALA_EXTERN gpointer pc_pam_time_info_ref (gpointer instance);
VALA_EXTERN void pc_pam_time_info_unref (gpointer instance);
VALA_EXTERN GParamSpec* pc_pam_param_spec_time_info (const gchar* name,
                                         const gchar* nick,
                                         const gchar* blurb,
                                         GType object_type,
                                         GParamFlags flags);
VALA_EXTERN void pc_pam_value_set_time_info (GValue* value,
                                 gpointer v_object);
VALA_EXTERN void pc_pam_value_take_time_info (GValue* value,
                                  gpointer v_object);
VALA_EXTERN gpointer pc_pam_value_get_time_info (const GValue* value);
VALA_EXTERN GType pc_pam_time_info_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (PCPAMTimeInfo, pc_pam_time_info_unref)
VALA_EXTERN PCPAMTimeInfo* pc_pam_time_info_new (void);
VALA_EXTERN PCPAMTimeInfo* pc_pam_time_info_construct (GType object_type);
VALA_EXTERN GType pc_pam_token_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (PCPAMToken, g_object_unref)
VALA_EXTERN PCPAMToken* pc_pam_token_parse_line (const gchar* line);
VALA_EXTERN GList* pc_pam_token_parse (const gchar* str);
VALA_EXTERN gchar* pc_pam_token_construct_pam_restriction (gchar** services,
                                               gint services_length1,
                                               gchar** ttys,
                                               gint ttys_length1,
                                               gchar** users,
                                               gint users_length1,
                                               gchar** times,
                                               gint times_length1);
VALA_EXTERN gchar* pc_pam_token_construct_pam_restriction_simple (gchar** users,
                                                      gint users_length1,
                                                      gchar** times,
                                                      gint times_length1);
VALA_EXTERN GList* pc_pam_token_get_times_info (PCPAMToken* self);
VALA_EXTERN gchar* pc_pam_token_get_user_arg0 (PCPAMToken* self);
VALA_EXTERN gchar* pc_pam_token_to_string (PCPAMToken* self);
VALA_EXTERN void pc_pam_token_get_weekday_hours (PCPAMToken* self,
                                     gint* from,
                                     gint* to);
VALA_EXTERN void pc_pam_token_get_weekend_hours (PCPAMToken* self,
                                     gint* from,
                                     gint* to);
VALA_EXTERN PCPAMToken* pc_pam_token_new (void);
VALA_EXTERN PCPAMToken* pc_pam_token_construct (GType object_type);
VALA_EXTERN GType pc_pam_reader_get_type (void) G_GNUC_CONST ;
G_DEFINE_AUTOPTR_CLEANUP_FUNC (PCPAMReader, g_object_unref)
VALA_EXTERN gchar* pc_pam_reader_get_config (const gchar* contents,
                                 gint* start_idx,
                                 gint* end_idx);
VALA_EXTERN GList* pc_pam_reader_get_tokens (const gchar* filename);
VALA_EXTERN PCPAMToken* pc_pam_reader_get_token_for_user (const gchar* filename,
                                              const gchar* username);
VALA_EXTERN PCPAMReader* pc_pam_reader_new (void);
VALA_EXTERN PCPAMReader* pc_pam_reader_construct (GType object_type);

VALA_EXTERN const gchar* PC_CONSTANTS_DAEMON_IGNORED_USERS[1];

G_END_DECLS

#endif
