/// /// /// /// /// /// /// /// /// /// /// /// /// /// /** * 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://AppIndicator3?version=0.1' { // Module dependencies import type Gtk from 'gi://Gtk?version=3.0'; import type xlib from 'gi://xlib?version=2.0'; import type Gdk from 'gi://Gdk?version=3.0'; import type cairo from 'cairo'; import type GObject from 'gi://GObject?version=2.0'; import type GLib from 'gi://GLib?version=2.0'; import type Pango from 'gi://Pango?version=1.0'; import type HarfBuzz from 'gi://HarfBuzz?version=0.0'; import type freetype2 from 'gi://freetype2?version=2.0'; import type Gio from 'gi://Gio?version=2.0'; import type GModule from 'gi://GModule?version=2.0'; import type GdkPixbuf from 'gi://GdkPixbuf?version=2.0'; import type Atk from 'gi://Atk?version=1.0'; export namespace AppIndicator3 { /** * AppIndicator3-0.1 */ /** * The category provides grouping for the indicators so that * users can find indicators that are similar together. */ /** * The category provides grouping for the indicators so that * users can find indicators that are similar together. */ export namespace IndicatorCategory { export const $gtype: GObject.GType; } enum IndicatorCategory { /** * The indicator is used to display the status of the application. */ APPLICATION_STATUS, /** * The application is used for communication with other people. */ COMMUNICATIONS, /** * A system indicator relating to something in the user's system. */ SYSTEM_SERVICES, /** * An indicator relating to the user's hardware. */ HARDWARE, /** * Something not defined in this enum, please don't use unless you really need it. */ OTHER, } /** * These are the states that the indicator can be on in * the user's panel. The indicator by default starts * in the state `APP_INDICATOR_STATUS_PASSIVE` and can be * shown by setting it to `APP_INDICATOR_STATUS_ACTIVE`. */ /** * These are the states that the indicator can be on in * the user's panel. The indicator by default starts * in the state `APP_INDICATOR_STATUS_PASSIVE` and can be * shown by setting it to `APP_INDICATOR_STATUS_ACTIVE`. */ export namespace IndicatorStatus { export const $gtype: GObject.GType; } enum IndicatorStatus { /** * The indicator should not be shown to the user. */ PASSIVE, /** * The indicator should be shown in it's default state. */ ACTIVE, /** * The indicator should show it's attention icon. */ ATTENTION, } /** * String identifier for the #AppIndicator::connection-changed signal. */ const INDICATOR_SIGNAL_CONNECTION_CHANGED: string; /** * String identifier for the #AppIndicator::new-attention-icon signal. */ const INDICATOR_SIGNAL_NEW_ATTENTION_ICON: string; /** * String identifier for the #AppIndicator::new-icon signal. */ const INDICATOR_SIGNAL_NEW_ICON: string; /** * String identifier for the #AppIndicator::new-icon-theme-path signal. */ const INDICATOR_SIGNAL_NEW_ICON_THEME_PATH: string; /** * String identifier for the #AppIndicator::new-label signal. */ const INDICATOR_SIGNAL_NEW_LABEL: string; /** * String identifier for the #AppIndicator::new-status signal. */ const INDICATOR_SIGNAL_NEW_STATUS: string; /** * String identifier for the #AppIndicator::scroll-event signal. */ const INDICATOR_SIGNAL_SCROLL_EVENT: string; namespace Indicator { // Signal callback interfaces interface ConnectionChanged { (arg1: boolean): void; } interface NewAttentionIcon { (): void; } interface NewIcon { (): void; } interface NewIconThemePath { (object: string): void; } interface NewLabel { (object: string, p0: string): void; } interface NewStatus { (arg1: string): void; } interface ScrollEvent { (arg1: number, arg2: Gdk.ScrollDirection): void; } // Constructor properties interface interface ConstructorProps extends GObject.Object.ConstructorProps { attention_icon_desc: string; attentionIconDesc: string; attention_icon_name: string; attentionIconName: string; category: string; connected: boolean; icon_desc: string; iconDesc: string; icon_name: string; iconName: string; icon_theme_path: string; iconThemePath: string; id: string; label: string; label_guide: string; labelGuide: string; ordering_index: number; orderingIndex: number; status: string; title: string; } } /** * A application indicator represents the values that are needed to show a * unique status in the panel for an application. In general, applications * should try to fit in the other indicators that are available on the * panel before using this. But, sometimes it is necissary. * * Private fields */ class Indicator extends GObject.Object { static $gtype: GObject.GType; // Properties /** * If the indicator sets it's status to %APP_INDICATOR_STATUS_ATTENTION * then this textual description of the icon shown. */ get attention_icon_desc(): string; set attention_icon_desc(val: string); /** * If the indicator sets it's status to %APP_INDICATOR_STATUS_ATTENTION * then this textual description of the icon shown. */ get attentionIconDesc(): string; set attentionIconDesc(val: string); /** * If the indicator sets it's status to %APP_INDICATOR_STATUS_ATTENTION * then this icon is shown. */ get attention_icon_name(): string; set attention_icon_name(val: string); /** * If the indicator sets it's status to %APP_INDICATOR_STATUS_ATTENTION * then this icon is shown. */ get attentionIconName(): string; set attentionIconName(val: string); /** * The type of indicator that this represents. Please don't use 'Other'. * Defaults to 'ApplicationStatus'. */ get category(): string; /** * Pretty simple, %TRUE if we have a reasonable expectation of being * displayed through this object. You should hide your TrayIcon if so. */ get connected(): boolean; /** * The description of the regular icon that is shown for the indicator. */ get icon_desc(): string; set icon_desc(val: string); /** * The description of the regular icon that is shown for the indicator. */ get iconDesc(): string; set iconDesc(val: string); /** * The name of the regular icon that is shown for the indicator. */ get icon_name(): string; set icon_name(val: string); /** * The name of the regular icon that is shown for the indicator. */ get iconName(): string; set iconName(val: string); /** * An additional place to look for icon names that may be installed by the * application. */ get icon_theme_path(): string; set icon_theme_path(val: string); /** * An additional place to look for icon names that may be installed by the * application. */ get iconThemePath(): string; set iconThemePath(val: string); /** * The ID for this indicator, which should be unique, but used consistently * by this program and its indicator. */ get id(): string; /** * A label that can be shown next to the string in the application * indicator. The label will not be shown unless there is an icon * as well. The label is useful for numerical and other frequently * updated information. In general, it shouldn't be shown unless a * user requests it as it can take up a significant amount of space * on the user's panel. This may not be shown in all visualizations. */ get label(): string; set label(val: string); /** * An optional string to provide guidance to the panel on how big * the #AppIndicator:label string could get. If this is set correctly * then the panel should never 'jiggle' as the string adjusts through * out the range of options. For instance, if you were providing a * percentage like "54% thrust" in #AppIndicator:label you'd want to * set this string to "100% thrust" to ensure space when Scotty can * get you enough power. */ get label_guide(): string; set label_guide(val: string); /** * An optional string to provide guidance to the panel on how big * the #AppIndicator:label string could get. If this is set correctly * then the panel should never 'jiggle' as the string adjusts through * out the range of options. For instance, if you were providing a * percentage like "54% thrust" in #AppIndicator:label you'd want to * set this string to "100% thrust" to ensure space when Scotty can * get you enough power. */ get labelGuide(): string; set labelGuide(val: string); /** * The ordering index is an odd parameter, and if you think you don't need * it you're probably right. In general, the application indicator try * to place the applications in a recreatable place taking into account * which category they're in to try and group them. But, there are some * cases where you'd want to ensure indicators are next to each other. * To do that you can override the generated ordering index and replace it * with a new one. Again, you probably don't want to be doing this, but * in case you do, this is the way. */ get ordering_index(): number; set ordering_index(val: number); /** * The ordering index is an odd parameter, and if you think you don't need * it you're probably right. In general, the application indicator try * to place the applications in a recreatable place taking into account * which category they're in to try and group them. But, there are some * cases where you'd want to ensure indicators are next to each other. * To do that you can override the generated ordering index and replace it * with a new one. Again, you probably don't want to be doing this, but * in case you do, this is the way. */ get orderingIndex(): number; set orderingIndex(val: number); /** * Whether the indicator is shown or requests attention. Defaults to * 'Passive'. */ get status(): string; set status(val: string); /** * Provides a way to refer to this application indicator in a human * readable form. This is used in the Unity desktop in the HUD as * the first part of the menu entries to distinguish them from the * focused application's entries. */ get title(): string; set title(val: string); // Constructors constructor(properties?: Partial, ...args: any[]); _init(...args: any[]): void; static ['new'](id: string, icon_name: string, category: IndicatorCategory): Indicator; static new_with_path( id: string, icon_name: string, category: IndicatorCategory, icon_theme_path: string, ): Indicator; // Signals connect(id: string, callback: (...args: any[]) => any): number; connect_after(id: string, callback: (...args: any[]) => any): number; emit(id: string, ...args: any[]): void; connect(signal: 'connection-changed', callback: (_source: this, arg1: boolean) => void): number; connect_after(signal: 'connection-changed', callback: (_source: this, arg1: boolean) => void): number; emit(signal: 'connection-changed', arg1: boolean): void; connect(signal: 'new-attention-icon', callback: (_source: this) => void): number; connect_after(signal: 'new-attention-icon', callback: (_source: this) => void): number; emit(signal: 'new-attention-icon'): void; connect(signal: 'new-icon', callback: (_source: this) => void): number; connect_after(signal: 'new-icon', callback: (_source: this) => void): number; emit(signal: 'new-icon'): void; connect(signal: 'new-icon-theme-path', callback: (_source: this, object: string) => void): number; connect_after(signal: 'new-icon-theme-path', callback: (_source: this, object: string) => void): number; emit(signal: 'new-icon-theme-path', object: string): void; connect(signal: 'new-label', callback: (_source: this, object: string, p0: string) => void): number; connect_after(signal: 'new-label', callback: (_source: this, object: string, p0: string) => void): number; emit(signal: 'new-label', object: string, p0: string): void; connect(signal: 'new-status', callback: (_source: this, arg1: string) => void): number; connect_after(signal: 'new-status', callback: (_source: this, arg1: string) => void): number; emit(signal: 'new-status', arg1: string): void; connect( signal: 'scroll-event', callback: (_source: this, arg1: number, arg2: Gdk.ScrollDirection) => void, ): number; connect_after( signal: 'scroll-event', callback: (_source: this, arg1: number, arg2: Gdk.ScrollDirection) => void, ): number; emit(signal: 'scroll-event', arg1: number, arg2: Gdk.ScrollDirection): void; // Virtual methods /** * Slot for #AppIndicator::connection-changed. * @param connected */ vfunc_connection_changed(connected: boolean): void; /** * Slot for #AppIndicator::new-attention-icon. */ vfunc_new_attention_icon(): void; /** * Slot for #AppIndicator::new-icon. */ vfunc_new_icon(): void; /** * Slot for #AppIndicator::new-icon-theme-path * @param icon_theme_path */ vfunc_new_icon_theme_path(icon_theme_path: string): void; /** * Slot for #AppIndicator::new-label. * @param label * @param guide */ vfunc_new_label(label: string, guide: string): void; /** * Slot for #AppIndicator::new-status. * @param status */ vfunc_new_status(status: string): void; /** * Slot for #AppIndicator::scroll-event * @param delta * @param direction */ vfunc_scroll_event(delta: number, direction: Gdk.ScrollDirection): void; /** * The function that gets called if an Application * Indicator area appears after the fallback has been created. * @param status_icon */ vfunc_unfallback(status_icon: Gtk.StatusIcon): void; // Methods /** * This function allows for building the Application Indicator menu * from a static desktop file. * @param desktop_file A path to the desktop file to build the menu from * @param desktop_profile Which entries should be used from the desktop file */ build_menu_from_desktop(desktop_file: string, desktop_profile: string): void; /** * Wrapper function for property #AppIndicator:attention-icon-name. * @returns The current attention icon name. */ get_attention_icon(): string; /** * Wrapper function for property #AppIndicator:attention-icon-desc. * @returns The current attention icon description. */ get_attention_icon_desc(): string; /** * Wrapper function for property #AppIndicator:category. * @returns The current category. */ get_category(): IndicatorCategory; /** * Wrapper function for property #AppIndicator:icon-name. * @returns The current icon name. */ get_icon(): string; /** * Wrapper function for property #AppIndicator:icon-desc. * @returns The current icon description. */ get_icon_desc(): string; /** * Wrapper function for property #AppIndicator:icon-theme-path. * @returns The current icon theme path. */ get_icon_theme_path(): string; /** * Wrapper function for property #AppIndicator:id. * @returns The current ID */ get_id(): string; /** * Wrapper function for property #AppIndicator:label. * @returns The current label. */ get_label(): string; /** * Wrapper function for property #AppIndicator:label-guide. * @returns The current label guide. */ get_label_guide(): string; /** * Gets the menu being used for this application indicator. * Wrapper function for property #AppIndicator:menu. * @returns A #GtkMenu object or %NULL if one hasn't been set. */ get_menu(): Gtk.Menu; /** * Wrapper function for property #AppIndicator:ordering-index. * @returns The current ordering index. */ get_ordering_index(): number; /** * Gets the menuitem being called on secondary-activate event. * @returns A #GtkWidget object or %NULL if none has been set. */ get_secondary_activate_target(): Gtk.Widget; /** * Wrapper function for property #AppIndicator:status. * @returns The current status. */ get_status(): IndicatorStatus; /** * Gets the title of the application indicator. See the function * app_indicator_set_title() for information on the title. * @returns The current title. */ get_title(): string; /** * Wrapper for app_indicator_set_attention_icon_full() with a NULL * description. * @param icon_name The name of the attention icon to set for this indicator */ set_attention_icon(icon_name: string): void; /** * Wrapper function for property #AppIndicator:attention-icon-name. * @param icon_name The name of the attention icon to set for this indicator * @param icon_desc A textual description of the icon */ set_attention_icon_full(icon_name: string, icon_desc: string): void; /** * Wrapper function for app_indicator_set_icon_full() with a NULL * description. * @param icon_name The icon name to set. */ set_icon(icon_name: string): void; /** * Sets the default icon to use when the status is active but * not set to attention. In most cases, this should be the * application icon for the program. * * Wrapper function for property #AppIndicator:icon-name and * #AppIndicator::icon-desc. * @param icon_name The icon name to set. * @param icon_desc A textual description of the icon for accessibility */ set_icon_full(icon_name: string, icon_desc: string): void; /** * Sets the path to use when searching for icons. * @param icon_theme_path The icon theme path to set. */ set_icon_theme_path(icon_theme_path: string): void; /** * This is a wrapper function for the #AppIndicator:label and * #AppIndicator:guide properties. This function can take #NULL * as either `label` or `guide` and will clear the entries. * @param label The label to show next to the icon. * @param guide A guide to size the label correctly. */ set_label(label: string, guide: string): void; /** * Sets the menu that should be shown when the Application Indicator * is clicked on in the panel. An application indicator will not * be rendered unless it has a menu. * * Wrapper function for property #AppIndicator:menu. * @param menu A #GtkMenu to set */ set_menu(menu?: Gtk.Menu | null): void; /** * Sets the ordering index for the app indicator which effects the * placement of it on the panel. For almost all app indicator * this is not the function you're looking for. * * Wrapper function for property #AppIndicator:ordering-index. * @param ordering_index A value for the ordering of this app indicator */ set_ordering_index(ordering_index: number): void; /** * Set the `menuitem` to be activated when a secondary activation event (i.e. a * middle-click) is emitted over the #AppIndicator icon/label. * * The `menuitem` can be also a complex #GtkWidget, but to get activated when * a secondary activation occurs in the #Appindicator, it must be a visible and * active child (or inner-child) of the #AppIndicator:menu. * * Setting `menuitem` to %NULL causes to disable this feature. * @param menuitem A #GtkWidget to be activated on secondary activation */ set_secondary_activate_target(menuitem?: Gtk.Widget | null): void; /** * Wrapper function for property #AppIndicator:status. * @param status The status to set for this indicator */ set_status(status: IndicatorStatus | null): void; /** * Sets the title of the application indicator, or how it should be referred * in a human readable form. This string should be UTF-8 and localized as it * expected that users will set it. * * In the Unity desktop the most prominent place that this is show will be * in the HUD. HUD listings for this application indicator will start with * the title as the first part of the line for the menu items. * * Setting `title` to %NULL removes the title. * @param title Title of the app indicator */ set_title(title?: string | null): void; } type IndicatorClass = typeof Indicator; /** * All of the private data in an instance of an application indicator. * Private Fields */ abstract class IndicatorPrivate { static $gtype: GObject.GType; // Constructors _init(...args: any[]): void; } /** * 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 AppIndicator3; } declare module 'gi://AppIndicator3' { import AppIndicator301 from 'gi://AppIndicator3?version=0.1'; export default AppIndicator301; } // END