/// /// /// /// /** * Type Definitions for Gjs (https://gjs.guide/) * * These type definitions are automatically generated, do not edit them by hand. * If you found a bug fix it in `ts-for-gir` or create a bug report on https://github.com/gjsify/ts-for-gir * * The based EJS template file is used for the generated .d.ts file of each GIR module like Gtk-4.0, GObject-2.0, ... */ declare module 'gi://Libxfce4util?version=1.0' { // Module dependencies import type Gio from 'gi://Gio?version=2.0'; import type GObject from 'gi://GObject?version=2.0'; import type GLib from 'gi://GLib?version=2.0'; import type GModule from 'gi://GModule?version=2.0'; export namespace Libxfce4util { /** * Libxfce4util-1.0 */ /** * The license text to return from xfce_get_license_text(). */ /** * The license text to return from xfce_get_license_text(). */ export namespace LicenseTextType { export const $gtype: GObject.GType; } enum LicenseTextType { /** * the BSD License. */ BSD, /** * the GNU General Public License. */ GPL, /** * the GNU Lesser General Public License. */ LGPL, } export namespace ResourceType { export const $gtype: GObject.GType; } enum ResourceType { /** * where applications store data. */ DATA, /** * configuration files. */ CONFIG, /** * cached information. */ CACHE, /** * icon search path. */ ICONS, /** * themes search path. */ THEMES, } const LOCALE_FULL_MATCH: number; const LOCALE_NO_MATCH: number; /** * An alias of xfce_g_string_append_quoted(). * @param string A #GString. * @param unquoted A literal string. */ function append_quoted(string: GLib.String, unquoted: string): void; /** * Creates the shared thumbnail path for the file that corresponds to the given `uri` * and `size`. No checks are made regarding the existence of the thumbnail. * * It is the duty of the caller to free the returned string. * @param uri the uri of the file whose shared thumbnail we want to find. * @param size the thumbnail size (e.g. normal, large). * @returns a string with the thumbnail path or NULL if the @uri could not be converted to a local filename. */ function create_shared_thumbnail_path(uri: string, size: string): string; /** * Expands field codes in `command` according to Freedesktop.org Desktop Entry Specification. * @param command Input string (command to expand) or %NULL. * @param uri_list Input string list (filename/URL field) or %NULL. * @param icon Input string (icon field) or %NULL. * @param name Input string (name field) or %NULL. * @param uri Input string (URI field) or %NULL. * @param requires_terminal Input boolean. * @returns %NULL on error, else the string, which should be freed using g_free() when no longer needed. */ function expand_desktop_entry_field_codes( command: string, uri_list: string[], icon: string, name: string, uri: string, requires_terminal: boolean, ): string; /** * Expands shell like environment variables and tilde (~/ and ~user/ are both supported) * in `command`. * @param command Input string or %NULL. * @param envp Addition environment variables to take into account. These variables have higher priority than the ones in the process's environment. * @returns %NULL on error, else the string, which should be freed using g_free() when no longer needed. */ function expand_variables(command: string, envp: string): string; /** * Generates an SHA-256 hash of the `file`. * @param file a #GFile. * @param cancellable optional #GCancellable object, %NULL to ignore. * @returns Checksum of the @file. If file read fails, returns %NULL. Free with g_free(). */ function g_file_create_checksum(file: Gio.File, cancellable?: Gio.Cancellable | null): string | null; /** * Compares the checksum stored in safety flag * with the actual file. If it matches, it * is considered safe. * * Read the documentation of * xfce_g_file_set_trusted() for details. * @param file a #GFile. * @param cancellable optional #GCancellable object, %NULL to ignore. * @returns %TRUE if safety flag is verified or not supported. %FALSE otherwise. */ function g_file_is_trusted(file: Gio.File, cancellable?: Gio.Cancellable | null): boolean; /** * Checks if GVFS-metadata is available for * the `file` provided. * @param file a #GFile. * @returns %TRUE is GVFS-metadata is supported, %FALSE otherwise. */ function g_file_metadata_is_supported(file: Gio.File): boolean; /** * Sets the "safety flag" on if `is_trusted`. * * Safety flag is a new concept introduced in * XFCE 4.17. It is basically an additional * execution flag stored in GVFS-metadata. * Unlike the execution flag (+x), it is safe * to assume that this flag did not come from * foreign location (for example, by downloading * an tar archive) and is set by user. * * The checksum of the file is stored, and * would be considered "on" only if checksum * matches with the file on execution. * @param file a #GFile. * @param is_trusted #TRUE if trusted, #FALSE if not * @param cancellable optional #GCancellable object, %NULL to ignore. * @returns %TRUE on success, %FALSE on error. */ function g_file_set_trusted(file: Gio.File, is_trusted: boolean, cancellable?: Gio.Cancellable | null): boolean; /** * Quotes a string `unquoted` and appends to an existing * #GString `string`. The shell will interpret the quoted string * to mean `unquoted`. The quoting style used is undefined * (check g_shell_quote ()). * @param string A #GString. * @param unquoted A literal string. */ function g_string_append_quoted(string: GLib.String, unquoted: string): void; /** * Similar to xfce_get_file_localized(), but works on directory instead of * a file. * @param directory directory name to check for a localized variant. * @returns path of the localized directory name or copy of @directory if no such directory exists. Returned string should be freed using g_free(). */ function get_dir_localized(directory: string): string; /** * Similar to #xfce_get_file_localized_r, but works on directory instead * of regular file. * @param buffer destination buffer to store the localized filename to. * @param length size of @buffer in bytes. * @param directory name of directory to check for localized variant of. * @returns pointer to @buffer or %NULL on error. */ function get_dir_localized_r(buffer: string, length: number, directory: string): string; /** * Checks if theres a version of `filename` which is localized to the current * locale. This is done by appending the full locale name to `filename,` separated * by a '.'. If theres no file of that name, it retries using the full locale * name without the encoding (if any), then without the qualifier (if any) and * at last the base locale is tried. If all of those fails, a copy of `filename` * is returned. * @param filename name of a file to look for a localized version. * @returns path of the localized file or copy of @filename if no such file exists. Returned string should be freed using g_free(). */ function get_file_localized(filename: string): string; /** * Similar in functionality to xfce_get_file_localized(), but stores the * result in `buffer` instead of allocating a new buffer. * @param buffer destination buffer to store the localized filename to. * @param length size of @buffer in bytes. * @param filename name of a file to look for a localized version. * @returns pointer to @buffer or %NULL on error. */ function get_file_localized_r(buffer: string, length: number, filename: string): string; /** * Similar to g_get_home_dir() in functionality but will never return NULL. * While g_get_home_dir() may return NULL under certain circumstances, this * function is garantied to never ever return NULL, but always return a * valid character pointer with the absolute path to the user's home directory. * * The returned string is owned by libxfce4util and must not be freed by * the caller. * @returns the path to the current user's home directory. */ function get_homedir(): string; /** * Returns the text of the software license specified in the * `license_type` translated to the current language. If no * translation is available, the english license text will * be returned. * @param license_type an #XfceLicenseTextType. * @returns the license text for @license_type. */ function get_license_text(license_type: LicenseTextType | null): string; /** * `paths` is a ':'-separated list of pathnames, with: * * - `%F`: the `filename` * - `%L`: the language string, as returned by `setlocale(LC_MESSAGES, NULL)` * - `%l`: the language component of the language string * - `%N`: application name * * Example paths: `/usr/local/lib/%L/%F:/usr/local/share/%N/%l/%F` * @param dst destination buffer. * @param size size of @dst in bytes. * @param paths the path * @param filename the filename * @param test test */ function get_path_localized( dst: string, size: number, paths: string, filename: string, test: GLib.FileTest | null, ): string; /** * Safe way to retrieve the path to the user's ".xfce4" directory. The path * to the current user's ".xfce4" directory is either taken from the * environment variable XFCE4HOME if defined, or if unset, is gained by * concatenating the path to the user's home directory and the ".xfce4". * That says, it will, by default, return the path "$HOME/.xfce4", where * $HOME is replaced with the absolute path to the user's home directory. * * The returned string is managed by libxfce4util and must not be freed by * the caller. * @returns the path to the current user's ".xfce4" directory. */ function get_userdir(): string; /** * Portable way to query the hostname of the node running the process. This * function does not ever return %NULL, but always returns a string containing * the current node's hostname. * @returns the current node's hostname. The string has to be freed by the caller using g_free(). */ function gethostname(): string; /** * The locale is of the general form LANG_COUNTRY.ENCODING @ MODIFIER, where * each of COUNTRY, ENCODING and MODIFIER can be absent. * * The match is done by actually removing the rightmost element one by one. This * is not entirely according to the freedesktop.org specification, but much easier. * Will probably be fixed in the future. * @param locale1 the current locale value as returned by setlocale(LC_MESSAGES,%NULL). * @param locale2 the locale value to match against. * @returns an integer value indicating the level of matching, where the constant #XFCE_LOCALE_FULL_MATCH indicates a full match and #XFCE_LOCALE_NO_MATCH means no match. Every other value indicates a partial match, the higher the value, the better the match. You should not rely on any specific value besides the constants #XFCE_LOCALE_FULL_MATCH and #XFCE_LOCALE_NO_MATCH, since the range of returned values may change in the future. */ function locale_match(locale1: string, locale2: string): number; /** * Creates the specified directory `whole_path,` but unlike the mkdir() * function from the standard C library, if any of the parent directories * of the `whole_path` do not exists, they are created as well. * * If the directory specified by `whole_path` already exists, this function * performs no operation and simply returns %TRUE. * @param whole_path path to the directory to create. * @param mode file permissions to use for the newly created directories. * @returns %TRUE on success, else %FALSE. */ function mkdirhier(whole_path: string, mode: number): boolean; /** * Initializes the POSIX signal handler system. Must be called * before setting any POSIX signal handlers. * @returns %TRUE on success, %FALSE on failure, in which case @error will be set. */ function posix_signal_handler_init(): boolean; /** * Restores the default handler for `signal`. * @param signal A POSIX signal id number. */ function posix_signal_handler_restore_handler(signal: number): void; /** * Sets `handler` to be called whenever `signal` is caught by the * application. The `user_data` parameter will be passed as an argument * to `handler`. * @param signal A POSIX signal id number. * @param handler A callback function. * @returns %TRUE on success, %FALSE otherwise, in which case @error will be set. */ function posix_signal_handler_set_handler(signal: number, handler: PosixSignalHandler): boolean; /** * Frees all memory associated with the POSIX signal handling system * and restores all default signal handlers. */ function posix_signal_handler_shutdown(): void; /** * If `readonly` is %TRUE parsing is generally faster, because only untranslated * entries and entries that match the current locale will be loaded. Also if * you pass %TRUE for `readonly,` #xfce_rc_config will fail if `resource` * does not reference a regular file. * * It is no error if `readonly` is %FALSE and the file referenced by `resource` * does not exists. In this case you'll start with a fresh config, which contains * only the default group and no entries. * @param type The resource type being opened * @param resource The resource name to open * @param readonly whether to open @resource readonly. * @returns the newly created #XfceRc object, or %NULL on error. */ function rc_config_open(type: ResourceType | null, resource: string, readonly: boolean): Rc; /** * Parses the resource config file specified by `filename`. * * If `readonly` is %TRUE parsing is generally faster, because only untranslated * entries and entries that match the current locale will be loaded. Also if * you pass %TRUE for `readonly,` #xfce_rc_simple_open will fail if `filename` * does not reference a regular file. * * It is no error if `readonly` is %FALSE and the file referenced by `filename` * does not exists. In this case you'll start with a fresh config, which contains * only the default group and no entries. * @param filename name of the filename to open. * @param readonly whether to open @filename readonly. * @returns the newly created #XfceRc object, or %NULL on error. */ function rc_simple_open(filename: string, readonly: boolean): Rc; /** * Queries the list of possible directories for the specified `type`. The * first element of the list is always the save location for `type`. None * of the directories returned in the list are garantied to exist. * * This function should be rarely used. You should consider using * xfce_resource_lookup() or xfce_resource_match() instead. * * The returned list must be freed using g_strfreev(). * @param type type of the resource. * @returns list of possible directories for @type. */ function resource_dirs(type: ResourceType | null): string[]; /** * Looks for a resource of the specified `type` whose relative path matches * `filename`. `filename` can either reference a regular file, in which case * it must not end with a slash character ('/'), or a directory, when * `filename` contains a trailing slash character ('/'). * * The caller is responsible to free the returned string using g_free() * when no longer needed. * @param type type of resource to lookup. * @param filename relative filename of the resource, e.g. "xfwm4/xfwmrc". * @returns the absolute path to the first file or directory in the search path, that matches @filename or %NULL if no such file or directory could be found. */ function resource_lookup(type: ResourceType | null, filename: string): string; /** * Similar to xfce_resource_lookup(), but returns all resource of the specified `type,` * that whose name is `filename`. * * The caller is responsible to free the returned string array using g_strfreev() * when no longer needed. * @param type type of the resource to lookup. * @param filename relative file path. If @filename contains a trailing slash character it is taken to reference a directory, else it is taken to reference a file. * @returns list of possible resources for @type. */ function resource_lookup_all(type: ResourceType | null, filename: string): string[]; /** * Tries to find all resources with the specified `type`. The function will * look into all specified directories and return all filenames in these * directories. The returned filenames are given relative the base directories * specified by `type`. * * If `pattern` contains a trailing slash, #xfce_resource_match looks only for * directories that match `pattern,` else it'll only look for regular files. In * case you are looking for directories, the returned entries will contain a * trailing slash as well, so you can easily use them with other resource * functions like #xfce_resource_lookup or #xfce_resource_save_location. * * Example: xfce_resource_match (XFCE_RESOURCE_CONFIG, "foo/bar*") will probably * return ("foo/bar", "foo/barbaz", ...). * @param type type of the resource to locate directories for. * @param pattern only accept filenames that fit to the pattern. The pattern needs to be a valid GPattern. * @param unique if %TRUE, only return items which have unique suffixes. * @returns string array of all the relative paths whose names matches the given @pattern. The return value has to be freed using g_strfreev() when no longer needed. */ function resource_match(type: ResourceType | null, pattern: string, unique: boolean): string[]; /** * Yet to be implemented! * @param type type of the resource to locate directories for. * @param unique if %TRUE, only return items which have unique suffixes. * @param func callback to determine if there was a match * @returns The caller is responsible to free the returned string array using g_strfreev() when no longer needed. */ function resource_match_custom(type: ResourceType | null, unique: boolean, func: MatchFunc): string[]; /** * Undoes the effect of the latest call to xfce_resource_push_path(). You * should take special care to call xfce_resource_pop_path() exactly same * times as xfce_resource_push_path(), everything else might result in * unwanted and maybe even undefined behaviour. You have been warned! * @param type type of the resource which search list should be shrinked. */ function resource_pop_path(type: ResourceType | null): void; /** * Appends `path` to the search path list for `type`. This function was * written primary for use within modules in larger applications, for example * MCS plugins. * * For example, if you need to add a specific path to the search path list * in your MCS, you should call xfce_resource_push_path() prior to calling * one of the resource search functions and call xfce_resource_pop_path() * right afterwards. * @param type type of the resource which search list should be expanded. * @param path search path to add. */ function resource_push_path(type: ResourceType | null, path: string): void; /** * If `relpath` contains a trailing slash ('/') character, xfce_resource_save_location() * finds the directory to save files into for the given type in the user's * home directory. All directories needed (including those given by * `relpath)` will be created on demand if `create` if %TRUE. * * If `relpath` does not end with a slash ('/') character, it is taken to be * the name of a file to return the save location for. All the directories * needed will be created on demand if `create` is %TRUE. * * Specifying %NULL or the empty string for `relpath` allows you to discover * the base path for saving files of the specified `type,` though normally * you should not need this. * @param type type of location to return. * @param relpath relative path of the resource. * @param create whether to create missing directory. * @returns the path where resources of the specified @type should be saved or %NULL on error. The returned string should be freed when no longer needed. */ function resource_save_location(type: ResourceType | null, relpath: string, create: boolean): string; /** * Searches `str` for occurances of `pattern` and replaces each * such occurance with `replacement`. Returns a newly allocated * copy of `str` on which the given replacement were performed. * The caller is responsible to free the returned string using * g_free() when no longer needed. * * Note that `pattern` and `replacement` don't need to be of the * same size. If `replacement` is %NULL, the pattern will be * removed from the string. * * Note for future Xfce developers: Deprecate this function when * g_string_replace() is available. (Added since Glib >= 2.68) * @param str the input string. * @param pattern a search pattern in @str. * @param replacement replacement string for @pattern. * @returns a newly allocated copy of @str where all occurrences of @pattern are replaced with @replacement. Or %NULL if @str is %NULL. */ function str_replace(str: string, pattern: string, replacement: string): string | null; /** * Sets up the translations for `package`. * @param _package the package name. * @param localedir the @packages locale directory. * @param encoding the encoding to use the @packages translations or %NULL to use "UTF-8". */ function textdomain(_package: string, localedir: string, encoding: string): void; /** * Unescapes sequences in `value` according to Freedesktop.org Desktop Entry Specification. * @param value Value string to replace escape sequences. * @returns %NULL on error, else the string, which should be freed using g_free() when no longer needed. */ function unescape_desktop_entry_value(value: string): string; /** * Removes all control characters from `str` up to `end` or up to * `max_len` characters (note that characters does not mean bytes with * UTF-8), where both `str` and `max_len` may not be given. * * Control characters are replaced in `str` by whitespaces, no new string * will be allocated. The operation is done in-place. * @param str target string. * @param max_len max characters to check or -1 for no character limit. * @param end pointer to the endpoint in @str or %NULL for no endpoint. * @returns pointer to @str or %NULL on error. */ function utf8_remove_controls(str: string, max_len: number, end: string): string; /** * Duplicates the `src` string up to `max_len` characters * (note that characters does not mean bytes with UTF-8). * * The caller is responsible to free the returned string * using g_free() when no longer needed. * @param src target string. * @param max_len max characters to duplicate or -1 for no character limit. * @returns pointer to the newly allocated string. */ function utf8_strndup(src: string, max_len: number): string; /** * Queries the version string of the installed Xfce desktop environment. * @returns the overall version information of the installed Xfce desktop. */ function version_string(): string; interface MatchFunc { (basedir: string, relpath: string): boolean; } interface PosixSignalHandler { (signal: number): void; } namespace Consolekit { // Constructor properties interface interface ConstructorProps extends GObject.Object.ConstructorProps {} } class Consolekit extends GObject.Object { static $gtype: GObject.GType; // Constructors constructor(properties?: Partial, ...args: any[]); _init(...args: any[]): void; // Static methods /** * Create a new #XfceConsolekit instance or increase reference count. */ static get(): Consolekit; // Methods /** * Check whether ConsoleKit can trigger and has authorization for Hibernate. * @returns %TRUE if the D-Bus request was successful, %FALSE otherwise and @error is set. */ can_hibernate(): [boolean, boolean, boolean]; /** * Check whether ConsoleKit can trigger and has authorization for HybridSleep. * @returns %TRUE if the D-Bus request was successful, %FALSE otherwise and @error is set. */ can_hybrid_sleep(): [boolean, boolean, boolean]; /** * Check whether ConsoleKit can trigger PowerOff. * @returns %TRUE if the D-Bus request was successful, %FALSE otherwise and @error is set. */ can_power_off(): [boolean, boolean, boolean]; /** * Check whether ConsoleKit can trigger Reboot. * @returns %TRUE if the D-Bus request was successful, %FALSE otherwise and @error is set. */ can_reboot(): [boolean, boolean, boolean]; /** * Check whether ConsoleKit can trigger and has authorization for Suspend. * @returns %TRUE if the D-Bus request was successful, %FALSE otherwise and @error is set. */ can_suspend(): [boolean, boolean, boolean]; /** * Ask ConsoleKit to trigger Hibernate. * @param polkit_interactive whether PolicyKit should ask the user to authenticate if needed * @returns %TRUE if the D-Bus request was successful, %FALSE otherwise and @error is set. */ hibernate(polkit_interactive: boolean): boolean; /** * Ask ConsoleKit to trigger HybridSleep. * @param polkit_interactive whether PolicyKit should ask the user to authenticate if needed * @returns %TRUE if the D-Bus request was successful, %FALSE otherwise and @error is set. */ hybrid_sleep(polkit_interactive: boolean): boolean; /** * Ask ConsoleKit to trigger PowerOff. * @param polkit_interactive whether PolicyKit should ask the user to authenticate if needed * @returns %TRUE if the D-Bus request was successful, %FALSE otherwise and @error is set. */ power_off(polkit_interactive: boolean): boolean; /** * Ask ConsoleKit to trigger Reboot. * @param polkit_interactive whether PolicyKit should ask the user to authenticate if needed * @returns %TRUE if the D-Bus request was successful, %FALSE otherwise and @error is set. */ reboot(polkit_interactive: boolean): boolean; /** * Ask ConsoleKit to trigger Suspend. * @param polkit_interactive whether PolicyKit should ask the user to authenticate if needed * @returns %TRUE if the D-Bus request was successful, %FALSE otherwise and @error is set. */ suspend(polkit_interactive: boolean): boolean; } namespace Kiosk { // Constructor properties interface interface ConstructorProps extends GObject.Object.ConstructorProps {} } class Kiosk extends GObject.Object { static $gtype: GObject.GType; // Constructors constructor(properties?: Partial, ...args: any[]); _init(...args: any[]): void; static ['new'](module: string): Kiosk; // Methods /** * Frees the `kiosk` object. * In 4.13 and above, this is equivalent to calling g_clear_object. */ free(): void; /** * Queries the `kiosk` object for a given capability and returns %TRUE if * the current user has the `capability,` else %FALSE. * @param capability The name of the capability to check. * @returns %TRUE if the current user has the @capability, else %FALSE. */ query(capability: string): boolean; } namespace Systemd { // Constructor properties interface interface ConstructorProps extends GObject.Object.ConstructorProps {} } class Systemd extends GObject.Object { static $gtype: GObject.GType; // Constructors constructor(properties?: Partial, ...args: any[]); _init(...args: any[]): void; // Static methods /** * Create a new #XfceSystemd instance or increase reference count. */ static get(): Systemd; // Methods /** * Check whether systemd can trigger and has authorization for Hibernate. * @returns %TRUE if the D-Bus request was successful, %FALSE otherwise and @error is set. */ can_hibernate(): [boolean, boolean, boolean]; /** * Check whether systemd can trigger and has authorization for HybridSleep. * @returns %TRUE if the D-Bus request was successful, %FALSE otherwise and @error is set. */ can_hybrid_sleep(): [boolean, boolean, boolean]; /** * Check whether systemd can trigger PowerOff. * @returns %TRUE if the D-Bus request was successful, %FALSE otherwise and @error is set. */ can_power_off(): [boolean, boolean, boolean]; /** * Check whether systemd can trigger Reboot. * @returns %TRUE if the D-Bus request was successful, %FALSE otherwise and @error is set. */ can_reboot(): [boolean, boolean, boolean]; /** * Check whether systemd can trigger and has authorization for Suspend. * @returns %TRUE if the D-Bus request was successful, %FALSE otherwise and @error is set. */ can_suspend(): [boolean, boolean, boolean]; /** * Ask systemd to trigger Hibernate. * @param polkit_interactive whether PolicyKit should ask the user to authenticate if needed * @returns %TRUE if the D-Bus request was successful, %FALSE otherwise and @error is set. */ hibernate(polkit_interactive: boolean): boolean; /** * Ask systemd to trigger HybridSleep. * @param polkit_interactive whether PolicyKit should ask the user to authenticate if needed * @returns %TRUE if the D-Bus request was successful, %FALSE otherwise and @error is set. */ hybrid_sleep(polkit_interactive: boolean): boolean; /** * Ask systemd to trigger PowerOff. * @param polkit_interactive whether PolicyKit should ask the user to authenticate if needed * @returns %TRUE if the D-Bus request was successful, %FALSE otherwise and @error is set. */ power_off(polkit_interactive: boolean): boolean; /** * Ask systemd to trigger Reboot. * @param polkit_interactive whether PolicyKit should ask the user to authenticate if needed * @returns %TRUE if the D-Bus request was successful, %FALSE otherwise and @error is set. */ reboot(polkit_interactive: boolean): boolean; /** * Ask systemd to trigger Suspend. * @param polkit_interactive whether PolicyKit should ask the user to authenticate if needed * @returns %TRUE if the D-Bus request was successful, %FALSE otherwise and @error is set. */ suspend(polkit_interactive: boolean): boolean; } type ConsolekitClass = typeof Consolekit; type KioskClass = typeof Kiosk; abstract class Rc { static $gtype: GObject.GType; // Constructors _init(...args: any[]): void; // Static methods /** * If `readonly` is %TRUE parsing is generally faster, because only untranslated * entries and entries that match the current locale will be loaded. Also if * you pass %TRUE for `readonly,` #xfce_rc_config will fail if `resource` * does not reference a regular file. * * It is no error if `readonly` is %FALSE and the file referenced by `resource` * does not exists. In this case you'll start with a fresh config, which contains * only the default group and no entries. * @param type The resource type being opened * @param resource The resource name to open * @param readonly whether to open @resource readonly. */ static config_open(type: ResourceType, resource: string, readonly: boolean): Rc; /** * Parses the resource config file specified by `filename`. * * If `readonly` is %TRUE parsing is generally faster, because only untranslated * entries and entries that match the current locale will be loaded. Also if * you pass %TRUE for `readonly,` #xfce_rc_simple_open will fail if `filename` * does not reference a regular file. * * It is no error if `readonly` is %FALSE and the file referenced by `filename` * does not exists. In this case you'll start with a fresh config, which contains * only the default group and no entries. * @param filename name of the filename to open. * @param readonly whether to open @filename readonly. */ static simple_open(filename: string, readonly: boolean): Rc; // Methods /** * Destructs `rc`. * * If `rc` was opened read-write and contains dirty (modified) entries, these * will be flushed to permanent storage first. */ close(): void; /** * Similar to #xfce_rc_delete_group, but works on an entry in the current * group. * @param key the key to delete. * @param global whether to delete @key globally. */ delete_entry(key: string, global: boolean): void; /** * If `rc` is a simple config object and `group` exists, it is deleted. All entries * within `group` will be deleted. For simple config objects, `global` is ignored. * * If `rc` is a complex config object and `group` exists, it will be deleted will * all entries. If `global` is %TRUE, the entry will be marked as deleted globally, * therefore all calls to #xfce_rc_read_entry and related functions will return * the fallback values. If `global` is %FALSE, the `group` will be deleted in the * per-user config file, and further calls to #xfce_rc_read_entry will most * probably return the system-wide config entries. * @param group name of the group to delete. * @param global whether to delete the group globally. */ delete_group(group: string, global: boolean): void; /** * Flushes all changes that currently reside only in memory back to permanent * storage. Dirty configuration entries are written in the most specific file * available. */ flush(): void; /** * Returns the names of all entries in `group` if any. * * %NULL is a valid input value for `group`. #xfce_rc_get_entries will * then return all entries in the so called "NULL group". Though this * "NULL group" should only be used for backward compatibility with old * applications. You should not use it in newly written code. * @param group the name of the group to get entries from. * @returns a NULL-terminated string array with all entries in @group. Has to be freed using g_strfreev() if no longer needed. If the specified @group does not exists, %NULL is returned. If the @group has no entries, an empty string array is returned. */ get_entries(group: string): string[]; /** * Returns the name of the group in which we are searching for keys and * from which we are retrieving entries. If the currently active group is * the default group (the so called "NULL group"), %NULL will be returned. * @returns the name of the current group. */ get_group(): string; /** * Returns the names of all known groups in `rc`. * * Since the default groups (the "NULL group") name is %NULL, it will not be * returned with this functions. But it does not matter at all, since the * default group is known to always exist. * @returns a NULL-terminated string array will the names of all groups in @rc. Should be freed using g_strfreev() when no longer needed. */ get_groups(): string[]; /** * Returns current locale used by `rc` to lookup translated entries. * @returns a string representing the current locale. */ get_locale(): string; /** * Checks whether the `key` has an entry in the current group. * @param key the key to search for. * @returns %TRUE if the @key is available, else %FALSE. */ has_entry(key: string): boolean; /** * Returns %TRUE if the specified `group` is known about. * @param group the group to search for. * @returns %TRUE if the @group exists. */ has_group(group: string): boolean; /** * Checks whether `rc` has any dirty (modified) entries. * @returns %TRUE if @rc has any dirty (modified) entries. */ is_dirty(): boolean; /** * Returns the read-only status of `rc`. * @returns the read-only status. */ is_readonly(): boolean; /** * Reads the value of an entry specified by `key` in the current group and interpret * it as a boolean value. Currently "on", "true" and "yes" are accepted as true, * everything else is false. * @param key the key to search for. * @param fallback a default value returned if the @key was not found. * @returns the value for this @key. */ read_bool_entry(key: string, fallback: boolean): boolean; /** * Reads the value of an entry specified by `key` in the current group. * @param key the key to search for. * @param fallback a default value returned if the @key was not found. * @returns the value for this @key, or @fallback if @key was not found. */ read_entry(key: string, fallback: string): string; /** * Reads the value of an entry specified by `key` in the current group. The * untranslated entry is returned. You normally do not need this. * @param key the key to search for. * @param fallback a default value returned if the @key was not found. * @returns the untranslated value for this @key, or @fallback if @key was not found. */ read_entry_untranslated(key: string, fallback: string): string; /** * Reads the value of an entry specified by `key` in the current group * and interprets it as an integer value. * @param key the key to search for. * @param fallback a default value returned if the @key was not found. * @returns the value for this @key. */ read_int_entry(key: string, fallback: number): number; /** * Reads a list of strings in the entry specified by key in the current group. * The returned list has to be freed using g_strfreev() when no longer needed. * * This does not support delimiter escaping. If you need this feature, use * g_key_file_get_string_list() instead. * @param key the key to search for. * @param delimiter a string which specifies the places at which to split the string. The delimiter is not included in any of the resulting strings. If NULL, "," is used. * @returns the list or NULL if the entry does not exist. */ read_list_entry(key: string, delimiter: string): string[]; /** * Mark `rc` as "clean", i.e. don't write dirty entries at destruction time. If * you then call #xfce_rc_write_entry again, the dirty flag is set again and * dirty entries will be written at a subsequent #xfce_rc_flush call. */ rollback(): void; /** * Specifies the group in which keys will be read and written. Subsequent calls * to #xfce_rc_read_entry and #xfce_rc_write_entry will be applied only in the * active group. * * If `group` references a group that does not exists, it will be created for * you. But note, that empty groups will not be synced to permanent storage. * @param group the name of the new group or %NULL to to switch back to the default group. */ set_group(group: string): void; /** * Wrapper for #xfce_rc_write_entry, that stores a boolean `value`. * @param key the key to write. * @param value the value to write. */ write_bool_entry(key: string, value: boolean): void; /** * Writes a `key/``value` pair. This has no effect if the resource config * was opened readonly, else the value will be written to permanent storage * on the next call to #xfce_rc_flush or when `rc` is destroyed using * #xfce_rc_close. * * If `rc` was opened using #xfce_rc_config_open, the value will be * written to the most specific config file. * @param key the key to write. * @param value the value to write. */ write_entry(key: string, value: string): void; /** * Wrapper for #xfce_rc_write_entry, that stores an integer `value`. * @param key the key to write. * @param value the value to write. */ write_int_entry(key: string, value: number): void; /** * Wrapper for #xfce_rc_write_entry, that stores a string list `value`. * * This does not support delimiter escaping. If you need this feature, use * g_key_file_set_string_list() instead. * @param key the key to write. * @param value a %NULL terminated list of strings to store in the entry specified by key. * @param separator the list separator. Defaults to "," if %NULL. */ write_list_entry(key: string, value: string, separator: string): void; } type SystemdClass = typeof Systemd; /** * Name of the imported GIR library * `see` https://gitlab.gnome.org/GNOME/gjs/-/blob/master/gi/ns.cpp#L188 */ const __name__: string; /** * Version of the imported GIR library * `see` https://gitlab.gnome.org/GNOME/gjs/-/blob/master/gi/ns.cpp#L189 */ const __version__: string; } export default Libxfce4util; } declare module 'gi://Libxfce4util' { import Libxfce4util10 from 'gi://Libxfce4util?version=1.0'; export default Libxfce4util10; } // END