///
///
///
///
/**
* 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://IBus?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 IBus {
/**
* IBus-1.0
*/
/**
* Type of Pre-edit style as the semantic name.
* The Wayland specs prefers to express the semantic values rather than RGB
* values and text-input protocol version 1 defines some values:
* https://gitlab.freedesktop.org/wayland/wayland-protocols/-/blob/main/unstable/text-input/text-input-unstable-v1.xml?ref_type=heads#L251
*
* IBus compiled the values for major input method engines:
* https://github.com/ibus/ibus/wiki/Wayland-Colors
*/
/**
* Type of Pre-edit style as the semantic name.
* The Wayland specs prefers to express the semantic values rather than RGB
* values and text-input protocol version 1 defines some values:
* https://gitlab.freedesktop.org/wayland/wayland-protocols/-/blob/main/unstable/text-input/text-input-unstable-v1.xml?ref_type=heads#L251
*
* IBus compiled the values for major input method engines:
* https://github.com/ibus/ibus/wiki/Wayland-Colors
*/
export namespace AttrPreedit {
export const $gtype: GObject.GType;
}
enum AttrPreedit {
/**
* Default style for composing text.
*/
DEFAULT,
/**
* Style should be the same as in non-composing text.
*/
NONE,
/**
* Most language engines wish to draw underline in
* the typed whole preedit string except for the
* prediction string. (Chinese, Japanese,
* Typing-booster)
*/
WHOLE,
/**
* Modifying an active segment is distinguished
* against whole the preedit text. (Hangul,
* Japanese)
*/
SELECTION,
/**
* A prediction string can be appended after the
* typed string. (Typing-booster)
*/
PREDICTION,
/**
* A prefix string can be an informative color.
* (Table)
*/
PREFIX,
/**
* A suffix string can be an informative color.
* (Table)
*/
SUFFIX,
/**
* An detected typo could be an error color
* with a spelling check or the word could
* not be found in a dictionary. The
* underline color also might be more
* visible. (Typing-booster, Table)
*/
ERROR_SPELLING,
/**
* A wrong compose key could be an error
* color. (Typing-booster)
*/
ERROR_COMPOSE,
}
/**
* Type enumeration of IBusText attribute.
*/
/**
* Type enumeration of IBusText attribute.
*/
export namespace AttrType {
export const $gtype: GObject.GType;
}
enum AttrType {
/**
* Decorate with underline.
*/
UNDERLINE,
/**
* Foreground color.
*/
FOREGROUND,
/**
* Background color.
*/
BACKGROUND,
}
/**
* Type of IBusText attribute.
*/
/**
* Type of IBusText attribute.
*/
export namespace AttrUnderline {
export const $gtype: GObject.GType;
}
enum AttrUnderline {
/**
* No underline.
*/
NONE,
/**
* Single underline.
*/
SINGLE,
/**
* Double underline.
*/
DOUBLE,
/**
* Low underline ? FIXME
*/
LOW,
/**
* Error underline
*/
ERROR,
}
/**
* Type enumeration of IBusBusGlobalBindingType.
*/
/**
* Type enumeration of IBusBusGlobalBindingType.
*/
export namespace BusGlobalBindingType {
export const $gtype: GObject.GType;
}
enum BusGlobalBindingType {
/**
* Any types
*/
ANY,
/**
* IME switcher
*/
IME_SWITCHER,
/**
* Emoji typing
*/
EMOJI_TYPING,
}
export namespace BusRequestNameReply {
export const $gtype: GObject.GType;
}
enum BusRequestNameReply {
/**
* same as DBUS_REQUEST_NAME_REPLY_PRIMARY_OWNER
*/
PRIMARY_OWNER,
/**
* same as DBUS_REQUEST_NAME_REPLY_IN_QUEUE
*/
IN_QUEUE,
/**
* same as DBUS_REQUEST_NAME_REPLY_EXISTS
*/
EXISTS,
/**
* same as DBUS_REQUEST_NAME_REPLY_ALREADY_OWNER
*/
ALREADY_OWNER,
}
export namespace BusStartServiceByNameReply {
export const $gtype: GObject.GType;
}
enum BusStartServiceByNameReply {
/**
* same as DBUS_START_REPLY_SUCCESS
*/
SUCCESS,
/**
* same as DBUS_START_REPLY_ALREADY_RUNNING
*/
ALREADY_RUNNING,
}
class Error extends GLib.Error {
static $gtype: GObject.GType;
// Static fields
/**
* There is no engine associated with input context.
*/
static NO_ENGINE: number;
/**
* There is no config module running.
*/
static NO_CONFIG: number;
/**
* General failure.
*/
static FAILED: number;
// Constructors
constructor(options: { message: string; code: number });
_init(...args: any[]): void;
// Static methods
static quark(): GLib.Quark;
}
/**
* Describes primary purpose of the input context. This information
* is particularly useful to implement intelligent behavior in
* engines, such as automatic input-mode switch and text prediction.
*
* Note that the purpose is not meant to impose a totally strict rule
* about allowed characters, and does not replace input validation.
* It is fine for an on-screen keyboard to let the user override the
* character set restriction that is expressed by the purpose. The
* application is expected to validate the entry contents, even if
* it specified a purpose.
*
* The difference between `IBUS_INPUT_PURPOSE_DIGITS` and
* `IBUS_INPUT_PURPOSE_NUMBER` is that the former accepts only digits
* while the latter also some punctuation (like commas or points, plus,
* minus) and “e” or “E” as in 3.14E+000.
*
* This enumeration may be extended in the future; engines should
* interpret unknown values as 'free form'.
*/
/**
* Describes primary purpose of the input context. This information
* is particularly useful to implement intelligent behavior in
* engines, such as automatic input-mode switch and text prediction.
*
* Note that the purpose is not meant to impose a totally strict rule
* about allowed characters, and does not replace input validation.
* It is fine for an on-screen keyboard to let the user override the
* character set restriction that is expressed by the purpose. The
* application is expected to validate the entry contents, even if
* it specified a purpose.
*
* The difference between `IBUS_INPUT_PURPOSE_DIGITS` and
* `IBUS_INPUT_PURPOSE_NUMBER` is that the former accepts only digits
* while the latter also some punctuation (like commas or points, plus,
* minus) and “e” or “E” as in 3.14E+000.
*
* This enumeration may be extended in the future; engines should
* interpret unknown values as 'free form'.
*/
export namespace InputPurpose {
export const $gtype: GObject.GType;
}
enum InputPurpose {
/**
* Allow any character
*/
FREE_FORM,
/**
* Allow only alphabetic characters
*/
ALPHA,
/**
* Allow only digits
*/
DIGITS,
/**
* Edited field expects numbers
*/
NUMBER,
/**
* Edited field expects phone number
*/
PHONE,
/**
* Edited field expects URL
*/
URL,
/**
* Edited field expects email address
*/
EMAIL,
/**
* Edited field expects the name of a person
*/
NAME,
/**
* Like `IBUS_INPUT_PURPOSE_FREE_FORM,`
* but characters are hidden
*/
PASSWORD,
/**
* Like `IBUS_INPUT_PURPOSE_DIGITS,` but
* characters are hidden
*/
PIN,
/**
* Allow any character, in addition to control
* codes. Since 1.5.24
*/
TERMINAL,
}
/**
* Orientation of UI.
*/
/**
* Orientation of UI.
*/
export namespace Orientation {
export const $gtype: GObject.GType;
}
enum Orientation {
/**
* Horizontal orientation.
*/
HORIZONTAL,
/**
* Vertival orientation.
*/
VERTICAL,
/**
* Use ibus global orientation setup.
*/
SYSTEM,
}
/**
* Pre-edit commit mode when the focus is lost.
*/
/**
* Pre-edit commit mode when the focus is lost.
*/
export namespace PreeditFocusMode {
export const $gtype: GObject.GType;
}
enum PreeditFocusMode {
/**
* pre-edit text is cleared.
*/
CLEAR,
/**
* pre-edit text is committed.
*/
COMMIT,
}
/**
* State of #IBusProperty. The actual effect depends on #IBusPropType of the
* IBusProperty.
*
*
*
* PROP_TYPE_TOGGLE
* Emphasized if PROP_STATE_CHECKED, normal otherwise.
*
*
* PROP_TYPE_RADIO
* Option checked if PROP_STATE_CHECKED, unchecked otherwise.
*
*
* No effect on other types.
*/
/**
* State of #IBusProperty. The actual effect depends on #IBusPropType of the
* IBusProperty.
*
*
*
* PROP_TYPE_TOGGLE
* Emphasized if PROP_STATE_CHECKED, normal otherwise.
*
*
* PROP_TYPE_RADIO
* Option checked if PROP_STATE_CHECKED, unchecked otherwise.
*
*
* No effect on other types.
*/
export namespace PropState {
export const $gtype: GObject.GType;
}
enum PropState {
/**
* Property option is unchecked.
*/
UNCHECKED,
/**
* Property option is checked.
*/
CHECKED,
/**
* The state is inconsistent with the associated IME
* property.
*/
INCONSISTENT,
}
/**
* Type enumeration of IBusProperty.
*/
/**
* Type enumeration of IBusProperty.
*/
export namespace PropType {
export const $gtype: GObject.GType;
}
enum PropType {
/**
* Property is shown as normal text.
*/
NORMAL,
/**
* Property is shown as a toggle button.
*/
TOGGLE,
/**
* Property is shown as a radio selection option.
*/
RADIO,
/**
* Property is shown as a menu, usually imply it has sub menu
* items.
*/
MENU,
/**
* A separator for menu.
*/
SEPARATOR,
}
export namespace XEventType {
export const $gtype: GObject.GType;
}
enum XEventType {
NOTHING,
KEY_PRESS,
KEY_RELEASE,
OTHER,
EVENT_LAST,
}
const __0: number;
const __1: number;
const __2: number;
const __3: number;
const __3270_AltCursor: number;
const __3270_Attn: number;
const __3270_BackTab: number;
const __3270_ChangeScreen: number;
const __3270_Copy: number;
const __3270_CursorBlink: number;
const __3270_CursorSelect: number;
const __3270_DeleteWord: number;
const __3270_Duplicate: number;
const __3270_Enter: number;
const __3270_EraseEOF: number;
const __3270_EraseInput: number;
const __3270_ExSelect: number;
const __3270_FieldMark: number;
const __3270_Ident: number;
const __3270_Jump: number;
const __3270_KeyClick: number;
const __3270_Left2: number;
const __3270_PA1: number;
const __3270_PA2: number;
const __3270_PA3: number;
const __3270_Play: number;
const __3270_PrintScreen: number;
const __3270_Quit: number;
const __3270_Record: number;
const __3270_Reset: number;
const __3270_Right2: number;
const __3270_Rule: number;
const __3270_Setup: number;
const __3270_Test: number;
const __4: number;
const __5: number;
const __6: number;
const __7: number;
const __8: number;
const __9: number;
const A: number;
const AE: number;
const Aacute: number;
const Abelowdot: number;
const Abreve: number;
const Abreveacute: number;
const Abrevebelowdot: number;
const Abrevegrave: number;
const Abrevehook: number;
const Abrevetilde: number;
const AccessX_Enable: number;
const AccessX_Feedback_Enable: number;
const Acircumflex: number;
const Acircumflexacute: number;
const Acircumflexbelowdot: number;
const Acircumflexgrave: number;
const Acircumflexhook: number;
const Acircumflextilde: number;
const Adiaeresis: number;
const Agrave: number;
const Ahook: number;
const Alt_L: number;
const Alt_R: number;
const Amacron: number;
const Aogonek: number;
const Arabic_0: number;
const Arabic_1: number;
const Arabic_2: number;
const Arabic_3: number;
const Arabic_4: number;
const Arabic_5: number;
const Arabic_6: number;
const Arabic_7: number;
const Arabic_8: number;
const Arabic_9: number;
const Arabic_ain: number;
const Arabic_alef: number;
const Arabic_alefmaksura: number;
const Arabic_beh: number;
const Arabic_comma: number;
const Arabic_dad: number;
const Arabic_dal: number;
const Arabic_damma: number;
const Arabic_dammatan: number;
const Arabic_ddal: number;
const Arabic_farsi_yeh: number;
const Arabic_fatha: number;
const Arabic_fathatan: number;
const Arabic_feh: number;
const Arabic_fullstop: number;
const Arabic_gaf: number;
const Arabic_ghain: number;
const Arabic_ha: number;
const Arabic_hah: number;
const Arabic_hamza: number;
const Arabic_hamza_above: number;
const Arabic_hamza_below: number;
const Arabic_hamzaonalef: number;
const Arabic_hamzaonwaw: number;
const Arabic_hamzaonyeh: number;
const Arabic_hamzaunderalef: number;
const Arabic_heh: number;
const Arabic_heh_doachashmee: number;
const Arabic_heh_goal: number;
const Arabic_jeem: number;
const Arabic_jeh: number;
const Arabic_kaf: number;
const Arabic_kasra: number;
const Arabic_kasratan: number;
const Arabic_keheh: number;
const Arabic_khah: number;
const Arabic_lam: number;
const Arabic_madda_above: number;
const Arabic_maddaonalef: number;
const Arabic_meem: number;
const Arabic_noon: number;
const Arabic_noon_ghunna: number;
const Arabic_peh: number;
const Arabic_percent: number;
const Arabic_qaf: number;
const Arabic_question_mark: number;
const Arabic_ra: number;
const Arabic_rreh: number;
const Arabic_sad: number;
const Arabic_seen: number;
const Arabic_semicolon: number;
const Arabic_shadda: number;
const Arabic_sheen: number;
const Arabic_sukun: number;
const Arabic_superscript_alef: number;
const Arabic_switch: number;
const Arabic_tah: number;
const Arabic_tatweel: number;
const Arabic_tcheh: number;
const Arabic_teh: number;
const Arabic_tehmarbuta: number;
const Arabic_thal: number;
const Arabic_theh: number;
const Arabic_tteh: number;
const Arabic_veh: number;
const Arabic_waw: number;
const Arabic_yeh: number;
const Arabic_yeh_baree: number;
const Arabic_zah: number;
const Arabic_zain: number;
const Aring: number;
const Armenian_AT: number;
const Armenian_AYB: number;
const Armenian_BEN: number;
const Armenian_CHA: number;
const Armenian_DA: number;
const Armenian_DZA: number;
const Armenian_E: number;
const Armenian_FE: number;
const Armenian_GHAT: number;
const Armenian_GIM: number;
const Armenian_HI: number;
const Armenian_HO: number;
const Armenian_INI: number;
const Armenian_JE: number;
const Armenian_KE: number;
const Armenian_KEN: number;
const Armenian_KHE: number;
const Armenian_LYUN: number;
const Armenian_MEN: number;
const Armenian_NU: number;
const Armenian_O: number;
const Armenian_PE: number;
const Armenian_PYUR: number;
const Armenian_RA: number;
const Armenian_RE: number;
const Armenian_SE: number;
const Armenian_SHA: number;
const Armenian_TCHE: number;
const Armenian_TO: number;
const Armenian_TSA: number;
const Armenian_TSO: number;
const Armenian_TYUN: number;
const Armenian_VEV: number;
const Armenian_VO: number;
const Armenian_VYUN: number;
const Armenian_YECH: number;
const Armenian_ZA: number;
const Armenian_ZHE: number;
const Armenian_accent: number;
const Armenian_amanak: number;
const Armenian_apostrophe: number;
const Armenian_at: number;
const Armenian_ayb: number;
const Armenian_ben: number;
const Armenian_but: number;
const Armenian_cha: number;
const Armenian_da: number;
const Armenian_dza: number;
const Armenian_e: number;
const Armenian_exclam: number;
const Armenian_fe: number;
const Armenian_full_stop: number;
const Armenian_ghat: number;
const Armenian_gim: number;
const Armenian_hi: number;
const Armenian_ho: number;
const Armenian_hyphen: number;
const Armenian_ini: number;
const Armenian_je: number;
const Armenian_ke: number;
const Armenian_ken: number;
const Armenian_khe: number;
const Armenian_ligature_ew: number;
const Armenian_lyun: number;
const Armenian_men: number;
const Armenian_nu: number;
const Armenian_o: number;
const Armenian_paruyk: number;
const Armenian_pe: number;
const Armenian_pyur: number;
const Armenian_question: number;
const Armenian_ra: number;
const Armenian_re: number;
const Armenian_se: number;
const Armenian_separation_mark: number;
const Armenian_sha: number;
const Armenian_shesht: number;
const Armenian_tche: number;
const Armenian_to: number;
const Armenian_tsa: number;
const Armenian_tso: number;
const Armenian_tyun: number;
const Armenian_verjaket: number;
const Armenian_vev: number;
const Armenian_vo: number;
const Armenian_vyun: number;
const Armenian_yech: number;
const Armenian_yentamna: number;
const Armenian_za: number;
const Armenian_zhe: number;
const Atilde: number;
const AudibleBell_Enable: number;
const B: number;
const Babovedot: number;
const BackSpace: number;
const Begin: number;
const BounceKeys_Enable: number;
const Break: number;
const Byelorussian_SHORTU: number;
const Byelorussian_shortu: number;
const C: number;
const Cabovedot: number;
const Cacute: number;
const Cancel: number;
const Caps_Lock: number;
const Ccaron: number;
const Ccedilla: number;
const Ccircumflex: number;
const Clear: number;
/**
* International and multi-key character composition.
*/
const Codeinput: number;
const ColonSign: number;
const Control_L: number;
const Control_R: number;
const CruzeiroSign: number;
const Cyrillic_A: number;
const Cyrillic_BE: number;
const Cyrillic_CHE: number;
const Cyrillic_CHE_descender: number;
const Cyrillic_CHE_vertstroke: number;
const Cyrillic_DE: number;
const Cyrillic_DZHE: number;
const Cyrillic_E: number;
const Cyrillic_EF: number;
const Cyrillic_EL: number;
const Cyrillic_EM: number;
const Cyrillic_EN: number;
const Cyrillic_EN_descender: number;
const Cyrillic_ER: number;
const Cyrillic_ES: number;
const Cyrillic_GHE: number;
const Cyrillic_GHE_bar: number;
const Cyrillic_HA: number;
const Cyrillic_HARDSIGN: number;
const Cyrillic_HA_descender: number;
const Cyrillic_I: number;
const Cyrillic_IE: number;
const Cyrillic_IO: number;
const Cyrillic_I_macron: number;
const Cyrillic_JE: number;
const Cyrillic_KA: number;
const Cyrillic_KA_descender: number;
const Cyrillic_KA_vertstroke: number;
const Cyrillic_LJE: number;
const Cyrillic_NJE: number;
const Cyrillic_O: number;
const Cyrillic_O_bar: number;
const Cyrillic_PE: number;
const Cyrillic_SCHWA: number;
const Cyrillic_SHA: number;
const Cyrillic_SHCHA: number;
const Cyrillic_SHHA: number;
const Cyrillic_SHORTI: number;
const Cyrillic_SOFTSIGN: number;
const Cyrillic_TE: number;
const Cyrillic_TSE: number;
const Cyrillic_U: number;
const Cyrillic_U_macron: number;
const Cyrillic_U_straight: number;
const Cyrillic_U_straight_bar: number;
const Cyrillic_VE: number;
const Cyrillic_YA: number;
const Cyrillic_YERU: number;
const Cyrillic_YU: number;
const Cyrillic_ZE: number;
const Cyrillic_ZHE: number;
const Cyrillic_ZHE_descender: number;
const Cyrillic_a: number;
const Cyrillic_be: number;
const Cyrillic_che: number;
const Cyrillic_che_descender: number;
const Cyrillic_che_vertstroke: number;
const Cyrillic_de: number;
const Cyrillic_dzhe: number;
const Cyrillic_e: number;
const Cyrillic_ef: number;
const Cyrillic_el: number;
const Cyrillic_em: number;
const Cyrillic_en: number;
const Cyrillic_en_descender: number;
const Cyrillic_er: number;
const Cyrillic_es: number;
const Cyrillic_ghe: number;
const Cyrillic_ghe_bar: number;
const Cyrillic_ha: number;
const Cyrillic_ha_descender: number;
const Cyrillic_hardsign: number;
const Cyrillic_i: number;
const Cyrillic_i_macron: number;
const Cyrillic_ie: number;
const Cyrillic_io: number;
const Cyrillic_je: number;
const Cyrillic_ka: number;
const Cyrillic_ka_descender: number;
const Cyrillic_ka_vertstroke: number;
const Cyrillic_lje: number;
const Cyrillic_nje: number;
const Cyrillic_o: number;
const Cyrillic_o_bar: number;
const Cyrillic_pe: number;
const Cyrillic_schwa: number;
const Cyrillic_sha: number;
const Cyrillic_shcha: number;
const Cyrillic_shha: number;
const Cyrillic_shorti: number;
const Cyrillic_softsign: number;
const Cyrillic_te: number;
const Cyrillic_tse: number;
const Cyrillic_u: number;
const Cyrillic_u_macron: number;
const Cyrillic_u_straight: number;
const Cyrillic_u_straight_bar: number;
const Cyrillic_ve: number;
const Cyrillic_ya: number;
const Cyrillic_yeru: number;
const Cyrillic_yu: number;
const Cyrillic_ze: number;
const Cyrillic_zhe: number;
const Cyrillic_zhe_descender: number;
const D: number;
const Dabovedot: number;
const Dcaron: number;
const Delete: number;
const DongSign: number;
const Down: number;
const Dstroke: number;
const E: number;
const ENG: number;
const ETH: number;
const Eabovedot: number;
const Eacute: number;
const Ebelowdot: number;
const Ecaron: number;
const Ecircumflex: number;
const Ecircumflexacute: number;
const Ecircumflexbelowdot: number;
const Ecircumflexgrave: number;
const Ecircumflexhook: number;
const Ecircumflextilde: number;
const EcuSign: number;
const Ediaeresis: number;
const Egrave: number;
const Ehook: number;
const Eisu_Shift: number;
const Eisu_toggle: number;
const Emacron: number;
const End: number;
const Eogonek: number;
const Escape: number;
const Eth: number;
const Etilde: number;
const EuroSign: number;
const Execute: number;
const F: number;
const F1: number;
const F10: number;
const F11: number;
const F12: number;
const F13: number;
const F14: number;
const F15: number;
const F16: number;
const F17: number;
const F18: number;
const F19: number;
const F2: number;
const F20: number;
const F21: number;
const F22: number;
const F23: number;
const F24: number;
const F25: number;
const F26: number;
const F27: number;
const F28: number;
const F29: number;
const F3: number;
const F30: number;
const F31: number;
const F32: number;
const F33: number;
const F34: number;
const F35: number;
const F4: number;
const F5: number;
const F6: number;
const F7: number;
const F8: number;
const F9: number;
const FFrancSign: number;
const Fabovedot: number;
const Farsi_0: number;
const Farsi_1: number;
const Farsi_2: number;
const Farsi_3: number;
const Farsi_4: number;
const Farsi_5: number;
const Farsi_6: number;
const Farsi_7: number;
const Farsi_8: number;
const Farsi_9: number;
const Farsi_yeh: number;
const Find: number;
const First_Virtual_Screen: number;
const G: number;
const Gabovedot: number;
const Gbreve: number;
const Gcaron: number;
const Gcedilla: number;
const Gcircumflex: number;
const Georgian_an: number;
const Georgian_ban: number;
const Georgian_can: number;
const Georgian_char: number;
const Georgian_chin: number;
const Georgian_cil: number;
const Georgian_don: number;
const Georgian_en: number;
const Georgian_fi: number;
const Georgian_gan: number;
const Georgian_ghan: number;
const Georgian_hae: number;
const Georgian_har: number;
const Georgian_he: number;
const Georgian_hie: number;
const Georgian_hoe: number;
const Georgian_in: number;
const Georgian_jhan: number;
const Georgian_jil: number;
const Georgian_kan: number;
const Georgian_khar: number;
const Georgian_las: number;
const Georgian_man: number;
const Georgian_nar: number;
const Georgian_on: number;
const Georgian_par: number;
const Georgian_phar: number;
const Georgian_qar: number;
const Georgian_rae: number;
const Georgian_san: number;
const Georgian_shin: number;
const Georgian_tan: number;
const Georgian_tar: number;
const Georgian_un: number;
const Georgian_vin: number;
const Georgian_we: number;
const Georgian_xan: number;
const Georgian_zen: number;
const Georgian_zhar: number;
const Greek_ALPHA: number;
const Greek_ALPHAaccent: number;
const Greek_BETA: number;
const Greek_CHI: number;
const Greek_DELTA: number;
const Greek_EPSILON: number;
const Greek_EPSILONaccent: number;
const Greek_ETA: number;
const Greek_ETAaccent: number;
const Greek_GAMMA: number;
const Greek_IOTA: number;
const Greek_IOTAaccent: number;
const Greek_IOTAdiaeresis: number;
const Greek_IOTAdieresis: number;
const Greek_KAPPA: number;
const Greek_LAMBDA: number;
const Greek_LAMDA: number;
const Greek_MU: number;
const Greek_NU: number;
const Greek_OMEGA: number;
const Greek_OMEGAaccent: number;
const Greek_OMICRON: number;
const Greek_OMICRONaccent: number;
const Greek_PHI: number;
const Greek_PI: number;
const Greek_PSI: number;
const Greek_RHO: number;
const Greek_SIGMA: number;
const Greek_TAU: number;
const Greek_THETA: number;
const Greek_UPSILON: number;
const Greek_UPSILONaccent: number;
const Greek_UPSILONdieresis: number;
const Greek_XI: number;
const Greek_ZETA: number;
const Greek_accentdieresis: number;
const Greek_alpha: number;
const Greek_alphaaccent: number;
const Greek_beta: number;
const Greek_chi: number;
const Greek_delta: number;
const Greek_epsilon: number;
const Greek_epsilonaccent: number;
const Greek_eta: number;
const Greek_etaaccent: number;
const Greek_finalsmallsigma: number;
const Greek_gamma: number;
const Greek_horizbar: number;
const Greek_iota: number;
const Greek_iotaaccent: number;
const Greek_iotaaccentdieresis: number;
const Greek_iotadieresis: number;
const Greek_kappa: number;
const Greek_lambda: number;
const Greek_lamda: number;
const Greek_mu: number;
const Greek_nu: number;
const Greek_omega: number;
const Greek_omegaaccent: number;
const Greek_omicron: number;
const Greek_omicronaccent: number;
const Greek_phi: number;
const Greek_pi: number;
const Greek_psi: number;
const Greek_rho: number;
const Greek_sigma: number;
const Greek_switch: number;
const Greek_tau: number;
const Greek_theta: number;
const Greek_upsilon: number;
const Greek_upsilonaccent: number;
const Greek_upsilonaccentdieresis: number;
const Greek_upsilondieresis: number;
const Greek_xi: number;
const Greek_zeta: number;
const H: number;
const Hangul: number;
const Hangul_A: number;
const Hangul_AE: number;
const Hangul_AraeA: number;
const Hangul_AraeAE: number;
const Hangul_Banja: number;
const Hangul_Cieuc: number;
const Hangul_Codeinput: number;
const Hangul_Dikeud: number;
const Hangul_E: number;
const Hangul_EO: number;
const Hangul_EU: number;
const Hangul_End: number;
const Hangul_Hanja: number;
const Hangul_Hieuh: number;
const Hangul_I: number;
const Hangul_Ieung: number;
const Hangul_J_Cieuc: number;
const Hangul_J_Dikeud: number;
const Hangul_J_Hieuh: number;
const Hangul_J_Ieung: number;
const Hangul_J_Jieuj: number;
const Hangul_J_Khieuq: number;
const Hangul_J_Kiyeog: number;
const Hangul_J_KiyeogSios: number;
const Hangul_J_KkogjiDalrinIeung: number;
const Hangul_J_Mieum: number;
const Hangul_J_Nieun: number;
const Hangul_J_NieunHieuh: number;
const Hangul_J_NieunJieuj: number;
const Hangul_J_PanSios: number;
const Hangul_J_Phieuf: number;
const Hangul_J_Pieub: number;
const Hangul_J_PieubSios: number;
const Hangul_J_Rieul: number;
const Hangul_J_RieulHieuh: number;
const Hangul_J_RieulKiyeog: number;
const Hangul_J_RieulMieum: number;
const Hangul_J_RieulPhieuf: number;
const Hangul_J_RieulPieub: number;
const Hangul_J_RieulSios: number;
const Hangul_J_RieulTieut: number;
const Hangul_J_Sios: number;
const Hangul_J_SsangKiyeog: number;
const Hangul_J_SsangSios: number;
const Hangul_J_Tieut: number;
const Hangul_J_YeorinHieuh: number;
const Hangul_Jamo: number;
const Hangul_Jeonja: number;
const Hangul_Jieuj: number;
const Hangul_Khieuq: number;
const Hangul_Kiyeog: number;
const Hangul_KiyeogSios: number;
const Hangul_KkogjiDalrinIeung: number;
const Hangul_Mieum: number;
const Hangul_MultipleCandidate: number;
const Hangul_Nieun: number;
const Hangul_NieunHieuh: number;
const Hangul_NieunJieuj: number;
const Hangul_O: number;
const Hangul_OE: number;
const Hangul_PanSios: number;
const Hangul_Phieuf: number;
const Hangul_Pieub: number;
const Hangul_PieubSios: number;
const Hangul_PostHanja: number;
const Hangul_PreHanja: number;
const Hangul_PreviousCandidate: number;
const Hangul_Rieul: number;
const Hangul_RieulHieuh: number;
const Hangul_RieulKiyeog: number;
const Hangul_RieulMieum: number;
const Hangul_RieulPhieuf: number;
const Hangul_RieulPieub: number;
const Hangul_RieulSios: number;
const Hangul_RieulTieut: number;
const Hangul_RieulYeorinHieuh: number;
const Hangul_Romaja: number;
const Hangul_SingleCandidate: number;
const Hangul_Sios: number;
const Hangul_Special: number;
const Hangul_SsangDikeud: number;
const Hangul_SsangJieuj: number;
const Hangul_SsangKiyeog: number;
const Hangul_SsangPieub: number;
const Hangul_SsangSios: number;
const Hangul_Start: number;
const Hangul_SunkyeongeumMieum: number;
const Hangul_SunkyeongeumPhieuf: number;
const Hangul_SunkyeongeumPieub: number;
const Hangul_Tieut: number;
const Hangul_U: number;
const Hangul_WA: number;
const Hangul_WAE: number;
const Hangul_WE: number;
const Hangul_WEO: number;
const Hangul_WI: number;
const Hangul_YA: number;
const Hangul_YAE: number;
const Hangul_YE: number;
const Hangul_YEO: number;
const Hangul_YI: number;
const Hangul_YO: number;
const Hangul_YU: number;
const Hangul_YeorinHieuh: number;
const Hangul_switch: number;
const Hankaku: number;
const Hcircumflex: number;
const Hebrew_switch: number;
const Help: number;
/**
* Japanese keyboard support.
*/
const Henkan: number;
/**
* Japanese keyboard support.
*/
const Henkan_Mode: number;
/**
* Japanese keyboard support.
*/
const Hiragana: number;
/**
* Japanese keyboard support.
*/
const Hiragana_Katakana: number;
const Home: number;
const Hstroke: number;
const Hyper_L: number;
const Hyper_R: number;
const I: number;
/**
* D-Bus interface for IBus config.
*/
const INTERFACE_CONFIG: string;
/**
* D-Bus interface for IBus engine.
*/
const INTERFACE_ENGINE: string;
/**
* D-Bus interface for IBus factory.
*/
const INTERFACE_FACTORY: string;
/**
* D-Bus interface for IBus.
*/
const INTERFACE_IBUS: string;
/**
* D-Bus interface for IBus input context.
*/
const INTERFACE_INPUT_CONTEXT: string;
/**
* D-Bus interface for IBus notifications.
*/
const INTERFACE_NOTIFICATIONS: string;
/**
* D-Bus interface for IBus panel.
*/
const INTERFACE_PANEL: string;
/**
* D-Bus interface for IBus portal.
*/
const INTERFACE_PORTAL: string;
const ISO_Center_Object: number;
const ISO_Continuous_Underline: number;
const ISO_Discontinuous_Underline: number;
const ISO_Emphasize: number;
const ISO_Enter: number;
const ISO_Fast_Cursor_Down: number;
const ISO_Fast_Cursor_Left: number;
const ISO_Fast_Cursor_Right: number;
const ISO_Fast_Cursor_Up: number;
const ISO_First_Group: number;
const ISO_First_Group_Lock: number;
const ISO_Group_Latch: number;
const ISO_Group_Lock: number;
const ISO_Group_Shift: number;
const ISO_Last_Group: number;
const ISO_Last_Group_Lock: number;
const ISO_Left_Tab: number;
const ISO_Level2_Latch: number;
const ISO_Level3_Latch: number;
const ISO_Level3_Lock: number;
const ISO_Level3_Shift: number;
const ISO_Level5_Latch: number;
const ISO_Level5_Lock: number;
const ISO_Level5_Shift: number;
const ISO_Lock: number;
const ISO_Move_Line_Down: number;
const ISO_Move_Line_Up: number;
const ISO_Next_Group: number;
const ISO_Next_Group_Lock: number;
const ISO_Partial_Line_Down: number;
const ISO_Partial_Line_Up: number;
const ISO_Partial_Space_Left: number;
const ISO_Partial_Space_Right: number;
const ISO_Prev_Group: number;
const ISO_Prev_Group_Lock: number;
const ISO_Release_Both_Margins: number;
const ISO_Release_Margin_Left: number;
const ISO_Release_Margin_Right: number;
const ISO_Set_Margin_Left: number;
const ISO_Set_Margin_Right: number;
const Iabovedot: number;
const Iacute: number;
const Ibelowdot: number;
const Ibreve: number;
const Icircumflex: number;
const Idiaeresis: number;
const Igrave: number;
const Ihook: number;
const Imacron: number;
const Insert: number;
const Iogonek: number;
const Itilde: number;
const J: number;
const Jcircumflex: number;
const K: number;
const KEY_0: number;
const KEY_1: number;
const KEY_2: number;
const KEY_3: number;
const KEY_3270_AltCursor: number;
const KEY_3270_Attn: number;
const KEY_3270_BackTab: number;
const KEY_3270_ChangeScreen: number;
const KEY_3270_Copy: number;
const KEY_3270_CursorBlink: number;
const KEY_3270_CursorSelect: number;
const KEY_3270_DeleteWord: number;
const KEY_3270_Duplicate: number;
const KEY_3270_Enter: number;
const KEY_3270_EraseEOF: number;
const KEY_3270_EraseInput: number;
const KEY_3270_ExSelect: number;
const KEY_3270_FieldMark: number;
const KEY_3270_Ident: number;
const KEY_3270_Jump: number;
const KEY_3270_KeyClick: number;
const KEY_3270_Left2: number;
const KEY_3270_PA1: number;
const KEY_3270_PA2: number;
const KEY_3270_PA3: number;
const KEY_3270_Play: number;
const KEY_3270_PrintScreen: number;
const KEY_3270_Quit: number;
const KEY_3270_Record: number;
const KEY_3270_Reset: number;
const KEY_3270_Right2: number;
const KEY_3270_Rule: number;
const KEY_3270_Setup: number;
const KEY_3270_Test: number;
const KEY_4: number;
const KEY_5: number;
const KEY_6: number;
const KEY_7: number;
const KEY_8: number;
const KEY_9: number;
const KEY_A: number;
const KEY_AE: number;
const KEY_Aacute: number;
const KEY_Abelowdot: number;
const KEY_Abreve: number;
const KEY_Abreveacute: number;
const KEY_Abrevebelowdot: number;
const KEY_Abrevegrave: number;
const KEY_Abrevehook: number;
const KEY_Abrevetilde: number;
const KEY_AccessX_Enable: number;
const KEY_AccessX_Feedback_Enable: number;
const KEY_Acircumflex: number;
const KEY_Acircumflexacute: number;
const KEY_Acircumflexbelowdot: number;
const KEY_Acircumflexgrave: number;
const KEY_Acircumflexhook: number;
const KEY_Acircumflextilde: number;
const KEY_AddFavorite: number;
const KEY_Adiaeresis: number;
const KEY_Agrave: number;
const KEY_Ahook: number;
const KEY_Alt_L: number;
const KEY_Alt_R: number;
const KEY_Amacron: number;
const KEY_Aogonek: number;
const KEY_ApplicationLeft: number;
const KEY_ApplicationRight: number;
const KEY_Arabic_0: number;
const KEY_Arabic_1: number;
const KEY_Arabic_2: number;
const KEY_Arabic_3: number;
const KEY_Arabic_4: number;
const KEY_Arabic_5: number;
const KEY_Arabic_6: number;
const KEY_Arabic_7: number;
const KEY_Arabic_8: number;
const KEY_Arabic_9: number;
const KEY_Arabic_ain: number;
const KEY_Arabic_alef: number;
const KEY_Arabic_alefmaksura: number;
const KEY_Arabic_beh: number;
const KEY_Arabic_comma: number;
const KEY_Arabic_dad: number;
const KEY_Arabic_dal: number;
const KEY_Arabic_damma: number;
const KEY_Arabic_dammatan: number;
const KEY_Arabic_ddal: number;
const KEY_Arabic_farsi_yeh: number;
const KEY_Arabic_fatha: number;
const KEY_Arabic_fathatan: number;
const KEY_Arabic_feh: number;
const KEY_Arabic_fullstop: number;
const KEY_Arabic_gaf: number;
const KEY_Arabic_ghain: number;
const KEY_Arabic_ha: number;
const KEY_Arabic_hah: number;
const KEY_Arabic_hamza: number;
const KEY_Arabic_hamza_above: number;
const KEY_Arabic_hamza_below: number;
const KEY_Arabic_hamzaonalef: number;
const KEY_Arabic_hamzaonwaw: number;
const KEY_Arabic_hamzaonyeh: number;
const KEY_Arabic_hamzaunderalef: number;
const KEY_Arabic_heh: number;
const KEY_Arabic_heh_doachashmee: number;
const KEY_Arabic_heh_goal: number;
const KEY_Arabic_jeem: number;
const KEY_Arabic_jeh: number;
const KEY_Arabic_kaf: number;
const KEY_Arabic_kasra: number;
const KEY_Arabic_kasratan: number;
const KEY_Arabic_keheh: number;
const KEY_Arabic_khah: number;
const KEY_Arabic_lam: number;
const KEY_Arabic_madda_above: number;
const KEY_Arabic_maddaonalef: number;
const KEY_Arabic_meem: number;
const KEY_Arabic_noon: number;
const KEY_Arabic_noon_ghunna: number;
const KEY_Arabic_peh: number;
const KEY_Arabic_percent: number;
const KEY_Arabic_qaf: number;
const KEY_Arabic_question_mark: number;
const KEY_Arabic_ra: number;
const KEY_Arabic_rreh: number;
const KEY_Arabic_sad: number;
const KEY_Arabic_seen: number;
const KEY_Arabic_semicolon: number;
const KEY_Arabic_shadda: number;
const KEY_Arabic_sheen: number;
const KEY_Arabic_sukun: number;
const KEY_Arabic_superscript_alef: number;
const KEY_Arabic_switch: number;
const KEY_Arabic_tah: number;
const KEY_Arabic_tatweel: number;
const KEY_Arabic_tcheh: number;
const KEY_Arabic_teh: number;
const KEY_Arabic_tehmarbuta: number;
const KEY_Arabic_thal: number;
const KEY_Arabic_theh: number;
const KEY_Arabic_tteh: number;
const KEY_Arabic_veh: number;
const KEY_Arabic_waw: number;
const KEY_Arabic_yeh: number;
const KEY_Arabic_yeh_baree: number;
const KEY_Arabic_zah: number;
const KEY_Arabic_zain: number;
const KEY_Aring: number;
const KEY_Armenian_AT: number;
const KEY_Armenian_AYB: number;
const KEY_Armenian_BEN: number;
const KEY_Armenian_CHA: number;
const KEY_Armenian_DA: number;
const KEY_Armenian_DZA: number;
const KEY_Armenian_E: number;
const KEY_Armenian_FE: number;
const KEY_Armenian_GHAT: number;
const KEY_Armenian_GIM: number;
const KEY_Armenian_HI: number;
const KEY_Armenian_HO: number;
const KEY_Armenian_INI: number;
const KEY_Armenian_JE: number;
const KEY_Armenian_KE: number;
const KEY_Armenian_KEN: number;
const KEY_Armenian_KHE: number;
const KEY_Armenian_LYUN: number;
const KEY_Armenian_MEN: number;
const KEY_Armenian_NU: number;
const KEY_Armenian_O: number;
const KEY_Armenian_PE: number;
const KEY_Armenian_PYUR: number;
const KEY_Armenian_RA: number;
const KEY_Armenian_RE: number;
const KEY_Armenian_SE: number;
const KEY_Armenian_SHA: number;
const KEY_Armenian_TCHE: number;
const KEY_Armenian_TO: number;
const KEY_Armenian_TSA: number;
const KEY_Armenian_TSO: number;
const KEY_Armenian_TYUN: number;
const KEY_Armenian_VEV: number;
const KEY_Armenian_VO: number;
const KEY_Armenian_VYUN: number;
const KEY_Armenian_YECH: number;
const KEY_Armenian_ZA: number;
const KEY_Armenian_ZHE: number;
const KEY_Armenian_accent: number;
const KEY_Armenian_amanak: number;
const KEY_Armenian_apostrophe: number;
const KEY_Armenian_at: number;
const KEY_Armenian_ayb: number;
const KEY_Armenian_ben: number;
const KEY_Armenian_but: number;
const KEY_Armenian_cha: number;
const KEY_Armenian_da: number;
const KEY_Armenian_dza: number;
const KEY_Armenian_e: number;
const KEY_Armenian_exclam: number;
const KEY_Armenian_fe: number;
const KEY_Armenian_full_stop: number;
const KEY_Armenian_ghat: number;
const KEY_Armenian_gim: number;
const KEY_Armenian_hi: number;
const KEY_Armenian_ho: number;
const KEY_Armenian_hyphen: number;
const KEY_Armenian_ini: number;
const KEY_Armenian_je: number;
const KEY_Armenian_ke: number;
const KEY_Armenian_ken: number;
const KEY_Armenian_khe: number;
const KEY_Armenian_ligature_ew: number;
const KEY_Armenian_lyun: number;
const KEY_Armenian_men: number;
const KEY_Armenian_nu: number;
const KEY_Armenian_o: number;
const KEY_Armenian_paruyk: number;
const KEY_Armenian_pe: number;
const KEY_Armenian_pyur: number;
const KEY_Armenian_question: number;
const KEY_Armenian_ra: number;
const KEY_Armenian_re: number;
const KEY_Armenian_se: number;
const KEY_Armenian_separation_mark: number;
const KEY_Armenian_sha: number;
const KEY_Armenian_shesht: number;
const KEY_Armenian_tche: number;
const KEY_Armenian_to: number;
const KEY_Armenian_tsa: number;
const KEY_Armenian_tso: number;
const KEY_Armenian_tyun: number;
const KEY_Armenian_verjaket: number;
const KEY_Armenian_vev: number;
const KEY_Armenian_vo: number;
const KEY_Armenian_vyun: number;
const KEY_Armenian_yech: number;
const KEY_Armenian_yentamna: number;
const KEY_Armenian_za: number;
const KEY_Armenian_zhe: number;
const KEY_Atilde: number;
const KEY_AudibleBell_Enable: number;
const KEY_AudioCycleTrack: number;
const KEY_AudioForward: number;
const KEY_AudioLowerVolume: number;
const KEY_AudioMedia: number;
const KEY_AudioMicMute: number;
const KEY_AudioMute: number;
const KEY_AudioNext: number;
const KEY_AudioPause: number;
const KEY_AudioPlay: number;
const KEY_AudioPreset: number;
const KEY_AudioPrev: number;
const KEY_AudioRaiseVolume: number;
const KEY_AudioRandomPlay: number;
const KEY_AudioRecord: number;
const KEY_AudioRepeat: number;
const KEY_AudioRewind: number;
const KEY_AudioStop: number;
const KEY_Away: number;
const KEY_B: number;
const KEY_Babovedot: number;
const KEY_Back: number;
const KEY_BackForward: number;
const KEY_BackSpace: number;
const KEY_Battery: number;
const KEY_Begin: number;
const KEY_Blue: number;
const KEY_Bluetooth: number;
const KEY_Book: number;
const KEY_BounceKeys_Enable: number;
const KEY_Break: number;
const KEY_BrightnessAdjust: number;
const KEY_Byelorussian_SHORTU: number;
const KEY_Byelorussian_shortu: number;
const KEY_C: number;
const KEY_CD: number;
const KEY_CH: number;
const KEY_C_H: number;
const KEY_C_h: number;
const KEY_Cabovedot: number;
const KEY_Cacute: number;
const KEY_Calculator: number;
const KEY_Calendar: number;
const KEY_Cancel: number;
const KEY_Caps_Lock: number;
const KEY_Ccaron: number;
const KEY_Ccedilla: number;
const KEY_Ccircumflex: number;
const KEY_Ch: number;
const KEY_Clear: number;
const KEY_ClearGrab: number;
const KEY_Close: number;
const KEY_Codeinput: number;
const KEY_ColonSign: number;
const KEY_Community: number;
const KEY_ContrastAdjust: number;
const KEY_Control_L: number;
const KEY_Control_R: number;
const KEY_Copy: number;
const KEY_CruzeiroSign: number;
const KEY_Cut: number;
const KEY_CycleAngle: number;
const KEY_Cyrillic_A: number;
const KEY_Cyrillic_BE: number;
const KEY_Cyrillic_CHE: number;
const KEY_Cyrillic_CHE_descender: number;
const KEY_Cyrillic_CHE_vertstroke: number;
const KEY_Cyrillic_DE: number;
const KEY_Cyrillic_DZHE: number;
const KEY_Cyrillic_E: number;
const KEY_Cyrillic_EF: number;
const KEY_Cyrillic_EL: number;
const KEY_Cyrillic_EM: number;
const KEY_Cyrillic_EN: number;
const KEY_Cyrillic_EN_descender: number;
const KEY_Cyrillic_ER: number;
const KEY_Cyrillic_ES: number;
const KEY_Cyrillic_GHE: number;
const KEY_Cyrillic_GHE_bar: number;
const KEY_Cyrillic_HA: number;
const KEY_Cyrillic_HARDSIGN: number;
const KEY_Cyrillic_HA_descender: number;
const KEY_Cyrillic_I: number;
const KEY_Cyrillic_IE: number;
const KEY_Cyrillic_IO: number;
const KEY_Cyrillic_I_macron: number;
const KEY_Cyrillic_JE: number;
const KEY_Cyrillic_KA: number;
const KEY_Cyrillic_KA_descender: number;
const KEY_Cyrillic_KA_vertstroke: number;
const KEY_Cyrillic_LJE: number;
const KEY_Cyrillic_NJE: number;
const KEY_Cyrillic_O: number;
const KEY_Cyrillic_O_bar: number;
const KEY_Cyrillic_PE: number;
const KEY_Cyrillic_SCHWA: number;
const KEY_Cyrillic_SHA: number;
const KEY_Cyrillic_SHCHA: number;
const KEY_Cyrillic_SHHA: number;
const KEY_Cyrillic_SHORTI: number;
const KEY_Cyrillic_SOFTSIGN: number;
const KEY_Cyrillic_TE: number;
const KEY_Cyrillic_TSE: number;
const KEY_Cyrillic_U: number;
const KEY_Cyrillic_U_macron: number;
const KEY_Cyrillic_U_straight: number;
const KEY_Cyrillic_U_straight_bar: number;
const KEY_Cyrillic_VE: number;
const KEY_Cyrillic_YA: number;
const KEY_Cyrillic_YERU: number;
const KEY_Cyrillic_YU: number;
const KEY_Cyrillic_ZE: number;
const KEY_Cyrillic_ZHE: number;
const KEY_Cyrillic_ZHE_descender: number;
const KEY_Cyrillic_a: number;
const KEY_Cyrillic_be: number;
const KEY_Cyrillic_che: number;
const KEY_Cyrillic_che_descender: number;
const KEY_Cyrillic_che_vertstroke: number;
const KEY_Cyrillic_de: number;
const KEY_Cyrillic_dzhe: number;
const KEY_Cyrillic_e: number;
const KEY_Cyrillic_ef: number;
const KEY_Cyrillic_el: number;
const KEY_Cyrillic_em: number;
const KEY_Cyrillic_en: number;
const KEY_Cyrillic_en_descender: number;
const KEY_Cyrillic_er: number;
const KEY_Cyrillic_es: number;
const KEY_Cyrillic_ghe: number;
const KEY_Cyrillic_ghe_bar: number;
const KEY_Cyrillic_ha: number;
const KEY_Cyrillic_ha_descender: number;
const KEY_Cyrillic_hardsign: number;
const KEY_Cyrillic_i: number;
const KEY_Cyrillic_i_macron: number;
const KEY_Cyrillic_ie: number;
const KEY_Cyrillic_io: number;
const KEY_Cyrillic_je: number;
const KEY_Cyrillic_ka: number;
const KEY_Cyrillic_ka_descender: number;
const KEY_Cyrillic_ka_vertstroke: number;
const KEY_Cyrillic_lje: number;
const KEY_Cyrillic_nje: number;
const KEY_Cyrillic_o: number;
const KEY_Cyrillic_o_bar: number;
const KEY_Cyrillic_pe: number;
const KEY_Cyrillic_schwa: number;
const KEY_Cyrillic_sha: number;
const KEY_Cyrillic_shcha: number;
const KEY_Cyrillic_shha: number;
const KEY_Cyrillic_shorti: number;
const KEY_Cyrillic_softsign: number;
const KEY_Cyrillic_te: number;
const KEY_Cyrillic_tse: number;
const KEY_Cyrillic_u: number;
const KEY_Cyrillic_u_macron: number;
const KEY_Cyrillic_u_straight: number;
const KEY_Cyrillic_u_straight_bar: number;
const KEY_Cyrillic_ve: number;
const KEY_Cyrillic_ya: number;
const KEY_Cyrillic_yeru: number;
const KEY_Cyrillic_yu: number;
const KEY_Cyrillic_ze: number;
const KEY_Cyrillic_zhe: number;
const KEY_Cyrillic_zhe_descender: number;
const KEY_D: number;
const KEY_DOS: number;
const KEY_Dabovedot: number;
const KEY_Dcaron: number;
const KEY_Delete: number;
const KEY_Display: number;
const KEY_Documents: number;
const KEY_DongSign: number;
const KEY_Down: number;
const KEY_Dstroke: number;
const KEY_E: number;
const KEY_ENG: number;
const KEY_ETH: number;
const KEY_EZH: number;
const KEY_Eabovedot: number;
const KEY_Eacute: number;
const KEY_Ebelowdot: number;
const KEY_Ecaron: number;
const KEY_Ecircumflex: number;
const KEY_Ecircumflexacute: number;
const KEY_Ecircumflexbelowdot: number;
const KEY_Ecircumflexgrave: number;
const KEY_Ecircumflexhook: number;
const KEY_Ecircumflextilde: number;
const KEY_EcuSign: number;
const KEY_Ediaeresis: number;
const KEY_Egrave: number;
const KEY_Ehook: number;
const KEY_Eisu_Shift: number;
const KEY_Eisu_toggle: number;
const KEY_Eject: number;
const KEY_Emacron: number;
const KEY_End: number;
const KEY_Eogonek: number;
const KEY_Escape: number;
const KEY_Eth: number;
const KEY_Etilde: number;
const KEY_EuroSign: number;
const KEY_Excel: number;
const KEY_Execute: number;
const KEY_Explorer: number;
const KEY_F: number;
const KEY_F1: number;
const KEY_F10: number;
const KEY_F11: number;
const KEY_F12: number;
const KEY_F13: number;
const KEY_F14: number;
const KEY_F15: number;
const KEY_F16: number;
const KEY_F17: number;
const KEY_F18: number;
const KEY_F19: number;
const KEY_F2: number;
const KEY_F20: number;
const KEY_F21: number;
const KEY_F22: number;
const KEY_F23: number;
const KEY_F24: number;
const KEY_F25: number;
const KEY_F26: number;
const KEY_F27: number;
const KEY_F28: number;
const KEY_F29: number;
const KEY_F3: number;
const KEY_F30: number;
const KEY_F31: number;
const KEY_F32: number;
const KEY_F33: number;
const KEY_F34: number;
const KEY_F35: number;
const KEY_F4: number;
const KEY_F5: number;
const KEY_F6: number;
const KEY_F7: number;
const KEY_F8: number;
const KEY_F9: number;
const KEY_FFrancSign: number;
const KEY_Fabovedot: number;
const KEY_Farsi_0: number;
const KEY_Farsi_1: number;
const KEY_Farsi_2: number;
const KEY_Farsi_3: number;
const KEY_Farsi_4: number;
const KEY_Farsi_5: number;
const KEY_Farsi_6: number;
const KEY_Farsi_7: number;
const KEY_Farsi_8: number;
const KEY_Farsi_9: number;
const KEY_Farsi_yeh: number;
const KEY_Favorites: number;
const KEY_Finance: number;
const KEY_Find: number;
const KEY_First_Virtual_Screen: number;
const KEY_Forward: number;
const KEY_FrameBack: number;
const KEY_FrameForward: number;
const KEY_G: number;
const KEY_Gabovedot: number;
const KEY_Game: number;
const KEY_Gbreve: number;
const KEY_Gcaron: number;
const KEY_Gcedilla: number;
const KEY_Gcircumflex: number;
const KEY_Georgian_an: number;
const KEY_Georgian_ban: number;
const KEY_Georgian_can: number;
const KEY_Georgian_char: number;
const KEY_Georgian_chin: number;
const KEY_Georgian_cil: number;
const KEY_Georgian_don: number;
const KEY_Georgian_en: number;
const KEY_Georgian_fi: number;
const KEY_Georgian_gan: number;
const KEY_Georgian_ghan: number;
const KEY_Georgian_hae: number;
const KEY_Georgian_har: number;
const KEY_Georgian_he: number;
const KEY_Georgian_hie: number;
const KEY_Georgian_hoe: number;
const KEY_Georgian_in: number;
const KEY_Georgian_jhan: number;
const KEY_Georgian_jil: number;
const KEY_Georgian_kan: number;
const KEY_Georgian_khar: number;
const KEY_Georgian_las: number;
const KEY_Georgian_man: number;
const KEY_Georgian_nar: number;
const KEY_Georgian_on: number;
const KEY_Georgian_par: number;
const KEY_Georgian_phar: number;
const KEY_Georgian_qar: number;
const KEY_Georgian_rae: number;
const KEY_Georgian_san: number;
const KEY_Georgian_shin: number;
const KEY_Georgian_tan: number;
const KEY_Georgian_tar: number;
const KEY_Georgian_un: number;
const KEY_Georgian_vin: number;
const KEY_Georgian_we: number;
const KEY_Georgian_xan: number;
const KEY_Georgian_zen: number;
const KEY_Georgian_zhar: number;
const KEY_Go: number;
const KEY_Greek_ALPHA: number;
const KEY_Greek_ALPHAaccent: number;
const KEY_Greek_BETA: number;
const KEY_Greek_CHI: number;
const KEY_Greek_DELTA: number;
const KEY_Greek_EPSILON: number;
const KEY_Greek_EPSILONaccent: number;
const KEY_Greek_ETA: number;
const KEY_Greek_ETAaccent: number;
const KEY_Greek_GAMMA: number;
const KEY_Greek_IOTA: number;
const KEY_Greek_IOTAaccent: number;
const KEY_Greek_IOTAdiaeresis: number;
const KEY_Greek_IOTAdieresis: number;
const KEY_Greek_KAPPA: number;
const KEY_Greek_LAMBDA: number;
const KEY_Greek_LAMDA: number;
const KEY_Greek_MU: number;
const KEY_Greek_NU: number;
const KEY_Greek_OMEGA: number;
const KEY_Greek_OMEGAaccent: number;
const KEY_Greek_OMICRON: number;
const KEY_Greek_OMICRONaccent: number;
const KEY_Greek_PHI: number;
const KEY_Greek_PI: number;
const KEY_Greek_PSI: number;
const KEY_Greek_RHO: number;
const KEY_Greek_SIGMA: number;
const KEY_Greek_TAU: number;
const KEY_Greek_THETA: number;
const KEY_Greek_UPSILON: number;
const KEY_Greek_UPSILONaccent: number;
const KEY_Greek_UPSILONdieresis: number;
const KEY_Greek_XI: number;
const KEY_Greek_ZETA: number;
const KEY_Greek_accentdieresis: number;
const KEY_Greek_alpha: number;
const KEY_Greek_alphaaccent: number;
const KEY_Greek_beta: number;
const KEY_Greek_chi: number;
const KEY_Greek_delta: number;
const KEY_Greek_epsilon: number;
const KEY_Greek_epsilonaccent: number;
const KEY_Greek_eta: number;
const KEY_Greek_etaaccent: number;
const KEY_Greek_finalsmallsigma: number;
const KEY_Greek_gamma: number;
const KEY_Greek_horizbar: number;
const KEY_Greek_iota: number;
const KEY_Greek_iotaaccent: number;
const KEY_Greek_iotaaccentdieresis: number;
const KEY_Greek_iotadieresis: number;
const KEY_Greek_kappa: number;
const KEY_Greek_lambda: number;
const KEY_Greek_lamda: number;
const KEY_Greek_mu: number;
const KEY_Greek_nu: number;
const KEY_Greek_omega: number;
const KEY_Greek_omegaaccent: number;
const KEY_Greek_omicron: number;
const KEY_Greek_omicronaccent: number;
const KEY_Greek_phi: number;
const KEY_Greek_pi: number;
const KEY_Greek_psi: number;
const KEY_Greek_rho: number;
const KEY_Greek_sigma: number;
const KEY_Greek_switch: number;
const KEY_Greek_tau: number;
const KEY_Greek_theta: number;
const KEY_Greek_upsilon: number;
const KEY_Greek_upsilonaccent: number;
const KEY_Greek_upsilonaccentdieresis: number;
const KEY_Greek_upsilondieresis: number;
const KEY_Greek_xi: number;
const KEY_Greek_zeta: number;
const KEY_Green: number;
const KEY_H: number;
const KEY_Hangul: number;
const KEY_Hangul_A: number;
const KEY_Hangul_AE: number;
const KEY_Hangul_AraeA: number;
const KEY_Hangul_AraeAE: number;
const KEY_Hangul_Banja: number;
const KEY_Hangul_Cieuc: number;
const KEY_Hangul_Codeinput: number;
const KEY_Hangul_Dikeud: number;
const KEY_Hangul_E: number;
const KEY_Hangul_EO: number;
const KEY_Hangul_EU: number;
const KEY_Hangul_End: number;
const KEY_Hangul_Hanja: number;
const KEY_Hangul_Hieuh: number;
const KEY_Hangul_I: number;
const KEY_Hangul_Ieung: number;
const KEY_Hangul_J_Cieuc: number;
const KEY_Hangul_J_Dikeud: number;
const KEY_Hangul_J_Hieuh: number;
const KEY_Hangul_J_Ieung: number;
const KEY_Hangul_J_Jieuj: number;
const KEY_Hangul_J_Khieuq: number;
const KEY_Hangul_J_Kiyeog: number;
const KEY_Hangul_J_KiyeogSios: number;
const KEY_Hangul_J_KkogjiDalrinIeung: number;
const KEY_Hangul_J_Mieum: number;
const KEY_Hangul_J_Nieun: number;
const KEY_Hangul_J_NieunHieuh: number;
const KEY_Hangul_J_NieunJieuj: number;
const KEY_Hangul_J_PanSios: number;
const KEY_Hangul_J_Phieuf: number;
const KEY_Hangul_J_Pieub: number;
const KEY_Hangul_J_PieubSios: number;
const KEY_Hangul_J_Rieul: number;
const KEY_Hangul_J_RieulHieuh: number;
const KEY_Hangul_J_RieulKiyeog: number;
const KEY_Hangul_J_RieulMieum: number;
const KEY_Hangul_J_RieulPhieuf: number;
const KEY_Hangul_J_RieulPieub: number;
const KEY_Hangul_J_RieulSios: number;
const KEY_Hangul_J_RieulTieut: number;
const KEY_Hangul_J_Sios: number;
const KEY_Hangul_J_SsangKiyeog: number;
const KEY_Hangul_J_SsangSios: number;
const KEY_Hangul_J_Tieut: number;
const KEY_Hangul_J_YeorinHieuh: number;
const KEY_Hangul_Jamo: number;
const KEY_Hangul_Jeonja: number;
const KEY_Hangul_Jieuj: number;
const KEY_Hangul_Khieuq: number;
const KEY_Hangul_Kiyeog: number;
const KEY_Hangul_KiyeogSios: number;
const KEY_Hangul_KkogjiDalrinIeung: number;
const KEY_Hangul_Mieum: number;
const KEY_Hangul_MultipleCandidate: number;
const KEY_Hangul_Nieun: number;
const KEY_Hangul_NieunHieuh: number;
const KEY_Hangul_NieunJieuj: number;
const KEY_Hangul_O: number;
const KEY_Hangul_OE: number;
const KEY_Hangul_PanSios: number;
const KEY_Hangul_Phieuf: number;
const KEY_Hangul_Pieub: number;
const KEY_Hangul_PieubSios: number;
const KEY_Hangul_PostHanja: number;
const KEY_Hangul_PreHanja: number;
const KEY_Hangul_PreviousCandidate: number;
const KEY_Hangul_Rieul: number;
const KEY_Hangul_RieulHieuh: number;
const KEY_Hangul_RieulKiyeog: number;
const KEY_Hangul_RieulMieum: number;
const KEY_Hangul_RieulPhieuf: number;
const KEY_Hangul_RieulPieub: number;
const KEY_Hangul_RieulSios: number;
const KEY_Hangul_RieulTieut: number;
const KEY_Hangul_RieulYeorinHieuh: number;
const KEY_Hangul_Romaja: number;
const KEY_Hangul_SingleCandidate: number;
const KEY_Hangul_Sios: number;
const KEY_Hangul_Special: number;
const KEY_Hangul_SsangDikeud: number;
const KEY_Hangul_SsangJieuj: number;
const KEY_Hangul_SsangKiyeog: number;
const KEY_Hangul_SsangPieub: number;
const KEY_Hangul_SsangSios: number;
const KEY_Hangul_Start: number;
const KEY_Hangul_SunkyeongeumMieum: number;
const KEY_Hangul_SunkyeongeumPhieuf: number;
const KEY_Hangul_SunkyeongeumPieub: number;
const KEY_Hangul_Tieut: number;
const KEY_Hangul_U: number;
const KEY_Hangul_WA: number;
const KEY_Hangul_WAE: number;
const KEY_Hangul_WE: number;
const KEY_Hangul_WEO: number;
const KEY_Hangul_WI: number;
const KEY_Hangul_YA: number;
const KEY_Hangul_YAE: number;
const KEY_Hangul_YE: number;
const KEY_Hangul_YEO: number;
const KEY_Hangul_YI: number;
const KEY_Hangul_YO: number;
const KEY_Hangul_YU: number;
const KEY_Hangul_YeorinHieuh: number;
const KEY_Hangul_switch: number;
const KEY_Hankaku: number;
const KEY_Hcircumflex: number;
const KEY_Hebrew_switch: number;
const KEY_Help: number;
const KEY_Henkan: number;
const KEY_Henkan_Mode: number;
const KEY_Hibernate: number;
const KEY_Hiragana: number;
const KEY_Hiragana_Katakana: number;
const KEY_History: number;
const KEY_Home: number;
const KEY_HomePage: number;
const KEY_HotLinks: number;
const KEY_Hstroke: number;
const KEY_Hyper_L: number;
const KEY_Hyper_R: number;
const KEY_I: number;
const KEY_ISO_Center_Object: number;
const KEY_ISO_Continuous_Underline: number;
const KEY_ISO_Discontinuous_Underline: number;
const KEY_ISO_Emphasize: number;
const KEY_ISO_Enter: number;
const KEY_ISO_Fast_Cursor_Down: number;
const KEY_ISO_Fast_Cursor_Left: number;
const KEY_ISO_Fast_Cursor_Right: number;
const KEY_ISO_Fast_Cursor_Up: number;
const KEY_ISO_First_Group: number;
const KEY_ISO_First_Group_Lock: number;
const KEY_ISO_Group_Latch: number;
const KEY_ISO_Group_Lock: number;
const KEY_ISO_Group_Shift: number;
const KEY_ISO_Last_Group: number;
const KEY_ISO_Last_Group_Lock: number;
const KEY_ISO_Left_Tab: number;
const KEY_ISO_Level2_Latch: number;
const KEY_ISO_Level3_Latch: number;
const KEY_ISO_Level3_Lock: number;
const KEY_ISO_Level3_Shift: number;
const KEY_ISO_Level5_Latch: number;
const KEY_ISO_Level5_Lock: number;
const KEY_ISO_Level5_Shift: number;
const KEY_ISO_Lock: number;
const KEY_ISO_Move_Line_Down: number;
const KEY_ISO_Move_Line_Up: number;
const KEY_ISO_Next_Group: number;
const KEY_ISO_Next_Group_Lock: number;
const KEY_ISO_Partial_Line_Down: number;
const KEY_ISO_Partial_Line_Up: number;
const KEY_ISO_Partial_Space_Left: number;
const KEY_ISO_Partial_Space_Right: number;
const KEY_ISO_Prev_Group: number;
const KEY_ISO_Prev_Group_Lock: number;
const KEY_ISO_Release_Both_Margins: number;
const KEY_ISO_Release_Margin_Left: number;
const KEY_ISO_Release_Margin_Right: number;
const KEY_ISO_Set_Margin_Left: number;
const KEY_ISO_Set_Margin_Right: number;
const KEY_Iabovedot: number;
const KEY_Iacute: number;
const KEY_Ibelowdot: number;
const KEY_Ibreve: number;
const KEY_Icircumflex: number;
const KEY_Idiaeresis: number;
const KEY_Igrave: number;
const KEY_Ihook: number;
const KEY_Imacron: number;
const KEY_Insert: number;
const KEY_Iogonek: number;
const KEY_Itilde: number;
const KEY_J: number;
const KEY_Jcircumflex: number;
const KEY_K: number;
const KEY_KP_0: number;
const KEY_KP_1: number;
const KEY_KP_2: number;
const KEY_KP_3: number;
const KEY_KP_4: number;
const KEY_KP_5: number;
const KEY_KP_6: number;
const KEY_KP_7: number;
const KEY_KP_8: number;
const KEY_KP_9: number;
const KEY_KP_Add: number;
const KEY_KP_Begin: number;
const KEY_KP_Decimal: number;
const KEY_KP_Delete: number;
const KEY_KP_Divide: number;
const KEY_KP_Down: number;
const KEY_KP_End: number;
const KEY_KP_Enter: number;
const KEY_KP_Equal: number;
const KEY_KP_F1: number;
const KEY_KP_F2: number;
const KEY_KP_F3: number;
const KEY_KP_F4: number;
const KEY_KP_Home: number;
const KEY_KP_Insert: number;
const KEY_KP_Left: number;
const KEY_KP_Multiply: number;
const KEY_KP_Next: number;
const KEY_KP_Page_Down: number;
const KEY_KP_Page_Up: number;
const KEY_KP_Prior: number;
const KEY_KP_Right: number;
const KEY_KP_Separator: number;
const KEY_KP_Space: number;
const KEY_KP_Subtract: number;
const KEY_KP_Tab: number;
const KEY_KP_Up: number;
const KEY_Kana_Lock: number;
const KEY_Kana_Shift: number;
const KEY_Kanji: number;
const KEY_Kanji_Bangou: number;
const KEY_Katakana: number;
const KEY_KbdBrightnessDown: number;
const KEY_KbdBrightnessUp: number;
const KEY_KbdLightOnOff: number;
const KEY_Kcedilla: number;
const KEY_Keyboard: number;
const KEY_Korean_Won: number;
const KEY_L: number;
const KEY_L1: number;
const KEY_L10: number;
const KEY_L2: number;
const KEY_L3: number;
const KEY_L4: number;
const KEY_L5: number;
const KEY_L6: number;
const KEY_L7: number;
const KEY_L8: number;
const KEY_L9: number;
const KEY_Lacute: number;
const KEY_Last_Virtual_Screen: number;
const KEY_Launch0: number;
const KEY_Launch1: number;
const KEY_Launch2: number;
const KEY_Launch3: number;
const KEY_Launch4: number;
const KEY_Launch5: number;
const KEY_Launch6: number;
const KEY_Launch7: number;
const KEY_Launch8: number;
const KEY_Launch9: number;
const KEY_LaunchA: number;
const KEY_LaunchB: number;
const KEY_LaunchC: number;
const KEY_LaunchD: number;
const KEY_LaunchE: number;
const KEY_LaunchF: number;
const KEY_Lbelowdot: number;
const KEY_Lcaron: number;
const KEY_Lcedilla: number;
const KEY_Left: number;
const KEY_LightBulb: number;
const KEY_Linefeed: number;
const KEY_LiraSign: number;
const KEY_LogGrabInfo: number;
const KEY_LogOff: number;
const KEY_LogWindowTree: number;
const KEY_Lstroke: number;
const KEY_M: number;
const KEY_Mabovedot: number;
const KEY_Macedonia_DSE: number;
const KEY_Macedonia_GJE: number;
const KEY_Macedonia_KJE: number;
const KEY_Macedonia_dse: number;
const KEY_Macedonia_gje: number;
const KEY_Macedonia_kje: number;
const KEY_Mae_Koho: number;
const KEY_Mail: number;
const KEY_MailForward: number;
const KEY_Market: number;
const KEY_Massyo: number;
const KEY_Meeting: number;
const KEY_Memo: number;
const KEY_Menu: number;
const KEY_MenuKB: number;
const KEY_MenuPB: number;
const KEY_Messenger: number;
const KEY_Meta_L: number;
const KEY_Meta_R: number;
const KEY_MillSign: number;
const KEY_ModeLock: number;
const KEY_Mode_switch: number;
const KEY_MonBrightnessDown: number;
const KEY_MonBrightnessUp: number;
const KEY_MouseKeys_Accel_Enable: number;
const KEY_MouseKeys_Enable: number;
const KEY_Muhenkan: number;
const KEY_Multi_key: number;
const KEY_MultipleCandidate: number;
const KEY_Music: number;
const KEY_MyComputer: number;
const KEY_MySites: number;
const KEY_N: number;
const KEY_Nacute: number;
const KEY_NairaSign: number;
const KEY_Ncaron: number;
const KEY_Ncedilla: number;
const KEY_New: number;
const KEY_NewSheqelSign: number;
const KEY_News: number;
const KEY_Next: number;
const KEY_Next_VMode: number;
const KEY_Next_Virtual_Screen: number;
const KEY_Ntilde: number;
const KEY_Num_Lock: number;
const KEY_O: number;
const KEY_OE: number;
const KEY_Oacute: number;
const KEY_Obarred: number;
const KEY_Obelowdot: number;
const KEY_Ocaron: number;
const KEY_Ocircumflex: number;
const KEY_Ocircumflexacute: number;
const KEY_Ocircumflexbelowdot: number;
const KEY_Ocircumflexgrave: number;
const KEY_Ocircumflexhook: number;
const KEY_Ocircumflextilde: number;
const KEY_Odiaeresis: number;
const KEY_Odoubleacute: number;
const KEY_OfficeHome: number;
const KEY_Ograve: number;
const KEY_Ohook: number;
const KEY_Ohorn: number;
const KEY_Ohornacute: number;
const KEY_Ohornbelowdot: number;
const KEY_Ohorngrave: number;
const KEY_Ohornhook: number;
const KEY_Ohorntilde: number;
const KEY_Omacron: number;
const KEY_Ooblique: number;
const KEY_Open: number;
const KEY_OpenURL: number;
const KEY_Option: number;
const KEY_Oslash: number;
const KEY_Otilde: number;
const KEY_Overlay1_Enable: number;
const KEY_Overlay2_Enable: number;
const KEY_P: number;
const KEY_Pabovedot: number;
const KEY_Page_Down: number;
const KEY_Page_Up: number;
const KEY_Paste: number;
const KEY_Pause: number;
const KEY_PesetaSign: number;
const KEY_Phone: number;
const KEY_Pictures: number;
const KEY_Pointer_Accelerate: number;
const KEY_Pointer_Button1: number;
const KEY_Pointer_Button2: number;
const KEY_Pointer_Button3: number;
const KEY_Pointer_Button4: number;
const KEY_Pointer_Button5: number;
const KEY_Pointer_Button_Dflt: number;
const KEY_Pointer_DblClick1: number;
const KEY_Pointer_DblClick2: number;
const KEY_Pointer_DblClick3: number;
const KEY_Pointer_DblClick4: number;
const KEY_Pointer_DblClick5: number;
const KEY_Pointer_DblClick_Dflt: number;
const KEY_Pointer_DfltBtnNext: number;
const KEY_Pointer_DfltBtnPrev: number;
const KEY_Pointer_Down: number;
const KEY_Pointer_DownLeft: number;
const KEY_Pointer_DownRight: number;
const KEY_Pointer_Drag1: number;
const KEY_Pointer_Drag2: number;
const KEY_Pointer_Drag3: number;
const KEY_Pointer_Drag4: number;
const KEY_Pointer_Drag5: number;
const KEY_Pointer_Drag_Dflt: number;
const KEY_Pointer_EnableKeys: number;
const KEY_Pointer_Left: number;
const KEY_Pointer_Right: number;
const KEY_Pointer_Up: number;
const KEY_Pointer_UpLeft: number;
const KEY_Pointer_UpRight: number;
const KEY_PowerDown: number;
const KEY_PowerOff: number;
const KEY_Prev_VMode: number;
const KEY_Prev_Virtual_Screen: number;
const KEY_PreviousCandidate: number;
const KEY_Print: number;
const KEY_Prior: number;
const KEY_Q: number;
const KEY_R: number;
const KEY_R1: number;
const KEY_R10: number;
const KEY_R11: number;
const KEY_R12: number;
const KEY_R13: number;
const KEY_R14: number;
const KEY_R15: number;
const KEY_R2: number;
const KEY_R3: number;
const KEY_R4: number;
const KEY_R5: number;
const KEY_R6: number;
const KEY_R7: number;
const KEY_R8: number;
const KEY_R9: number;
const KEY_RFKill: number;
const KEY_Racute: number;
const KEY_Rcaron: number;
const KEY_Rcedilla: number;
const KEY_Red: number;
const KEY_Redo: number;
const KEY_Refresh: number;
const KEY_Reload: number;
const KEY_RepeatKeys_Enable: number;
const KEY_Reply: number;
const KEY_Return: number;
const KEY_Right: number;
const KEY_RockerDown: number;
const KEY_RockerEnter: number;
const KEY_RockerUp: number;
const KEY_Romaji: number;
const KEY_RotateWindows: number;
const KEY_RotationKB: number;
const KEY_RotationPB: number;
const KEY_RupeeSign: number;
const KEY_S: number;
const KEY_SCHWA: number;
const KEY_Sabovedot: number;
const KEY_Sacute: number;
const KEY_Save: number;
const KEY_Scaron: number;
const KEY_Scedilla: number;
const KEY_Scircumflex: number;
const KEY_ScreenSaver: number;
const KEY_ScrollClick: number;
const KEY_ScrollDown: number;
const KEY_ScrollUp: number;
const KEY_Scroll_Lock: number;
const KEY_Search: number;
const KEY_Select: number;
const KEY_SelectButton: number;
const KEY_Send: number;
const KEY_Serbian_DJE: number;
const KEY_Serbian_DZE: number;
const KEY_Serbian_JE: number;
const KEY_Serbian_LJE: number;
const KEY_Serbian_NJE: number;
const KEY_Serbian_TSHE: number;
const KEY_Serbian_dje: number;
const KEY_Serbian_dze: number;
const KEY_Serbian_je: number;
const KEY_Serbian_lje: number;
const KEY_Serbian_nje: number;
const KEY_Serbian_tshe: number;
const KEY_Shift_L: number;
const KEY_Shift_Lock: number;
const KEY_Shift_R: number;
const KEY_Shop: number;
const KEY_SingleCandidate: number;
const KEY_Sinh_a: number;
const KEY_Sinh_aa: number;
const KEY_Sinh_aa2: number;
const KEY_Sinh_ae: number;
const KEY_Sinh_ae2: number;
const KEY_Sinh_aee: number;
const KEY_Sinh_aee2: number;
const KEY_Sinh_ai: number;
const KEY_Sinh_ai2: number;
const KEY_Sinh_al: number;
const KEY_Sinh_au: number;
const KEY_Sinh_au2: number;
const KEY_Sinh_ba: number;
const KEY_Sinh_bha: number;
const KEY_Sinh_ca: number;
const KEY_Sinh_cha: number;
const KEY_Sinh_dda: number;
const KEY_Sinh_ddha: number;
const KEY_Sinh_dha: number;
const KEY_Sinh_dhha: number;
const KEY_Sinh_e: number;
const KEY_Sinh_e2: number;
const KEY_Sinh_ee: number;
const KEY_Sinh_ee2: number;
const KEY_Sinh_fa: number;
const KEY_Sinh_ga: number;
const KEY_Sinh_gha: number;
const KEY_Sinh_h2: number;
const KEY_Sinh_ha: number;
const KEY_Sinh_i: number;
const KEY_Sinh_i2: number;
const KEY_Sinh_ii: number;
const KEY_Sinh_ii2: number;
const KEY_Sinh_ja: number;
const KEY_Sinh_jha: number;
const KEY_Sinh_jnya: number;
const KEY_Sinh_ka: number;
const KEY_Sinh_kha: number;
const KEY_Sinh_kunddaliya: number;
const KEY_Sinh_la: number;
const KEY_Sinh_lla: number;
const KEY_Sinh_lu: number;
const KEY_Sinh_lu2: number;
const KEY_Sinh_luu: number;
const KEY_Sinh_luu2: number;
const KEY_Sinh_ma: number;
const KEY_Sinh_mba: number;
const KEY_Sinh_na: number;
const KEY_Sinh_ndda: number;
const KEY_Sinh_ndha: number;
const KEY_Sinh_ng: number;
const KEY_Sinh_ng2: number;
const KEY_Sinh_nga: number;
const KEY_Sinh_nja: number;
const KEY_Sinh_nna: number;
const KEY_Sinh_nya: number;
const KEY_Sinh_o: number;
const KEY_Sinh_o2: number;
const KEY_Sinh_oo: number;
const KEY_Sinh_oo2: number;
const KEY_Sinh_pa: number;
const KEY_Sinh_pha: number;
const KEY_Sinh_ra: number;
const KEY_Sinh_ri: number;
const KEY_Sinh_rii: number;
const KEY_Sinh_ru2: number;
const KEY_Sinh_ruu2: number;
const KEY_Sinh_sa: number;
const KEY_Sinh_sha: number;
const KEY_Sinh_ssha: number;
const KEY_Sinh_tha: number;
const KEY_Sinh_thha: number;
const KEY_Sinh_tta: number;
const KEY_Sinh_ttha: number;
const KEY_Sinh_u: number;
const KEY_Sinh_u2: number;
const KEY_Sinh_uu: number;
const KEY_Sinh_uu2: number;
const KEY_Sinh_va: number;
const KEY_Sinh_ya: number;
const KEY_Sleep: number;
const KEY_SlowKeys_Enable: number;
const KEY_Spell: number;
const KEY_SplitScreen: number;
const KEY_Standby: number;
const KEY_Start: number;
const KEY_StickyKeys_Enable: number;
const KEY_Stop: number;
const KEY_Subtitle: number;
const KEY_Super_L: number;
const KEY_Super_R: number;
const KEY_Support: number;
const KEY_Suspend: number;
const KEY_Switch_VT_1: number;
const KEY_Switch_VT_10: number;
const KEY_Switch_VT_11: number;
const KEY_Switch_VT_12: number;
const KEY_Switch_VT_2: number;
const KEY_Switch_VT_3: number;
const KEY_Switch_VT_4: number;
const KEY_Switch_VT_5: number;
const KEY_Switch_VT_6: number;
const KEY_Switch_VT_7: number;
const KEY_Switch_VT_8: number;
const KEY_Switch_VT_9: number;
const KEY_Sys_Req: number;
const KEY_T: number;
const KEY_THORN: number;
const KEY_Tab: number;
const KEY_Tabovedot: number;
const KEY_TaskPane: number;
const KEY_Tcaron: number;
const KEY_Tcedilla: number;
const KEY_Terminal: number;
const KEY_Terminate_Server: number;
const KEY_Thai_baht: number;
const KEY_Thai_bobaimai: number;
const KEY_Thai_chochan: number;
const KEY_Thai_chochang: number;
const KEY_Thai_choching: number;
const KEY_Thai_chochoe: number;
const KEY_Thai_dochada: number;
const KEY_Thai_dodek: number;
const KEY_Thai_fofa: number;
const KEY_Thai_fofan: number;
const KEY_Thai_hohip: number;
const KEY_Thai_honokhuk: number;
const KEY_Thai_khokhai: number;
const KEY_Thai_khokhon: number;
const KEY_Thai_khokhuat: number;
const KEY_Thai_khokhwai: number;
const KEY_Thai_khorakhang: number;
const KEY_Thai_kokai: number;
const KEY_Thai_lakkhangyao: number;
const KEY_Thai_lekchet: number;
const KEY_Thai_lekha: number;
const KEY_Thai_lekhok: number;
const KEY_Thai_lekkao: number;
const KEY_Thai_leknung: number;
const KEY_Thai_lekpaet: number;
const KEY_Thai_leksam: number;
const KEY_Thai_leksi: number;
const KEY_Thai_leksong: number;
const KEY_Thai_leksun: number;
const KEY_Thai_lochula: number;
const KEY_Thai_loling: number;
const KEY_Thai_lu: number;
const KEY_Thai_maichattawa: number;
const KEY_Thai_maiek: number;
const KEY_Thai_maihanakat: number;
const KEY_Thai_maihanakat_maitho: number;
const KEY_Thai_maitaikhu: number;
const KEY_Thai_maitho: number;
const KEY_Thai_maitri: number;
const KEY_Thai_maiyamok: number;
const KEY_Thai_moma: number;
const KEY_Thai_ngongu: number;
const KEY_Thai_nikhahit: number;
const KEY_Thai_nonen: number;
const KEY_Thai_nonu: number;
const KEY_Thai_oang: number;
const KEY_Thai_paiyannoi: number;
const KEY_Thai_phinthu: number;
const KEY_Thai_phophan: number;
const KEY_Thai_phophung: number;
const KEY_Thai_phosamphao: number;
const KEY_Thai_popla: number;
const KEY_Thai_rorua: number;
const KEY_Thai_ru: number;
const KEY_Thai_saraa: number;
const KEY_Thai_saraaa: number;
const KEY_Thai_saraae: number;
const KEY_Thai_saraaimaimalai: number;
const KEY_Thai_saraaimaimuan: number;
const KEY_Thai_saraam: number;
const KEY_Thai_sarae: number;
const KEY_Thai_sarai: number;
const KEY_Thai_saraii: number;
const KEY_Thai_sarao: number;
const KEY_Thai_sarau: number;
const KEY_Thai_saraue: number;
const KEY_Thai_sarauee: number;
const KEY_Thai_sarauu: number;
const KEY_Thai_sorusi: number;
const KEY_Thai_sosala: number;
const KEY_Thai_soso: number;
const KEY_Thai_sosua: number;
const KEY_Thai_thanthakhat: number;
const KEY_Thai_thonangmontho: number;
const KEY_Thai_thophuthao: number;
const KEY_Thai_thothahan: number;
const KEY_Thai_thothan: number;
const KEY_Thai_thothong: number;
const KEY_Thai_thothung: number;
const KEY_Thai_topatak: number;
const KEY_Thai_totao: number;
const KEY_Thai_wowaen: number;
const KEY_Thai_yoyak: number;
const KEY_Thai_yoying: number;
const KEY_Thorn: number;
const KEY_Time: number;
const KEY_ToDoList: number;
const KEY_Tools: number;
const KEY_TopMenu: number;
const KEY_TouchpadOff: number;
const KEY_TouchpadOn: number;
const KEY_TouchpadToggle: number;
const KEY_Touroku: number;
const KEY_Travel: number;
const KEY_Tslash: number;
const KEY_U: number;
const KEY_UWB: number;
const KEY_Uacute: number;
const KEY_Ubelowdot: number;
const KEY_Ubreve: number;
const KEY_Ucircumflex: number;
const KEY_Udiaeresis: number;
const KEY_Udoubleacute: number;
const KEY_Ugrave: number;
const KEY_Uhook: number;
const KEY_Uhorn: number;
const KEY_Uhornacute: number;
const KEY_Uhornbelowdot: number;
const KEY_Uhorngrave: number;
const KEY_Uhornhook: number;
const KEY_Uhorntilde: number;
const KEY_Ukrainian_GHE_WITH_UPTURN: number;
const KEY_Ukrainian_I: number;
const KEY_Ukrainian_IE: number;
const KEY_Ukrainian_YI: number;
const KEY_Ukrainian_ghe_with_upturn: number;
const KEY_Ukrainian_i: number;
const KEY_Ukrainian_ie: number;
const KEY_Ukrainian_yi: number;
const KEY_Ukranian_I: number;
const KEY_Ukranian_JE: number;
const KEY_Ukranian_YI: number;
const KEY_Ukranian_i: number;
const KEY_Ukranian_ie: number;
const KEY_Ukranian_yi: number;
const KEY_Umacron: number;
const KEY_Undo: number;
const KEY_Ungrab: number;
const KEY_Uogonek: number;
const KEY_Up: number;
const KEY_Uring: number;
const KEY_User1KB: number;
const KEY_User2KB: number;
const KEY_UserPB: number;
const KEY_Utilde: number;
const KEY_V: number;
const KEY_VendorHome: number;
const KEY_Video: number;
const KEY_View: number;
const KEY_VoidSymbol: number;
const KEY_W: number;
const KEY_WLAN: number;
const KEY_WWAN: number;
const KEY_WWW: number;
const KEY_Wacute: number;
const KEY_WakeUp: number;
const KEY_Wcircumflex: number;
const KEY_Wdiaeresis: number;
const KEY_WebCam: number;
const KEY_Wgrave: number;
const KEY_WheelButton: number;
const KEY_WindowClear: number;
const KEY_WonSign: number;
const KEY_Word: number;
const KEY_X: number;
const KEY_Xabovedot: number;
const KEY_Xfer: number;
const KEY_Y: number;
const KEY_Yacute: number;
const KEY_Ybelowdot: number;
const KEY_Ycircumflex: number;
const KEY_Ydiaeresis: number;
const KEY_Yellow: number;
const KEY_Ygrave: number;
const KEY_Yhook: number;
const KEY_Ytilde: number;
const KEY_Z: number;
const KEY_Zabovedot: number;
const KEY_Zacute: number;
const KEY_Zcaron: number;
const KEY_Zen_Koho: number;
const KEY_Zenkaku: number;
const KEY_Zenkaku_Hankaku: number;
const KEY_ZoomIn: number;
const KEY_ZoomOut: number;
const KEY_Zstroke: number;
const KEY_a: number;
const KEY_aacute: number;
const KEY_abelowdot: number;
const KEY_abovedot: number;
const KEY_abreve: number;
const KEY_abreveacute: number;
const KEY_abrevebelowdot: number;
const KEY_abrevegrave: number;
const KEY_abrevehook: number;
const KEY_abrevetilde: number;
const KEY_acircumflex: number;
const KEY_acircumflexacute: number;
const KEY_acircumflexbelowdot: number;
const KEY_acircumflexgrave: number;
const KEY_acircumflexhook: number;
const KEY_acircumflextilde: number;
const KEY_acute: number;
const KEY_adiaeresis: number;
const KEY_ae: number;
const KEY_agrave: number;
const KEY_ahook: number;
const KEY_amacron: number;
const KEY_ampersand: number;
const KEY_aogonek: number;
const KEY_apostrophe: number;
const KEY_approxeq: number;
const KEY_approximate: number;
const KEY_aring: number;
const KEY_asciicircum: number;
const KEY_asciitilde: number;
const KEY_asterisk: number;
const KEY_at: number;
const KEY_atilde: number;
const KEY_b: number;
const KEY_babovedot: number;
const KEY_backslash: number;
const KEY_ballotcross: number;
const KEY_bar: number;
const KEY_because: number;
const KEY_blank: number;
const KEY_botintegral: number;
const KEY_botleftparens: number;
const KEY_botleftsqbracket: number;
const KEY_botleftsummation: number;
const KEY_botrightparens: number;
const KEY_botrightsqbracket: number;
const KEY_botrightsummation: number;
const KEY_bott: number;
const KEY_botvertsummationconnector: number;
const KEY_braceleft: number;
const KEY_braceright: number;
const KEY_bracketleft: number;
const KEY_bracketright: number;
const KEY_braille_blank: number;
const KEY_braille_dot_1: number;
const KEY_braille_dot_10: number;
const KEY_braille_dot_2: number;
const KEY_braille_dot_3: number;
const KEY_braille_dot_4: number;
const KEY_braille_dot_5: number;
const KEY_braille_dot_6: number;
const KEY_braille_dot_7: number;
const KEY_braille_dot_8: number;
const KEY_braille_dot_9: number;
const KEY_braille_dots_1: number;
const KEY_braille_dots_12: number;
const KEY_braille_dots_123: number;
const KEY_braille_dots_1234: number;
const KEY_braille_dots_12345: number;
const KEY_braille_dots_123456: number;
const KEY_braille_dots_1234567: number;
const KEY_braille_dots_12345678: number;
const KEY_braille_dots_1234568: number;
const KEY_braille_dots_123457: number;
const KEY_braille_dots_1234578: number;
const KEY_braille_dots_123458: number;
const KEY_braille_dots_12346: number;
const KEY_braille_dots_123467: number;
const KEY_braille_dots_1234678: number;
const KEY_braille_dots_123468: number;
const KEY_braille_dots_12347: number;
const KEY_braille_dots_123478: number;
const KEY_braille_dots_12348: number;
const KEY_braille_dots_1235: number;
const KEY_braille_dots_12356: number;
const KEY_braille_dots_123567: number;
const KEY_braille_dots_1235678: number;
const KEY_braille_dots_123568: number;
const KEY_braille_dots_12357: number;
const KEY_braille_dots_123578: number;
const KEY_braille_dots_12358: number;
const KEY_braille_dots_1236: number;
const KEY_braille_dots_12367: number;
const KEY_braille_dots_123678: number;
const KEY_braille_dots_12368: number;
const KEY_braille_dots_1237: number;
const KEY_braille_dots_12378: number;
const KEY_braille_dots_1238: number;
const KEY_braille_dots_124: number;
const KEY_braille_dots_1245: number;
const KEY_braille_dots_12456: number;
const KEY_braille_dots_124567: number;
const KEY_braille_dots_1245678: number;
const KEY_braille_dots_124568: number;
const KEY_braille_dots_12457: number;
const KEY_braille_dots_124578: number;
const KEY_braille_dots_12458: number;
const KEY_braille_dots_1246: number;
const KEY_braille_dots_12467: number;
const KEY_braille_dots_124678: number;
const KEY_braille_dots_12468: number;
const KEY_braille_dots_1247: number;
const KEY_braille_dots_12478: number;
const KEY_braille_dots_1248: number;
const KEY_braille_dots_125: number;
const KEY_braille_dots_1256: number;
const KEY_braille_dots_12567: number;
const KEY_braille_dots_125678: number;
const KEY_braille_dots_12568: number;
const KEY_braille_dots_1257: number;
const KEY_braille_dots_12578: number;
const KEY_braille_dots_1258: number;
const KEY_braille_dots_126: number;
const KEY_braille_dots_1267: number;
const KEY_braille_dots_12678: number;
const KEY_braille_dots_1268: number;
const KEY_braille_dots_127: number;
const KEY_braille_dots_1278: number;
const KEY_braille_dots_128: number;
const KEY_braille_dots_13: number;
const KEY_braille_dots_134: number;
const KEY_braille_dots_1345: number;
const KEY_braille_dots_13456: number;
const KEY_braille_dots_134567: number;
const KEY_braille_dots_1345678: number;
const KEY_braille_dots_134568: number;
const KEY_braille_dots_13457: number;
const KEY_braille_dots_134578: number;
const KEY_braille_dots_13458: number;
const KEY_braille_dots_1346: number;
const KEY_braille_dots_13467: number;
const KEY_braille_dots_134678: number;
const KEY_braille_dots_13468: number;
const KEY_braille_dots_1347: number;
const KEY_braille_dots_13478: number;
const KEY_braille_dots_1348: number;
const KEY_braille_dots_135: number;
const KEY_braille_dots_1356: number;
const KEY_braille_dots_13567: number;
const KEY_braille_dots_135678: number;
const KEY_braille_dots_13568: number;
const KEY_braille_dots_1357: number;
const KEY_braille_dots_13578: number;
const KEY_braille_dots_1358: number;
const KEY_braille_dots_136: number;
const KEY_braille_dots_1367: number;
const KEY_braille_dots_13678: number;
const KEY_braille_dots_1368: number;
const KEY_braille_dots_137: number;
const KEY_braille_dots_1378: number;
const KEY_braille_dots_138: number;
const KEY_braille_dots_14: number;
const KEY_braille_dots_145: number;
const KEY_braille_dots_1456: number;
const KEY_braille_dots_14567: number;
const KEY_braille_dots_145678: number;
const KEY_braille_dots_14568: number;
const KEY_braille_dots_1457: number;
const KEY_braille_dots_14578: number;
const KEY_braille_dots_1458: number;
const KEY_braille_dots_146: number;
const KEY_braille_dots_1467: number;
const KEY_braille_dots_14678: number;
const KEY_braille_dots_1468: number;
const KEY_braille_dots_147: number;
const KEY_braille_dots_1478: number;
const KEY_braille_dots_148: number;
const KEY_braille_dots_15: number;
const KEY_braille_dots_156: number;
const KEY_braille_dots_1567: number;
const KEY_braille_dots_15678: number;
const KEY_braille_dots_1568: number;
const KEY_braille_dots_157: number;
const KEY_braille_dots_1578: number;
const KEY_braille_dots_158: number;
const KEY_braille_dots_16: number;
const KEY_braille_dots_167: number;
const KEY_braille_dots_1678: number;
const KEY_braille_dots_168: number;
const KEY_braille_dots_17: number;
const KEY_braille_dots_178: number;
const KEY_braille_dots_18: number;
const KEY_braille_dots_2: number;
const KEY_braille_dots_23: number;
const KEY_braille_dots_234: number;
const KEY_braille_dots_2345: number;
const KEY_braille_dots_23456: number;
const KEY_braille_dots_234567: number;
const KEY_braille_dots_2345678: number;
const KEY_braille_dots_234568: number;
const KEY_braille_dots_23457: number;
const KEY_braille_dots_234578: number;
const KEY_braille_dots_23458: number;
const KEY_braille_dots_2346: number;
const KEY_braille_dots_23467: number;
const KEY_braille_dots_234678: number;
const KEY_braille_dots_23468: number;
const KEY_braille_dots_2347: number;
const KEY_braille_dots_23478: number;
const KEY_braille_dots_2348: number;
const KEY_braille_dots_235: number;
const KEY_braille_dots_2356: number;
const KEY_braille_dots_23567: number;
const KEY_braille_dots_235678: number;
const KEY_braille_dots_23568: number;
const KEY_braille_dots_2357: number;
const KEY_braille_dots_23578: number;
const KEY_braille_dots_2358: number;
const KEY_braille_dots_236: number;
const KEY_braille_dots_2367: number;
const KEY_braille_dots_23678: number;
const KEY_braille_dots_2368: number;
const KEY_braille_dots_237: number;
const KEY_braille_dots_2378: number;
const KEY_braille_dots_238: number;
const KEY_braille_dots_24: number;
const KEY_braille_dots_245: number;
const KEY_braille_dots_2456: number;
const KEY_braille_dots_24567: number;
const KEY_braille_dots_245678: number;
const KEY_braille_dots_24568: number;
const KEY_braille_dots_2457: number;
const KEY_braille_dots_24578: number;
const KEY_braille_dots_2458: number;
const KEY_braille_dots_246: number;
const KEY_braille_dots_2467: number;
const KEY_braille_dots_24678: number;
const KEY_braille_dots_2468: number;
const KEY_braille_dots_247: number;
const KEY_braille_dots_2478: number;
const KEY_braille_dots_248: number;
const KEY_braille_dots_25: number;
const KEY_braille_dots_256: number;
const KEY_braille_dots_2567: number;
const KEY_braille_dots_25678: number;
const KEY_braille_dots_2568: number;
const KEY_braille_dots_257: number;
const KEY_braille_dots_2578: number;
const KEY_braille_dots_258: number;
const KEY_braille_dots_26: number;
const KEY_braille_dots_267: number;
const KEY_braille_dots_2678: number;
const KEY_braille_dots_268: number;
const KEY_braille_dots_27: number;
const KEY_braille_dots_278: number;
const KEY_braille_dots_28: number;
const KEY_braille_dots_3: number;
const KEY_braille_dots_34: number;
const KEY_braille_dots_345: number;
const KEY_braille_dots_3456: number;
const KEY_braille_dots_34567: number;
const KEY_braille_dots_345678: number;
const KEY_braille_dots_34568: number;
const KEY_braille_dots_3457: number;
const KEY_braille_dots_34578: number;
const KEY_braille_dots_3458: number;
const KEY_braille_dots_346: number;
const KEY_braille_dots_3467: number;
const KEY_braille_dots_34678: number;
const KEY_braille_dots_3468: number;
const KEY_braille_dots_347: number;
const KEY_braille_dots_3478: number;
const KEY_braille_dots_348: number;
const KEY_braille_dots_35: number;
const KEY_braille_dots_356: number;
const KEY_braille_dots_3567: number;
const KEY_braille_dots_35678: number;
const KEY_braille_dots_3568: number;
const KEY_braille_dots_357: number;
const KEY_braille_dots_3578: number;
const KEY_braille_dots_358: number;
const KEY_braille_dots_36: number;
const KEY_braille_dots_367: number;
const KEY_braille_dots_3678: number;
const KEY_braille_dots_368: number;
const KEY_braille_dots_37: number;
const KEY_braille_dots_378: number;
const KEY_braille_dots_38: number;
const KEY_braille_dots_4: number;
const KEY_braille_dots_45: number;
const KEY_braille_dots_456: number;
const KEY_braille_dots_4567: number;
const KEY_braille_dots_45678: number;
const KEY_braille_dots_4568: number;
const KEY_braille_dots_457: number;
const KEY_braille_dots_4578: number;
const KEY_braille_dots_458: number;
const KEY_braille_dots_46: number;
const KEY_braille_dots_467: number;
const KEY_braille_dots_4678: number;
const KEY_braille_dots_468: number;
const KEY_braille_dots_47: number;
const KEY_braille_dots_478: number;
const KEY_braille_dots_48: number;
const KEY_braille_dots_5: number;
const KEY_braille_dots_56: number;
const KEY_braille_dots_567: number;
const KEY_braille_dots_5678: number;
const KEY_braille_dots_568: number;
const KEY_braille_dots_57: number;
const KEY_braille_dots_578: number;
const KEY_braille_dots_58: number;
const KEY_braille_dots_6: number;
const KEY_braille_dots_67: number;
const KEY_braille_dots_678: number;
const KEY_braille_dots_68: number;
const KEY_braille_dots_7: number;
const KEY_braille_dots_78: number;
const KEY_braille_dots_8: number;
const KEY_breve: number;
const KEY_brokenbar: number;
const KEY_c: number;
const KEY_c_h: number;
const KEY_cabovedot: number;
const KEY_cacute: number;
const KEY_careof: number;
const KEY_caret: number;
const KEY_caron: number;
const KEY_ccaron: number;
const KEY_ccedilla: number;
const KEY_ccircumflex: number;
const KEY_cedilla: number;
const KEY_cent: number;
const KEY_ch: number;
const KEY_checkerboard: number;
const KEY_checkmark: number;
const KEY_circle: number;
const KEY_club: number;
const KEY_colon: number;
const KEY_combining_acute: number;
const KEY_combining_belowdot: number;
const KEY_combining_grave: number;
const KEY_combining_hook: number;
const KEY_combining_tilde: number;
const KEY_comma: number;
const KEY_containsas: number;
const KEY_copyright: number;
const KEY_cr: number;
const KEY_crossinglines: number;
const KEY_cuberoot: number;
const KEY_currency: number;
const KEY_cursor: number;
const KEY_d: number;
const KEY_dabovedot: number;
const KEY_dagger: number;
const KEY_dcaron: number;
const KEY_dead_A: number;
const KEY_dead_E: number;
const KEY_dead_I: number;
const KEY_dead_O: number;
const KEY_dead_SCHWA: number;
const KEY_dead_U: number;
const KEY_dead_a: number;
const KEY_dead_abovecomma: number;
const KEY_dead_abovedot: number;
const KEY_dead_abovereversedcomma: number;
const KEY_dead_abovering: number;
const KEY_dead_aboveverticalline: number;
const KEY_dead_acute: number;
const KEY_dead_belowbreve: number;
const KEY_dead_belowcircumflex: number;
const KEY_dead_belowcomma: number;
const KEY_dead_belowdiaeresis: number;
const KEY_dead_belowdot: number;
const KEY_dead_belowmacron: number;
const KEY_dead_belowring: number;
const KEY_dead_belowtilde: number;
const KEY_dead_belowverticalline: number;
const KEY_dead_breve: number;
const KEY_dead_capital_schwa: number;
const KEY_dead_caron: number;
const KEY_dead_cedilla: number;
const KEY_dead_circumflex: number;
const KEY_dead_currency: number;
const KEY_dead_dasia: number;
const KEY_dead_diaeresis: number;
const KEY_dead_doubleacute: number;
const KEY_dead_doublegrave: number;
const KEY_dead_e: number;
const KEY_dead_grave: number;
const KEY_dead_greek: number;
const KEY_dead_hamza: number;
const KEY_dead_hook: number;
const KEY_dead_horn: number;
const KEY_dead_i: number;
const KEY_dead_invertedbreve: number;
const KEY_dead_iota: number;
const KEY_dead_longsolidusoverlay: number;
const KEY_dead_lowline: number;
const KEY_dead_macron: number;
const KEY_dead_o: number;
const KEY_dead_ogonek: number;
const KEY_dead_perispomeni: number;
const KEY_dead_psili: number;
const KEY_dead_schwa: number;
const KEY_dead_semivoiced_sound: number;
const KEY_dead_small_schwa: number;
const KEY_dead_stroke: number;
const KEY_dead_tilde: number;
const KEY_dead_u: number;
const KEY_dead_voiced_sound: number;
const KEY_decimalpoint: number;
const KEY_degree: number;
const KEY_diaeresis: number;
const KEY_diamond: number;
const KEY_digitspace: number;
const KEY_dintegral: number;
const KEY_division: number;
const KEY_dollar: number;
const KEY_doubbaselinedot: number;
const KEY_doubleacute: number;
const KEY_doubledagger: number;
const KEY_doublelowquotemark: number;
const KEY_downarrow: number;
const KEY_downcaret: number;
const KEY_downshoe: number;
const KEY_downstile: number;
const KEY_downtack: number;
const KEY_dstroke: number;
const KEY_e: number;
const KEY_eabovedot: number;
const KEY_eacute: number;
const KEY_ebelowdot: number;
const KEY_ecaron: number;
const KEY_ecircumflex: number;
const KEY_ecircumflexacute: number;
const KEY_ecircumflexbelowdot: number;
const KEY_ecircumflexgrave: number;
const KEY_ecircumflexhook: number;
const KEY_ecircumflextilde: number;
const KEY_ediaeresis: number;
const KEY_egrave: number;
const KEY_ehook: number;
const KEY_eightsubscript: number;
const KEY_eightsuperior: number;
const KEY_elementof: number;
const KEY_ellipsis: number;
const KEY_em3space: number;
const KEY_em4space: number;
const KEY_emacron: number;
const KEY_emdash: number;
const KEY_emfilledcircle: number;
const KEY_emfilledrect: number;
const KEY_emopencircle: number;
const KEY_emopenrectangle: number;
const KEY_emptyset: number;
const KEY_emspace: number;
const KEY_endash: number;
const KEY_enfilledcircbullet: number;
const KEY_enfilledsqbullet: number;
const KEY_eng: number;
const KEY_enopencircbullet: number;
const KEY_enopensquarebullet: number;
const KEY_enspace: number;
const KEY_eogonek: number;
const KEY_equal: number;
const KEY_eth: number;
const KEY_etilde: number;
const KEY_exclam: number;
const KEY_exclamdown: number;
const KEY_ezh: number;
const KEY_f: number;
const KEY_fabovedot: number;
const KEY_femalesymbol: number;
const KEY_ff: number;
const KEY_figdash: number;
const KEY_filledlefttribullet: number;
const KEY_filledrectbullet: number;
const KEY_filledrighttribullet: number;
const KEY_filledtribulletdown: number;
const KEY_filledtribulletup: number;
const KEY_fiveeighths: number;
const KEY_fivesixths: number;
const KEY_fivesubscript: number;
const KEY_fivesuperior: number;
const KEY_fourfifths: number;
const KEY_foursubscript: number;
const KEY_foursuperior: number;
const KEY_fourthroot: number;
const KEY_function: number;
const KEY_g: number;
const KEY_gabovedot: number;
const KEY_gbreve: number;
const KEY_gcaron: number;
const KEY_gcedilla: number;
const KEY_gcircumflex: number;
const KEY_grave: number;
const KEY_greater: number;
const KEY_greaterthanequal: number;
const KEY_guillemetleft: number;
const KEY_guillemetright: number;
const KEY_guillemotleft: number;
const KEY_guillemotright: number;
const KEY_h: number;
const KEY_hairspace: number;
const KEY_hcircumflex: number;
const KEY_heart: number;
const KEY_hebrew_aleph: number;
const KEY_hebrew_ayin: number;
const KEY_hebrew_bet: number;
const KEY_hebrew_beth: number;
const KEY_hebrew_chet: number;
const KEY_hebrew_dalet: number;
const KEY_hebrew_daleth: number;
const KEY_hebrew_doublelowline: number;
const KEY_hebrew_finalkaph: number;
const KEY_hebrew_finalmem: number;
const KEY_hebrew_finalnun: number;
const KEY_hebrew_finalpe: number;
const KEY_hebrew_finalzade: number;
const KEY_hebrew_finalzadi: number;
const KEY_hebrew_gimel: number;
const KEY_hebrew_gimmel: number;
const KEY_hebrew_he: number;
const KEY_hebrew_het: number;
const KEY_hebrew_kaph: number;
const KEY_hebrew_kuf: number;
const KEY_hebrew_lamed: number;
const KEY_hebrew_mem: number;
const KEY_hebrew_nun: number;
const KEY_hebrew_pe: number;
const KEY_hebrew_qoph: number;
const KEY_hebrew_resh: number;
const KEY_hebrew_samech: number;
const KEY_hebrew_samekh: number;
const KEY_hebrew_shin: number;
const KEY_hebrew_taf: number;
const KEY_hebrew_taw: number;
const KEY_hebrew_tet: number;
const KEY_hebrew_teth: number;
const KEY_hebrew_waw: number;
const KEY_hebrew_yod: number;
const KEY_hebrew_zade: number;
const KEY_hebrew_zadi: number;
const KEY_hebrew_zain: number;
const KEY_hebrew_zayin: number;
const KEY_hexagram: number;
const KEY_horizconnector: number;
const KEY_horizlinescan1: number;
const KEY_horizlinescan3: number;
const KEY_horizlinescan5: number;
const KEY_horizlinescan7: number;
const KEY_horizlinescan9: number;
const KEY_hstroke: number;
const KEY_ht: number;
const KEY_hyphen: number;
const KEY_i: number;
const KEY_iTouch: number;
const KEY_iacute: number;
const KEY_ibelowdot: number;
const KEY_ibreve: number;
const KEY_icircumflex: number;
const KEY_identical: number;
const KEY_idiaeresis: number;
const KEY_idotless: number;
const KEY_ifonlyif: number;
const KEY_igrave: number;
const KEY_ihook: number;
const KEY_imacron: number;
const KEY_implies: number;
const KEY_includedin: number;
const KEY_includes: number;
const KEY_infinity: number;
const KEY_integral: number;
const KEY_intersection: number;
const KEY_iogonek: number;
const KEY_itilde: number;
const KEY_j: number;
const KEY_jcircumflex: number;
const KEY_jot: number;
const KEY_k: number;
const KEY_kana_A: number;
const KEY_kana_CHI: number;
const KEY_kana_E: number;
const KEY_kana_FU: number;
const KEY_kana_HA: number;
const KEY_kana_HE: number;
const KEY_kana_HI: number;
const KEY_kana_HO: number;
const KEY_kana_HU: number;
const KEY_kana_I: number;
const KEY_kana_KA: number;
const KEY_kana_KE: number;
const KEY_kana_KI: number;
const KEY_kana_KO: number;
const KEY_kana_KU: number;
const KEY_kana_MA: number;
const KEY_kana_ME: number;
const KEY_kana_MI: number;
const KEY_kana_MO: number;
const KEY_kana_MU: number;
const KEY_kana_N: number;
const KEY_kana_NA: number;
const KEY_kana_NE: number;
const KEY_kana_NI: number;
const KEY_kana_NO: number;
const KEY_kana_NU: number;
const KEY_kana_O: number;
const KEY_kana_RA: number;
const KEY_kana_RE: number;
const KEY_kana_RI: number;
const KEY_kana_RO: number;
const KEY_kana_RU: number;
const KEY_kana_SA: number;
const KEY_kana_SE: number;
const KEY_kana_SHI: number;
const KEY_kana_SO: number;
const KEY_kana_SU: number;
const KEY_kana_TA: number;
const KEY_kana_TE: number;
const KEY_kana_TI: number;
const KEY_kana_TO: number;
const KEY_kana_TSU: number;
const KEY_kana_TU: number;
const KEY_kana_U: number;
const KEY_kana_WA: number;
const KEY_kana_WO: number;
const KEY_kana_YA: number;
const KEY_kana_YO: number;
const KEY_kana_YU: number;
const KEY_kana_a: number;
const KEY_kana_closingbracket: number;
const KEY_kana_comma: number;
const KEY_kana_conjunctive: number;
const KEY_kana_e: number;
const KEY_kana_fullstop: number;
const KEY_kana_i: number;
const KEY_kana_middledot: number;
const KEY_kana_o: number;
const KEY_kana_openingbracket: number;
const KEY_kana_switch: number;
const KEY_kana_tsu: number;
const KEY_kana_tu: number;
const KEY_kana_u: number;
const KEY_kana_ya: number;
const KEY_kana_yo: number;
const KEY_kana_yu: number;
const KEY_kappa: number;
const KEY_kcedilla: number;
const KEY_kra: number;
const KEY_l: number;
const KEY_lacute: number;
const KEY_latincross: number;
const KEY_lbelowdot: number;
const KEY_lcaron: number;
const KEY_lcedilla: number;
const KEY_leftanglebracket: number;
const KEY_leftarrow: number;
const KEY_leftcaret: number;
const KEY_leftdoublequotemark: number;
const KEY_leftmiddlecurlybrace: number;
const KEY_leftopentriangle: number;
const KEY_leftpointer: number;
const KEY_leftradical: number;
const KEY_leftshoe: number;
const KEY_leftsinglequotemark: number;
const KEY_leftt: number;
const KEY_lefttack: number;
const KEY_less: number;
const KEY_lessthanequal: number;
const KEY_lf: number;
const KEY_logicaland: number;
const KEY_logicalor: number;
const KEY_lowleftcorner: number;
const KEY_lowrightcorner: number;
const KEY_lstroke: number;
const KEY_m: number;
const KEY_mabovedot: number;
const KEY_macron: number;
const KEY_malesymbol: number;
const KEY_maltesecross: number;
const KEY_marker: number;
const KEY_masculine: number;
const KEY_minus: number;
const KEY_minutes: number;
const KEY_mu: number;
const KEY_multiply: number;
const KEY_musicalflat: number;
const KEY_musicalsharp: number;
const KEY_n: number;
const KEY_nabla: number;
const KEY_nacute: number;
const KEY_ncaron: number;
const KEY_ncedilla: number;
const KEY_ninesubscript: number;
const KEY_ninesuperior: number;
const KEY_nl: number;
const KEY_nobreakspace: number;
const KEY_notapproxeq: number;
const KEY_notelementof: number;
const KEY_notequal: number;
const KEY_notidentical: number;
const KEY_notsign: number;
const KEY_ntilde: number;
const KEY_numbersign: number;
const KEY_numerosign: number;
const KEY_o: number;
const KEY_oacute: number;
const KEY_obarred: number;
const KEY_obelowdot: number;
const KEY_ocaron: number;
const KEY_ocircumflex: number;
const KEY_ocircumflexacute: number;
const KEY_ocircumflexbelowdot: number;
const KEY_ocircumflexgrave: number;
const KEY_ocircumflexhook: number;
const KEY_ocircumflextilde: number;
const KEY_odiaeresis: number;
const KEY_odoubleacute: number;
const KEY_oe: number;
const KEY_ogonek: number;
const KEY_ograve: number;
const KEY_ohook: number;
const KEY_ohorn: number;
const KEY_ohornacute: number;
const KEY_ohornbelowdot: number;
const KEY_ohorngrave: number;
const KEY_ohornhook: number;
const KEY_ohorntilde: number;
const KEY_omacron: number;
const KEY_oneeighth: number;
const KEY_onefifth: number;
const KEY_onehalf: number;
const KEY_onequarter: number;
const KEY_onesixth: number;
const KEY_onesubscript: number;
const KEY_onesuperior: number;
const KEY_onethird: number;
const KEY_ooblique: number;
const KEY_openrectbullet: number;
const KEY_openstar: number;
const KEY_opentribulletdown: number;
const KEY_opentribulletup: number;
const KEY_ordfeminine: number;
const KEY_ordmasculine: number;
const KEY_oslash: number;
const KEY_otilde: number;
const KEY_overbar: number;
const KEY_overline: number;
const KEY_p: number;
const KEY_pabovedot: number;
const KEY_paragraph: number;
const KEY_parenleft: number;
const KEY_parenright: number;
const KEY_partdifferential: number;
const KEY_partialderivative: number;
const KEY_percent: number;
const KEY_period: number;
const KEY_periodcentered: number;
const KEY_permille: number;
const KEY_phonographcopyright: number;
const KEY_plus: number;
const KEY_plusminus: number;
const KEY_prescription: number;
const KEY_prolongedsound: number;
const KEY_punctspace: number;
const KEY_q: number;
const KEY_quad: number;
const KEY_question: number;
const KEY_questiondown: number;
const KEY_quotedbl: number;
const KEY_quoteleft: number;
const KEY_quoteright: number;
const KEY_r: number;
const KEY_racute: number;
const KEY_radical: number;
const KEY_rcaron: number;
const KEY_rcedilla: number;
const KEY_registered: number;
const KEY_rightanglebracket: number;
const KEY_rightarrow: number;
const KEY_rightcaret: number;
const KEY_rightdoublequotemark: number;
const KEY_rightmiddlecurlybrace: number;
const KEY_rightmiddlesummation: number;
const KEY_rightopentriangle: number;
const KEY_rightpointer: number;
const KEY_rightshoe: number;
const KEY_rightsinglequotemark: number;
const KEY_rightt: number;
const KEY_righttack: number;
const KEY_s: number;
const KEY_sabovedot: number;
const KEY_sacute: number;
const KEY_scaron: number;
const KEY_scedilla: number;
const KEY_schwa: number;
const KEY_scircumflex: number;
const KEY_script_switch: number;
const KEY_seconds: number;
const KEY_section: number;
const KEY_semicolon: number;
const KEY_semivoicedsound: number;
const KEY_seveneighths: number;
const KEY_sevensubscript: number;
const KEY_sevensuperior: number;
const KEY_signaturemark: number;
const KEY_signifblank: number;
const KEY_similarequal: number;
const KEY_singlelowquotemark: number;
const KEY_sixsubscript: number;
const KEY_sixsuperior: number;
const KEY_slash: number;
const KEY_soliddiamond: number;
const KEY_space: number;
const KEY_squareroot: number;
const KEY_ssharp: number;
const KEY_sterling: number;
const KEY_stricteq: number;
const KEY_t: number;
const KEY_tabovedot: number;
const KEY_tcaron: number;
const KEY_tcedilla: number;
const KEY_telephone: number;
const KEY_telephonerecorder: number;
const KEY_therefore: number;
const KEY_thinspace: number;
const KEY_thorn: number;
const KEY_threeeighths: number;
const KEY_threefifths: number;
const KEY_threequarters: number;
const KEY_threesubscript: number;
const KEY_threesuperior: number;
const KEY_tintegral: number;
const KEY_topintegral: number;
const KEY_topleftparens: number;
const KEY_topleftradical: number;
const KEY_topleftsqbracket: number;
const KEY_topleftsummation: number;
const KEY_toprightparens: number;
const KEY_toprightsqbracket: number;
const KEY_toprightsummation: number;
const KEY_topt: number;
const KEY_topvertsummationconnector: number;
const KEY_trademark: number;
const KEY_trademarkincircle: number;
const KEY_tslash: number;
const KEY_twofifths: number;
const KEY_twosubscript: number;
const KEY_twosuperior: number;
const KEY_twothirds: number;
const KEY_u: number;
const KEY_uacute: number;
const KEY_ubelowdot: number;
const KEY_ubreve: number;
const KEY_ucircumflex: number;
const KEY_udiaeresis: number;
const KEY_udoubleacute: number;
const KEY_ugrave: number;
const KEY_uhook: number;
const KEY_uhorn: number;
const KEY_uhornacute: number;
const KEY_uhornbelowdot: number;
const KEY_uhorngrave: number;
const KEY_uhornhook: number;
const KEY_uhorntilde: number;
const KEY_umacron: number;
const KEY_underbar: number;
const KEY_underscore: number;
const KEY_union: number;
const KEY_uogonek: number;
const KEY_uparrow: number;
const KEY_upcaret: number;
const KEY_upleftcorner: number;
const KEY_uprightcorner: number;
const KEY_upshoe: number;
const KEY_upstile: number;
const KEY_uptack: number;
const KEY_uring: number;
const KEY_utilde: number;
const KEY_v: number;
const KEY_variation: number;
const KEY_vertbar: number;
const KEY_vertconnector: number;
const KEY_voicedsound: number;
const KEY_vt: number;
const KEY_w: number;
const KEY_wacute: number;
const KEY_wcircumflex: number;
const KEY_wdiaeresis: number;
const KEY_wgrave: number;
const KEY_x: number;
const KEY_xabovedot: number;
const KEY_y: number;
const KEY_yacute: number;
const KEY_ybelowdot: number;
const KEY_ycircumflex: number;
const KEY_ydiaeresis: number;
const KEY_yen: number;
const KEY_ygrave: number;
const KEY_yhook: number;
const KEY_ytilde: number;
const KEY_z: number;
const KEY_zabovedot: number;
const KEY_zacute: number;
const KEY_zcaron: number;
const KEY_zerosubscript: number;
const KEY_zerosuperior: number;
const KEY_zstroke: number;
const KP_0: number;
const KP_1: number;
const KP_2: number;
const KP_3: number;
const KP_4: number;
const KP_5: number;
const KP_6: number;
const KP_7: number;
const KP_8: number;
const KP_9: number;
const KP_Add: number;
const KP_Begin: number;
const KP_Decimal: number;
const KP_Delete: number;
const KP_Divide: number;
const KP_Down: number;
const KP_End: number;
const KP_Enter: number;
const KP_Equal: number;
const KP_F1: number;
const KP_F2: number;
const KP_F3: number;
const KP_F4: number;
const KP_Home: number;
const KP_Insert: number;
const KP_Left: number;
const KP_Multiply: number;
const KP_Next: number;
const KP_Page_Down: number;
const KP_Page_Up: number;
const KP_Prior: number;
const KP_Right: number;
const KP_Separator: number;
const KP_Space: number;
const KP_Subtract: number;
const KP_Tab: number;
const KP_Up: number;
const Kana_Lock: number;
const Kana_Shift: number;
/**
* Japanese keyboard support.
*/
const Kanji: number;
const Kanji_Bangou: number;
/**
* Japanese keyboard support.
*/
const Katakana: number;
const Kcedilla: number;
const Korean_Won: number;
const L: number;
const L1: number;
const L10: number;
const L2: number;
const L3: number;
const L4: number;
const L5: number;
const L6: number;
const L7: number;
const L8: number;
const L9: number;
const Lacute: number;
const Last_Virtual_Screen: number;
const Lbelowdot: number;
const Lcaron: number;
const Lcedilla: number;
const Left: number;
const Linefeed: number;
const LiraSign: number;
const Lstroke: number;
const M: number;
/**
* IBus major version.
*/
const MAJOR_VERSION: number;
const MAX_COMPOSE_LEN: number;
/**
* IBus micro version.
*/
const MICRO_VERSION: number;
/**
* IBus minor version.
*/
const MINOR_VERSION: number;
const Mabovedot: number;
const Macedonia_DSE: number;
const Macedonia_GJE: number;
const Macedonia_KJE: number;
const Macedonia_dse: number;
const Macedonia_gje: number;
const Macedonia_kje: number;
const Mae_Koho: number;
const Massyo: number;
const Menu: number;
const Meta_L: number;
const Meta_R: number;
const MillSign: number;
const Mode_switch: number;
const MouseKeys_Accel_Enable: number;
const MouseKeys_Enable: number;
/**
* Japanese keyboard support.
*/
const Muhenkan: number;
/**
* Key for composing characters.
* A.k.a. Compose Key.
*/
const Multi_key: number;
const MultipleCandidate: number;
const N: number;
const Nacute: number;
const NairaSign: number;
const Ncaron: number;
const Ncedilla: number;
const NewSheqelSign: number;
const Next: number;
const Next_Virtual_Screen: number;
const Ntilde: number;
const Num_Lock: number;
const O: number;
const OE: number;
const Oacute: number;
const Obarred: number;
const Obelowdot: number;
const Ocaron: number;
const Ocircumflex: number;
const Ocircumflexacute: number;
const Ocircumflexbelowdot: number;
const Ocircumflexgrave: number;
const Ocircumflexhook: number;
const Ocircumflextilde: number;
const Odiaeresis: number;
const Odoubleacute: number;
const Ograve: number;
const Ohook: number;
const Ohorn: number;
const Ohornacute: number;
const Ohornbelowdot: number;
const Ohorngrave: number;
const Ohornhook: number;
const Ohorntilde: number;
const Omacron: number;
const Ooblique: number;
const Oslash: number;
const Otilde: number;
const Overlay1_Enable: number;
const Overlay2_Enable: number;
const P: number;
/**
* D-Bus path for IBus config.
*/
const PATH_CONFIG: string;
/**
* D-Bus path for IBus factory.
*/
const PATH_FACTORY: string;
/**
* D-Bus path for IBus
*/
const PATH_IBUS: string;
/**
* Template of D-Bus path for IBus input context.
*/
const PATH_INPUT_CONTEXT: string;
/**
* D-Bus path for IBus notifications.
*/
const PATH_NOTIFICATIONS: string;
/**
* D-Bus path for IBus panel.
*/
const PATH_PANEL: string;
/**
* D-Bus path for IBus extension panel for emoji.
* This service provides emoji, Unicode code point, Unicode name features.
*/
const PATH_PANEL_EXTENSION_EMOJI: string;
const Pabovedot: number;
const Page_Down: number;
const Page_Up: number;
const Pause: number;
const PesetaSign: number;
const Pointer_Accelerate: number;
const Pointer_Button1: number;
const Pointer_Button2: number;
const Pointer_Button3: number;
const Pointer_Button4: number;
const Pointer_Button5: number;
const Pointer_Button_Dflt: number;
const Pointer_DblClick1: number;
const Pointer_DblClick2: number;
const Pointer_DblClick3: number;
const Pointer_DblClick4: number;
const Pointer_DblClick5: number;
const Pointer_DblClick_Dflt: number;
const Pointer_DfltBtnNext: number;
const Pointer_DfltBtnPrev: number;
const Pointer_Down: number;
const Pointer_DownLeft: number;
const Pointer_DownRight: number;
const Pointer_Drag1: number;
const Pointer_Drag2: number;
const Pointer_Drag3: number;
const Pointer_Drag4: number;
const Pointer_Drag5: number;
const Pointer_Drag_Dflt: number;
const Pointer_EnableKeys: number;
const Pointer_Left: number;
const Pointer_Right: number;
const Pointer_Up: number;
const Pointer_UpLeft: number;
const Pointer_UpRight: number;
const Prev_Virtual_Screen: number;
const PreviousCandidate: number;
const Print: number;
const Prior: number;
const Q: number;
const R: number;
const R1: number;
const R10: number;
const R11: number;
const R12: number;
const R13: number;
const R14: number;
const R15: number;
const R2: number;
const R3: number;
const R4: number;
const R5: number;
const R6: number;
const R7: number;
const R8: number;
const R9: number;
const Racute: number;
const Rcaron: number;
const Rcedilla: number;
const Redo: number;
const RepeatKeys_Enable: number;
const Return: number;
const Right: number;
/**
* Japanese keyboard support.
*/
const Romaji: number;
const RupeeSign: number;
const S: number;
const SCHWA: number;
/**
* Address of IBus config service.
*/
const SERVICE_CONFIG: string;
/**
* Address of IBus service.
*/
const SERVICE_IBUS: string;
/**
* Address of IBus notification service.
*/
const SERVICE_NOTIFICATIONS: string;
/**
* Address of IBus panel service.
*/
const SERVICE_PANEL: string;
/**
* Address of IBus panel extension service.
*/
const SERVICE_PANEL_EXTENSION: string;
/**
* Address of IBus panel extension service for emoji.
* This service provides emoji, Unicode code point, Unicode name features.
*/
const SERVICE_PANEL_EXTENSION_EMOJI: string;
/**
* Address of IBus portalservice.
*/
const SERVICE_PORTAL: string;
const Sabovedot: number;
const Sacute: number;
const Scaron: number;
const Scedilla: number;
const Scircumflex: number;
const Scroll_Lock: number;
const Select: number;
const Serbian_DJE: number;
const Serbian_DZE: number;
const Serbian_JE: number;
const Serbian_LJE: number;
const Serbian_NJE: number;
const Serbian_TSHE: number;
const Serbian_dje: number;
const Serbian_dze: number;
const Serbian_je: number;
const Serbian_lje: number;
const Serbian_nje: number;
const Serbian_tshe: number;
const Shift_L: number;
const Shift_Lock: number;
const Shift_R: number;
const SingleCandidate: number;
const SlowKeys_Enable: number;
const StickyKeys_Enable: number;
const Super_L: number;
const Super_R: number;
const Sys_Req: number;
const T: number;
const THORN: number;
const Tab: number;
const Tabovedot: number;
const Tcaron: number;
const Tcedilla: number;
const Terminate_Server: number;
const Thai_baht: number;
const Thai_bobaimai: number;
const Thai_chochan: number;
const Thai_chochang: number;
const Thai_choching: number;
const Thai_chochoe: number;
const Thai_dochada: number;
const Thai_dodek: number;
const Thai_fofa: number;
const Thai_fofan: number;
const Thai_hohip: number;
const Thai_honokhuk: number;
const Thai_khokhai: number;
const Thai_khokhon: number;
const Thai_khokhuat: number;
const Thai_khokhwai: number;
const Thai_khorakhang: number;
const Thai_kokai: number;
const Thai_lakkhangyao: number;
const Thai_lekchet: number;
const Thai_lekha: number;
const Thai_lekhok: number;
const Thai_lekkao: number;
const Thai_leknung: number;
const Thai_lekpaet: number;
const Thai_leksam: number;
const Thai_leksi: number;
const Thai_leksong: number;
const Thai_leksun: number;
const Thai_lochula: number;
const Thai_loling: number;
const Thai_lu: number;
const Thai_maichattawa: number;
const Thai_maiek: number;
const Thai_maihanakat: number;
const Thai_maihanakat_maitho: number;
const Thai_maitaikhu: number;
const Thai_maitho: number;
const Thai_maitri: number;
const Thai_maiyamok: number;
const Thai_moma: number;
const Thai_ngongu: number;
const Thai_nikhahit: number;
const Thai_nonen: number;
const Thai_nonu: number;
const Thai_oang: number;
const Thai_paiyannoi: number;
const Thai_phinthu: number;
const Thai_phophan: number;
const Thai_phophung: number;
const Thai_phosamphao: number;
const Thai_popla: number;
const Thai_rorua: number;
const Thai_ru: number;
const Thai_saraa: number;
const Thai_saraaa: number;
const Thai_saraae: number;
const Thai_saraaimaimalai: number;
const Thai_saraaimaimuan: number;
const Thai_saraam: number;
const Thai_sarae: number;
const Thai_sarai: number;
const Thai_saraii: number;
const Thai_sarao: number;
const Thai_sarau: number;
const Thai_saraue: number;
const Thai_sarauee: number;
const Thai_sarauu: number;
const Thai_sorusi: number;
const Thai_sosala: number;
const Thai_soso: number;
const Thai_sosua: number;
const Thai_thanthakhat: number;
const Thai_thonangmontho: number;
const Thai_thophuthao: number;
const Thai_thothahan: number;
const Thai_thothan: number;
const Thai_thothong: number;
const Thai_thothung: number;
const Thai_topatak: number;
const Thai_totao: number;
const Thai_wowaen: number;
const Thai_yoyak: number;
const Thai_yoying: number;
const Thorn: number;
const Touroku: number;
const Tslash: number;
const U: number;
const Uacute: number;
const Ubelowdot: number;
const Ubreve: number;
const Ucircumflex: number;
const Udiaeresis: number;
const Udoubleacute: number;
const Ugrave: number;
const Uhook: number;
const Uhorn: number;
const Uhornacute: number;
const Uhornbelowdot: number;
const Uhorngrave: number;
const Uhornhook: number;
const Uhorntilde: number;
const Ukrainian_GHE_WITH_UPTURN: number;
const Ukrainian_I: number;
const Ukrainian_IE: number;
const Ukrainian_YI: number;
const Ukrainian_ghe_with_upturn: number;
const Ukrainian_i: number;
const Ukrainian_ie: number;
const Ukrainian_yi: number;
const Ukranian_I: number;
const Ukranian_JE: number;
const Ukranian_YI: number;
const Ukranian_i: number;
const Ukranian_je: number;
const Ukranian_yi: number;
const Umacron: number;
const Undo: number;
const Uogonek: number;
const Up: number;
const Uring: number;
const Utilde: number;
const V: number;
const VoidSymbol: number;
const W: number;
const Wacute: number;
const Wcircumflex: number;
const Wdiaeresis: number;
const Wgrave: number;
const WonSign: number;
const X: number;
const Xabovedot: number;
const Y: number;
const Yacute: number;
const Ybelowdot: number;
const Ycircumflex: number;
const Ydiaeresis: number;
const Ygrave: number;
const Yhook: number;
const Ytilde: number;
const Z: number;
const Zabovedot: number;
const Zacute: number;
const Zcaron: number;
const Zen_Koho: number;
const Zenkaku: number;
const Zenkaku_Hankaku: number;
const Zstroke: number;
const a: number;
const aacute: number;
const abelowdot: number;
const abovedot: number;
const abreve: number;
const abreveacute: number;
const abrevebelowdot: number;
const abrevegrave: number;
const abrevehook: number;
const abrevetilde: number;
const acircumflex: number;
const acircumflexacute: number;
const acircumflexbelowdot: number;
const acircumflexgrave: number;
const acircumflexhook: number;
const acircumflextilde: number;
const acute: number;
const adiaeresis: number;
const ae: number;
const agrave: number;
const ahook: number;
const amacron: number;
const ampersand: number;
const aogonek: number;
const apostrophe: number;
const approxeq: number;
const approximate: number;
const aring: number;
const asciicircum: number;
const asciitilde: number;
const asterisk: number;
const at: number;
const atilde: number;
const b: number;
const babovedot: number;
const backslash: number;
const ballotcross: number;
const bar: number;
const because: number;
const blank: number;
const botintegral: number;
const botleftparens: number;
const botleftsqbracket: number;
const botleftsummation: number;
const botrightparens: number;
const botrightsqbracket: number;
const botrightsummation: number;
const bott: number;
const botvertsummationconnector: number;
const braceleft: number;
const braceright: number;
const bracketleft: number;
const bracketright: number;
const braille_blank: number;
const braille_dot_1: number;
const braille_dot_10: number;
const braille_dot_2: number;
const braille_dot_3: number;
const braille_dot_4: number;
const braille_dot_5: number;
const braille_dot_6: number;
const braille_dot_7: number;
const braille_dot_8: number;
const braille_dot_9: number;
const braille_dots_1: number;
const braille_dots_12: number;
const braille_dots_123: number;
const braille_dots_1234: number;
const braille_dots_12345: number;
const braille_dots_123456: number;
const braille_dots_1234567: number;
const braille_dots_12345678: number;
const braille_dots_1234568: number;
const braille_dots_123457: number;
const braille_dots_1234578: number;
const braille_dots_123458: number;
const braille_dots_12346: number;
const braille_dots_123467: number;
const braille_dots_1234678: number;
const braille_dots_123468: number;
const braille_dots_12347: number;
const braille_dots_123478: number;
const braille_dots_12348: number;
const braille_dots_1235: number;
const braille_dots_12356: number;
const braille_dots_123567: number;
const braille_dots_1235678: number;
const braille_dots_123568: number;
const braille_dots_12357: number;
const braille_dots_123578: number;
const braille_dots_12358: number;
const braille_dots_1236: number;
const braille_dots_12367: number;
const braille_dots_123678: number;
const braille_dots_12368: number;
const braille_dots_1237: number;
const braille_dots_12378: number;
const braille_dots_1238: number;
const braille_dots_124: number;
const braille_dots_1245: number;
const braille_dots_12456: number;
const braille_dots_124567: number;
const braille_dots_1245678: number;
const braille_dots_124568: number;
const braille_dots_12457: number;
const braille_dots_124578: number;
const braille_dots_12458: number;
const braille_dots_1246: number;
const braille_dots_12467: number;
const braille_dots_124678: number;
const braille_dots_12468: number;
const braille_dots_1247: number;
const braille_dots_12478: number;
const braille_dots_1248: number;
const braille_dots_125: number;
const braille_dots_1256: number;
const braille_dots_12567: number;
const braille_dots_125678: number;
const braille_dots_12568: number;
const braille_dots_1257: number;
const braille_dots_12578: number;
const braille_dots_1258: number;
const braille_dots_126: number;
const braille_dots_1267: number;
const braille_dots_12678: number;
const braille_dots_1268: number;
const braille_dots_127: number;
const braille_dots_1278: number;
const braille_dots_128: number;
const braille_dots_13: number;
const braille_dots_134: number;
const braille_dots_1345: number;
const braille_dots_13456: number;
const braille_dots_134567: number;
const braille_dots_1345678: number;
const braille_dots_134568: number;
const braille_dots_13457: number;
const braille_dots_134578: number;
const braille_dots_13458: number;
const braille_dots_1346: number;
const braille_dots_13467: number;
const braille_dots_134678: number;
const braille_dots_13468: number;
const braille_dots_1347: number;
const braille_dots_13478: number;
const braille_dots_1348: number;
const braille_dots_135: number;
const braille_dots_1356: number;
const braille_dots_13567: number;
const braille_dots_135678: number;
const braille_dots_13568: number;
const braille_dots_1357: number;
const braille_dots_13578: number;
const braille_dots_1358: number;
const braille_dots_136: number;
const braille_dots_1367: number;
const braille_dots_13678: number;
const braille_dots_1368: number;
const braille_dots_137: number;
const braille_dots_1378: number;
const braille_dots_138: number;
const braille_dots_14: number;
const braille_dots_145: number;
const braille_dots_1456: number;
const braille_dots_14567: number;
const braille_dots_145678: number;
const braille_dots_14568: number;
const braille_dots_1457: number;
const braille_dots_14578: number;
const braille_dots_1458: number;
const braille_dots_146: number;
const braille_dots_1467: number;
const braille_dots_14678: number;
const braille_dots_1468: number;
const braille_dots_147: number;
const braille_dots_1478: number;
const braille_dots_148: number;
const braille_dots_15: number;
const braille_dots_156: number;
const braille_dots_1567: number;
const braille_dots_15678: number;
const braille_dots_1568: number;
const braille_dots_157: number;
const braille_dots_1578: number;
const braille_dots_158: number;
const braille_dots_16: number;
const braille_dots_167: number;
const braille_dots_1678: number;
const braille_dots_168: number;
const braille_dots_17: number;
const braille_dots_178: number;
const braille_dots_18: number;
const braille_dots_2: number;
const braille_dots_23: number;
const braille_dots_234: number;
const braille_dots_2345: number;
const braille_dots_23456: number;
const braille_dots_234567: number;
const braille_dots_2345678: number;
const braille_dots_234568: number;
const braille_dots_23457: number;
const braille_dots_234578: number;
const braille_dots_23458: number;
const braille_dots_2346: number;
const braille_dots_23467: number;
const braille_dots_234678: number;
const braille_dots_23468: number;
const braille_dots_2347: number;
const braille_dots_23478: number;
const braille_dots_2348: number;
const braille_dots_235: number;
const braille_dots_2356: number;
const braille_dots_23567: number;
const braille_dots_235678: number;
const braille_dots_23568: number;
const braille_dots_2357: number;
const braille_dots_23578: number;
const braille_dots_2358: number;
const braille_dots_236: number;
const braille_dots_2367: number;
const braille_dots_23678: number;
const braille_dots_2368: number;
const braille_dots_237: number;
const braille_dots_2378: number;
const braille_dots_238: number;
const braille_dots_24: number;
const braille_dots_245: number;
const braille_dots_2456: number;
const braille_dots_24567: number;
const braille_dots_245678: number;
const braille_dots_24568: number;
const braille_dots_2457: number;
const braille_dots_24578: number;
const braille_dots_2458: number;
const braille_dots_246: number;
const braille_dots_2467: number;
const braille_dots_24678: number;
const braille_dots_2468: number;
const braille_dots_247: number;
const braille_dots_2478: number;
const braille_dots_248: number;
const braille_dots_25: number;
const braille_dots_256: number;
const braille_dots_2567: number;
const braille_dots_25678: number;
const braille_dots_2568: number;
const braille_dots_257: number;
const braille_dots_2578: number;
const braille_dots_258: number;
const braille_dots_26: number;
const braille_dots_267: number;
const braille_dots_2678: number;
const braille_dots_268: number;
const braille_dots_27: number;
const braille_dots_278: number;
const braille_dots_28: number;
const braille_dots_3: number;
const braille_dots_34: number;
const braille_dots_345: number;
const braille_dots_3456: number;
const braille_dots_34567: number;
const braille_dots_345678: number;
const braille_dots_34568: number;
const braille_dots_3457: number;
const braille_dots_34578: number;
const braille_dots_3458: number;
const braille_dots_346: number;
const braille_dots_3467: number;
const braille_dots_34678: number;
const braille_dots_3468: number;
const braille_dots_347: number;
const braille_dots_3478: number;
const braille_dots_348: number;
const braille_dots_35: number;
const braille_dots_356: number;
const braille_dots_3567: number;
const braille_dots_35678: number;
const braille_dots_3568: number;
const braille_dots_357: number;
const braille_dots_3578: number;
const braille_dots_358: number;
const braille_dots_36: number;
const braille_dots_367: number;
const braille_dots_3678: number;
const braille_dots_368: number;
const braille_dots_37: number;
const braille_dots_378: number;
const braille_dots_38: number;
const braille_dots_4: number;
const braille_dots_45: number;
const braille_dots_456: number;
const braille_dots_4567: number;
const braille_dots_45678: number;
const braille_dots_4568: number;
const braille_dots_457: number;
const braille_dots_4578: number;
const braille_dots_458: number;
const braille_dots_46: number;
const braille_dots_467: number;
const braille_dots_4678: number;
const braille_dots_468: number;
const braille_dots_47: number;
const braille_dots_478: number;
const braille_dots_48: number;
const braille_dots_5: number;
const braille_dots_56: number;
const braille_dots_567: number;
const braille_dots_5678: number;
const braille_dots_568: number;
const braille_dots_57: number;
const braille_dots_578: number;
const braille_dots_58: number;
const braille_dots_6: number;
const braille_dots_67: number;
const braille_dots_678: number;
const braille_dots_68: number;
const braille_dots_7: number;
const braille_dots_78: number;
const braille_dots_8: number;
const breve: number;
const brokenbar: number;
const c: number;
const cabovedot: number;
const cacute: number;
const careof: number;
const caret: number;
const caron: number;
const ccaron: number;
const ccedilla: number;
const ccircumflex: number;
const cedilla: number;
const cent: number;
const checkerboard: number;
const checkmark: number;
const circle: number;
const club: number;
const colon: number;
const comma: number;
const containsas: number;
const copyright: number;
const cr: number;
const crossinglines: number;
const cuberoot: number;
const currency: number;
const cursor: number;
const d: number;
const dabovedot: number;
const dagger: number;
const dcaron: number;
const dead_abovecomma: number;
const dead_abovedot: number;
const dead_abovereversedcomma: number;
const dead_abovering: number;
const dead_acute: number;
const dead_belowbreve: number;
const dead_belowcircumflex: number;
const dead_belowdiaeresis: number;
const dead_belowdot: number;
const dead_belowmacron: number;
const dead_belowring: number;
const dead_belowtilde: number;
const dead_breve: number;
const dead_caron: number;
const dead_cedilla: number;
const dead_circumflex: number;
const dead_dasia: number;
const dead_diaeresis: number;
const dead_doubleacute: number;
const dead_grave: number;
const dead_hook: number;
const dead_horn: number;
const dead_iota: number;
const dead_macron: number;
const dead_ogonek: number;
const dead_perispomeni: number;
const dead_psili: number;
const dead_semivoiced_sound: number;
const dead_stroke: number;
const dead_tilde: number;
const dead_voiced_sound: number;
const decimalpoint: number;
const degree: number;
const diaeresis: number;
const diamond: number;
const digitspace: number;
const dintegral: number;
const division: number;
const dollar: number;
const doubbaselinedot: number;
const doubleacute: number;
const doubledagger: number;
const doublelowquotemark: number;
const downarrow: number;
const downcaret: number;
const downshoe: number;
const downstile: number;
const downtack: number;
const dstroke: number;
const e: number;
const eabovedot: number;
const eacute: number;
const ebelowdot: number;
const ecaron: number;
const ecircumflex: number;
const ecircumflexacute: number;
const ecircumflexbelowdot: number;
const ecircumflexgrave: number;
const ecircumflexhook: number;
const ecircumflextilde: number;
const ediaeresis: number;
const egrave: number;
const ehook: number;
const eightsubscript: number;
const eightsuperior: number;
const elementof: number;
const ellipsis: number;
const em3space: number;
const em4space: number;
const emacron: number;
const emdash: number;
const emfilledcircle: number;
const emfilledrect: number;
const emopencircle: number;
const emopenrectangle: number;
const emptyset: number;
const emspace: number;
const endash: number;
const enfilledcircbullet: number;
const enfilledsqbullet: number;
const eng: number;
const enopencircbullet: number;
const enopensquarebullet: number;
const enspace: number;
const eogonek: number;
const equal: number;
const eth: number;
const etilde: number;
const exclam: number;
const exclamdown: number;
const f: number;
const fabovedot: number;
const femalesymbol: number;
const ff: number;
const figdash: number;
const filledlefttribullet: number;
const filledrectbullet: number;
const filledrighttribullet: number;
const filledtribulletdown: number;
const filledtribulletup: number;
const fiveeighths: number;
const fivesixths: number;
const fivesubscript: number;
const fivesuperior: number;
const fourfifths: number;
const foursubscript: number;
const foursuperior: number;
const fourthroot: number;
const __function: number;
const g: number;
const gabovedot: number;
const gbreve: number;
const gcaron: number;
const gcedilla: number;
const gcircumflex: number;
const grave: number;
const greater: number;
const greaterthanequal: number;
const guillemotleft: number;
const guillemotright: number;
const h: number;
const hairspace: number;
const hcircumflex: number;
const heart: number;
const hebrew_aleph: number;
const hebrew_ayin: number;
const hebrew_bet: number;
const hebrew_beth: number;
const hebrew_chet: number;
const hebrew_dalet: number;
const hebrew_daleth: number;
const hebrew_doublelowline: number;
const hebrew_finalkaph: number;
const hebrew_finalmem: number;
const hebrew_finalnun: number;
const hebrew_finalpe: number;
const hebrew_finalzade: number;
const hebrew_finalzadi: number;
const hebrew_gimel: number;
const hebrew_gimmel: number;
const hebrew_he: number;
const hebrew_het: number;
const hebrew_kaph: number;
const hebrew_kuf: number;
const hebrew_lamed: number;
const hebrew_mem: number;
const hebrew_nun: number;
const hebrew_pe: number;
const hebrew_qoph: number;
const hebrew_resh: number;
const hebrew_samech: number;
const hebrew_samekh: number;
const hebrew_shin: number;
const hebrew_taf: number;
const hebrew_taw: number;
const hebrew_tet: number;
const hebrew_teth: number;
const hebrew_waw: number;
const hebrew_yod: number;
const hebrew_zade: number;
const hebrew_zadi: number;
const hebrew_zain: number;
const hebrew_zayin: number;
const hexagram: number;
const horizconnector: number;
const horizlinescan1: number;
const horizlinescan3: number;
const horizlinescan5: number;
const horizlinescan7: number;
const horizlinescan9: number;
const hstroke: number;
const ht: number;
const hyphen: number;
const i: number;
const iacute: number;
const ibelowdot: number;
const ibreve: number;
const icircumflex: number;
const identical: number;
const idiaeresis: number;
const idotless: number;
const ifonlyif: number;
const igrave: number;
const ihook: number;
const imacron: number;
const implies: number;
const includedin: number;
const includes: number;
const infinity: number;
const integral: number;
const intersection: number;
const iogonek: number;
const itilde: number;
const j: number;
const jcircumflex: number;
const jot: number;
const k: number;
const kana_A: number;
const kana_CHI: number;
const kana_E: number;
const kana_FU: number;
const kana_HA: number;
const kana_HE: number;
const kana_HI: number;
const kana_HO: number;
const kana_HU: number;
const kana_I: number;
const kana_KA: number;
const kana_KE: number;
const kana_KI: number;
const kana_KO: number;
const kana_KU: number;
const kana_MA: number;
const kana_ME: number;
const kana_MI: number;
const kana_MO: number;
const kana_MU: number;
const kana_N: number;
const kana_NA: number;
const kana_NE: number;
const kana_NI: number;
const kana_NO: number;
const kana_NU: number;
const kana_O: number;
const kana_RA: number;
const kana_RE: number;
const kana_RI: number;
const kana_RO: number;
const kana_RU: number;
const kana_SA: number;
const kana_SE: number;
const kana_SHI: number;
const kana_SO: number;
const kana_SU: number;
const kana_TA: number;
const kana_TE: number;
const kana_TI: number;
const kana_TO: number;
const kana_TSU: number;
const kana_TU: number;
const kana_U: number;
const kana_WA: number;
const kana_WO: number;
const kana_YA: number;
const kana_YO: number;
const kana_YU: number;
const kana_a: number;
const kana_closingbracket: number;
const kana_comma: number;
const kana_conjunctive: number;
const kana_e: number;
const kana_fullstop: number;
const kana_i: number;
const kana_middledot: number;
const kana_o: number;
const kana_openingbracket: number;
const kana_switch: number;
const kana_tsu: number;
const kana_tu: number;
const kana_u: number;
const kana_ya: number;
const kana_yo: number;
const kana_yu: number;
const kappa: number;
const kcedilla: number;
const kra: number;
const l: number;
const lacute: number;
const latincross: number;
const lbelowdot: number;
const lcaron: number;
const lcedilla: number;
const leftanglebracket: number;
const leftarrow: number;
const leftcaret: number;
const leftdoublequotemark: number;
const leftmiddlecurlybrace: number;
const leftopentriangle: number;
const leftpointer: number;
const leftradical: number;
const leftshoe: number;
const leftsinglequotemark: number;
const leftt: number;
const lefttack: number;
const less: number;
const lessthanequal: number;
const lf: number;
const logicaland: number;
const logicalor: number;
const lowleftcorner: number;
const lowrightcorner: number;
const lstroke: number;
const m: number;
const mabovedot: number;
const macron: number;
const malesymbol: number;
const maltesecross: number;
const marker: number;
const masculine: number;
const minus: number;
const minutes: number;
const mu: number;
const multiply: number;
const musicalflat: number;
const musicalsharp: number;
const n: number;
const nabla: number;
const nacute: number;
const ncaron: number;
const ncedilla: number;
const ninesubscript: number;
const ninesuperior: number;
const nl: number;
const nobreakspace: number;
const notapproxeq: number;
const notelementof: number;
const notequal: number;
const notidentical: number;
const notsign: number;
const ntilde: number;
const numbersign: number;
const numerosign: number;
const o: number;
const oacute: number;
const obarred: number;
const obelowdot: number;
const ocaron: number;
const ocircumflex: number;
const ocircumflexacute: number;
const ocircumflexbelowdot: number;
const ocircumflexgrave: number;
const ocircumflexhook: number;
const ocircumflextilde: number;
const odiaeresis: number;
const odoubleacute: number;
const oe: number;
const ogonek: number;
const ograve: number;
const ohook: number;
const ohorn: number;
const ohornacute: number;
const ohornbelowdot: number;
const ohorngrave: number;
const ohornhook: number;
const ohorntilde: number;
const omacron: number;
const oneeighth: number;
const onefifth: number;
const onehalf: number;
const onequarter: number;
const onesixth: number;
const onesubscript: number;
const onesuperior: number;
const onethird: number;
const ooblique: number;
const openrectbullet: number;
const openstar: number;
const opentribulletdown: number;
const opentribulletup: number;
const ordfeminine: number;
const oslash: number;
const otilde: number;
const overbar: number;
const overline: number;
const p: number;
const pabovedot: number;
const paragraph: number;
const parenleft: number;
const parenright: number;
const partdifferential: number;
const partialderivative: number;
const percent: number;
const period: number;
const periodcentered: number;
const phonographcopyright: number;
const plus: number;
const plusminus: number;
const prescription: number;
const prolongedsound: number;
const punctspace: number;
const q: number;
const quad: number;
const question: number;
const questiondown: number;
const quotedbl: number;
const quoteleft: number;
const quoteright: number;
const r: number;
const racute: number;
const radical: number;
const rcaron: number;
const rcedilla: number;
const registered: number;
const rightanglebracket: number;
const rightarrow: number;
const rightcaret: number;
const rightdoublequotemark: number;
const rightmiddlecurlybrace: number;
const rightmiddlesummation: number;
const rightopentriangle: number;
const rightpointer: number;
const rightshoe: number;
const rightsinglequotemark: number;
const rightt: number;
const righttack: number;
const s: number;
const sabovedot: number;
const sacute: number;
const scaron: number;
const scedilla: number;
const schwa: number;
const scircumflex: number;
const script_switch: number;
const seconds: number;
const section: number;
const semicolon: number;
const semivoicedsound: number;
const seveneighths: number;
const sevensubscript: number;
const sevensuperior: number;
const signaturemark: number;
const signifblank: number;
const similarequal: number;
const singlelowquotemark: number;
const sixsubscript: number;
const sixsuperior: number;
const slash: number;
const soliddiamond: number;
const space: number;
const squareroot: number;
const ssharp: number;
const sterling: number;
const stricteq: number;
const t: number;
const tabovedot: number;
const tcaron: number;
const tcedilla: number;
const telephone: number;
const telephonerecorder: number;
const therefore: number;
const thinspace: number;
const thorn: number;
const threeeighths: number;
const threefifths: number;
const threequarters: number;
const threesubscript: number;
const threesuperior: number;
const tintegral: number;
const topintegral: number;
const topleftparens: number;
const topleftradical: number;
const topleftsqbracket: number;
const topleftsummation: number;
const toprightparens: number;
const toprightsqbracket: number;
const toprightsummation: number;
const topt: number;
const topvertsummationconnector: number;
const trademark: number;
const trademarkincircle: number;
const tslash: number;
const twofifths: number;
const twosubscript: number;
const twosuperior: number;
const twothirds: number;
const u: number;
const uacute: number;
const ubelowdot: number;
const ubreve: number;
const ucircumflex: number;
const udiaeresis: number;
const udoubleacute: number;
const ugrave: number;
const uhook: number;
const uhorn: number;
const uhornacute: number;
const uhornbelowdot: number;
const uhorngrave: number;
const uhornhook: number;
const uhorntilde: number;
const umacron: number;
const underbar: number;
const underscore: number;
const union: number;
const uogonek: number;
const uparrow: number;
const upcaret: number;
const upleftcorner: number;
const uprightcorner: number;
const upshoe: number;
const upstile: number;
const uptack: number;
const uring: number;
const utilde: number;
const v: number;
const variation: number;
const vertbar: number;
const vertconnector: number;
const voicedsound: number;
const vt: number;
const w: number;
const wacute: number;
const wcircumflex: number;
const wdiaeresis: number;
const wgrave: number;
const x: number;
const xabovedot: number;
const y: number;
const yacute: number;
const ybelowdot: number;
const ycircumflex: number;
const ydiaeresis: number;
const yen: number;
const ygrave: number;
const yhook: number;
const ytilde: number;
const z: number;
const zabovedot: number;
const zacute: number;
const zcaron: number;
const zerosubscript: number;
const zerosuperior: number;
const zstroke: number;
/**
* Converts an accelerator keyval and modifier mask into a string
* parseable by gtk_accelerator_parse(). For example, if you pass in
* #IBUS_KEY_q and #IBUS_CONTROL_MASK, this function returns “<Control>q”.
*
* If you need to display accelerators in the user interface,
* see gtk_accelerator_get_label().
* @param accelerator_key accelerator keyval
* @param accelerator_mods accelerator modifier mask
* @returns a newly-allocated accelerator name
*/
function accelerator_name(accelerator_key: number, accelerator_mods: ModifierType | null): string;
/**
* Parses a string representing an accelerator. The format looks like
* “<Control>a” or “<Shift><Alt>F1” or “<Release%gt;z”
* (the last one is for key release).
*
* The parser is fairly liberal and allows lower or upper case, and also
* abbreviations such as “<Ctl>” and “<Ctrl>”. Key names are
* parsed using gdk_keyval_from_name(). For character keys the name is not the
* symbol, but the lowercase name, e.g. one would use “<Ctrl>minus”
* instead of “<Ctrl>-”.
*
* If the parse fails, `accelerator_key` and `accelerator_mods` will
* be set to 0 (zero).
* @param accelerator string representing an accelerator
*/
function accelerator_parse(accelerator: string): [number, ModifierType | null];
/**
* Determines whether a given keyval and modifier mask constitute
* a valid keyboard accelerator. For example, the #IBUS_KEY_a keyval
* plus #IBUS_CONTROL_MASK is valid - this is a “Ctrl+a” accelerator.
* But, you can't, for instance, use the #IBUS_KEY_Control_L keyval
* as an accelerator.
* @param keyval a GDK keyval
* @param modifiers modifier mask
* @returns %TRUE if the accelerator is valid
*/
function accelerator_valid(keyval: number, modifiers: ModifierType | null): boolean;
/**
* Creates a new background #IBusAttribute.
* @param color Color in RGB.
* @param start_index Where attribute starts.
* @param end_index Where attribute ends.
* @returns A newly allocated #IBusAttribute.
*/
function attr_background_new(color: number, start_index: number, end_index: number): Attribute;
/**
* Creates a new foreground #IBusAttribute.
* @param color Color in RGB.
* @param start_index Where attribute starts.
* @param end_index Where attribute ends.
* @returns A newly allocated #IBusAttribute.
*/
function attr_foreground_new(color: number, start_index: number, end_index: number): Attribute;
/**
* Creates a new underline #IBusAttribute.
* @param underline_type Type of underline.
* @param start_index Where attribute starts.
* @param end_index Where attribute ends.
* @returns A newly allocated #IBusAttribute.
*/
function attr_underline_new(underline_type: number, start_index: number, end_index: number): Attribute;
function emoji_dict_load(path: string): GLib.HashTable;
function emoji_dict_lookup(
dict: { [key: string]: any } | GLib.HashTable,
emoji: string,
): EmojiData;
/**
* Saves the Emoji dictionary to the cache file.
* Recommend to use ibus_emoji_data_save() instead becase GSList in
* GHashTable does not work with Gir and Vala.
* Calls ibus_emoji_data_save() internally. The format of the hash table
* changed and now is { emoji character, #IBusEmojiData object }.
* @param path A path of the saved dictionary file.
* @param dict An Emoji dictionary
*/
function emoji_dict_save(path: string, dict: { [key: string]: any } | GLib.HashTable): void;
function error_quark(): GLib.Quark;
/**
* Free a list of strings.
* @param strv List of strings.
*/
function free_strv(strv: string): void;
/**
* Return the D-Bus address of IBus.
* It will find the address from following source:
*
* Environment variable IBUS_ADDRESS
* Socket file under ~/.config/ibus/bus/
*
* @returns D-Bus address of IBus. %NULL for not found. See also: ibus_write_address().
*/
function get_address(): string;
/**
* Get UID of ibus-daemon.
* @returns UID of ibus-daemon; or 0 if UID is not available.
*/
function get_daemon_uid(): number;
function get_language_name(_locale: string): string;
/**
* Obtains the machine UUID of the machine this process is running on.
* @returns A newly allocated string that shows the UUID of the machine.
*/
function get_local_machine_id(): string;
/**
* Get the path of socket file.
* @returns A newly allocated string that stores the path of socket file.
*/
function get_socket_path(): string;
/**
* Get the GDBus timeout in milliseconds. The timeout is for clients (e.g.
* im-ibus.so), not for ibus-daemon.
* Note that the timeout for ibus-daemon could be set by --timeout command
* line option of the daemon.
* @returns A GDBus timeout in milliseconds. -1 when default timeout for GDBus should be used.
*/
function get_timeout(): number;
function get_untranslated_language_name(_locale: string): string;
/**
* Get the current user name.
* It is determined by:
*
* getlogin()
* Environment variable SUDO_USER
* Environment variable USERHELPER_UID
* Environment variable USERNAME
* Environment variable LOGNAME
* Environment variable USER
* Environment variable LNAME
*
* @returns A newly allocated string that stores current user name.
*/
function get_user_name(): string;
/**
* Initialize the ibus types.
*/
function init(): void;
/**
* Parse key event string and return key symbol and modifiers.
* @param string Key event string.
* @returns %TRUE for succeed; %FALSE if failed.
*/
function key_event_from_string(string: string): [boolean, number, number];
/**
* Return the name of a key symbol and modifiers.
*
* For example, if press ctrl, shift, and enter, then this function returns:
* Shift+Control+enter.
* @param keyval Key symbol.
* @param modifiers Modifiers such as Ctrl or Shift.
* @returns The name of a key symbol and modifier.
*/
function key_event_to_string(keyval: number, modifiers: number): string;
/**
* Obtains the upper- and lower-case versions of the keyval `symbol`.
* Examples of keyvals are #IBUS_KEY_a, #IBUS_KEY_Return, #IBUS_KEY_F1, etc.
* @param symbol a keyval
*/
function keyval_convert_case(symbol: number): [number, number];
/**
* Return the key symbol that associate with the key name.
* @param keyval_name Key name in #gdk_keys_by_name.
* @returns Corresponding key symbol.
*/
function keyval_from_name(keyval_name: string): number;
/**
* Return the name of a key symbol.
*
* Note that the returned string is used internally, so don't free it.
* @param keyval Key symbol.
* @returns Corresponding key name. %NULL if no such key symbol.
*/
function keyval_name(keyval: number): string;
/**
* Converts a key value to lower case, if applicable.
* @param keyval a key value.
* @returns the lower case form of @keyval, or @keyval itself if it is already in lower case or it is not subject to case conversion.
*/
function keyval_to_lower(keyval: number): number;
/**
* Convert from an IBus key symbol to the corresponding ISO10646 (Unicode)
* character.
* @param keyval an IBus key symbol
* @returns the corresponding unicode character, or 0 if there is no corresponding character.
*/
function keyval_to_unicode(keyval: number): number;
/**
* Converts a key value to upper case, if applicable.
* @param keyval a key value.
* @returns the upper case form of @keyval, or @keyval itself if it is already in upper case or it is not subject to case conversion.
*/
function keyval_to_upper(keyval: number): number;
/**
* Runs an IBus main loop until ibus_quit() is called in the loop.
*
* See also: ibus_quit().
*/
function main(): void;
/**
* Stops an IBus from running.
*
* Any calls to ibus_quit() for the loop will return.
* See also: ibus_main().
*/
function quit(): void;
/**
* Set the display address.
* @param display Display address, as in DISPLAY environment for X.
*/
function set_display(display: string): void;
/**
* Sets GLIB's log handler to ours. Our log handler adds time info
* including hour, minute, second, and microsecond, like:
*
* (ibus-daemon:7088): IBUS-DEBUG: 18:06:45.822819: ibus-daemon started
*
* If `verbose` is %TRUE, all levels of messages will be logged. Otherwise,
* DEBUG and WARNING messages will be ignored. The function is used in
* ibus-daemon, but can be useful for IBus client programs as well for
* debugging. It's totally fine for not calling this function. If you
* don't set a custom GLIB log handler, the default GLIB log handler will
* be used.
* @param verbose TRUE for verbose logging.
*/
function set_log_handler(verbose: boolean): void;
/**
* Convert from a ISO10646 character to a key symbol.
* @param wc a ISO10646 encoded character
* @returns the corresponding IBus key symbol, if one exists. or, if there is no corresponding symbol, wc | 0x01000000
*/
function unicode_to_keyval(wc: number): number;
/**
* Remove the log handler which is set by ibus_set_log_handler.
*/
function unset_log_handler(): void;
/**
* Write D-Bus address to socket file.
*
* See also: ibus_get_address().
* @param address D-Bus address of IBus.
*/
function write_address(address: string): void;
/**
* Parse a string buffer which contains an XML-formatted string,
* and return a corresponding XML tree.
* @param buffer Buffer to be parsed.
* @returns Root node of parsed XML tree.
*/
function xml_parse_buffer(buffer: string): XML;
/**
* Parse an XML file and return a corresponding XML tree.
* @param name File name to be parsed.
* @returns Root node of parsed XML tree.
*/
function xml_parse_file(name: string): XML;
interface FreeFunc {
(object?: any | null): void;
}
interface ObjectDestroyFunc {
(object: Object): void;
}
interface SerializableCopyFunc {
(dest: Serializable, src: Serializable): boolean;
}
interface SerializableDeserializeFunc {
(serializable: Serializable, variant: GLib.Variant): number;
}
interface SerializableSerializeFunc {
(serializable: Serializable, builder: GLib.VariantBuilder): boolean;
}
interface UnicodeDataLoadAsyncFinish {
(data_list: UnicodeData[]): void;
}
export namespace BusNameFlag {
export const $gtype: GObject.GType;
}
enum BusNameFlag {
/**
* same as DBUS_NAME_FLAG_ALLOW_REPLACEMENT
*/
ALLOW_REPLACEMENT,
/**
* same as DBUS_NAME_FLAG_REPLACE_EXISTING
*/
REPLACE_EXISTING,
/**
* same as DBUS_NAME_FLAG_DO_NOT_QUEUE
*/
DO_NOT_QUEUE,
}
/**
* Capability flags of UI.
*/
/**
* Capability flags of UI.
*/
export namespace Capabilite {
export const $gtype: GObject.GType;
}
enum Capabilite {
/**
* UI is capable to show pre-edit text.
*/
PREEDIT_TEXT,
/**
* UI is capable to show auxiliary text.
*/
AUXILIARY_TEXT,
/**
* UI is capable to show the lookup table.
*/
LOOKUP_TABLE,
/**
* UI is capable to get focus.
*/
FOCUS,
/**
* UI is capable to have property.
*/
PROPERTY,
/**
* Client can provide surround text,
* or IME can handle surround text.
*/
SURROUNDING_TEXT,
/**
* UI is owned by on-screen keyboard.
*/
OSK,
/**
* Asynchronous process key events are not
* supported and the ibus_engine_forward_key_event() should not be
* used for the return value of #IBusEngine::process_key_event().
*/
SYNC_PROCESS_KEY,
SYNC_PROCESS_KEY_V2,
}
/**
* Describes hints that might be taken into account by engines. Note
* that engines may already tailor their behaviour according to the
* #IBusInputPurpose of the entry.
*
* Some common sense is expected when using these flags - mixing
* `IBUS_INPUT_HINT_LOWERCASE` with any of the uppercase hints makes no sense.
*
* This enumeration may be extended in the future; engines should
* ignore unknown values.
*/
/**
* Describes hints that might be taken into account by engines. Note
* that engines may already tailor their behaviour according to the
* #IBusInputPurpose of the entry.
*
* Some common sense is expected when using these flags - mixing
* `IBUS_INPUT_HINT_LOWERCASE` with any of the uppercase hints makes no sense.
*
* This enumeration may be extended in the future; engines should
* ignore unknown values.
*/
export namespace InputHints {
export const $gtype: GObject.GType;
}
enum InputHints {
/**
* No special behaviour suggested
*/
NONE,
/**
* Suggest checking for typos
*/
SPELLCHECK,
/**
* Suggest not checking for typos
*/
NO_SPELLCHECK,
/**
* Suggest word completion
*/
WORD_COMPLETION,
/**
* Suggest to convert all text to lowercase
*/
LOWERCASE,
/**
* Suggest to capitalize all text
*/
UPPERCASE_CHARS,
/**
* Suggest to capitalize the first
* character of each word
*/
UPPERCASE_WORDS,
/**
* Suggest to capitalize the
* first word of each sentence
*/
UPPERCASE_SENTENCES,
/**
* Suggest to not show an onscreen keyboard
* (e.g for a calculator that already has all the keys).
*/
INHIBIT_OSK,
/**
* The text is vertical. Since 1.5.11
*/
VERTICAL_WRITING,
/**
* Suggest offering Emoji support. Since 1.5.24
*/
EMOJI,
/**
* Suggest not offering Emoji support. Since 1.5.24
*/
NO_EMOJI,
/**
* Request that the input method should not
* update personalized data (like typing history). Since 1.5.26
*/
PRIVATE,
}
/**
* Handles key modifier such as control, shift and alt and release event.
* Note that nits 15 - 25 are currently unused, while bit 29 is used internally.
*/
/**
* Handles key modifier such as control, shift and alt and release event.
* Note that nits 15 - 25 are currently unused, while bit 29 is used internally.
*/
export namespace ModifierType {
export const $gtype: GObject.GType;
}
enum ModifierType {
/**
* Shift is activated.
*/
SHIFT_MASK,
/**
* Cap Lock is locked.
*/
LOCK_MASK,
/**
* Control key is activated.
*/
CONTROL_MASK,
/**
* Modifier 1 (Usually Alt_L (0x40), Alt_R (0x6c), Meta_L (0xcd)) activated.
*/
MOD1_MASK,
/**
* Modifier 2 (Usually Num_Lock (0x4d)) activated.
*/
MOD2_MASK,
/**
* Modifier 3 activated.
*/
MOD3_MASK,
/**
* Modifier 4 (Usually Super_L (0xce), Hyper_L (0xcf)) activated.
*/
MOD4_MASK,
/**
* Modifier 5 (ISO_Level3_Shift (0x5c), Mode_switch (0xcb)) activated.
*/
MOD5_MASK,
/**
* Mouse button 1 (left) is activated.
*/
BUTTON1_MASK,
/**
* Mouse button 2 (middle) is activated.
*/
BUTTON2_MASK,
/**
* Mouse button 3 (right) is activated.
*/
BUTTON3_MASK,
/**
* Mouse button 4 (scroll up) is activated.
*/
BUTTON4_MASK,
/**
* Mouse button 5 (scroll down) is activated.
*/
BUTTON5_MASK,
/**
* Handled mask indicates the event has been handled by ibus.
*/
HANDLED_MASK,
/**
* Forward mask indicates the event has been forward from ibus.
*/
FORWARD_MASK,
/**
* It is an alias of IBUS_FORWARD_MASK.
*/
IGNORED_MASK,
/**
* Super (Usually Win) key is activated.
*/
SUPER_MASK,
/**
* Hyper key is activated.
*/
HYPER_MASK,
/**
* Meta key is activated.
*/
META_MASK,
/**
* Key is released.
*/
RELEASE_MASK,
/**
* Modifier mask for the all the masks above.
*/
MODIFIER_MASK,
}
/**
* The flags are used internally.
*/
/**
* The flags are used internally.
*/
export namespace ObjectFlags {
export const $gtype: GObject.GType;
}
enum ObjectFlags {
/**
* Used in GObjectClass::dispose
*/
IN_DESTRUCTION,
/**
* Used during emitting IBusObject::destroy signal.
*/
DESTROYED,
/**
* Reserved.
*/
RESERVED_1,
/**
* Reserved.
*/
RESERVED_2,
}
namespace AttrList {
// Constructor properties interface
interface ConstructorProps extends Serializable.ConstructorProps {}
}
/**
* Array of IBusAttribute.
*/
class AttrList extends Serializable {
static $gtype: GObject.GType;
// Fields
attributes: any[];
// Constructors
constructor(properties?: Partial, ...args: any[]);
_init(...args: any[]): void;
static ['new'](): AttrList;
// Methods
/**
* Append an IBusAttribute to IBusAttrList, and increase reference.
* @param attr The IBusAttribute instance to be appended.
*/
append(attr: Attribute): void;
/**
* Returns #IBusAttribute at given index. Borrowed reference.
* @param index Index of the @attr_list.
* @returns #IBusAttribute at given index, %NULL if no such #IBusAttribute.
*/
get(index: number): Attribute;
}
namespace Attribute {
// Constructor properties interface
interface ConstructorProps extends Serializable.ConstructorProps {}
}
/**
* An IBusAttribute represents an attribute that associate to IBusText.
* It decorates preedit buffer and auxiliary text with underline, foreground
* and background colors.
*/
class Attribute extends Serializable {
static $gtype: GObject.GType;
// Fields
type: number;
value: number;
start_index: number;
end_index: number;
// Constructors
constructor(properties?: Partial, ...args: any[]);
_init(...args: any[]): void;
static ['new'](type: number, value: number, start_index: number, end_index: number): Attribute;
// Conflicted with IBus.Serializable.new
static ['new'](...args: never[]): any;
// Methods
/**
* Gets an enum of #IBusAttrType.
* @returns An enum of #IBusAttrType.
*/
get_attr_type(): number;
/**
* Gets an end unsigned index
* @returns A end unsigned index
*/
get_end_index(): number;
/**
* Gets a start unsigned index
* @returns A start unsigned index
*/
get_start_index(): number;
/**
* Gets an unsigned int value relative with #IBusAttrType.
* If the type is %IBUS_ATTR_TYPE_UNDERLINE, the return value is
* #IBusAttrUnderline. If the type is %IBUS_ATTR_TYPE_FOREGROUND,
* the return value is the color RGB.
* @returns An unsigned int value relative with #IBusAttrType.
*/
get_value(): number;
}
namespace Bus {
// Signal callback interfaces
interface Connected {
(): void;
}
interface Disconnected {
(): void;
}
interface GlobalEngineChanged {
(name: string): void;
}
interface GlobalShortcutKeyResponded {
(type: number, is_pressed: boolean, is_backward: boolean): void;
}
interface NameOwnerChanged {
(name: string, old_owner: string, new_owner: string): void;
}
// Constructor properties interface
interface ConstructorProps extends Object.ConstructorProps {
client_only: boolean;
clientOnly: boolean;
connect_async: boolean;
connectAsync: boolean;
}
}
/**
* An IBusBus connects with IBus daemon.
*/
class Bus extends Object {
static $gtype: GObject.GType;
// Properties
/**
* Whether the #IBusBus object is for client use only.
*/
get client_only(): boolean;
/**
* Whether the #IBusBus object is for client use only.
*/
get clientOnly(): boolean;
/**
* Whether the #IBusBus object should connect asynchronously to the bus.
*/
get connect_async(): boolean;
/**
* Whether the #IBusBus object should connect asynchronously to the bus.
*/
get connectAsync(): boolean;
// Constructors
constructor(properties?: Partial, ...args: any[]);
_init(...args: any[]): void;
static ['new'](): Bus;
static new_async(): Bus;
static new_async_client(): Bus;
// 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: 'connected', callback: (_source: this) => void): number;
connect_after(signal: 'connected', callback: (_source: this) => void): number;
emit(signal: 'connected'): void;
connect(signal: 'disconnected', callback: (_source: this) => void): number;
connect_after(signal: 'disconnected', callback: (_source: this) => void): number;
emit(signal: 'disconnected'): void;
connect(signal: 'global-engine-changed', callback: (_source: this, name: string) => void): number;
connect_after(signal: 'global-engine-changed', callback: (_source: this, name: string) => void): number;
emit(signal: 'global-engine-changed', name: string): void;
connect(
signal: 'global-shortcut-key-responded',
callback: (_source: this, type: number, is_pressed: boolean, is_backward: boolean) => void,
): number;
connect_after(
signal: 'global-shortcut-key-responded',
callback: (_source: this, type: number, is_pressed: boolean, is_backward: boolean) => void,
): number;
emit(
signal: 'global-shortcut-key-responded',
type: number,
is_pressed: boolean,
is_backward: boolean,
): void;
connect(
signal: 'name-owner-changed',
callback: (_source: this, name: string, old_owner: string, new_owner: string) => void,
): number;
connect_after(
signal: 'name-owner-changed',
callback: (_source: this, name: string, old_owner: string, new_owner: string) => void,
): number;
emit(signal: 'name-owner-changed', name: string, old_owner: string, new_owner: string): void;
// Methods
/**
* Add a match rule to an #IBusBus synchronously.
* @param rule Match rule.
* @returns %TRUE if the rule is added. %FALSE otherwise.
*/
add_match(rule: string): boolean;
/**
* Add a match rule to an #IBusBus asynchronously.
* @param rule Match rule.
* @param timeout_msec The timeout in milliseconds or -1 to use the default timeout.
* @param cancellable A #GCancellable or %NULL.
*/
add_match_async(rule: string, timeout_msec: number, cancellable?: Gio.Cancellable | null): Promise;
/**
* Add a match rule to an #IBusBus asynchronously.
* @param rule Match rule.
* @param timeout_msec The timeout in milliseconds or -1 to use the default timeout.
* @param cancellable A #GCancellable or %NULL.
* @param callback A #GAsyncReadyCallback to call when the request is satisfied or %NULL if you don't care about the result of the method invocation.
*/
add_match_async(
rule: string,
timeout_msec: number,
cancellable: Gio.Cancellable | null,
callback: Gio.AsyncReadyCallback | null,
): void;
/**
* Add a match rule to an #IBusBus asynchronously.
* @param rule Match rule.
* @param timeout_msec The timeout in milliseconds or -1 to use the default timeout.
* @param cancellable A #GCancellable or %NULL.
* @param callback A #GAsyncReadyCallback to call when the request is satisfied or %NULL if you don't care about the result of the method invocation.
*/
add_match_async(
rule: string,
timeout_msec: number,
cancellable?: Gio.Cancellable | null,
callback?: Gio.AsyncReadyCallback | null,
): Promise | void;
/**
* Finishes an operation started with ibus_bus_add_match_async().
* @param res A #GAsyncResult obtained from the #GAsyncReadyCallback passed to ibus_bus_add_match_async().
* @returns %TRUE if the rule is added. %FALSE otherwise.
*/
add_match_async_finish(res: Gio.AsyncResult): boolean;
/**
* Create an input context for client synchronously.
* @param client_name Name of client.
* @returns A newly allocated #IBusInputContext if the "CreateInputContext" call is succeeded, %NULL otherwise.
*/
create_input_context(client_name: string): InputContext;
/**
* Create an input context for client asynchronously.
* @param client_name Name of client.
* @param timeout_msec The timeout in milliseconds or -1 to use the default timeout.
* @param cancellable A #GCancellable or %NULL.
*/
create_input_context_async(
client_name: string,
timeout_msec: number,
cancellable?: Gio.Cancellable | null,
): Promise;
/**
* Create an input context for client asynchronously.
* @param client_name Name of client.
* @param timeout_msec The timeout in milliseconds or -1 to use the default timeout.
* @param cancellable A #GCancellable or %NULL.
* @param callback A #GAsyncReadyCallback to call when the request is satisfied. It should not be %NULL.
*/
create_input_context_async(
client_name: string,
timeout_msec: number,
cancellable: Gio.Cancellable | null,
callback: Gio.AsyncReadyCallback | null,
): void;
/**
* Create an input context for client asynchronously.
* @param client_name Name of client.
* @param timeout_msec The timeout in milliseconds or -1 to use the default timeout.
* @param cancellable A #GCancellable or %NULL.
* @param callback A #GAsyncReadyCallback to call when the request is satisfied. It should not be %NULL.
*/
create_input_context_async(
client_name: string,
timeout_msec: number,
cancellable?: Gio.Cancellable | null,
callback?: Gio.AsyncReadyCallback | null,
): Promise | void;
/**
* Finishes an operation started with ibus_bus_create_input_context_async().
* @param res A #GAsyncResult obtained from the #GAsyncReadyCallback passed to ibus_bus_create_input_context_async().
* @returns A newly allocated #IBusInputContext if the "CreateInputContext" call is succeeded, %NULL otherwise.
*/
create_input_context_async_finish(res: Gio.AsyncResult): InputContext;
/**
* Get the current focused input context synchronously.
* @returns Name of the currently focused #IBusInputContext if the "CurrentInputContext" call succeeded, %NULL otherwise. The return value must be freed with g_free().
*/
current_input_context(): string;
/**
* Get the current focused input context asynchronously.
* @param timeout_msec The timeout in milliseconds or -1 to use the default timeout.
* @param cancellable A #GCancellable or %NULL.
*/
current_input_context_async(timeout_msec: number, cancellable?: Gio.Cancellable | null): Promise;
/**
* Get the current focused input context asynchronously.
* @param timeout_msec The timeout in milliseconds or -1 to use the default timeout.
* @param cancellable A #GCancellable or %NULL.
* @param callback A #GAsyncReadyCallback to call when the request is satisfied or %NULL if you don't care about the result of the method invocation.
*/
current_input_context_async(
timeout_msec: number,
cancellable: Gio.Cancellable | null,
callback: Gio.AsyncReadyCallback | null,
): void;
/**
* Get the current focused input context asynchronously.
* @param timeout_msec The timeout in milliseconds or -1 to use the default timeout.
* @param cancellable A #GCancellable or %NULL.
* @param callback A #GAsyncReadyCallback to call when the request is satisfied or %NULL if you don't care about the result of the method invocation.
*/
current_input_context_async(
timeout_msec: number,
cancellable?: Gio.Cancellable | null,
callback?: Gio.AsyncReadyCallback | null,
): Promise | void;
/**
* Finishes an operation started with ibus_bus_current_input_context_async().
* @param res A #GAsyncResult obtained from the #GAsyncReadyCallback passed to ibus_bus_current_input_context_async().
* @returns Name of the currently focused IBusInputContext if the "CurrentInputContext" call succeeded, %NULL otherwise. The return value must be freed with g_free().
*/
current_input_context_async_finish(res: Gio.AsyncResult): string;
/**
* Exit or restart ibus-daemon synchronously.
* @param restart Whether restarting the ibus.
* @returns %TRUE if the "Exit" call is successful, %FALSE otherwise.
*/
exit(restart: boolean): boolean;
/**
* Exit or restart ibus-daemon asynchronously.
* @param restart Whether restarting the ibus.
* @param timeout_msec The timeout in milliseconds or -1 to use the default timeout.
* @param cancellable A #GCancellable or %NULL.
*/
exit_async(restart: boolean, timeout_msec: number, cancellable?: Gio.Cancellable | null): Promise;
/**
* Exit or restart ibus-daemon asynchronously.
* @param restart Whether restarting the ibus.
* @param timeout_msec The timeout in milliseconds or -1 to use the default timeout.
* @param cancellable A #GCancellable or %NULL.
* @param callback A #GAsyncReadyCallback to call when the request is satisfied or %NULL if you don't care about the result of the method invocation.
*/
exit_async(
restart: boolean,
timeout_msec: number,
cancellable: Gio.Cancellable | null,
callback: Gio.AsyncReadyCallback | null,
): void;
/**
* Exit or restart ibus-daemon asynchronously.
* @param restart Whether restarting the ibus.
* @param timeout_msec The timeout in milliseconds or -1 to use the default timeout.
* @param cancellable A #GCancellable or %NULL.
* @param callback A #GAsyncReadyCallback to call when the request is satisfied or %NULL if you don't care about the result of the method invocation.
*/
exit_async(
restart: boolean,
timeout_msec: number,
cancellable?: Gio.Cancellable | null,
callback?: Gio.AsyncReadyCallback | null,
): Promise | void;
/**
* Finishes an operation started with ibus_bus_exit_async().
* @param res A #GAsyncResult obtained from the #GAsyncReadyCallback passed to ibus_bus_exit_async().
* @returns %TRUE if the "Exit" call is successful, %FALSE otherwise.
*/
exit_async_finish(res: Gio.AsyncResult): boolean;
/**
* Get the config instance from #IBusBus.
* @returns An #IBusConfig object which is configurable with @bus.
*/
get_config(): Config;
/**
* Gets a #GDBusConnection of an #IBusBus instance.
* @returns A #GDBusConnection of an #IBusBus instance.
*/
get_connection(): Gio.DBusConnection;
/**
* Get engines by given names synchronously. If some engine names do not exist,
* this function will simply ignore them, and return rest of engines.
* TODO(penghuang): add asynchronous version
* @param names A %NULL-terminated array of names.
* @returns A %NULL-terminated array of engines.
*/
get_engines_by_names(names: string[]): EngineDesc[];
/**
* Get the description of current global engine synchronously.
* @returns The description of current global engine, or %NULL if there is no global engine.
*/
get_global_engine(): EngineDesc;
/**
* Get the description of current global engine asynchronously.
* @param timeout_msec The timeout in milliseconds or -1 to use the default timeout.
* @param cancellable A #GCancellable or %NULL.
*/
get_global_engine_async(timeout_msec: number, cancellable?: Gio.Cancellable | null): Promise;
/**
* Get the description of current global engine asynchronously.
* @param timeout_msec The timeout in milliseconds or -1 to use the default timeout.
* @param cancellable A #GCancellable or %NULL.
* @param callback A #GAsyncReadyCallback to call when the request is satisfied or %NULL if you don't care about the result of the method invocation.
*/
get_global_engine_async(
timeout_msec: number,
cancellable: Gio.Cancellable | null,
callback: Gio.AsyncReadyCallback | null,
): void;
/**
* Get the description of current global engine asynchronously.
* @param timeout_msec The timeout in milliseconds or -1 to use the default timeout.
* @param cancellable A #GCancellable or %NULL.
* @param callback A #GAsyncReadyCallback to call when the request is satisfied or %NULL if you don't care about the result of the method invocation.
*/
get_global_engine_async(
timeout_msec: number,
cancellable?: Gio.Cancellable | null,
callback?: Gio.AsyncReadyCallback | null,
): Promise | void;
/**
* Finishes an operation started with ibus_bus_get_global_engine_async_finish().
* @param res A #GAsyncResult obtained from the #GAsyncReadyCallback passed to ibus_bus_get_global_engine_async_finish().
* @returns The description of current global engine, or %NULL if there is no global engine.
*/
get_global_engine_async_finish(res: Gio.AsyncResult): EngineDesc;
/**
* Get org.freedesktop.DBus.Properties.
* @param property_name property name in org.freedesktop.DBus.Properties.Get
* @returns The value in org.freedesktop.DBus.Properties.Get The returned value must be freed with g_variant_unref().
*/
get_ibus_property(property_name: string): GLib.Variant;
/**
* Get org.freedesktop.DBus.Properties asynchronously.
* @param property_name property name in org.freedesktop.DBus.Properties.Get
* @param timeout_msec The timeout in milliseconds or -1 to use the default timeout.
* @param cancellable A #GCancellable or %NULL.
*/
get_ibus_property_async(
property_name: string,
timeout_msec: number,
cancellable?: Gio.Cancellable | null,
): Promise;
/**
* Get org.freedesktop.DBus.Properties asynchronously.
* @param property_name property name in org.freedesktop.DBus.Properties.Get
* @param timeout_msec The timeout in milliseconds or -1 to use the default timeout.
* @param cancellable A #GCancellable or %NULL.
* @param callback A #GAsyncReadyCallback to call when the request is satisfied or %NULL if you don't care about the result of the method invocation.
*/
get_ibus_property_async(
property_name: string,
timeout_msec: number,
cancellable: Gio.Cancellable | null,
callback: Gio.AsyncReadyCallback | null,
): void;
/**
* Get org.freedesktop.DBus.Properties asynchronously.
* @param property_name property name in org.freedesktop.DBus.Properties.Get
* @param timeout_msec The timeout in milliseconds or -1 to use the default timeout.
* @param cancellable A #GCancellable or %NULL.
* @param callback A #GAsyncReadyCallback to call when the request is satisfied or %NULL if you don't care about the result of the method invocation.
*/
get_ibus_property_async(
property_name: string,
timeout_msec: number,
cancellable?: Gio.Cancellable | null,
callback?: Gio.AsyncReadyCallback | null,
): Promise | void;
/**
* Finishes an operation started with ibus_bus_get_ibus_property_async().
* @param res A #GAsyncResult obtained from the #GAsyncReadyCallback passed to ibus_bus_get_ibus_property_async().
* @returns The value in org.freedesktop.DBus.Properties.Get The returned value must be freed with g_variant_unref().
*/
get_ibus_property_async_finish(res: Gio.AsyncResult): GLib.Variant;
/**
* Return the name owner synchronously.
* @param name Name.
* @returns Owner of the name. The returned value must be freed with g_free().
*/
get_name_owner(name: string): string;
/**
* Return the name owner asynchronously.
* @param name Name.
* @param timeout_msec The timeout in milliseconds or -1 to use the default timeout.
* @param cancellable A #GCancellable or %NULL.
*/
get_name_owner_async(
name: string,
timeout_msec: number,
cancellable?: Gio.Cancellable | null,
): Promise;
/**
* Return the name owner asynchronously.
* @param name Name.
* @param timeout_msec The timeout in milliseconds or -1 to use the default timeout.
* @param cancellable A #GCancellable or %NULL.
* @param callback A #GAsyncReadyCallback to call when the request is satisfied or %NULL if you don't care about the result of the method invocation.
*/
get_name_owner_async(
name: string,
timeout_msec: number,
cancellable: Gio.Cancellable | null,
callback: Gio.AsyncReadyCallback | null,
): void;
/**
* Return the name owner asynchronously.
* @param name Name.
* @param timeout_msec The timeout in milliseconds or -1 to use the default timeout.
* @param cancellable A #GCancellable or %NULL.
* @param callback A #GAsyncReadyCallback to call when the request is satisfied or %NULL if you don't care about the result of the method invocation.
*/
get_name_owner_async(
name: string,
timeout_msec: number,
cancellable?: Gio.Cancellable | null,
callback?: Gio.AsyncReadyCallback | null,
): Promise | void;
/**
* Finishes an operation started with ibus_bus_get_name_owner_async().
* @param res A #GAsyncResult obtained from the #GAsyncReadyCallback passed to ibus_bus_get_name_owner_async().
* @returns Owner of the name. The returned value must be freed with g_free().
*/
get_name_owner_async_finish(res: Gio.AsyncResult): string;
/**
* Return the main service name to use for calls on the ibus connection.
* @returns at dbus name.
*/
get_service_name(): string;
/**
* Check if the bus's "use_global_engine" option is enabled or not
* synchronously.
* @returns TRUE if "use_global_engine" option is enabled.
*/
get_use_global_engine(): boolean;
/**
* Check if the bus's "use_global_engine" option is enabled or not asynchronously.
* @param timeout_msec The timeout in milliseconds or -1 to use the default timeout.
* @param cancellable A #GCancellable or %NULL.
*/
get_use_global_engine_async(timeout_msec: number, cancellable?: Gio.Cancellable | null): Promise;
/**
* Check if the bus's "use_global_engine" option is enabled or not asynchronously.
* @param timeout_msec The timeout in milliseconds or -1 to use the default timeout.
* @param cancellable A #GCancellable or %NULL.
* @param callback A #GAsyncReadyCallback to call when the request is satisfied or %NULL if you don't care about the result of the method invocation.
*/
get_use_global_engine_async(
timeout_msec: number,
cancellable: Gio.Cancellable | null,
callback: Gio.AsyncReadyCallback | null,
): void;
/**
* Check if the bus's "use_global_engine" option is enabled or not asynchronously.
* @param timeout_msec The timeout in milliseconds or -1 to use the default timeout.
* @param cancellable A #GCancellable or %NULL.
* @param callback A #GAsyncReadyCallback to call when the request is satisfied or %NULL if you don't care about the result of the method invocation.
*/
get_use_global_engine_async(
timeout_msec: number,
cancellable?: Gio.Cancellable | null,
callback?: Gio.AsyncReadyCallback | null,
): Promise | void;
/**
* Finishes an operation started with ibus_bus_get_use_global_engine_async().
* @param res A #GAsyncResult obtained from the #GAsyncReadyCallback passed to ibus_bus_get_use_global_engine_async().
* @returns %TRUE if "use_global_engine" option is enabled.
*/
get_use_global_engine_async_finish(res: Gio.AsyncResult): boolean;
/**
* Check if the bus's "use_sys_layout" option is enabled or not synchronously.
* @returns %TRUE if "use_sys_layout" option is enabled.
*/
get_use_sys_layout(): boolean;
/**
* Check if the bus's "use_sys_layout" option is enabled or not asynchronously.
* @param timeout_msec The timeout in milliseconds or -1 to use the default timeout.
* @param cancellable A #GCancellable or %NULL.
*/
get_use_sys_layout_async(timeout_msec: number, cancellable?: Gio.Cancellable | null): Promise;
/**
* Check if the bus's "use_sys_layout" option is enabled or not asynchronously.
* @param timeout_msec The timeout in milliseconds or -1 to use the default timeout.
* @param cancellable A #GCancellable or %NULL.
* @param callback A #GAsyncReadyCallback to call when the request is satisfied or %NULL if you don't care about the result of the method invocation.
*/
get_use_sys_layout_async(
timeout_msec: number,
cancellable: Gio.Cancellable | null,
callback: Gio.AsyncReadyCallback | null,
): void;
/**
* Check if the bus's "use_sys_layout" option is enabled or not asynchronously.
* @param timeout_msec The timeout in milliseconds or -1 to use the default timeout.
* @param cancellable A #GCancellable or %NULL.
* @param callback A #GAsyncReadyCallback to call when the request is satisfied or %NULL if you don't care about the result of the method invocation.
*/
get_use_sys_layout_async(
timeout_msec: number,
cancellable?: Gio.Cancellable | null,
callback?: Gio.AsyncReadyCallback | null,
): Promise | void;
/**
* Finishes an operation started with ibus_bus_get_use_sys_layout_async().
* @param res A #GAsyncResult obtained from the #GAsyncReadyCallback passed to ibus_bus_get_use_sys_layout_async().
* @returns TRUE if "use_sys_layout" option is enabled.
*/
get_use_sys_layout_async_finish(res: Gio.AsyncResult): boolean;
/**
* This function sends a "HELLO" message to DBus daemon,
* which replies the unique name of current IBus process.
* @returns The unique name of IBus process in DBus.
*/
hello(): string;
/**
* Return %TRUE if `bus` is connected to IBus daemon.
* @returns %TRUE if @bus is connected, %FALSE otherwise.
*/
is_connected(): boolean;
/**
* Check if the current global engine is enabled or not synchronously.
* @returns %TRUE if the current global engine is enabled.
*/
is_global_engine_enabled(): boolean;
/**
* Check if the current global engine is enabled or not asynchronously.
* @param timeout_msec The timeout in milliseconds or -1 to use the default timeout.
* @param cancellable A #GCancellable or %NULL.
*/
is_global_engine_enabled_async(
timeout_msec: number,
cancellable?: Gio.Cancellable | null,
): Promise;
/**
* Check if the current global engine is enabled or not asynchronously.
* @param timeout_msec The timeout in milliseconds or -1 to use the default timeout.
* @param cancellable A #GCancellable or %NULL.
* @param callback A #GAsyncReadyCallback to call when the request is satisfied or %NULL if you don't care about the result of the method invocation.
*/
is_global_engine_enabled_async(
timeout_msec: number,
cancellable: Gio.Cancellable | null,
callback: Gio.AsyncReadyCallback | null,
): void;
/**
* Check if the current global engine is enabled or not asynchronously.
* @param timeout_msec The timeout in milliseconds or -1 to use the default timeout.
* @param cancellable A #GCancellable or %NULL.
* @param callback A #GAsyncReadyCallback to call when the request is satisfied or %NULL if you don't care about the result of the method invocation.
*/
is_global_engine_enabled_async(
timeout_msec: number,
cancellable?: Gio.Cancellable | null,
callback?: Gio.AsyncReadyCallback | null,
): Promise | void;
/**
* Finishes an operation started with ibus_bus_is_global_engine_enabled_async().
* @param res A #GAsyncResult obtained from the #GAsyncReadyCallback passed to ibus_bus_is_global_engine_enabled_async().
* @returns %TRUE if the current global engine is enabled.
*/
is_global_engine_enabled_async_finish(res: Gio.AsyncResult): boolean;
/**
* List active engines synchronously.
* @returns A List of active engines.
*/
list_active_engines(): EngineDesc[];
/**
* List active engines asynchronously.
* @param timeout_msec The timeout in milliseconds or -1 to use the default timeout.
* @param cancellable A #GCancellable or %NULL.
*/
list_active_engines_async(
timeout_msec: number,
cancellable?: Gio.Cancellable | null,
): Promise;
/**
* List active engines asynchronously.
* @param timeout_msec The timeout in milliseconds or -1 to use the default timeout.
* @param cancellable A #GCancellable or %NULL.
* @param callback A #GAsyncReadyCallback to call when the request is satisfied or %NULL if you don't care about the result of the method invocation.
*/
list_active_engines_async(
timeout_msec: number,
cancellable: Gio.Cancellable | null,
callback: Gio.AsyncReadyCallback | null,
): void;
/**
* List active engines asynchronously.
* @param timeout_msec The timeout in milliseconds or -1 to use the default timeout.
* @param cancellable A #GCancellable or %NULL.
* @param callback A #GAsyncReadyCallback to call when the request is satisfied or %NULL if you don't care about the result of the method invocation.
*/
list_active_engines_async(
timeout_msec: number,
cancellable?: Gio.Cancellable | null,
callback?: Gio.AsyncReadyCallback | null,
): Promise | void;
/**
* Finishes an operation started with ibus_bus_list_active_engines_async().
* @param res A #GAsyncResult obtained from the #GAsyncReadyCallback passed to ibus_bus_list_active_engines_async().
* @returns A List of active engines.
*/
list_active_engines_async_finish(res: Gio.AsyncResult): EngineDesc[];
/**
* List engines synchronously.
* @returns A List of engines.
*/
list_engines(): EngineDesc[];
/**
* List engines asynchronously.
* @param timeout_msec The timeout in milliseconds or -1 to use the default timeout.
* @param cancellable A #GCancellable or %NULL.
*/
list_engines_async(timeout_msec: number, cancellable?: Gio.Cancellable | null): Promise;
/**
* List engines asynchronously.
* @param timeout_msec The timeout in milliseconds or -1 to use the default timeout.
* @param cancellable A #GCancellable or %NULL.
* @param callback A #GAsyncReadyCallback to call when the request is satisfied or %NULL if you don't care about the result of the method invocation.
*/
list_engines_async(
timeout_msec: number,
cancellable: Gio.Cancellable | null,
callback: Gio.AsyncReadyCallback | null,
): void;
/**
* List engines asynchronously.
* @param timeout_msec The timeout in milliseconds or -1 to use the default timeout.
* @param cancellable A #GCancellable or %NULL.
* @param callback A #GAsyncReadyCallback to call when the request is satisfied or %NULL if you don't care about the result of the method invocation.
*/
list_engines_async(
timeout_msec: number,
cancellable?: Gio.Cancellable | null,
callback?: Gio.AsyncReadyCallback | null,
): Promise | void;
/**
* Finishes an operation started with ibus_bus_list_engines_async().
* @param res A #GAsyncResult obtained from the #GAsyncReadyCallback passed to ibus_bus_list_engines_async().
* @returns A List of engines.
*/
list_engines_async_finish(res: Gio.AsyncResult): EngineDesc[];
/**
* Return lists that attached to `bus`.
* [FixMe] Not implemented yet, only return %NULL.
* [FixMe] Add async version.
* @returns Lists that attached to @bus.
*/
list_names(): string[];
/**
* Lists the unique bus names of connections currently queued for a bus name.
* FIXME add an asynchronous version.
* @param name Name to be queried.
* @returns The unique bus names of connections currently queued for @name.
*/
list_queued_owners(name: string): string[];
/**
* Checks whether the name has owner synchronously.
* @param name Name to be checked.
* @returns %TRUE if the name has owner, %FALSE otherwise.
*/
name_has_owner(name: string): boolean;
/**
* Checks whether the name has owner asynchronously.
* @param name Name to be checked.
* @param timeout_msec The timeout in milliseconds or -1 to use the default timeout.
* @param cancellable A #GCancellable or %NULL.
*/
name_has_owner_async(
name: string,
timeout_msec: number,
cancellable?: Gio.Cancellable | null,
): Promise;
/**
* Checks whether the name has owner asynchronously.
* @param name Name to be checked.
* @param timeout_msec The timeout in milliseconds or -1 to use the default timeout.
* @param cancellable A #GCancellable or %NULL.
* @param callback A #GAsyncReadyCallback to call when the request is satisfied or %NULL if you don't care about the result of the method invocation.
*/
name_has_owner_async(
name: string,
timeout_msec: number,
cancellable: Gio.Cancellable | null,
callback: Gio.AsyncReadyCallback | null,
): void;
/**
* Checks whether the name has owner asynchronously.
* @param name Name to be checked.
* @param timeout_msec The timeout in milliseconds or -1 to use the default timeout.
* @param cancellable A #GCancellable or %NULL.
* @param callback A #GAsyncReadyCallback to call when the request is satisfied or %NULL if you don't care about the result of the method invocation.
*/
name_has_owner_async(
name: string,
timeout_msec: number,
cancellable?: Gio.Cancellable | null,
callback?: Gio.AsyncReadyCallback | null,
): Promise | void;
/**
* Finishes an operation started with ibus_bus_name_has_owner_async().
* @param res A #GAsyncResult obtained from the #GAsyncReadyCallback passed to ibus_bus_name_has_owner_async().
* @returns %TRUE if the name has owner, %FALSE otherwise.
*/
name_has_owner_async_finish(res: Gio.AsyncResult): boolean;
/**
* Start bus components by engine names synchronously.
* @param names A %NULL-terminated array of engine names.
* @returns %TRUE if components start. %FALSE otherwise.
*/
preload_engines(names: string[]): boolean;
/**
* Start bus components by engine names asynchronously.
* @param names A %NULL-terminated array of engine names.
* @param timeout_msec The timeout in milliseconds or -1 to use the default timeout.
* @param cancellable A #GCancellable or %NULL.
*/
preload_engines_async(
names: string[],
timeout_msec: number,
cancellable?: Gio.Cancellable | null,
): Promise;
/**
* Start bus components by engine names asynchronously.
* @param names A %NULL-terminated array of engine names.
* @param timeout_msec The timeout in milliseconds or -1 to use the default timeout.
* @param cancellable A #GCancellable or %NULL.
* @param callback A #GAsyncReadyCallback to call when the request is satisfied or %NULL if you don't care about the result of the method invocation.
*/
preload_engines_async(
names: string[],
timeout_msec: number,
cancellable: Gio.Cancellable | null,
callback: Gio.AsyncReadyCallback | null,
): void;
/**
* Start bus components by engine names asynchronously.
* @param names A %NULL-terminated array of engine names.
* @param timeout_msec The timeout in milliseconds or -1 to use the default timeout.
* @param cancellable A #GCancellable or %NULL.
* @param callback A #GAsyncReadyCallback to call when the request is satisfied or %NULL if you don't care about the result of the method invocation.
*/
preload_engines_async(
names: string[],
timeout_msec: number,
cancellable?: Gio.Cancellable | null,
callback?: Gio.AsyncReadyCallback | null,
): Promise | void;
/**
* Finishes an operation started with ibus_bus_preload_engines_async().
* @param res A #GAsyncResult obtained from the #GAsyncReadyCallback passed to ibus_bus_preload_engines_async().
* @returns %TRUE if component starts. %FALSE otherwise.
*/
preload_engines_async_finish(res: Gio.AsyncResult): boolean;
/**
* Register a component to an #IBusBus synchronously.
* @param component A input engine component.
* @returns %TRUE if the "RegisterComponent" call is successful, %FALSE otherwise.
*/
register_component(component: Component): boolean;
/**
* Register a component to an #IBusBus asynchronously.
* @param component A input engine component.
* @param timeout_msec The timeout in milliseconds or -1 to use the default timeout.
* @param cancellable A #GCancellable or %NULL.
*/
register_component_async(
component: Component,
timeout_msec: number,
cancellable?: Gio.Cancellable | null,
): Promise;
/**
* Register a component to an #IBusBus asynchronously.
* @param component A input engine component.
* @param timeout_msec The timeout in milliseconds or -1 to use the default timeout.
* @param cancellable A #GCancellable or %NULL.
* @param callback A #GAsyncReadyCallback to call when the request is satisfied or %NULL if you don't care about the result of the method invocation.
*/
register_component_async(
component: Component,
timeout_msec: number,
cancellable: Gio.Cancellable | null,
callback: Gio.AsyncReadyCallback | null,
): void;
/**
* Register a component to an #IBusBus asynchronously.
* @param component A input engine component.
* @param timeout_msec The timeout in milliseconds or -1 to use the default timeout.
* @param cancellable A #GCancellable or %NULL.
* @param callback A #GAsyncReadyCallback to call when the request is satisfied or %NULL if you don't care about the result of the method invocation.
*/
register_component_async(
component: Component,
timeout_msec: number,
cancellable?: Gio.Cancellable | null,
callback?: Gio.AsyncReadyCallback | null,
): Promise | void;
/**
* Finishes an operation started with ibus_bus_register_component_async().
* @param res A #GAsyncResult obtained from the #GAsyncReadyCallback passed to ibus_bus_register_component_async().
* @returns %TRUE if the "RegisterComponent" call is successful, %FALSE otherwise.
*/
register_component_async_finish(res: Gio.AsyncResult): boolean;
/**
* Release a name to IBus daemon synchronously.
* @param name Name to be released.
* @returns 0 if failed; positive number otherwise.
*/
release_name(name: string): number;
/**
* Release a name to IBus daemon asynchronously.
* @param name Name to be released.
* @param timeout_msec The timeout in milliseconds or -1 to use the default timeout.
* @param cancellable A #GCancellable or %NULL.
*/
release_name_async(
name: string,
timeout_msec: number,
cancellable?: Gio.Cancellable | null,
): Promise;
/**
* Release a name to IBus daemon asynchronously.
* @param name Name to be released.
* @param timeout_msec The timeout in milliseconds or -1 to use the default timeout.
* @param cancellable A #GCancellable or %NULL.
* @param callback A #GAsyncReadyCallback to call when the request is satisfied or %NULL if you don't care about the result of the method invocation.
*/
release_name_async(
name: string,
timeout_msec: number,
cancellable: Gio.Cancellable | null,
callback: Gio.AsyncReadyCallback | null,
): void;
/**
* Release a name to IBus daemon asynchronously.
* @param name Name to be released.
* @param timeout_msec The timeout in milliseconds or -1 to use the default timeout.
* @param cancellable A #GCancellable or %NULL.
* @param callback A #GAsyncReadyCallback to call when the request is satisfied or %NULL if you don't care about the result of the method invocation.
*/
release_name_async(
name: string,
timeout_msec: number,
cancellable?: Gio.Cancellable | null,
callback?: Gio.AsyncReadyCallback | null,
): Promise | void;
/**
* Finishes an operation started with ibus_bus_release_name_async().
* @param res A #GAsyncResult obtained from the #GAsyncReadyCallback passed to ibus_bus_release_name_async().
* @returns 0 if failed; positive number otherwise.
*/
release_name_async_finish(res: Gio.AsyncResult): number;
/**
* Remove a match rule to an #IBusBus synchronously.
* @param rule Match rule.
* @returns %TRUE if the rule is removed. %FALSE otherwise.
*/
remove_match(rule: string): boolean;
/**
* Remove a match rule to an IBusBus asynchronously.
* @param rule Match rule.
* @param timeout_msec The timeout in milliseconds or -1 to use the default timeout.
* @param cancellable A #GCancellable or %NULL.
*/
remove_match_async(
rule: string,
timeout_msec: number,
cancellable?: Gio.Cancellable | null,
): Promise;
/**
* Remove a match rule to an IBusBus asynchronously.
* @param rule Match rule.
* @param timeout_msec The timeout in milliseconds or -1 to use the default timeout.
* @param cancellable A #GCancellable or %NULL.
* @param callback A #GAsyncReadyCallback to call when the request is satisfied or %NULL if you don't care about the result of the method invocation.
*/
remove_match_async(
rule: string,
timeout_msec: number,
cancellable: Gio.Cancellable | null,
callback: Gio.AsyncReadyCallback | null,
): void;
/**
* Remove a match rule to an IBusBus asynchronously.
* @param rule Match rule.
* @param timeout_msec The timeout in milliseconds or -1 to use the default timeout.
* @param cancellable A #GCancellable or %NULL.
* @param callback A #GAsyncReadyCallback to call when the request is satisfied or %NULL if you don't care about the result of the method invocation.
*/
remove_match_async(
rule: string,
timeout_msec: number,
cancellable?: Gio.Cancellable | null,
callback?: Gio.AsyncReadyCallback | null,
): Promise | void;
/**
* Finishes an operation started with ibus_bus_remove_match_async().
* @param res A #GAsyncResult obtained from the #GAsyncReadyCallback passed to ibus_bus_remove_match_async().
* @returns %TRUE if the rule is removed. %FALSE otherwise.
*/
remove_match_async_finish(res: Gio.AsyncResult): boolean;
/**
* Request a name from IBus daemon synchronously.
* @param name Name to be requested.
* @param flags IBusBusNameFlag.
* @returns 0 if failed; IBusBusRequestNameReply otherwise.
*/
request_name(name: string, flags: number): number;
/**
* Request a name from IBus daemon asynchronously.
* @param name Name to be requested.
* @param flags Flags (FixMe).
* @param timeout_msec The timeout in milliseconds or -1 to use the default timeout.
* @param cancellable A #GCancellable or %NULL.
*/
request_name_async(
name: string,
flags: number,
timeout_msec: number,
cancellable?: Gio.Cancellable | null,
): Promise;
/**
* Request a name from IBus daemon asynchronously.
* @param name Name to be requested.
* @param flags Flags (FixMe).
* @param timeout_msec The timeout in milliseconds or -1 to use the default timeout.
* @param cancellable A #GCancellable or %NULL.
* @param callback A #GAsyncReadyCallback to call when the request is satisfied or %NULL if you don't care about the result of the method invocation.
*/
request_name_async(
name: string,
flags: number,
timeout_msec: number,
cancellable: Gio.Cancellable | null,
callback: Gio.AsyncReadyCallback | null,
): void;
/**
* Request a name from IBus daemon asynchronously.
* @param name Name to be requested.
* @param flags Flags (FixMe).
* @param timeout_msec The timeout in milliseconds or -1 to use the default timeout.
* @param cancellable A #GCancellable or %NULL.
* @param callback A #GAsyncReadyCallback to call when the request is satisfied or %NULL if you don't care about the result of the method invocation.
*/
request_name_async(
name: string,
flags: number,
timeout_msec: number,
cancellable?: Gio.Cancellable | null,
callback?: Gio.AsyncReadyCallback | null,
): Promise | void;
/**
* Finishes an operation started with ibus_bus_request_name_async().
* @param res A #GAsyncResult obtained from the #GAsyncReadyCallback passed to ibus_bus_request_name_async().
* @returns 0 if failed; positive number otherwise.
*/
request_name_async_finish(res: Gio.AsyncResult): number;
/**
* Set current global engine synchronously.
* @param global_engine A new engine name.
* @returns %TRUE if the global engine was set successfully.
*/
set_global_engine(global_engine: string): boolean;
/**
* Set current global engine asynchronously.
* @param global_engine A new engine name.
* @param timeout_msec The timeout in milliseconds or -1 to use the default timeout.
* @param cancellable A #GCancellable or %NULL.
*/
set_global_engine_async(
global_engine: string,
timeout_msec: number,
cancellable?: Gio.Cancellable | null,
): Promise;
/**
* Set current global engine asynchronously.
* @param global_engine A new engine name.
* @param timeout_msec The timeout in milliseconds or -1 to use the default timeout.
* @param cancellable A #GCancellable or %NULL.
* @param callback A #GAsyncReadyCallback to call when the request is satisfied or %NULL if you don't care about the result of the method invocation.
*/
set_global_engine_async(
global_engine: string,
timeout_msec: number,
cancellable: Gio.Cancellable | null,
callback: Gio.AsyncReadyCallback | null,
): void;
/**
* Set current global engine asynchronously.
* @param global_engine A new engine name.
* @param timeout_msec The timeout in milliseconds or -1 to use the default timeout.
* @param cancellable A #GCancellable or %NULL.
* @param callback A #GAsyncReadyCallback to call when the request is satisfied or %NULL if you don't care about the result of the method invocation.
*/
set_global_engine_async(
global_engine: string,
timeout_msec: number,
cancellable?: Gio.Cancellable | null,
callback?: Gio.AsyncReadyCallback | null,
): Promise | void;
/**
* Finishes an operation started with ibus_bus_set_global_engine_async().
* @param res A #GAsyncResult obtained from the #GAsyncReadyCallback passed to ibus_bus_set_global_engine_async().
* @returns %TRUE if no IPC errros. %FALSE otherwise.
*/
set_global_engine_async_finish(res: Gio.AsyncResult): boolean;
/**
* Set global shorcut keys for the Wayland session.
* @param gtype A #IBusBusGlobalBindingType.
* @param keys A %NULL-terminated array of #IBusProcessKeyEventData. keycode is used for the selecting direction and the forward direction in case of 0, otherwise the backward direction.
* @returns %TRUE if the global shortcut keys are set. %FALSE otherwise.
*/
set_global_shortcut_keys(gtype: BusGlobalBindingType | null, keys: ProcessKeyEventData[]): boolean;
/**
* Sete global shorcut keys for the Wayland session asynchronously.
* @param gtype A #IBusBusGlobalBindingType.
* @param keys A %NULL-terminated array of #IBusProcessKeyEventData.
* @param timeout_msec The timeout in milliseconds or -1 to use the default timeout.
* @param cancellable A #GCancellable or %NULL.
*/
set_global_shortcut_keys_async(
gtype: BusGlobalBindingType | null,
keys: ProcessKeyEventData[],
timeout_msec: number,
cancellable?: Gio.Cancellable | null,
): Promise;
/**
* Sete global shorcut keys for the Wayland session asynchronously.
* @param gtype A #IBusBusGlobalBindingType.
* @param keys A %NULL-terminated array of #IBusProcessKeyEventData.
* @param timeout_msec The timeout in milliseconds or -1 to use the default timeout.
* @param cancellable A #GCancellable or %NULL.
* @param callback A #GAsyncReadyCallback to call when the request is satisfied or %NULL if you don't care about the result of the method invocation.
*/
set_global_shortcut_keys_async(
gtype: BusGlobalBindingType | null,
keys: ProcessKeyEventData[],
timeout_msec: number,
cancellable: Gio.Cancellable | null,
callback: Gio.AsyncReadyCallback | null,
): void;
/**
* Sete global shorcut keys for the Wayland session asynchronously.
* @param gtype A #IBusBusGlobalBindingType.
* @param keys A %NULL-terminated array of #IBusProcessKeyEventData.
* @param timeout_msec The timeout in milliseconds or -1 to use the default timeout.
* @param cancellable A #GCancellable or %NULL.
* @param callback A #GAsyncReadyCallback to call when the request is satisfied or %NULL if you don't care about the result of the method invocation.
*/
set_global_shortcut_keys_async(
gtype: BusGlobalBindingType | null,
keys: ProcessKeyEventData[],
timeout_msec: number,
cancellable?: Gio.Cancellable | null,
callback?: Gio.AsyncReadyCallback | null,
): Promise | void;
/**
* Finishes an operation started with ibus_bus_set_global_shortcut_keys_async().
* @param res A #GAsyncResult obtained from the #GAsyncReadyCallback passed to ibus_bus_set_global_shortcut_keys_async().
* @returns %TRUE if the global shortcut keys are set. %FALSE otherwise.
*/
set_global_shortcut_keys_async_finish(res: Gio.AsyncResult): boolean;
/**
* Set org.freedesktop.DBus.Properties.
* @param property_name property name in org.freedesktop.DBus.Properties.Set
* @param value value in org.freedesktop.DBus.Properties.Set
*/
set_ibus_property(property_name: string, value: GLib.Variant): void;
/**
* Set org.freedesktop.DBus.Properties asynchronously.
* @param property_name property name in org.freedesktop.DBus.Properties.Set
* @param value value in org.freedesktop.DBus.Properties.Set
* @param timeout_msec The timeout in milliseconds or -1 to use the default timeout.
* @param cancellable A #GCancellable or %NULL.
*/
set_ibus_property_async(
property_name: string,
value: GLib.Variant,
timeout_msec: number,
cancellable?: Gio.Cancellable | null,
): Promise;
/**
* Set org.freedesktop.DBus.Properties asynchronously.
* @param property_name property name in org.freedesktop.DBus.Properties.Set
* @param value value in org.freedesktop.DBus.Properties.Set
* @param timeout_msec The timeout in milliseconds or -1 to use the default timeout.
* @param cancellable A #GCancellable or %NULL.
* @param callback A #GAsyncReadyCallback to call when the request is satisfied or %NULL if you don't care about the result of the method invocation.
*/
set_ibus_property_async(
property_name: string,
value: GLib.Variant,
timeout_msec: number,
cancellable: Gio.Cancellable | null,
callback: Gio.AsyncReadyCallback | null,
): void;
/**
* Set org.freedesktop.DBus.Properties asynchronously.
* @param property_name property name in org.freedesktop.DBus.Properties.Set
* @param value value in org.freedesktop.DBus.Properties.Set
* @param timeout_msec The timeout in milliseconds or -1 to use the default timeout.
* @param cancellable A #GCancellable or %NULL.
* @param callback A #GAsyncReadyCallback to call when the request is satisfied or %NULL if you don't care about the result of the method invocation.
*/
set_ibus_property_async(
property_name: string,
value: GLib.Variant,
timeout_msec: number,
cancellable?: Gio.Cancellable | null,
callback?: Gio.AsyncReadyCallback | null,
): Promise | void;
/**
* Finishes an operation started with ibus_bus_set_ibus_property_async().
* @param res A #GAsyncResult obtained from the #GAsyncReadyCallback passed to ibus_bus_set_ibus_property_async().
* @returns %TRUE if property is set with async. %FALSE failed.
*/
set_ibus_property_async_finish(res: Gio.AsyncResult): boolean;
/**
* Start or stop watching the NameOwnerChanged DBus signal.
* @param watch %TRUE if you want ibusbus to emit "name-owner-changed" signal when ibus-daemon emits the NameOwnerChanged DBus signal.
*/
set_watch_dbus_signal(watch: boolean): void;
/**
* Start or stop watching the GlobalEngineChanged IBus signal.
* @param watch %TRUE if you want ibusbus to emit "global-engine-changed" signal when ibus-daemon emits the GlobalEngineChanged IBus signal.
*/
set_watch_ibus_signal(watch: boolean): void;
}
namespace Component {
// Constructor properties interface
interface ConstructorProps extends Serializable.ConstructorProps {
author: string;
command_line: string;
commandLine: string;
description: string;
homepage: string;
license: string;
name: string;
textdomain: string;
version: string;
}
}
/**
* An IBusComponent is an executable program.
* It provides services such as user interface, configuration,
* and input method engine (IME).
*
* It is recommended that IME developers provide
* a component XML file and
* load the XML file by ibus_component_new_from_file().
*
* The format of a component XML file is described at
* https://github.com/ibus/ibus/wiki/DevXML
*/
class Component extends Serializable {
static $gtype: GObject.GType;
// Properties
/**
* The author of component
*/
get author(): string;
/**
* The exec path of component
*/
get command_line(): string;
/**
* The exec path of component
*/
get commandLine(): string;
/**
* The description of component
*/
get description(): string;
/**
* The homepage of component
*/
get homepage(): string;
/**
* The license of component
*/
get license(): string;
/**
* The name of component
*/
get name(): string;
/**
* The textdomain of component
*/
get textdomain(): string;
/**
* The version of component
*/
get version(): string;
// Constructors
constructor(properties?: Partial, ...args: any[]);
_init(...args: any[]): void;
static ['new'](
name: string,
description: string,
version: string,
license: string,
author: string,
homepage: string,
command_line: string,
textdomain: string,
): Component;
// Conflicted with IBus.Serializable.new
static ['new'](...args: never[]): any;
static new_from_file(filename: string): Component;
static new_from_xml_node(node: XML): Component;
// Methods
/**
* Add an engine to #IBusComponent according to the description in `engine`.
* @param engine A description of an engine.
*/
add_engine(engine: EngineDesc): void;
/**
* Add an observed path to #IBusComponent.
* @param path Observed path to be added.
* @param access_fs %TRUE for filling the file status; %FALSE otherwise.
*/
add_observed_path(path: string, access_fs: boolean): void;
/**
* Check whether the observed paths of component is modified.
* @returns %TRUE if at least one of the observed paths is modified; %FALSE otherwise.
*/
check_modification(): boolean;
/**
* Gets the author property in #IBusComponent. It should not be freed.
* @returns author property in #IBusComponent
*/
get_author(): string;
/**
* Gets the description property in #IBusComponent. It should not be freed.
* @returns description property in #IBusComponent
*/
get_description(): string;
/**
* Gets the engines of this component.
* @returns A newly allocated GList that contains engines.
*/
get_engines(): EngineDesc[];
/**
* Gets the exec property in #IBusComponent. It should not be freed.
* @returns exec property in #IBusComponent
*/
get_exec(): string;
/**
* Gets the homepage property in #IBusComponent. It should not be freed.
* @returns homepage property in #IBusComponent
*/
get_homepage(): string;
/**
* Gets the license property in #IBusComponent. It should not be freed.
* @returns license property in #IBusComponent
*/
get_license(): string;
/**
* Gets the name property in #IBusComponent. It should not be freed.
* @returns name property in #IBusComponent
*/
get_name(): string;
/**
* Gets the observed paths of this component.
* @returns A newly allocated GList that contains observed paths.
*/
get_observed_paths(): ObservedPath[];
/**
* Gets the textdomain property in #IBusComponent. It should not be freed.
* @returns textdomain property in #IBusComponent
*/
get_textdomain(): string;
/**
* Gets the version property in #IBusComponent. It should not be freed.
* @returns version property in #IBusComponent
*/
get_version(): string;
/**
* Output #IBusComponent as an XML-formatted string.
* The output string can be then shown on the screen or written to file.
* @param output GString that holds the result.
* @param indent level of indent.
*/
output(output: GLib.String, indent: number): void;
/**
* Output engine description as an XML-formatted string.
* The output string can be then shown on the screen or written to file.
* @param output GString that holds the result.
* @param indent level of indent.
*/
output_engines(output: GLib.String, indent: number): void;
}
namespace Config {
// Signal callback interfaces
interface ValueChanged {
(section: string, name: string, value: GLib.Variant): void;
}
// Constructor properties interface
interface ConstructorProps
extends Proxy.ConstructorProps,
Gio.AsyncInitable.ConstructorProps,
Gio.DBusInterface.ConstructorProps,
Gio.Initable.ConstructorProps {}
}
/**
* An IBusConfig provides engine configuration methods
* such as get and set the configure settings to configuration file.
*
* Currently, IBusConfig supports gconf.
*/
class Config extends Proxy implements Gio.AsyncInitable, Gio.DBusInterface, Gio.Initable {
static $gtype: GObject.GType;
// Constructors
constructor(properties?: Partial, ...args: any[]);
_init(...args: any[]): void;
static ['new'](connection: Gio.DBusConnection, cancellable?: Gio.Cancellable | null): Config;
// Conflicted with Gio.DBusProxy.new
static ['new'](...args: never[]): any;
static new_async_finish(res: Gio.AsyncResult): Config;
// 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: 'value-changed',
callback: (_source: this, section: string, name: string, value: GLib.Variant) => void,
): number;
connect_after(
signal: 'value-changed',
callback: (_source: this, section: string, name: string, value: GLib.Variant) => void,
): number;
emit(signal: 'value-changed', section: string, name: string, value: GLib.Variant): void;
// Static methods
/**
* New an #IBusConfig asynchronously.
* @param connection An #GDBusConnection.
* @param cancellable A #GCancellable or %NULL.
* @param callback A #GAsyncReadyCallback to call when the request is satisfied. The callback should not be %NULL.
*/
static new_async(
connection: Gio.DBusConnection,
cancellable?: Gio.Cancellable | null,
callback?: Gio.AsyncReadyCallback | null,
): void;
// Methods
/**
* Get the value of a configuration option synchronously.
*
* GConf stores configure options in a tree-like structure,
* and the IBus related setting is at /desktop/ibus,
* thus, `section` here is a path from there,
* while `name` is the key of that configuration option.
*
* ibus-chewing, for example, stores its setting in /desktop/ibus/engine/Chewing,
* so the section name for it is "engine/Chewing".
* See also: ibus_config_set_value().
* @param section Section name of the configuration option.
* @param name Name of the configure option.
* @returns A #GVariant or %NULL. Free with g_variant_unref().
*/
get_value(section: string, name: string): GLib.Variant;
/**
* Get the value of a configuration option asynchronously.
*
* See also: ibus_config_get_value().
* @param section Section name of the configuration option.
* @param name Name of the configure option.
* @param timeout_ms The timeout in milliseconds or -1 to use the default timeout.
* @param cancellable A #GCancellable or %NULL.
*/
get_value_async(
section: string,
name: string,
timeout_ms: number,
cancellable?: Gio.Cancellable | null,
): Promise;
/**
* Get the value of a configuration option asynchronously.
*
* See also: ibus_config_get_value().
* @param section Section name of the configuration option.
* @param name Name of the configure option.
* @param timeout_ms The timeout in milliseconds or -1 to use the default timeout.
* @param cancellable A #GCancellable or %NULL.
* @param callback Callback function to invoke when the return value is ready.
*/
get_value_async(
section: string,
name: string,
timeout_ms: number,
cancellable: Gio.Cancellable | null,
callback: Gio.AsyncReadyCallback | null,
): void;
/**
* Get the value of a configuration option asynchronously.
*
* See also: ibus_config_get_value().
* @param section Section name of the configuration option.
* @param name Name of the configure option.
* @param timeout_ms The timeout in milliseconds or -1 to use the default timeout.
* @param cancellable A #GCancellable or %NULL.
* @param callback Callback function to invoke when the return value is ready.
*/
get_value_async(
section: string,
name: string,
timeout_ms: number,
cancellable?: Gio.Cancellable | null,
callback?: Gio.AsyncReadyCallback | null,
): Promise | void;
/**
* Finish get value of a configuration option.
* @param result A #GAsyncResult.
* @returns A #GVariant or %NULL if error is set. Free with g_variant_unref(). See also: ibus_config_get_value_async().
*/
get_value_async_finish(result: Gio.AsyncResult): GLib.Variant;
/**
* Get all values in a section synchronously.
* @param section Section name of the configuration option.
* @returns A #GVariant or %NULL. Free with g_variant_unref(). See also: ibus_config_set_value().
*/
get_values(section: string): GLib.Variant;
/**
* Get all values in a section asynchronously.
*
* See also: ibus_config_get_values().
* @param section Section name of the configuration option.
* @param timeout_ms The timeout in milliseconds or -1 to use the default timeout.
* @param cancellable A #GCancellable or %NULL.
*/
get_values_async(
section: string,
timeout_ms: number,
cancellable?: Gio.Cancellable | null,
): Promise;
/**
* Get all values in a section asynchronously.
*
* See also: ibus_config_get_values().
* @param section Section name of the configuration option.
* @param timeout_ms The timeout in milliseconds or -1 to use the default timeout.
* @param cancellable A #GCancellable or %NULL.
* @param callback Callback function to invoke when the return value is ready.
*/
get_values_async(
section: string,
timeout_ms: number,
cancellable: Gio.Cancellable | null,
callback: Gio.AsyncReadyCallback | null,
): void;
/**
* Get all values in a section asynchronously.
*
* See also: ibus_config_get_values().
* @param section Section name of the configuration option.
* @param timeout_ms The timeout in milliseconds or -1 to use the default timeout.
* @param cancellable A #GCancellable or %NULL.
* @param callback Callback function to invoke when the return value is ready.
*/
get_values_async(
section: string,
timeout_ms: number,
cancellable?: Gio.Cancellable | null,
callback?: Gio.AsyncReadyCallback | null,
): Promise | void;
/**
* Finish get values in a section.
* @param result A #GAsyncResult.
* @returns A #GVariant or %NULL if error is set. Free with g_variant_unref(). See also: ibus_config_get_values_async().
*/
get_values_async_finish(result: Gio.AsyncResult): GLib.Variant;
/**
* Set the value of a configuration option synchronously.
* @param section Section name of the configuration option.
* @param name Name of the configure option its self.
* @param value A #GVariant that holds the value. If the value is floating, the function takes ownership of it.
* @returns %TRUE if succeed; %FALSE otherwise. See also: ibus_config_get_value().
*/
set_value(section: string, name: string, value: GLib.Variant): boolean;
/**
* Set the value of a configuration option asynchronously.
*
* See also: ibus_config_set_value().
* @param section Section name of the configuration option.
* @param name Name of the configure option.
* @param value A #GVariant that holds the value. If the value is floating, the function takes ownership of it.
* @param timeout_ms The timeout in milliseconds or -1 to use the default timeout.
* @param cancellable A #GCancellable or %NULL.
*/
set_value_async(
section: string,
name: string,
value: GLib.Variant,
timeout_ms: number,
cancellable?: Gio.Cancellable | null,
): Promise;
/**
* Set the value of a configuration option asynchronously.
*
* See also: ibus_config_set_value().
* @param section Section name of the configuration option.
* @param name Name of the configure option.
* @param value A #GVariant that holds the value. If the value is floating, the function takes ownership of it.
* @param timeout_ms The timeout in milliseconds or -1 to use the default timeout.
* @param cancellable A #GCancellable or %NULL.
* @param callback Callback function to invoke when the return value is ready.
*/
set_value_async(
section: string,
name: string,
value: GLib.Variant,
timeout_ms: number,
cancellable: Gio.Cancellable | null,
callback: Gio.AsyncReadyCallback | null,
): void;
/**
* Set the value of a configuration option asynchronously.
*
* See also: ibus_config_set_value().
* @param section Section name of the configuration option.
* @param name Name of the configure option.
* @param value A #GVariant that holds the value. If the value is floating, the function takes ownership of it.
* @param timeout_ms The timeout in milliseconds or -1 to use the default timeout.
* @param cancellable A #GCancellable or %NULL.
* @param callback Callback function to invoke when the return value is ready.
*/
set_value_async(
section: string,
name: string,
value: GLib.Variant,
timeout_ms: number,
cancellable?: Gio.Cancellable | null,
callback?: Gio.AsyncReadyCallback | null,
): Promise | void;
/**
* Finish set value of a configuration option.
* @param result A #GAsyncResult.
* @returns %TRUE or %FALSE if error is set. See also: ibus_config_set_value_async().
*/
set_value_async_finish(result: Gio.AsyncResult): boolean;
/**
* Remove an entry of a configuration option.
* @param section Section name of the configuration option.
* @param name Name of the configure option its self.
* @returns %TRUE if succeed; %FALSE otherwise. See also: ibus_config_get_value().
*/
unset(section: string, name: string): boolean;
/**
* Unsubscribe from the configuration option change notification.
* @param section Section name of the configuration option.
* @param name Name of the configure option its self.
* @returns %TRUE if succeed; %FALSE otherwise. See also: ibus_config_watch.
*/
unwatch(section?: string | null, name?: string | null): boolean;
/**
* Subscribe to the configuration option change notification.
*
* Until this function is called, every change will be notified to the
* client through #IBusConfig::value-changed signal. Clients should
* call ibus_config_watch() with the sections they are interested in,
* to reduce the number of D-Bus messages.
* @param section Section name of the configuration option.
* @param name Name of the configure option its self.
* @returns %TRUE if succeed; %FALSE otherwise. See also: ibus_config_unwatch().
*/
watch(section?: string | null, name?: string | null): boolean;
// Inherited methods
/**
* Starts asynchronous initialization of the object implementing the
* interface. This must be done before any real use of the object after
* initial construction. If the object also implements #GInitable you can
* optionally call g_initable_init() instead.
*
* This method is intended for language bindings. If writing in C,
* g_async_initable_new_async() should typically be used instead.
*
* When the initialization is finished, `callback` will be called. You can
* then call g_async_initable_init_finish() to get the result of the
* initialization.
*
* Implementations may also support cancellation. If `cancellable` is not
* %NULL, then initialization can be cancelled by triggering the cancellable
* object from another thread. If the operation was cancelled, the error
* %G_IO_ERROR_CANCELLED will be returned. If `cancellable` is not %NULL, and
* the object doesn't support cancellable initialization, the error
* %G_IO_ERROR_NOT_SUPPORTED will be returned.
*
* As with #GInitable, if the object is not initialized, or initialization
* returns with an error, then all operations on the object except
* g_object_ref() and g_object_unref() are considered to be invalid, and
* have undefined behaviour. They will often fail with g_critical() or
* g_warning(), but this must not be relied on.
*
* Callers should not assume that a class which implements #GAsyncInitable can
* be initialized multiple times; for more information, see g_initable_init().
* If a class explicitly supports being initialized multiple times,
* implementation requires yielding all subsequent calls to init_async() on the
* results of the first call.
*
* For classes that also support the #GInitable interface, the default
* implementation of this method will run the g_initable_init() function
* in a thread, so if you want to support asynchronous initialization via
* threads, just implement the #GAsyncInitable interface without overriding
* any interface methods.
* @param io_priority the [I/O priority](iface.AsyncResult.html#io-priority) of the operation
* @param cancellable optional #GCancellable object, %NULL to ignore.
*/
init_async(io_priority: number, cancellable?: Gio.Cancellable | null): Promise;
/**
* Starts asynchronous initialization of the object implementing the
* interface. This must be done before any real use of the object after
* initial construction. If the object also implements #GInitable you can
* optionally call g_initable_init() instead.
*
* This method is intended for language bindings. If writing in C,
* g_async_initable_new_async() should typically be used instead.
*
* When the initialization is finished, `callback` will be called. You can
* then call g_async_initable_init_finish() to get the result of the
* initialization.
*
* Implementations may also support cancellation. If `cancellable` is not
* %NULL, then initialization can be cancelled by triggering the cancellable
* object from another thread. If the operation was cancelled, the error
* %G_IO_ERROR_CANCELLED will be returned. If `cancellable` is not %NULL, and
* the object doesn't support cancellable initialization, the error
* %G_IO_ERROR_NOT_SUPPORTED will be returned.
*
* As with #GInitable, if the object is not initialized, or initialization
* returns with an error, then all operations on the object except
* g_object_ref() and g_object_unref() are considered to be invalid, and
* have undefined behaviour. They will often fail with g_critical() or
* g_warning(), but this must not be relied on.
*
* Callers should not assume that a class which implements #GAsyncInitable can
* be initialized multiple times; for more information, see g_initable_init().
* If a class explicitly supports being initialized multiple times,
* implementation requires yielding all subsequent calls to init_async() on the
* results of the first call.
*
* For classes that also support the #GInitable interface, the default
* implementation of this method will run the g_initable_init() function
* in a thread, so if you want to support asynchronous initialization via
* threads, just implement the #GAsyncInitable interface without overriding
* any interface methods.
* @param io_priority the [I/O priority](iface.AsyncResult.html#io-priority) of the operation
* @param cancellable optional #GCancellable object, %NULL to ignore.
* @param callback a #GAsyncReadyCallback to call when the request is satisfied
*/
init_async(
io_priority: number,
cancellable: Gio.Cancellable | null,
callback: Gio.AsyncReadyCallback | null,
): void;
/**
* Starts asynchronous initialization of the object implementing the
* interface. This must be done before any real use of the object after
* initial construction. If the object also implements #GInitable you can
* optionally call g_initable_init() instead.
*
* This method is intended for language bindings. If writing in C,
* g_async_initable_new_async() should typically be used instead.
*
* When the initialization is finished, `callback` will be called. You can
* then call g_async_initable_init_finish() to get the result of the
* initialization.
*
* Implementations may also support cancellation. If `cancellable` is not
* %NULL, then initialization can be cancelled by triggering the cancellable
* object from another thread. If the operation was cancelled, the error
* %G_IO_ERROR_CANCELLED will be returned. If `cancellable` is not %NULL, and
* the object doesn't support cancellable initialization, the error
* %G_IO_ERROR_NOT_SUPPORTED will be returned.
*
* As with #GInitable, if the object is not initialized, or initialization
* returns with an error, then all operations on the object except
* g_object_ref() and g_object_unref() are considered to be invalid, and
* have undefined behaviour. They will often fail with g_critical() or
* g_warning(), but this must not be relied on.
*
* Callers should not assume that a class which implements #GAsyncInitable can
* be initialized multiple times; for more information, see g_initable_init().
* If a class explicitly supports being initialized multiple times,
* implementation requires yielding all subsequent calls to init_async() on the
* results of the first call.
*
* For classes that also support the #GInitable interface, the default
* implementation of this method will run the g_initable_init() function
* in a thread, so if you want to support asynchronous initialization via
* threads, just implement the #GAsyncInitable interface without overriding
* any interface methods.
* @param io_priority the [I/O priority](iface.AsyncResult.html#io-priority) of the operation
* @param cancellable optional #GCancellable object, %NULL to ignore.
* @param callback a #GAsyncReadyCallback to call when the request is satisfied
*/
init_async(
io_priority: number,
cancellable?: Gio.Cancellable | null,
callback?: Gio.AsyncReadyCallback | null,
): Promise | void;
/**
* Finishes asynchronous initialization and returns the result.
* See g_async_initable_init_async().
* @param res a #GAsyncResult.
* @returns %TRUE if successful. If an error has occurred, this function will return %FALSE and set @error appropriately if present.
*/
init_finish(res: Gio.AsyncResult): boolean;
/**
* Finishes the async construction for the various g_async_initable_new
* calls, returning the created object or %NULL on error.
* @param res the #GAsyncResult from the callback
* @returns a newly created #GObject, or %NULL on error. Free with g_object_unref().
*/
new_finish(res: Gio.AsyncResult): Config;
// Conflicted with Gio.DBusProxy.new_finish
new_finish(...args: never[]): any;
/**
* Starts asynchronous initialization of the object implementing the
* interface. This must be done before any real use of the object after
* initial construction. If the object also implements #GInitable you can
* optionally call g_initable_init() instead.
*
* This method is intended for language bindings. If writing in C,
* g_async_initable_new_async() should typically be used instead.
*
* When the initialization is finished, `callback` will be called. You can
* then call g_async_initable_init_finish() to get the result of the
* initialization.
*
* Implementations may also support cancellation. If `cancellable` is not
* %NULL, then initialization can be cancelled by triggering the cancellable
* object from another thread. If the operation was cancelled, the error
* %G_IO_ERROR_CANCELLED will be returned. If `cancellable` is not %NULL, and
* the object doesn't support cancellable initialization, the error
* %G_IO_ERROR_NOT_SUPPORTED will be returned.
*
* As with #GInitable, if the object is not initialized, or initialization
* returns with an error, then all operations on the object except
* g_object_ref() and g_object_unref() are considered to be invalid, and
* have undefined behaviour. They will often fail with g_critical() or
* g_warning(), but this must not be relied on.
*
* Callers should not assume that a class which implements #GAsyncInitable can
* be initialized multiple times; for more information, see g_initable_init().
* If a class explicitly supports being initialized multiple times,
* implementation requires yielding all subsequent calls to init_async() on the
* results of the first call.
*
* For classes that also support the #GInitable interface, the default
* implementation of this method will run the g_initable_init() function
* in a thread, so if you want to support asynchronous initialization via
* threads, just implement the #GAsyncInitable interface without overriding
* any interface methods.
* @param io_priority the [I/O priority](iface.AsyncResult.html#io-priority) of the operation
* @param cancellable optional #GCancellable object, %NULL to ignore.
* @param callback a #GAsyncReadyCallback to call when the request is satisfied
*/
vfunc_init_async(
io_priority: number,
cancellable?: Gio.Cancellable | null,
callback?: Gio.AsyncReadyCallback | null,
): void;
/**
* Finishes asynchronous initialization and returns the result.
* See g_async_initable_init_async().
* @param res a #GAsyncResult.
*/
vfunc_init_finish(res: Gio.AsyncResult): boolean;
/**
* Creates a binding between `source_property` on `source` and `target_property`
* on `target`.
*
* Whenever the `source_property` is changed the `target_property` is
* updated using the same value. For instance:
*
*
* ```c
* g_object_bind_property (action, "active", widget, "sensitive", 0);
* ```
*
*
* Will result in the "sensitive" property of the widget #GObject instance to be
* updated with the same value of the "active" property of the action #GObject
* instance.
*
* If `flags` contains %G_BINDING_BIDIRECTIONAL then the binding will be mutual:
* if `target_property` on `target` changes then the `source_property` on `source`
* will be updated as well.
*
* The binding will automatically be removed when either the `source` or the
* `target` instances are finalized. To remove the binding without affecting the
* `source` and the `target` you can just call g_object_unref() on the returned
* #GBinding instance.
*
* Removing the binding by calling g_object_unref() on it must only be done if
* the binding, `source` and `target` are only used from a single thread and it
* is clear that both `source` and `target` outlive the binding. Especially it
* is not safe to rely on this if the binding, `source` or `target` can be
* finalized from different threads. Keep another reference to the binding and
* use g_binding_unbind() instead to be on the safe side.
*
* A #GObject can have multiple bindings.
* @param source_property the property on @source to bind
* @param target the target #GObject
* @param target_property the property on @target to bind
* @param flags flags to pass to #GBinding
* @returns the #GBinding instance representing the binding between the two #GObject instances. The binding is released whenever the #GBinding reference count reaches zero.
*/
bind_property(
source_property: string,
target: GObject.Object,
target_property: string,
flags: GObject.BindingFlags | null,
): GObject.Binding;
/**
* Complete version of g_object_bind_property().
*
* Creates a binding between `source_property` on `source` and `target_property`
* on `target,` allowing you to set the transformation functions to be used by
* the binding.
*
* If `flags` contains %G_BINDING_BIDIRECTIONAL then the binding will be mutual:
* if `target_property` on `target` changes then the `source_property` on `source`
* will be updated as well. The `transform_from` function is only used in case
* of bidirectional bindings, otherwise it will be ignored
*
* The binding will automatically be removed when either the `source` or the
* `target` instances are finalized. This will release the reference that is
* being held on the #GBinding instance; if you want to hold on to the
* #GBinding instance, you will need to hold a reference to it.
*
* To remove the binding, call g_binding_unbind().
*
* A #GObject can have multiple bindings.
*
* The same `user_data` parameter will be used for both `transform_to`
* and `transform_from` transformation functions; the `notify` function will
* be called once, when the binding is removed. If you need different data
* for each transformation function, please use
* g_object_bind_property_with_closures() instead.
* @param source_property the property on @source to bind
* @param target the target #GObject
* @param target_property the property on @target to bind
* @param flags flags to pass to #GBinding
* @param transform_to the transformation function from the @source to the @target, or %NULL to use the default
* @param transform_from the transformation function from the @target to the @source, or %NULL to use the default
* @param notify a function to call when disposing the binding, to free resources used by the transformation functions, or %NULL if not required
* @returns the #GBinding instance representing the binding between the two #GObject instances. The binding is released whenever the #GBinding reference count reaches zero.
*/
bind_property_full(
source_property: string,
target: GObject.Object,
target_property: string,
flags: GObject.BindingFlags | null,
transform_to?: GObject.BindingTransformFunc | null,
transform_from?: GObject.BindingTransformFunc | null,
notify?: GLib.DestroyNotify | null,
): GObject.Binding;
// Conflicted with GObject.Object.bind_property_full
bind_property_full(...args: never[]): any;
/**
* This function is intended for #GObject implementations to re-enforce
* a [floating][floating-ref] object reference. Doing this is seldom
* required: all #GInitiallyUnowneds are created with a floating reference
* which usually just needs to be sunken by calling g_object_ref_sink().
*/
force_floating(): void;
/**
* Increases the freeze count on `object`. If the freeze count is
* non-zero, the emission of "notify" signals on `object` is
* stopped. The signals are queued until the freeze count is decreased
* to zero. Duplicate notifications are squashed so that at most one
* #GObject::notify signal is emitted for each property modified while the
* object is frozen.
*
* This is necessary for accessors that modify multiple properties to prevent
* premature notification while the object is still being modified.
*/
freeze_notify(): void;
/**
* Gets a named field from the objects table of associations (see g_object_set_data()).
* @param key name of the key for that association
* @returns the data if found, or %NULL if no such data exists.
*/
get_data(key: string): any | null;
/**
* Gets a property of an object.
*
* The value can be:
* - an empty GObject.Value initialized by G_VALUE_INIT, which will be automatically initialized with the expected type of the property (since GLib 2.60)
* - a GObject.Value initialized with the expected type of the property
* - a GObject.Value initialized with a type to which the expected type of the property can be transformed
*
* In general, a copy is made of the property contents and the caller is responsible for freeing the memory by calling GObject.Value.unset.
*
* Note that GObject.Object.get_property is really intended for language bindings, GObject.Object.get is much more convenient for C programming.
* @param property_name The name of the property to get
* @param value Return location for the property value. Can be an empty GObject.Value initialized by G_VALUE_INIT (auto-initialized with expected type since GLib 2.60), a GObject.Value initialized with the expected property type, or a GObject.Value initialized with a transformable type
*/
get_property(property_name: string, value: GObject.Value | any): any;
/**
* This function gets back user data pointers stored via
* g_object_set_qdata().
* @param quark A #GQuark, naming the user data pointer
* @returns The user data pointer set, or %NULL
*/
get_qdata(quark: GLib.Quark): any | null;
/**
* Gets `n_properties` properties for an `object`.
* Obtained properties will be set to `values`. All properties must be valid.
* Warnings will be emitted and undefined behaviour may result if invalid
* properties are passed in.
* @param names the names of each property to get
* @param values the values of each property to get
*/
getv(names: string[], values: (GObject.Value | any)[]): void;
/**
* Checks whether `object` has a [floating][floating-ref] reference.
* @returns %TRUE if @object has a floating reference
*/
is_floating(): boolean;
/**
* Emits a "notify" signal for the property `property_name` on `object`.
*
* When possible, eg. when signaling a property change from within the class
* that registered the property, you should use g_object_notify_by_pspec()
* instead.
*
* Note that emission of the notify signal may be blocked with
* g_object_freeze_notify(). In this case, the signal emissions are queued
* and will be emitted (in reverse order) when g_object_thaw_notify() is
* called.
* @param property_name the name of a property installed on the class of @object.
*/
notify(property_name: string): void;
/**
* Emits a "notify" signal for the property specified by `pspec` on `object`.
*
* This function omits the property name lookup, hence it is faster than
* g_object_notify().
*
* One way to avoid using g_object_notify() from within the
* class that registered the properties, and using g_object_notify_by_pspec()
* instead, is to store the GParamSpec used with
* g_object_class_install_property() inside a static array, e.g.:
*
*
* ```c
* typedef enum
* {
* PROP_FOO = 1,
* PROP_LAST
* } MyObjectProperty;
*
* static GParamSpec *properties[PROP_LAST];
*
* static void
* my_object_class_init (MyObjectClass *klass)
* {
* properties[PROP_FOO] = g_param_spec_int ("foo", NULL, NULL,
* 0, 100,
* 50,
* G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS);
* g_object_class_install_property (gobject_class,
* PROP_FOO,
* properties[PROP_FOO]);
* }
* ```
*
*
* and then notify a change on the "foo" property with:
*
*
* ```c
* g_object_notify_by_pspec (self, properties[PROP_FOO]);
* ```
*
* @param pspec the #GParamSpec of a property installed on the class of @object.
*/
notify_by_pspec(pspec: GObject.ParamSpec): void;
/**
* Increases the reference count of `object`.
*
* Since GLib 2.56, if `GLIB_VERSION_MAX_ALLOWED` is 2.56 or greater, the type
* of `object` will be propagated to the return type (using the GCC typeof()
* extension), so any casting the caller needs to do on the return type must be
* explicit.
* @returns the same @object
*/
ref(): GObject.Object;
/**
* Increase the reference count of `object,` and possibly remove the
* [floating][floating-ref] reference, if `object` has a floating reference.
*
* In other words, if the object is floating, then this call "assumes
* ownership" of the floating reference, converting it to a normal
* reference by clearing the floating flag while leaving the reference
* count unchanged. If the object is not floating, then this call
* adds a new normal reference increasing the reference count by one.
*
* Since GLib 2.56, the type of `object` will be propagated to the return type
* under the same conditions as for g_object_ref().
* @returns @object
*/
ref_sink(): GObject.Object;
/**
* Releases all references to other objects. This can be used to break
* reference cycles.
*
* This function should only be called from object system implementations.
*/
run_dispose(): void;
/**
* Each object carries around a table of associations from
* strings to pointers. This function lets you set an association.
*
* If the object already had an association with that name,
* the old association will be destroyed.
*
* Internally, the `key` is converted to a #GQuark using g_quark_from_string().
* This means a copy of `key` is kept permanently (even after `object` has been
* finalized) — so it is recommended to only use a small, bounded set of values
* for `key` in your program, to avoid the #GQuark storage growing unbounded.
* @param key name of the key
* @param data data to associate with that key
*/
set_data(key: string, data?: any | null): void;
/**
* Sets a property on an object.
* @param property_name The name of the property to set
* @param value The value to set the property to
*/
set_property(property_name: string, value: GObject.Value | any): void;
/**
* Remove a specified datum from the object's data associations,
* without invoking the association's destroy handler.
* @param key name of the key
* @returns the data if found, or %NULL if no such data exists.
*/
steal_data(key: string): any | null;
/**
* This function gets back user data pointers stored via
* g_object_set_qdata() and removes the `data` from object
* without invoking its destroy() function (if any was
* set).
* Usually, calling this function is only required to update
* user data pointers with a destroy notifier, for example:
*
* ```c
* void
* object_add_to_user_list (GObject *object,
* const gchar *new_string)
* {
* // the quark, naming the object data
* GQuark quark_string_list = g_quark_from_static_string ("my-string-list");
* // retrieve the old string list
* GList *list = g_object_steal_qdata (object, quark_string_list);
*
* // prepend new string
* list = g_list_prepend (list, g_strdup (new_string));
* // this changed 'list', so we need to set it again
* g_object_set_qdata_full (object, quark_string_list, list, free_string_list);
* }
* static void
* free_string_list (gpointer data)
* {
* GList *node, *list = data;
*
* for (node = list; node; node = node->next)
* g_free (node->data);
* g_list_free (list);
* }
* ```
*
* Using g_object_get_qdata() in the above example, instead of
* g_object_steal_qdata() would have left the destroy function set,
* and thus the partial string list would have been freed upon
* g_object_set_qdata_full().
* @param quark A #GQuark, naming the user data pointer
* @returns The user data pointer set, or %NULL
*/
steal_qdata(quark: GLib.Quark): any | null;
/**
* Reverts the effect of a previous call to
* g_object_freeze_notify(). The freeze count is decreased on `object`
* and when it reaches zero, queued "notify" signals are emitted.
*
* Duplicate notifications for each property are squashed so that at most one
* #GObject::notify signal is emitted for each property, in the reverse order
* in which they have been queued.
*
* It is an error to call this function when the freeze count is zero.
*/
thaw_notify(): void;
/**
* Decreases the reference count of `object`. When its reference count
* drops to 0, the object is finalized (i.e. its memory is freed).
*
* If the pointer to the #GObject may be reused in future (for example, if it is
* an instance variable of another object), it is recommended to clear the
* pointer to %NULL rather than retain a dangling pointer to a potentially
* invalid #GObject instance. Use g_clear_object() for this.
*/
unref(): void;
/**
* This function essentially limits the life time of the `closure` to
* the life time of the object. That is, when the object is finalized,
* the `closure` is invalidated by calling g_closure_invalidate() on
* it, in order to prevent invocations of the closure with a finalized
* (nonexisting) object. Also, g_object_ref() and g_object_unref() are
* added as marshal guards to the `closure,` to ensure that an extra
* reference count is held on `object` during invocation of the
* `closure`. Usually, this function will be called on closures that
* use this `object` as closure data.
* @param closure #GClosure to watch
*/
watch_closure(closure: GObject.Closure): void;
/**
* the `constructed` function is called by g_object_new() as the
* final step of the object creation process. At the point of the call, all
* construction properties have been set on the object. The purpose of this
* call is to allow for object initialisation steps that can only be performed
* after construction properties have been set. `constructed` implementors
* should chain up to the `constructed` call of their parent class to allow it
* to complete its initialisation.
*/
vfunc_constructed(): void;
/**
* emits property change notification for a bunch
* of properties. Overriding `dispatch_properties_changed` should be rarely
* needed.
* @param n_pspecs
* @param pspecs
*/
vfunc_dispatch_properties_changed(n_pspecs: number, pspecs: GObject.ParamSpec): void;
/**
* the `dispose` function is supposed to drop all references to other
* objects, but keep the instance otherwise intact, so that client method
* invocations still work. It may be run multiple times (due to reference
* loops). Before returning, `dispose` should chain up to the `dispose` method
* of the parent class.
*/
vfunc_dispose(): void;
/**
* instance finalization function, should finish the finalization of
* the instance begun in `dispose` and chain up to the `finalize` method of the
* parent class.
*/
vfunc_finalize(): void;
/**
* the generic getter for all properties of this type. Should be
* overridden for every type with properties.
* @param property_id
* @param value
* @param pspec
*/
vfunc_get_property(property_id: number, value: GObject.Value | any, pspec: GObject.ParamSpec): void;
/**
* Emits a "notify" signal for the property `property_name` on `object`.
*
* When possible, eg. when signaling a property change from within the class
* that registered the property, you should use g_object_notify_by_pspec()
* instead.
*
* Note that emission of the notify signal may be blocked with
* g_object_freeze_notify(). In this case, the signal emissions are queued
* and will be emitted (in reverse order) when g_object_thaw_notify() is
* called.
* @param pspec
*/
vfunc_notify(pspec: GObject.ParamSpec): void;
/**
* the generic setter for all properties of this type. Should be
* overridden for every type with properties. If implementations of
* `set_property` don't emit property change notification explicitly, this will
* be done implicitly by the type system. However, if the notify signal is
* emitted explicitly, the type system will not emit it a second time.
* @param property_id
* @param value
* @param pspec
*/
vfunc_set_property(property_id: number, value: GObject.Value | any, pspec: GObject.ParamSpec): void;
/**
* Disconnects a handler from an instance so it will not be called during any future or currently ongoing emissions of the signal it has been connected to.
* @param id Handler ID of the handler to be disconnected
*/
disconnect(id: number): void;
/**
* Sets multiple properties of an object at once. The properties argument should be a dictionary mapping property names to values.
* @param properties Object containing the properties to set
*/
set(properties: { [key: string]: any }): void;
/**
* Blocks a handler of an instance so it will not be called during any signal emissions
* @param id Handler ID of the handler to be blocked
*/
block_signal_handler(id: number): void;
/**
* Unblocks a handler so it will be called again during any signal emissions
* @param id Handler ID of the handler to be unblocked
*/
unblock_signal_handler(id: number): void;
/**
* Stops a signal's emission by the given signal name. This will prevent the default handler and any subsequent signal handlers from being invoked.
* @param detailedName Name of the signal to stop emission of
*/
stop_emission_by_name(detailedName: string): void;
}
namespace ConfigService {
// Constructor properties interface
interface ConstructorProps extends Service.ConstructorProps {}
}
/**
* An IBusConfigService is a base class for other configuration services such as GConf.
* Currently, directly known sub class is IBusConfigGConf.
*
* IBusConfigServiceClass has following member functions:
*
*
* gboolean set_value(IBusConfigService *config, const gchar *section, const gchar *name,
* const GValue *value, IBusError **error)
*
*
*
* config:
* A configure service
*
*
* section:
* Section name of the configuration option.
*
*
* name:
* Name of the configuration option.
*
*
* value:
* GValue that holds the value.
*
*
* error:
* Error outputs here.
*
*
* Returns:
* TRUE if succeed; FALSE otherwise.
*
*
* Set a value to a configuration option.
*
*
*
* gboolean get_value(IBusConfigService *config, const gchar *section, const gchar *name,
* GValue *value, IBusError **error)
*
*
*
* config:
* A configure service
*
*
* section:
* Section name of the configuration option.
*
*
* name:
* Name of the configuration option.
*
*
* value:
* GValue that holds the value.
*
*
* error:
* Error outputs here.
*
*
* Returns:
* TRUE if succeed; FALSE otherwise.
*
*
* Get value of a configuration option.
*
*
*
* gboolean unset(IBusConfigService *config, const gchar *section, const gchar *name,
* IBusError **error)
*
*
*
* config:
* A configure service
*
*
* section:
* Section name of the configuration option.
*
*
* name:
* Name of the configuration option.
*
*
* error:
* Error outputs here.
*
*
* Returns:
* TRUE if succeed; FALSE otherwise.
*
*
* Remove an entry to a configuration option.
*
*
*
*/
class ConfigService extends Service {
static $gtype: GObject.GType;
// Constructors
constructor(properties?: Partial, ...args: any[]);
_init(...args: any[]): void;
static ['new'](connection: Gio.DBusConnection): ConfigService;
// Conflicted with IBus.Object.new
static ['new'](...args: never[]): any;
// Virtual methods
vfunc_get_value(section: string, name: string): GLib.Variant;
vfunc_get_values(section: string): GLib.Variant;
vfunc_set_value(section: string, name: string, value: GLib.Variant): boolean;
vfunc_unset_value(section: string, name: string): boolean;
// Methods
/**
* Change a value of a configuration option
* by sending a "ValueChanged" message to IBus service.
* @param section Section name of the configuration option.
* @param name Name of the configure option.
* @param value GVariant that holds the value.
*/
value_changed(section: string, name: string, value: GLib.Variant): void;
}
namespace EmojiData {
// Constructor properties interface
interface ConstructorProps extends Serializable.ConstructorProps {
annotations: any;
category: string;
description: string;
emoji: string;
}
}
/**
* Emoji data likes emoji unicode, annotations, description, category.
* You can get extended values with g_object_get_properties.
*/
class EmojiData extends Serializable {
static $gtype: GObject.GType;
// Properties
/**
* The emoji annotations
*/
get annotations(): any;
set annotations(val: any);
/**
* The emoji category
*/
get category(): string;
/**
* The emoji description
*/
get description(): string;
set description(val: string);
/**
* The emoji character
*/
get emoji(): string;
// Constructors
constructor(properties?: Partial, ...args: any[]);
_init(...args: any[]): void;
// Static methods
static load(path: string): EmojiData[];
/**
* Save the list of #IBusEmojiData to the cache file.
* @param path A path of the saved emoji data.
* @param list A list of emoji data.
*/
static save(path: string, list: EmojiData[]): void;
// Methods
/**
* Gets the annotation list in #IBusEmojiData. It should not be freed.
* @returns annotation list property in #IBusEmojiData
*/
get_annotations(): string[];
/**
* Gets the emoji category in #IBusEmojiData. It should not be freed.
* @returns category property in #IBusEmojiData
*/
get_category(): string;
/**
* Gets the emoji description in #IBusEmojiData. It should not be freed.
* @returns description property in #IBusEmojiData
*/
get_description(): string;
/**
* Gets the emoji character in #IBusEmojiData. It should not be freed.
* @returns emoji property in #IBusEmojiData
*/
get_emoji(): string;
/**
* Sets the annotation list in #IBusEmojiData.
* @param annotations List of emoji annotations
*/
set_annotations(annotations: string[]): void;
/**
* Sets the description in #IBusEmojiData.
* @param description An emoji description
*/
set_description(description: string): void;
}
namespace Engine {
// Signal callback interfaces
interface CancelHandWriting {
(n_strokes: number): void;
}
interface CandidateClicked {
(index: number, button: number, state: number): void;
}
interface CursorDown {
(): void;
}
interface CursorUp {
(): void;
}
interface Disable {
(): void;
}
interface Enable {
(): void;
}
interface FocusIn {
(): void;
}
interface FocusInId {
(object_path: string, client: string): void;
}
interface FocusOut {
(): void;
}
interface FocusOutId {
(object_path: string): void;
}
interface PageDown {
(): void;
}
interface PageUp {
(): void;
}
interface ProcessHandWritingEvent {
(coordinates: any | null, coordinates_len: number): void;
}
interface ProcessKeyEvent {
(keyval: number, keycode: number, state: number): boolean;
}
interface PropertyActivate {
(name: string, state: number): void;
}
interface PropertyHide {
(name: string): void;
}
interface PropertyShow {
(name: string): void;
}
interface Reset {
(): void;
}
interface SetCapabilities {
(caps: number): void;
}
interface SetContentType {
(purpose: number, hints: number): void;
}
interface SetCursorLocation {
(x: number, y: number, w: number, h: number): void;
}
interface SetSurroundingText {
(text: GObject.Object, cursor_pos: number, anchor_pos: number): void;
}
// Constructor properties interface
interface ConstructorProps extends Service.ConstructorProps {
active_surrounding_text: boolean;
activeSurroundingText: boolean;
engine_name: string;
engineName: string;
has_focus_id: boolean;
hasFocusId: boolean;
}
}
/**
* An IBusEngine provides infrastructure for input method engine.
* Developers can "extend" this class for input method engine development.
*
* see_also: #IBusComponent, #IBusEngineDesc
*/
class Engine extends Service {
static $gtype: GObject.GType;
// Properties
/**
* When this property is set to %TRUE, "RequireSurroundingText" D-Bus
* signal will be called by ibus-daemon on every focus-in/out event, with
* no need for the engine to call ibus_engine_get_surrounding_text().
* This property can only be set at construct time.
*/
get active_surrounding_text(): boolean;
/**
* When this property is set to %TRUE, "RequireSurroundingText" D-Bus
* signal will be called by ibus-daemon on every focus-in/out event, with
* no need for the engine to call ibus_engine_get_surrounding_text().
* This property can only be set at construct time.
*/
get activeSurroundingText(): boolean;
/**
* Name of this IBusEngine.
*/
get engine_name(): string;
/**
* Name of this IBusEngine.
*/
get engineName(): string;
/**
* Use #IBusEngine::focus_in_id()/focus_out_id() class method insteads of
* focus_in()/focus_out() class methods when this property is set to %TRUE.
* Otherwise, use #IBusEngine::focus_in()/focus_out class methods.
* This property can only be set at construct time.
*
* See also: IBusEngine::focus-in-id
*/
get has_focus_id(): boolean;
/**
* Use #IBusEngine::focus_in_id()/focus_out_id() class method insteads of
* focus_in()/focus_out() class methods when this property is set to %TRUE.
* Otherwise, use #IBusEngine::focus_in()/focus_out class methods.
* This property can only be set at construct time.
*
* See also: IBusEngine::focus-in-id
*/
get hasFocusId(): boolean;
// Fields
enabled: boolean;
has_focus: boolean;
cursor_area: Rectangle;
client_capabilities: number;
// Constructors
constructor(properties?: Partial, ...args: any[]);
_init(...args: any[]): void;
static ['new'](engine_name: string, object_path: string, connection: Gio.DBusConnection): Engine;
// Conflicted with IBus.Service.new
static ['new'](...args: never[]): any;
static new_with_type(
engine_type: GObject.GType,
engine_name: string,
object_path: string,
connection: Gio.DBusConnection,
): Engine;
// 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: 'cancel-hand-writing', callback: (_source: this, n_strokes: number) => void): number;
connect_after(signal: 'cancel-hand-writing', callback: (_source: this, n_strokes: number) => void): number;
emit(signal: 'cancel-hand-writing', n_strokes: number): void;
connect(
signal: 'candidate-clicked',
callback: (_source: this, index: number, button: number, state: number) => void,
): number;
connect_after(
signal: 'candidate-clicked',
callback: (_source: this, index: number, button: number, state: number) => void,
): number;
emit(signal: 'candidate-clicked', index: number, button: number, state: number): void;
connect(signal: 'cursor-down', callback: (_source: this) => void): number;
connect_after(signal: 'cursor-down', callback: (_source: this) => void): number;
emit(signal: 'cursor-down'): void;
connect(signal: 'cursor-up', callback: (_source: this) => void): number;
connect_after(signal: 'cursor-up', callback: (_source: this) => void): number;
emit(signal: 'cursor-up'): void;
connect(signal: 'disable', callback: (_source: this) => void): number;
connect_after(signal: 'disable', callback: (_source: this) => void): number;
emit(signal: 'disable'): void;
connect(signal: 'enable', callback: (_source: this) => void): number;
connect_after(signal: 'enable', callback: (_source: this) => void): number;
emit(signal: 'enable'): void;
connect(signal: 'focus-in', callback: (_source: this) => void): number;
connect_after(signal: 'focus-in', callback: (_source: this) => void): number;
emit(signal: 'focus-in'): void;
connect(
signal: 'focus-in-id',
callback: (_source: this, object_path: string, client: string) => void,
): number;
connect_after(
signal: 'focus-in-id',
callback: (_source: this, object_path: string, client: string) => void,
): number;
emit(signal: 'focus-in-id', object_path: string, client: string): void;
connect(signal: 'focus-out', callback: (_source: this) => void): number;
connect_after(signal: 'focus-out', callback: (_source: this) => void): number;
emit(signal: 'focus-out'): void;
connect(signal: 'focus-out-id', callback: (_source: this, object_path: string) => void): number;
connect_after(signal: 'focus-out-id', callback: (_source: this, object_path: string) => void): number;
emit(signal: 'focus-out-id', object_path: string): void;
connect(signal: 'page-down', callback: (_source: this) => void): number;
connect_after(signal: 'page-down', callback: (_source: this) => void): number;
emit(signal: 'page-down'): void;
connect(signal: 'page-up', callback: (_source: this) => void): number;
connect_after(signal: 'page-up', callback: (_source: this) => void): number;
emit(signal: 'page-up'): void;
connect(
signal: 'process-hand-writing-event',
callback: (_source: this, coordinates: any | null, coordinates_len: number) => void,
): number;
connect_after(
signal: 'process-hand-writing-event',
callback: (_source: this, coordinates: any | null, coordinates_len: number) => void,
): number;
emit(signal: 'process-hand-writing-event', coordinates: any | null, coordinates_len: number): void;
connect(
signal: 'process-key-event',
callback: (_source: this, keyval: number, keycode: number, state: number) => boolean,
): number;
connect_after(
signal: 'process-key-event',
callback: (_source: this, keyval: number, keycode: number, state: number) => boolean,
): number;
emit(signal: 'process-key-event', keyval: number, keycode: number, state: number): void;
connect(
signal: 'property-activate',
callback: (_source: this, name: string, state: number) => void,
): number;
connect_after(
signal: 'property-activate',
callback: (_source: this, name: string, state: number) => void,
): number;
emit(signal: 'property-activate', name: string, state: number): void;
connect(signal: 'property-hide', callback: (_source: this, name: string) => void): number;
connect_after(signal: 'property-hide', callback: (_source: this, name: string) => void): number;
emit(signal: 'property-hide', name: string): void;
connect(signal: 'property-show', callback: (_source: this, name: string) => void): number;
connect_after(signal: 'property-show', callback: (_source: this, name: string) => void): number;
emit(signal: 'property-show', name: string): void;
connect(signal: 'reset', callback: (_source: this) => void): number;
connect_after(signal: 'reset', callback: (_source: this) => void): number;
emit(signal: 'reset'): void;
connect(signal: 'set-capabilities', callback: (_source: this, caps: number) => void): number;
connect_after(signal: 'set-capabilities', callback: (_source: this, caps: number) => void): number;
emit(signal: 'set-capabilities', caps: number): void;
connect(
signal: 'set-content-type',
callback: (_source: this, purpose: number, hints: number) => void,
): number;
connect_after(
signal: 'set-content-type',
callback: (_source: this, purpose: number, hints: number) => void,
): number;
emit(signal: 'set-content-type', purpose: number, hints: number): void;
connect(
signal: 'set-cursor-location',
callback: (_source: this, x: number, y: number, w: number, h: number) => void,
): number;
connect_after(
signal: 'set-cursor-location',
callback: (_source: this, x: number, y: number, w: number, h: number) => void,
): number;
emit(signal: 'set-cursor-location', x: number, y: number, w: number, h: number): void;
connect(
signal: 'set-surrounding-text',
callback: (_source: this, text: GObject.Object, cursor_pos: number, anchor_pos: number) => void,
): number;
connect_after(
signal: 'set-surrounding-text',
callback: (_source: this, text: GObject.Object, cursor_pos: number, anchor_pos: number) => void,
): number;
emit(signal: 'set-surrounding-text', text: GObject.Object, cursor_pos: number, anchor_pos: number): void;
// Virtual methods
vfunc_cancel_hand_writing(n_strokes: number): void;
vfunc_candidate_clicked(index: number, button: number, state: number): void;
vfunc_cursor_down(): void;
vfunc_cursor_up(): void;
vfunc_disable(): void;
vfunc_enable(): void;
vfunc_focus_in(): void;
vfunc_focus_in_id(object_path: string, client: string): void;
vfunc_focus_out(): void;
vfunc_focus_out_id(object_path: string): void;
vfunc_page_down(): void;
vfunc_page_up(): void;
vfunc_process_hand_writing_event(coordinates: number, coordinates_len: number): void;
vfunc_process_key_event(keyval: number, keycode: number, state: number): boolean;
vfunc_property_activate(prop_name: string, prop_state: number): void;
vfunc_property_hide(prop_name: string): void;
vfunc_property_show(prop_name: string): void;
vfunc_reset(): void;
vfunc_set_capabilities(caps: number): void;
vfunc_set_content_type(purpose: number, hints: number): void;
vfunc_set_cursor_location(x: number, y: number, w: number, h: number): void;
vfunc_set_surrounding_text(text: Text, cursor_index: number, anchor_pos: number): void;
// Methods
/**
* Commit output of input method to IBus client.
*
* (Note: The text object will be released, if it is floating.
* If caller want to keep the object, caller should make the object
* sink by g_object_ref_sink.)
* @param text String commit to IBusEngine.
*/
commit_text(text: Text): void;
/**
* Delete surrounding text.
* @param offset The offset of the first char.
* @param nchars Number of chars to be deleted.
*/
delete_surrounding_text(offset: number, nchars: number): void;
/**
* Forward the key event.
* @param keyval KeySym.
* @param keycode keyboard scancode.
* @param state Key modifier flags.
*/
forward_key_event(keyval: number, keycode: number, state: number): void;
/**
* Get content-type (primary purpose and hints) of the current input
* context.
*
* See also: #IBusEngine::set-content-type
*/
get_content_type(): [number, number];
/**
* Return the name of #IBusEngine.
* @returns Name of #IBusEngine.
*/
get_name(): string;
/**
* Get surrounding text.
*
* It is also used to tell the input-context that the engine will
* utilize surrounding-text. In that case, it must be called in
* #IBusEngine::enable handler, with both `text` and `cursor` set to
* %NULL.
*
* See also: #IBusEngine::set-surrounding-text
*/
get_surrounding_text(): [Text | null, number, number];
/**
* Hide the auxiliary bar.
*/
hide_auxiliary_text(): void;
/**
* Hide the lookup table.
*/
hide_lookup_table(): void;
/**
* Hide the pre-edit buffer.
*/
hide_preedit_text(): void;
/**
* Register and show properties in language bar.
*
* (Note: The prop_list object will be released, if it is floating.
* If caller want to keep the object, caller should make the object
* sink by g_object_ref_sink.)
* @param prop_list Property List.
*/
register_properties(prop_list: PropList): void;
/**
* Show the auxiliary bar.
*/
show_auxiliary_text(): void;
/**
* Show the lookup table.
*/
show_lookup_table(): void;
/**
* Show the pre-edit buffer.
*/
show_preedit_text(): void;
/**
* Update the auxiliary bar.
*
* (Note: The text object will be released, if it is floating.
* If caller want to keep the object, caller should make the object
* sink by g_object_ref_sink.)
* @param text Update content.
* @param visible Whether the auxiliary text bar is visible.
*/
update_auxiliary_text(text: Text, visible: boolean): void;
/**
* Update the lookup table.
*
* (Note: The table object will be released, if it is floating.
* If caller want to keep the object, caller should make the object
* sink by g_object_ref_sink.)
* @param lookup_table An lookup_table.
* @param visible Whether the lookup_table is visible.
*/
update_lookup_table(lookup_table: LookupTable, visible: boolean): void;
/**
* Fast update for big lookup table.
*
* If size of lookup table is not over table page size *4,
* then it calls ibus_engine_update_lookup_table().
*
* (Note: The table object will be released, if it is floating.
* If caller want to keep the object, caller should make the object
* sink by g_object_ref_sink.)
* @param lookup_table An lookup_table.
* @param visible Whether the lookup_table is visible.
*/
update_lookup_table_fast(lookup_table: LookupTable, visible: boolean): void;
/**
* Update the pre-edit buffer.
*
* (Note: The text object will be released, if it is floating.
* If caller want to keep the object, caller should make the object
* sink by g_object_ref_sink.)
* @param text Update content.
* @param cursor_pos Current position of cursor
* @param visible Whether the pre-edit buffer is visible.
*/
update_preedit_text(text: Text, cursor_pos: number, visible: boolean): void;
/**
* Update the pre-edit buffer with commit mode. Similar to
* ibus_engine_update_preedit_text(), this function allows users to specify
* the behavior on focus out when the pre-edit buffer is visible.
*
* If `mode` is IBUS_ENGINE_PREEDIT_COMMIT, contents of the pre-edit buffer
* will be committed and cleared.
* If `mode` is IBUS_ENGINE_PREEDIT_CLEAR, contents of the pre-edit buffer
* will be cleared only.
*
* (Note: The text object will be released, if it is floating.
* If caller want to keep the object, caller should make the object
* sink by g_object_ref_sink.)
* @param text Update content.
* @param cursor_pos Current position of cursor
* @param visible Whether the pre-edit buffer is visible.
* @param mode Pre-edit commit mode when the focus is lost.
*/
update_preedit_text_with_mode(
text: Text,
cursor_pos: number,
visible: boolean,
mode: PreeditFocusMode | null,
): void;
/**
* Update the state displayed in language bar.
*
* (Note: The prop object will be released, if it is floating.
* If caller want to keep the object, caller should make the object
* sink by g_object_ref_sink.)
* @param prop IBusProperty to be updated.
*/
update_property(prop: Property): void;
}
namespace EngineDesc {
// Constructor properties interface
interface ConstructorProps extends Serializable.ConstructorProps {
author: string;
description: string;
hotkeys: string;
icon: string;
icon_prop_key: string;
iconPropKey: string;
language: string;
layout: string;
layout_option: string;
layoutOption: string;
layout_variant: string;
layoutVariant: string;
license: string;
longname: string;
name: string;
rank: number;
setup: string;
symbol: string;
textdomain: string;
version: string;
}
}
/**
* An IBusEngineDesc stores description data of IBusEngine.
* The description data can either be passed to ibus_engine_desc_new(),
* or loaded from an XML node through ibus_engine_desc_new_from_xml_node()
* to construct IBusEngineDesc.
*
* However, the recommended way to load engine description data is
* using ibus_component_new_from_file() to load a component file,
* which also includes engine description data.
*
* see_also: #IBusComponent, #IBusEngine
*/
class EngineDesc extends Serializable {
static $gtype: GObject.GType;
// Properties
/**
* The author of engine description
*/
get author(): string;
/**
* The description of engine description
*/
get description(): string;
/**
* The hotkeys of engine description
*/
get hotkeys(): string;
/**
* The icon of engine description
*/
get icon(): string;
/**
* The key of IBusProperty to change panel icon dynamically.
*/
get icon_prop_key(): string;
/**
* The key of IBusProperty to change panel icon dynamically.
*/
get iconPropKey(): string;
/**
* The language of engine description
*/
get language(): string;
/**
* The layout of engine description
*/
get layout(): string;
/**
* The keyboard option of engine description
*/
get layout_option(): string;
/**
* The keyboard option of engine description
*/
get layoutOption(): string;
/**
* The keyboard variant of engine description
*/
get layout_variant(): string;
/**
* The keyboard variant of engine description
*/
get layoutVariant(): string;
/**
* The license of engine description
*/
get license(): string;
/**
* The longname of engine description
*/
get longname(): string;
/**
* The name of engine description
*/
get name(): string;
/**
* The rank of engine description
*/
get rank(): number;
/**
* The exec lists of the engine setup command
*/
get setup(): string;
/**
* The symbol chars of engine description instead of icon image
*/
get symbol(): string;
/**
* The textdomain of engine description
*/
get textdomain(): string;
/**
* The version number of engine description
*/
get version(): string;
// Constructors
constructor(properties?: Partial, ...args: any[]);
_init(...args: any[]): void;
static ['new'](
name: string,
longname: string,
description: string,
language: string,
license: string,
author: string,
icon: string,
layout: string,
): EngineDesc;
// Conflicted with IBus.Serializable.new
static ['new'](...args: never[]): any;
static new_from_xml_node(node: XML): EngineDesc;
// Methods
/**
* Gets the author property in IBusEngineDesc. It should not be freed.
* @returns author property in IBusEngineDesc
*/
get_author(): string;
/**
* Gets the description property in IBusEngineDesc. It should not be freed.
* @returns description property in IBusEngineDesc
*/
get_description(): string;
/**
* Gets the hotkeys property in IBusEngineDesc. It should not be freed.
* @returns hotkeys property in IBusEngineDesc
*/
get_hotkeys(): string;
/**
* Gets the icon property in IBusEngineDesc. It should not be freed.
* @returns icon property in IBusEngineDesc
*/
get_icon(): string;
/**
* Gets the key of IBusProperty to load the panel icon dynamically
* in IBusEngineDesc. It should not be freed.
* @returns IBusProperty.key for dynamic panel icon in IBusEngineDesc
*/
get_icon_prop_key(): string;
/**
* Gets the language property in IBusEngineDesc. It should not be freed.
* @returns language property in IBusEngineDesc
*/
get_language(): string;
/**
* Gets the layout property in IBusEngineDesc. It should not be freed.
* @returns layout property in IBusEngineDesc
*/
get_layout(): string;
/**
* Gets the keyboard option property in IBusEngineDesc. It should not be freed.
* @returns keyboard option property in IBusEngineDesc
*/
get_layout_option(): string;
/**
* Gets the keyboard variant property in IBusEngineDesc. It should not be freed.
* @returns keyboard variant property in IBusEngineDesc
*/
get_layout_variant(): string;
/**
* Gets the license property in IBusEngineDesc. It should not be freed.
* @returns license property in IBusEngineDesc
*/
get_license(): string;
/**
* Gets the longname property in IBusEngineDesc. It should not be freed.
* @returns longname property in IBusEngineDesc
*/
get_longname(): string;
/**
* Gets the name property in IBusEngineDesc. It should not be freed.
* @returns name property in IBusEngineDesc
*/
get_name(): string;
/**
* Gets the rank property in IBusEngineDesc.
* @returns rank property in IBusEngineDesc
*/
get_rank(): number;
/**
* Gets the setup property in IBusEngineDesc. It should not be freed.
* @returns setup property in IBusEngineDesc
*/
get_setup(): string;
/**
* Gets the symbol property in IBusEngineDesc. It should not be freed.
* @returns symbol property in IBusEngineDesc
*/
get_symbol(): string;
/**
* Gets the textdomain property in IBusEngineDesc. It should not be freed.
* @returns textdomain in IBusEngineDesc
*/
get_textdomain(): string;
/**
* Gets the version property in IBusEngineDesc. It should not be freed.
* @returns version in IBusEngineDesc
*/
get_version(): string;
/**
* Output XML-formatted input method engine description.
* The result will be append to GString specified in `output`.
* @param output XML-formatted Input method engine description.
* @param indent Number of indent (showed as 4 spaces).
*/
output(output: GLib.String, indent: number): void;
}
namespace EngineSimple {
// Constructor properties interface
interface ConstructorProps extends Engine.ConstructorProps {}
}
/**
* An IBusEngineSimple provides table-based input method logic.
*
* see_also: #IBusEngine
*/
class EngineSimple extends Engine {
static $gtype: GObject.GType;
// Constructors
constructor(properties?: Partial, ...args: any[]);
_init(...args: any[]): void;
// Methods
/**
* Call ibus_engine_simple_add_table() internally by locale.
* @param file The compose file.
* @returns %TRUE if the @file is loaded.
*/
add_compose_file(file: string): boolean;
/**
* Adds an additional table to search to the engine. Each row of the table
* consists of max_seq_len key symbols followed by two guint16 interpreted as
* the high and low words of a gunicode value. Tables are searched starting from
* the last added.
*
* The table must be sorted in dictionary order on the numeric value of the key
* symbol fields. (Values beyond the length of the sequence should be zero.)
* @param data The table which must be available during the whole life of the simple engine.
* @param max_seq_len Maximum length of a sequence in the table (cannot be greater than %IBUS_MAX_COMPOSE_LEN)
* @param n_seqs number of sequences in the table
*/
add_table(data: number[], max_seq_len: number, n_seqs: number): void;
/**
* Call ibus_engine_simple_add_table() internally by locale.
* @param locale The locale name. If the locale is %NULL, the current locale is used.
* @returns %TRUE if the @locale is matched to the table.
*/
add_table_by_locale(locale?: string | null): boolean;
}
namespace ExtensionEvent {
// Constructor properties interface
interface ConstructorProps extends Serializable.ConstructorProps {
is_enabled: boolean;
isEnabled: boolean;
is_extension: boolean;
isExtension: boolean;
name: string;
params: string;
version: number;
}
}
/**
* IBusExtensionEvent properties.
*/
class ExtensionEvent extends Serializable {
static $gtype: GObject.GType;
// Properties
/**
* %TRUE if the extension is enabled in the #IBusExtensionEvent.
*/
get is_enabled(): boolean;
/**
* %TRUE if the extension is enabled in the #IBusExtensionEvent.
*/
get isEnabled(): boolean;
/**
* %TRUE if the #IBusExtensionEvent is called by an extension.
* %FALSE if the #IBusExtensionEvent is called by an active engine or
* panel.
* If this value is %TRUE, the event is send to ibus-daemon, an active
* engine. If it's %FALSE, the event is sned to ibus-daemon, panels.
*/
get is_extension(): boolean;
/**
* %TRUE if the #IBusExtensionEvent is called by an extension.
* %FALSE if the #IBusExtensionEvent is called by an active engine or
* panel.
* If this value is %TRUE, the event is send to ibus-daemon, an active
* engine. If it's %FALSE, the event is sned to ibus-daemon, panels.
*/
get isExtension(): boolean;
/**
* Name of the extension in the #IBusExtensionEvent.
*/
get name(): string;
/**
* Parameters to enable the extension in the #IBusExtensionEvent.
*/
get params(): string;
/**
* Version of the #IBusExtensionEvent.
*/
get version(): number;
// Constructors
constructor(properties?: Partial, ...args: any[]);
_init(...args: any[]): void;
// Methods
get_name(): string;
get_params(): string;
get_version(): number;
}
namespace Factory {
// Signal callback interfaces
interface CreateEngine {
(engine_name: string): Engine | null;
}
// Constructor properties interface
interface ConstructorProps extends Service.ConstructorProps {}
}
/**
* An IBusFactory is an #IBusService that creates input method engine (IME) instance.
* It provides CreateEngine remote method, which creates an IME instance by name,
* and returns the D-Bus object path to IBus daemon.
*
* see_also: #IBusEngine
*/
class Factory extends Service {
static $gtype: GObject.GType;
// Constructors
constructor(properties?: Partial, ...args: any[]);
_init(...args: any[]): void;
static ['new'](connection: Gio.DBusConnection): Factory;
// Conflicted with IBus.Object.new
static ['new'](...args: never[]): any;
// 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: 'create-engine', callback: (_source: this, engine_name: string) => Engine | null): number;
connect_after(
signal: 'create-engine',
callback: (_source: this, engine_name: string) => Engine | null,
): number;
emit(signal: 'create-engine', engine_name: string): void;
// Virtual methods
/**
* Creates an #IBusEngine with `engine_name`.
* @param engine_name Name of an engine.
*/
vfunc_create_engine(engine_name: string): Engine;
// Methods
/**
* Add an engine to the factory.
* @param engine_name Name of an engine.
* @param engine_type GType of an engine.
*/
add_engine(engine_name: string, engine_type: GObject.GType): void;
/**
* Creates an #IBusEngine with `engine_name`.
* @param engine_name Name of an engine.
* @returns #IBusEngine with @engine_name.
*/
create_engine(engine_name: string): Engine;
}
namespace HotkeyProfile {
// Signal callback interfaces
interface Trigger {
(event: number, user_data?: any | null): void;
}
// Constructor properties interface
interface ConstructorProps extends Serializable.ConstructorProps {}
}
/**
* An opaque data type representing an IBusHotkeyProfile.
*/
class HotkeyProfile extends Serializable {
static $gtype: GObject.GType;
// Constructors
constructor(properties?: Partial, ...args: any[]);
_init(...args: any[]): void;
static ['new'](): HotkeyProfile;
// 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: 'trigger', callback: (_source: this, event: number, user_data: any | null) => void): number;
connect_after(
signal: 'trigger',
callback: (_source: this, event: number, user_data: any | null) => void,
): number;
emit(signal: 'trigger', event: number, user_data?: any | null): void;
// Virtual methods
vfunc_trigger(event: GLib.Quark): void;
// Methods
/**
* Adds a hotkey and its associated event to an #IBusHotkeyProfile.
* @param keyval Keycode of the hotkey.
* @param modifiers Modifiers of the hotkey.
* @param event The event to be associated.
* @returns Always %TRUE.
*/
add_hotkey(keyval: number, modifiers: number, event: GLib.Quark): boolean;
/**
* Adds a hotkey and its associated event to an #IBusHotkeyProfile.
* The hotkey is in string format, such like
* Control+Shift+A.
* @param str Key in string representation. '+' is the separator.
* @param event The event to be associated.
* @returns FALSE if @str contains invalid symbol; TRUE otherwise.
*/
add_hotkey_from_string(str: string, event: GLib.Quark): boolean;
/**
* Emits a ::trigger signal when a hotkey is in a profile.
* @param keyval Keycode of the hotkey.
* @param modifiers Modifiers of the hotkey.
* @param prev_keyval Keycode of the hotkey.
* @param prev_modifiers Modifiers of the hotkey.
* @param user_data user data for signal "trigger".
* @returns 0 if releasing a hotkey and the hotkey is not in the profile; an associated event otherwise. See also: ::trigger
*/
filter_key_event(
keyval: number,
modifiers: number,
prev_keyval: number,
prev_modifiers: number,
user_data?: any | null,
): GLib.Quark;
lookup_hotkey(keyval: number, modifiers: number): GLib.Quark;
/**
* Removes the hotkey for an #IBusHotkeyProfile.
* @param keyval Keycode of the hotkey.
* @param modifiers Modifiers of the hotkey.
* @returns %FALSE if the key is not in @profile, %TRUE otherwise.
*/
remove_hotkey(keyval: number, modifiers: number): boolean;
/**
* Removes the hotkey for an #IBusHotkeyProfile by event.
* @param event The associated event.
* @returns %FALSE if no such event in @profile, %TRUE otherwise.
*/
remove_hotkey_by_event(event: GLib.Quark): boolean;
}
namespace InputContext {
// Signal callback interfaces
interface CommitText {
(text: Text): void;
}
interface CursorDownLookupTable {
(): void;
}
interface CursorUpLookupTable {
(): void;
}
interface DeleteSurroundingText {
(offset: number, n_chars: number): void;
}
interface Disabled {
(): void;
}
interface Enabled {
(): void;
}
interface ForwardKeyEvent {
(keyval: number, keycode: number, modifiers: number): void;
}
interface HideAuxiliaryText {
(): void;
}
interface HideLookupTable {
(): void;
}
interface HidePreeditText {
(): void;
}
interface PageDownLookupTable {
(): void;
}
interface PageUpLookupTable {
(): void;
}
interface RegisterProperties {
(props: PropList): void;
}
interface RequireSurroundingText {
(): void;
}
interface ShowAuxiliaryText {
(): void;
}
interface ShowLookupTable {
(): void;
}
interface ShowPreeditText {
(): void;
}
interface UpdateAuxiliaryText {
(text: Text, visible: boolean): void;
}
interface UpdateLookupTable {
(table: LookupTable, visible: boolean): void;
}
interface UpdatePreeditText {
(text: Text, cursor_pos: number, visible: boolean): void;
}
interface UpdatePreeditTextWithMode {
(text: Text, cursor_pos: number, visible: boolean, mode: number): void;
}
interface UpdateProperty {
(prop: Property): void;
}
// Constructor properties interface
interface ConstructorProps
extends Proxy.ConstructorProps,
Gio.AsyncInitable.ConstructorProps,
Gio.DBusInterface.ConstructorProps,
Gio.Initable.ConstructorProps {}
}
/**
* An IBusInputContext is a proxy object of BusInputContext,
* which manages the context for input methods that supports
* text input in various natural languages.
*
* Clients call the IBusInputContext to invoke BusInputContext,
* through which invokes IBusEngine.
*/
class InputContext extends Proxy implements Gio.AsyncInitable, Gio.DBusInterface, Gio.Initable {
static $gtype: GObject.GType;
// Constructors
constructor(properties?: Partial, ...args: any[]);
_init(...args: any[]): void;
static ['new'](
path: string,
connection: Gio.DBusConnection,
cancellable?: Gio.Cancellable | null,
): InputContext;
// Conflicted with Gio.DBusProxy.new
static ['new'](...args: never[]): any;
static new_async_finish(res: Gio.AsyncResult): InputContext;
// 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: 'commit-text', callback: (_source: this, text: Text) => void): number;
connect_after(signal: 'commit-text', callback: (_source: this, text: Text) => void): number;
emit(signal: 'commit-text', text: Text): void;
connect(signal: 'cursor-down-lookup-table', callback: (_source: this) => void): number;
connect_after(signal: 'cursor-down-lookup-table', callback: (_source: this) => void): number;
emit(signal: 'cursor-down-lookup-table'): void;
connect(signal: 'cursor-up-lookup-table', callback: (_source: this) => void): number;
connect_after(signal: 'cursor-up-lookup-table', callback: (_source: this) => void): number;
emit(signal: 'cursor-up-lookup-table'): void;
connect(
signal: 'delete-surrounding-text',
callback: (_source: this, offset: number, n_chars: number) => void,
): number;
connect_after(
signal: 'delete-surrounding-text',
callback: (_source: this, offset: number, n_chars: number) => void,
): number;
emit(signal: 'delete-surrounding-text', offset: number, n_chars: number): void;
connect(signal: 'disabled', callback: (_source: this) => void): number;
connect_after(signal: 'disabled', callback: (_source: this) => void): number;
emit(signal: 'disabled'): void;
connect(signal: 'enabled', callback: (_source: this) => void): number;
connect_after(signal: 'enabled', callback: (_source: this) => void): number;
emit(signal: 'enabled'): void;
connect(
signal: 'forward-key-event',
callback: (_source: this, keyval: number, keycode: number, modifiers: number) => void,
): number;
connect_after(
signal: 'forward-key-event',
callback: (_source: this, keyval: number, keycode: number, modifiers: number) => void,
): number;
emit(signal: 'forward-key-event', keyval: number, keycode: number, modifiers: number): void;
connect(signal: 'hide-auxiliary-text', callback: (_source: this) => void): number;
connect_after(signal: 'hide-auxiliary-text', callback: (_source: this) => void): number;
emit(signal: 'hide-auxiliary-text'): void;
connect(signal: 'hide-lookup-table', callback: (_source: this) => void): number;
connect_after(signal: 'hide-lookup-table', callback: (_source: this) => void): number;
emit(signal: 'hide-lookup-table'): void;
connect(signal: 'hide-preedit-text', callback: (_source: this) => void): number;
connect_after(signal: 'hide-preedit-text', callback: (_source: this) => void): number;
emit(signal: 'hide-preedit-text'): void;
connect(signal: 'page-down-lookup-table', callback: (_source: this) => void): number;
connect_after(signal: 'page-down-lookup-table', callback: (_source: this) => void): number;
emit(signal: 'page-down-lookup-table'): void;
connect(signal: 'page-up-lookup-table', callback: (_source: this) => void): number;
connect_after(signal: 'page-up-lookup-table', callback: (_source: this) => void): number;
emit(signal: 'page-up-lookup-table'): void;
connect(signal: 'register-properties', callback: (_source: this, props: PropList) => void): number;
connect_after(signal: 'register-properties', callback: (_source: this, props: PropList) => void): number;
emit(signal: 'register-properties', props: PropList): void;
connect(signal: 'require-surrounding-text', callback: (_source: this) => void): number;
connect_after(signal: 'require-surrounding-text', callback: (_source: this) => void): number;
emit(signal: 'require-surrounding-text'): void;
connect(signal: 'show-auxiliary-text', callback: (_source: this) => void): number;
connect_after(signal: 'show-auxiliary-text', callback: (_source: this) => void): number;
emit(signal: 'show-auxiliary-text'): void;
connect(signal: 'show-lookup-table', callback: (_source: this) => void): number;
connect_after(signal: 'show-lookup-table', callback: (_source: this) => void): number;
emit(signal: 'show-lookup-table'): void;
connect(signal: 'show-preedit-text', callback: (_source: this) => void): number;
connect_after(signal: 'show-preedit-text', callback: (_source: this) => void): number;
emit(signal: 'show-preedit-text'): void;
connect(
signal: 'update-auxiliary-text',
callback: (_source: this, text: Text, visible: boolean) => void,
): number;
connect_after(
signal: 'update-auxiliary-text',
callback: (_source: this, text: Text, visible: boolean) => void,
): number;
emit(signal: 'update-auxiliary-text', text: Text, visible: boolean): void;
connect(
signal: 'update-lookup-table',
callback: (_source: this, table: LookupTable, visible: boolean) => void,
): number;
connect_after(
signal: 'update-lookup-table',
callback: (_source: this, table: LookupTable, visible: boolean) => void,
): number;
emit(signal: 'update-lookup-table', table: LookupTable, visible: boolean): void;
connect(
signal: 'update-preedit-text',
callback: (_source: this, text: Text, cursor_pos: number, visible: boolean) => void,
): number;
connect_after(
signal: 'update-preedit-text',
callback: (_source: this, text: Text, cursor_pos: number, visible: boolean) => void,
): number;
emit(signal: 'update-preedit-text', text: Text, cursor_pos: number, visible: boolean): void;
connect(
signal: 'update-preedit-text-with-mode',
callback: (_source: this, text: Text, cursor_pos: number, visible: boolean, mode: number) => void,
): number;
connect_after(
signal: 'update-preedit-text-with-mode',
callback: (_source: this, text: Text, cursor_pos: number, visible: boolean, mode: number) => void,
): number;
emit(
signal: 'update-preedit-text-with-mode',
text: Text,
cursor_pos: number,
visible: boolean,
mode: number,
): void;
connect(signal: 'update-property', callback: (_source: this, prop: Property) => void): number;
connect_after(signal: 'update-property', callback: (_source: this, prop: Property) => void): number;
emit(signal: 'update-property', prop: Property): void;
// Static methods
/**
* Gets an existing IBusInputContext.
* @param path The path to the object that emitting the signal.
* @param connection A GDBusConnection.
*/
static get_input_context(path: string, connection: Gio.DBusConnection): InputContext;
/**
* Gets an existing #IBusInputContext asynchronously.
* @param path The path to the object that emitting the signal.
* @param connection A #GDBusConnection.
* @param cancellable A #GCancellable or %NULL.
* @param callback A #GAsyncReadyCallback to call when the request is satisfied. The callback should not be %NULL.
*/
static get_input_context_async(
path: string,
connection: Gio.DBusConnection,
cancellable?: Gio.Cancellable | null,
callback?: Gio.AsyncReadyCallback | null,
): void;
/**
* Finishes an operation started with
* ibus_input_context_get_input_context_async().
* @param res A #GAsyncResult obtained from the #GAsyncReadyCallback pass to ibus_input_context_get_input_context_async().
*/
static get_input_context_async_finish(res: Gio.AsyncResult): InputContext;
/**
* Creates a new #IBusInputContext asynchronously.
* @param path The path to the object that emitting the signal.
* @param connection A #GDBusConnection.
* @param cancellable A #GCancellable or %NULL.
* @param callback A #GAsyncReadyCallback to call when the request is satisfied. The callback should not be %NULL.
*/
static new_async(
path: string,
connection: Gio.DBusConnection,
cancellable?: Gio.Cancellable | null,
callback?: Gio.AsyncReadyCallback | null,
): void;
// Methods
/**
* Clear handwriting stroke(s) in the current input method engine.
*
* see_also: #IBusEngine::cancel-hand-writing
* @param n_strokes The number of strokes to be removed. Pass 0 to remove all.
*/
cancel_hand_writing(n_strokes: number): void;
/**
* Invoked when the client application get focus. An asynchronous IPC will
* be performed.
*
* see_also: #IBusEngine::focus_in.
*/
focus_in(): void;
/**
* Invoked when the client application get focus. An asynchronous IPC will be performed.
*
* see_also: #IBusEngine::focus_out.
*/
focus_out(): void;
/**
* Gets an IME engine description for the context.
* A synchronous IPC will be performed.
* @returns An IME engine description for the context, or NULL.
*/
get_engine(): EngineDesc;
/**
* An asynchronous IPC will be performed.
* @param timeout_msec The timeout in milliseconds or -1 to use the default timeout.
* @param cancellable A #GCancellable or %NULL.
*/
get_engine_async(timeout_msec: number, cancellable?: Gio.Cancellable | null): Promise;
/**
* An asynchronous IPC will be performed.
* @param timeout_msec The timeout in milliseconds or -1 to use the default timeout.
* @param cancellable A #GCancellable or %NULL.
* @param callback A #GAsyncReadyCallback to call when the request is satisfied or %NULL if you don't care about the result of the method invocation.
*/
get_engine_async(
timeout_msec: number,
cancellable: Gio.Cancellable | null,
callback: Gio.AsyncReadyCallback | null,
): void;
/**
* An asynchronous IPC will be performed.
* @param timeout_msec The timeout in milliseconds or -1 to use the default timeout.
* @param cancellable A #GCancellable or %NULL.
* @param callback A #GAsyncReadyCallback to call when the request is satisfied or %NULL if you don't care about the result of the method invocation.
*/
get_engine_async(
timeout_msec: number,
cancellable?: Gio.Cancellable | null,
callback?: Gio.AsyncReadyCallback | null,
): Promise | void;
/**
* Finishes an operation started with ibus_input_context_get_engine_async().
* @param res A #GAsyncResult obtained from the #GAsyncReadyCallback passed to ibus_input_context_get_engine_async().
* @returns An IME engine description for the context, or %NULL.
*/
get_engine_async_finish(res: Gio.AsyncResult): EngineDesc;
/**
* Check whether the current engine requires surrounding-text.
* @returns %TRUE if surrounding-text is needed by the current engine; %FALSE otherwise.
*/
needs_surrounding_text(): boolean;
/**
* Call this API after ibus_input_context_process_key_event() returns
* to retrieve commit-text and forwar-key-event signals during
* calling ibus_input_context_process_key_event().
*
* See also ibus_input_context_set_post_process_key_event().
*/
post_process_key_event(): void;
/**
* Pass a handwriting stroke to an input method engine.
*
* In this API, a coordinate (0.0, 0.0) represents the top-left corner of an area for
* handwriting, and (1.0, 1.0) does the bottom-right. Therefore, for example, if
* a user writes a character 'L', the array would be something like [0.0, 0.0, 0.0, 1.0, 1.0, 1.0]
* and coordinates_len would be 6.
*
* The function is usually called when a user releases the mouse button in a hand
* writing area.
*
* see_also: #IBusEngine::process-hand-writing-event
* @param coordinates An array of gdouble (0.0 to 1.0) which represents a stroke (i.e. [x1, y1, x2, y2, x3, y3, ...]).
* @param coordinates_len The number of elements in the array. The number should be even and >= 4.
*/
process_hand_writing_event(coordinates: number, coordinates_len: number): void;
/**
* Pass the key event to input method engine and wait for the reply from
* ibus (i.e. synchronous IPC).
* @param keyval Key symbol of a key event.
* @param keycode Keycode of a key event.
* @param state Key modifier flags.
* @returns %TRUE for successfully process the key; %FALSE otherwise. See also: ibus_input_context_process_key_event_async()
*/
process_key_event(keyval: number, keycode: number, state: number): boolean;
/**
* Pass the key event to input method engine.
*
* Key symbols are characters/symbols produced by key press, for example,
* pressing "s" generates key symbol "s"; pressing shift-"s" generates key symbol "S".
* Same key on keyboard may produce different key symbols on different keyboard layout.
* e.g., "s" key on QWERTY keyboard produces "o" in DVORAK layout.
*
* Unlike key symbol, keycode is only determined by the location of the key, and
* irrelevant of the keyboard layout.
*
* Briefly speaking, input methods that expect certain keyboard layout should use
* keycode; otherwise keyval is sufficient.
* For example, Chewing, Cangjie, Wubi expect an en-US QWERTY keyboard, these should
* use keycode; while pinyin can rely on keyval only, as it is less sensitive to
* the keyboard layout change, DVORAK users can still use DVORAK layout to input pinyin.
*
* Use ibus_keymap_lookup_keysym() to convert keycode to keysym in given keyboard layout.
*
* see_also: #IBusEngine::process-key-event
* @param keyval Key symbol of a key event.
* @param keycode Keycode of a key event.
* @param state Key modifier flags.
* @param timeout_msec The timeout in milliseconds or -1 to use the default timeout.
* @param cancellable A GCancellable or NULL.
*/
process_key_event_async(
keyval: number,
keycode: number,
state: number,
timeout_msec: number,
cancellable?: Gio.Cancellable | null,
): Promise;
/**
* Pass the key event to input method engine.
*
* Key symbols are characters/symbols produced by key press, for example,
* pressing "s" generates key symbol "s"; pressing shift-"s" generates key symbol "S".
* Same key on keyboard may produce different key symbols on different keyboard layout.
* e.g., "s" key on QWERTY keyboard produces "o" in DVORAK layout.
*
* Unlike key symbol, keycode is only determined by the location of the key, and
* irrelevant of the keyboard layout.
*
* Briefly speaking, input methods that expect certain keyboard layout should use
* keycode; otherwise keyval is sufficient.
* For example, Chewing, Cangjie, Wubi expect an en-US QWERTY keyboard, these should
* use keycode; while pinyin can rely on keyval only, as it is less sensitive to
* the keyboard layout change, DVORAK users can still use DVORAK layout to input pinyin.
*
* Use ibus_keymap_lookup_keysym() to convert keycode to keysym in given keyboard layout.
*
* see_also: #IBusEngine::process-key-event
* @param keyval Key symbol of a key event.
* @param keycode Keycode of a key event.
* @param state Key modifier flags.
* @param timeout_msec The timeout in milliseconds or -1 to use the default timeout.
* @param cancellable A GCancellable or NULL.
* @param callback A GAsyncReadyCallback to call when the request is satisfied or NULL if you don't care about the result of the method invocation.
*/
process_key_event_async(
keyval: number,
keycode: number,
state: number,
timeout_msec: number,
cancellable: Gio.Cancellable | null,
callback: Gio.AsyncReadyCallback | null,
): void;
/**
* Pass the key event to input method engine.
*
* Key symbols are characters/symbols produced by key press, for example,
* pressing "s" generates key symbol "s"; pressing shift-"s" generates key symbol "S".
* Same key on keyboard may produce different key symbols on different keyboard layout.
* e.g., "s" key on QWERTY keyboard produces "o" in DVORAK layout.
*
* Unlike key symbol, keycode is only determined by the location of the key, and
* irrelevant of the keyboard layout.
*
* Briefly speaking, input methods that expect certain keyboard layout should use
* keycode; otherwise keyval is sufficient.
* For example, Chewing, Cangjie, Wubi expect an en-US QWERTY keyboard, these should
* use keycode; while pinyin can rely on keyval only, as it is less sensitive to
* the keyboard layout change, DVORAK users can still use DVORAK layout to input pinyin.
*
* Use ibus_keymap_lookup_keysym() to convert keycode to keysym in given keyboard layout.
*
* see_also: #IBusEngine::process-key-event
* @param keyval Key symbol of a key event.
* @param keycode Keycode of a key event.
* @param state Key modifier flags.
* @param timeout_msec The timeout in milliseconds or -1 to use the default timeout.
* @param cancellable A GCancellable or NULL.
* @param callback A GAsyncReadyCallback to call when the request is satisfied or NULL if you don't care about the result of the method invocation.
*/
process_key_event_async(
keyval: number,
keycode: number,
state: number,
timeout_msec: number,
cancellable?: Gio.Cancellable | null,
callback?: Gio.AsyncReadyCallback | null,
): Promise | void;
/**
* Finishes an operation started with
* ibus_input_context_process_key_event_async().
* @param res A #GAsyncResult obtained from the #GAsyncReadyCallback passed to ibus_input_context_process_key_event_async().
* @returns %TRUE if the key event is processed; %FALSE otherwise or some errors happen and the @error will be set.
*/
process_key_event_async_finish(res: Gio.AsyncResult): boolean;
/**
* Activate the property asynchronously.
*
* See also: #IBusEngine::property_activate
* @param prop_name A property name (e.g. "InputMode.WideLatin")
* @param state A status of the property (e.g. PROP_STATE_CHECKED)
*/
property_activate(prop_name: string, state: number): void;
/**
* Invoked when the IME is reset. An asynchronous IPC will be performed.
*
* see_also: #IBusEngine::reset
*/
reset(): void;
/**
* Set the capabilities flags of client application asynchronously.
* When IBUS_CAP_FOCUS is not set, IBUS_CAP_PREEDIT_TEXT, IBUS_CAP_AUXILIARY_TEXT, IBUS_CAP_LOOKUP_TABLE, and IBUS_CAP_PROPERTY have to be all set.
* The panel component does nothing for an application that doesn't support focus.
*
* see_also: #IBusEngine::set-capabilities
* @param capabilities Capabilities flags of IBusEngine, see #IBusCapabilite
*/
set_capabilities(capabilities: number): void;
/**
* Set whether #IBusInputContext commits pre-edit texts or not.
* If %TRUE, 'update-preedit-text-with-mode' signal is emitted
* instead of 'update-preedit-text' signal.
* If your client receives the 'update-preedit-text-with-mode' signal,
* the client needs to implement commit_text() of pre-edit text when
* GtkIMContextClass.focus_out() is called in case an IME desires that
* behavior but it depends on each IME.
*
* See also ibus_engine_update_preedit_text_with_mode().
* @param client_commit %TRUE if your input context commits pre-edit texts with Space or Enter key events or mouse click events. %FALSE if ibus-daemon commits pre-edit texts with those events. The default is %FALSE. The behavior is decided with ibus_engine_update_preedit_text_with_mode() to commit, clear or keep the pre-edit text and this API is important in ibus-hangul.
*/
set_client_commit_preedit(client_commit: boolean): void;
/**
* Set content-type (primary purpose and hints) of the context. This
* information is particularly useful to implement intelligent
* behavior in engines, such as automatic input-mode switch and text
* prediction. For example, to restrict input to numbers, the client
* can call this function with `purpose` set to
* #IBUS_INPUT_PURPOSE_NUMBER.
*
* See also: #IBusEngine::set-content-type
* @param purpose Primary purpose of the input context, as an #IBusInputPurpose.
* @param hints Hints that augment @purpose, as an #IBusInputHints.
*/
set_content_type(purpose: number, hints: number): void;
/**
* Set the cursor location of IBus input context asynchronously.
*
* see_also: #IBusEngine::set-cursor-location
* @param x X coordinate of the cursor.
* @param y Y coordinate of the cursor.
* @param w Width of the cursor.
* @param h Height of the cursor.
*/
set_cursor_location(x: number, y: number, w: number, h: number): void;
/**
* Set the relative cursor location of IBus input context asynchronously.
* @param x X coordinate of the cursor.
* @param y Y coordinate of the cursor.
* @param w Width of the cursor.
* @param h Height of the cursor.
*/
set_cursor_location_relative(x: number, y: number, w: number, h: number): void;
/**
* Invoked when the IME engine is changed.
* An asynchronous IPC will be performed.
* @param name A name of the engine.
*/
set_engine(name: string): void;
set_post_process_key_event(enable: boolean): void;
set_surrounding_text(text: Text, cursor_pos: number, anchor_pos: number): void;
// Inherited methods
/**
* Starts asynchronous initialization of the object implementing the
* interface. This must be done before any real use of the object after
* initial construction. If the object also implements #GInitable you can
* optionally call g_initable_init() instead.
*
* This method is intended for language bindings. If writing in C,
* g_async_initable_new_async() should typically be used instead.
*
* When the initialization is finished, `callback` will be called. You can
* then call g_async_initable_init_finish() to get the result of the
* initialization.
*
* Implementations may also support cancellation. If `cancellable` is not
* %NULL, then initialization can be cancelled by triggering the cancellable
* object from another thread. If the operation was cancelled, the error
* %G_IO_ERROR_CANCELLED will be returned. If `cancellable` is not %NULL, and
* the object doesn't support cancellable initialization, the error
* %G_IO_ERROR_NOT_SUPPORTED will be returned.
*
* As with #GInitable, if the object is not initialized, or initialization
* returns with an error, then all operations on the object except
* g_object_ref() and g_object_unref() are considered to be invalid, and
* have undefined behaviour. They will often fail with g_critical() or
* g_warning(), but this must not be relied on.
*
* Callers should not assume that a class which implements #GAsyncInitable can
* be initialized multiple times; for more information, see g_initable_init().
* If a class explicitly supports being initialized multiple times,
* implementation requires yielding all subsequent calls to init_async() on the
* results of the first call.
*
* For classes that also support the #GInitable interface, the default
* implementation of this method will run the g_initable_init() function
* in a thread, so if you want to support asynchronous initialization via
* threads, just implement the #GAsyncInitable interface without overriding
* any interface methods.
* @param io_priority the [I/O priority](iface.AsyncResult.html#io-priority) of the operation
* @param cancellable optional #GCancellable object, %NULL to ignore.
*/
init_async(io_priority: number, cancellable?: Gio.Cancellable | null): Promise;
/**
* Starts asynchronous initialization of the object implementing the
* interface. This must be done before any real use of the object after
* initial construction. If the object also implements #GInitable you can
* optionally call g_initable_init() instead.
*
* This method is intended for language bindings. If writing in C,
* g_async_initable_new_async() should typically be used instead.
*
* When the initialization is finished, `callback` will be called. You can
* then call g_async_initable_init_finish() to get the result of the
* initialization.
*
* Implementations may also support cancellation. If `cancellable` is not
* %NULL, then initialization can be cancelled by triggering the cancellable
* object from another thread. If the operation was cancelled, the error
* %G_IO_ERROR_CANCELLED will be returned. If `cancellable` is not %NULL, and
* the object doesn't support cancellable initialization, the error
* %G_IO_ERROR_NOT_SUPPORTED will be returned.
*
* As with #GInitable, if the object is not initialized, or initialization
* returns with an error, then all operations on the object except
* g_object_ref() and g_object_unref() are considered to be invalid, and
* have undefined behaviour. They will often fail with g_critical() or
* g_warning(), but this must not be relied on.
*
* Callers should not assume that a class which implements #GAsyncInitable can
* be initialized multiple times; for more information, see g_initable_init().
* If a class explicitly supports being initialized multiple times,
* implementation requires yielding all subsequent calls to init_async() on the
* results of the first call.
*
* For classes that also support the #GInitable interface, the default
* implementation of this method will run the g_initable_init() function
* in a thread, so if you want to support asynchronous initialization via
* threads, just implement the #GAsyncInitable interface without overriding
* any interface methods.
* @param io_priority the [I/O priority](iface.AsyncResult.html#io-priority) of the operation
* @param cancellable optional #GCancellable object, %NULL to ignore.
* @param callback a #GAsyncReadyCallback to call when the request is satisfied
*/
init_async(
io_priority: number,
cancellable: Gio.Cancellable | null,
callback: Gio.AsyncReadyCallback | null,
): void;
/**
* Starts asynchronous initialization of the object implementing the
* interface. This must be done before any real use of the object after
* initial construction. If the object also implements #GInitable you can
* optionally call g_initable_init() instead.
*
* This method is intended for language bindings. If writing in C,
* g_async_initable_new_async() should typically be used instead.
*
* When the initialization is finished, `callback` will be called. You can
* then call g_async_initable_init_finish() to get the result of the
* initialization.
*
* Implementations may also support cancellation. If `cancellable` is not
* %NULL, then initialization can be cancelled by triggering the cancellable
* object from another thread. If the operation was cancelled, the error
* %G_IO_ERROR_CANCELLED will be returned. If `cancellable` is not %NULL, and
* the object doesn't support cancellable initialization, the error
* %G_IO_ERROR_NOT_SUPPORTED will be returned.
*
* As with #GInitable, if the object is not initialized, or initialization
* returns with an error, then all operations on the object except
* g_object_ref() and g_object_unref() are considered to be invalid, and
* have undefined behaviour. They will often fail with g_critical() or
* g_warning(), but this must not be relied on.
*
* Callers should not assume that a class which implements #GAsyncInitable can
* be initialized multiple times; for more information, see g_initable_init().
* If a class explicitly supports being initialized multiple times,
* implementation requires yielding all subsequent calls to init_async() on the
* results of the first call.
*
* For classes that also support the #GInitable interface, the default
* implementation of this method will run the g_initable_init() function
* in a thread, so if you want to support asynchronous initialization via
* threads, just implement the #GAsyncInitable interface without overriding
* any interface methods.
* @param io_priority the [I/O priority](iface.AsyncResult.html#io-priority) of the operation
* @param cancellable optional #GCancellable object, %NULL to ignore.
* @param callback a #GAsyncReadyCallback to call when the request is satisfied
*/
init_async(
io_priority: number,
cancellable?: Gio.Cancellable | null,
callback?: Gio.AsyncReadyCallback | null,
): Promise | void;
/**
* Finishes asynchronous initialization and returns the result.
* See g_async_initable_init_async().
* @param res a #GAsyncResult.
* @returns %TRUE if successful. If an error has occurred, this function will return %FALSE and set @error appropriately if present.
*/
init_finish(res: Gio.AsyncResult): boolean;
/**
* Finishes the async construction for the various g_async_initable_new
* calls, returning the created object or %NULL on error.
* @param res the #GAsyncResult from the callback
* @returns a newly created #GObject, or %NULL on error. Free with g_object_unref().
*/
new_finish(res: Gio.AsyncResult): InputContext;
// Conflicted with Gio.DBusProxy.new_finish
new_finish(...args: never[]): any;
/**
* Starts asynchronous initialization of the object implementing the
* interface. This must be done before any real use of the object after
* initial construction. If the object also implements #GInitable you can
* optionally call g_initable_init() instead.
*
* This method is intended for language bindings. If writing in C,
* g_async_initable_new_async() should typically be used instead.
*
* When the initialization is finished, `callback` will be called. You can
* then call g_async_initable_init_finish() to get the result of the
* initialization.
*
* Implementations may also support cancellation. If `cancellable` is not
* %NULL, then initialization can be cancelled by triggering the cancellable
* object from another thread. If the operation was cancelled, the error
* %G_IO_ERROR_CANCELLED will be returned. If `cancellable` is not %NULL, and
* the object doesn't support cancellable initialization, the error
* %G_IO_ERROR_NOT_SUPPORTED will be returned.
*
* As with #GInitable, if the object is not initialized, or initialization
* returns with an error, then all operations on the object except
* g_object_ref() and g_object_unref() are considered to be invalid, and
* have undefined behaviour. They will often fail with g_critical() or
* g_warning(), but this must not be relied on.
*
* Callers should not assume that a class which implements #GAsyncInitable can
* be initialized multiple times; for more information, see g_initable_init().
* If a class explicitly supports being initialized multiple times,
* implementation requires yielding all subsequent calls to init_async() on the
* results of the first call.
*
* For classes that also support the #GInitable interface, the default
* implementation of this method will run the g_initable_init() function
* in a thread, so if you want to support asynchronous initialization via
* threads, just implement the #GAsyncInitable interface without overriding
* any interface methods.
* @param io_priority the [I/O priority](iface.AsyncResult.html#io-priority) of the operation
* @param cancellable optional #GCancellable object, %NULL to ignore.
* @param callback a #GAsyncReadyCallback to call when the request is satisfied
*/
vfunc_init_async(
io_priority: number,
cancellable?: Gio.Cancellable | null,
callback?: Gio.AsyncReadyCallback | null,
): void;
/**
* Finishes asynchronous initialization and returns the result.
* See g_async_initable_init_async().
* @param res a #GAsyncResult.
*/
vfunc_init_finish(res: Gio.AsyncResult): boolean;
/**
* Creates a binding between `source_property` on `source` and `target_property`
* on `target`.
*
* Whenever the `source_property` is changed the `target_property` is
* updated using the same value. For instance:
*
*
* ```c
* g_object_bind_property (action, "active", widget, "sensitive", 0);
* ```
*
*
* Will result in the "sensitive" property of the widget #GObject instance to be
* updated with the same value of the "active" property of the action #GObject
* instance.
*
* If `flags` contains %G_BINDING_BIDIRECTIONAL then the binding will be mutual:
* if `target_property` on `target` changes then the `source_property` on `source`
* will be updated as well.
*
* The binding will automatically be removed when either the `source` or the
* `target` instances are finalized. To remove the binding without affecting the
* `source` and the `target` you can just call g_object_unref() on the returned
* #GBinding instance.
*
* Removing the binding by calling g_object_unref() on it must only be done if
* the binding, `source` and `target` are only used from a single thread and it
* is clear that both `source` and `target` outlive the binding. Especially it
* is not safe to rely on this if the binding, `source` or `target` can be
* finalized from different threads. Keep another reference to the binding and
* use g_binding_unbind() instead to be on the safe side.
*
* A #GObject can have multiple bindings.
* @param source_property the property on @source to bind
* @param target the target #GObject
* @param target_property the property on @target to bind
* @param flags flags to pass to #GBinding
* @returns the #GBinding instance representing the binding between the two #GObject instances. The binding is released whenever the #GBinding reference count reaches zero.
*/
bind_property(
source_property: string,
target: GObject.Object,
target_property: string,
flags: GObject.BindingFlags | null,
): GObject.Binding;
/**
* Complete version of g_object_bind_property().
*
* Creates a binding between `source_property` on `source` and `target_property`
* on `target,` allowing you to set the transformation functions to be used by
* the binding.
*
* If `flags` contains %G_BINDING_BIDIRECTIONAL then the binding will be mutual:
* if `target_property` on `target` changes then the `source_property` on `source`
* will be updated as well. The `transform_from` function is only used in case
* of bidirectional bindings, otherwise it will be ignored
*
* The binding will automatically be removed when either the `source` or the
* `target` instances are finalized. This will release the reference that is
* being held on the #GBinding instance; if you want to hold on to the
* #GBinding instance, you will need to hold a reference to it.
*
* To remove the binding, call g_binding_unbind().
*
* A #GObject can have multiple bindings.
*
* The same `user_data` parameter will be used for both `transform_to`
* and `transform_from` transformation functions; the `notify` function will
* be called once, when the binding is removed. If you need different data
* for each transformation function, please use
* g_object_bind_property_with_closures() instead.
* @param source_property the property on @source to bind
* @param target the target #GObject
* @param target_property the property on @target to bind
* @param flags flags to pass to #GBinding
* @param transform_to the transformation function from the @source to the @target, or %NULL to use the default
* @param transform_from the transformation function from the @target to the @source, or %NULL to use the default
* @param notify a function to call when disposing the binding, to free resources used by the transformation functions, or %NULL if not required
* @returns the #GBinding instance representing the binding between the two #GObject instances. The binding is released whenever the #GBinding reference count reaches zero.
*/
bind_property_full(
source_property: string,
target: GObject.Object,
target_property: string,
flags: GObject.BindingFlags | null,
transform_to?: GObject.BindingTransformFunc | null,
transform_from?: GObject.BindingTransformFunc | null,
notify?: GLib.DestroyNotify | null,
): GObject.Binding;
// Conflicted with GObject.Object.bind_property_full
bind_property_full(...args: never[]): any;
/**
* This function is intended for #GObject implementations to re-enforce
* a [floating][floating-ref] object reference. Doing this is seldom
* required: all #GInitiallyUnowneds are created with a floating reference
* which usually just needs to be sunken by calling g_object_ref_sink().
*/
force_floating(): void;
/**
* Increases the freeze count on `object`. If the freeze count is
* non-zero, the emission of "notify" signals on `object` is
* stopped. The signals are queued until the freeze count is decreased
* to zero. Duplicate notifications are squashed so that at most one
* #GObject::notify signal is emitted for each property modified while the
* object is frozen.
*
* This is necessary for accessors that modify multiple properties to prevent
* premature notification while the object is still being modified.
*/
freeze_notify(): void;
/**
* Gets a named field from the objects table of associations (see g_object_set_data()).
* @param key name of the key for that association
* @returns the data if found, or %NULL if no such data exists.
*/
get_data(key: string): any | null;
/**
* Gets a property of an object.
*
* The value can be:
* - an empty GObject.Value initialized by G_VALUE_INIT, which will be automatically initialized with the expected type of the property (since GLib 2.60)
* - a GObject.Value initialized with the expected type of the property
* - a GObject.Value initialized with a type to which the expected type of the property can be transformed
*
* In general, a copy is made of the property contents and the caller is responsible for freeing the memory by calling GObject.Value.unset.
*
* Note that GObject.Object.get_property is really intended for language bindings, GObject.Object.get is much more convenient for C programming.
* @param property_name The name of the property to get
* @param value Return location for the property value. Can be an empty GObject.Value initialized by G_VALUE_INIT (auto-initialized with expected type since GLib 2.60), a GObject.Value initialized with the expected property type, or a GObject.Value initialized with a transformable type
*/
get_property(property_name: string, value: GObject.Value | any): any;
/**
* This function gets back user data pointers stored via
* g_object_set_qdata().
* @param quark A #GQuark, naming the user data pointer
* @returns The user data pointer set, or %NULL
*/
get_qdata(quark: GLib.Quark): any | null;
/**
* Gets `n_properties` properties for an `object`.
* Obtained properties will be set to `values`. All properties must be valid.
* Warnings will be emitted and undefined behaviour may result if invalid
* properties are passed in.
* @param names the names of each property to get
* @param values the values of each property to get
*/
getv(names: string[], values: (GObject.Value | any)[]): void;
/**
* Checks whether `object` has a [floating][floating-ref] reference.
* @returns %TRUE if @object has a floating reference
*/
is_floating(): boolean;
/**
* Emits a "notify" signal for the property `property_name` on `object`.
*
* When possible, eg. when signaling a property change from within the class
* that registered the property, you should use g_object_notify_by_pspec()
* instead.
*
* Note that emission of the notify signal may be blocked with
* g_object_freeze_notify(). In this case, the signal emissions are queued
* and will be emitted (in reverse order) when g_object_thaw_notify() is
* called.
* @param property_name the name of a property installed on the class of @object.
*/
notify(property_name: string): void;
/**
* Emits a "notify" signal for the property specified by `pspec` on `object`.
*
* This function omits the property name lookup, hence it is faster than
* g_object_notify().
*
* One way to avoid using g_object_notify() from within the
* class that registered the properties, and using g_object_notify_by_pspec()
* instead, is to store the GParamSpec used with
* g_object_class_install_property() inside a static array, e.g.:
*
*
* ```c
* typedef enum
* {
* PROP_FOO = 1,
* PROP_LAST
* } MyObjectProperty;
*
* static GParamSpec *properties[PROP_LAST];
*
* static void
* my_object_class_init (MyObjectClass *klass)
* {
* properties[PROP_FOO] = g_param_spec_int ("foo", NULL, NULL,
* 0, 100,
* 50,
* G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS);
* g_object_class_install_property (gobject_class,
* PROP_FOO,
* properties[PROP_FOO]);
* }
* ```
*
*
* and then notify a change on the "foo" property with:
*
*
* ```c
* g_object_notify_by_pspec (self, properties[PROP_FOO]);
* ```
*
* @param pspec the #GParamSpec of a property installed on the class of @object.
*/
notify_by_pspec(pspec: GObject.ParamSpec): void;
/**
* Increases the reference count of `object`.
*
* Since GLib 2.56, if `GLIB_VERSION_MAX_ALLOWED` is 2.56 or greater, the type
* of `object` will be propagated to the return type (using the GCC typeof()
* extension), so any casting the caller needs to do on the return type must be
* explicit.
* @returns the same @object
*/
ref(): GObject.Object;
/**
* Increase the reference count of `object,` and possibly remove the
* [floating][floating-ref] reference, if `object` has a floating reference.
*
* In other words, if the object is floating, then this call "assumes
* ownership" of the floating reference, converting it to a normal
* reference by clearing the floating flag while leaving the reference
* count unchanged. If the object is not floating, then this call
* adds a new normal reference increasing the reference count by one.
*
* Since GLib 2.56, the type of `object` will be propagated to the return type
* under the same conditions as for g_object_ref().
* @returns @object
*/
ref_sink(): GObject.Object;
/**
* Releases all references to other objects. This can be used to break
* reference cycles.
*
* This function should only be called from object system implementations.
*/
run_dispose(): void;
/**
* Each object carries around a table of associations from
* strings to pointers. This function lets you set an association.
*
* If the object already had an association with that name,
* the old association will be destroyed.
*
* Internally, the `key` is converted to a #GQuark using g_quark_from_string().
* This means a copy of `key` is kept permanently (even after `object` has been
* finalized) — so it is recommended to only use a small, bounded set of values
* for `key` in your program, to avoid the #GQuark storage growing unbounded.
* @param key name of the key
* @param data data to associate with that key
*/
set_data(key: string, data?: any | null): void;
/**
* Sets a property on an object.
* @param property_name The name of the property to set
* @param value The value to set the property to
*/
set_property(property_name: string, value: GObject.Value | any): void;
/**
* Remove a specified datum from the object's data associations,
* without invoking the association's destroy handler.
* @param key name of the key
* @returns the data if found, or %NULL if no such data exists.
*/
steal_data(key: string): any | null;
/**
* This function gets back user data pointers stored via
* g_object_set_qdata() and removes the `data` from object
* without invoking its destroy() function (if any was
* set).
* Usually, calling this function is only required to update
* user data pointers with a destroy notifier, for example:
*
* ```c
* void
* object_add_to_user_list (GObject *object,
* const gchar *new_string)
* {
* // the quark, naming the object data
* GQuark quark_string_list = g_quark_from_static_string ("my-string-list");
* // retrieve the old string list
* GList *list = g_object_steal_qdata (object, quark_string_list);
*
* // prepend new string
* list = g_list_prepend (list, g_strdup (new_string));
* // this changed 'list', so we need to set it again
* g_object_set_qdata_full (object, quark_string_list, list, free_string_list);
* }
* static void
* free_string_list (gpointer data)
* {
* GList *node, *list = data;
*
* for (node = list; node; node = node->next)
* g_free (node->data);
* g_list_free (list);
* }
* ```
*
* Using g_object_get_qdata() in the above example, instead of
* g_object_steal_qdata() would have left the destroy function set,
* and thus the partial string list would have been freed upon
* g_object_set_qdata_full().
* @param quark A #GQuark, naming the user data pointer
* @returns The user data pointer set, or %NULL
*/
steal_qdata(quark: GLib.Quark): any | null;
/**
* Reverts the effect of a previous call to
* g_object_freeze_notify(). The freeze count is decreased on `object`
* and when it reaches zero, queued "notify" signals are emitted.
*
* Duplicate notifications for each property are squashed so that at most one
* #GObject::notify signal is emitted for each property, in the reverse order
* in which they have been queued.
*
* It is an error to call this function when the freeze count is zero.
*/
thaw_notify(): void;
/**
* Decreases the reference count of `object`. When its reference count
* drops to 0, the object is finalized (i.e. its memory is freed).
*
* If the pointer to the #GObject may be reused in future (for example, if it is
* an instance variable of another object), it is recommended to clear the
* pointer to %NULL rather than retain a dangling pointer to a potentially
* invalid #GObject instance. Use g_clear_object() for this.
*/
unref(): void;
/**
* This function essentially limits the life time of the `closure` to
* the life time of the object. That is, when the object is finalized,
* the `closure` is invalidated by calling g_closure_invalidate() on
* it, in order to prevent invocations of the closure with a finalized
* (nonexisting) object. Also, g_object_ref() and g_object_unref() are
* added as marshal guards to the `closure,` to ensure that an extra
* reference count is held on `object` during invocation of the
* `closure`. Usually, this function will be called on closures that
* use this `object` as closure data.
* @param closure #GClosure to watch
*/
watch_closure(closure: GObject.Closure): void;
/**
* the `constructed` function is called by g_object_new() as the
* final step of the object creation process. At the point of the call, all
* construction properties have been set on the object. The purpose of this
* call is to allow for object initialisation steps that can only be performed
* after construction properties have been set. `constructed` implementors
* should chain up to the `constructed` call of their parent class to allow it
* to complete its initialisation.
*/
vfunc_constructed(): void;
/**
* emits property change notification for a bunch
* of properties. Overriding `dispatch_properties_changed` should be rarely
* needed.
* @param n_pspecs
* @param pspecs
*/
vfunc_dispatch_properties_changed(n_pspecs: number, pspecs: GObject.ParamSpec): void;
/**
* the `dispose` function is supposed to drop all references to other
* objects, but keep the instance otherwise intact, so that client method
* invocations still work. It may be run multiple times (due to reference
* loops). Before returning, `dispose` should chain up to the `dispose` method
* of the parent class.
*/
vfunc_dispose(): void;
/**
* instance finalization function, should finish the finalization of
* the instance begun in `dispose` and chain up to the `finalize` method of the
* parent class.
*/
vfunc_finalize(): void;
/**
* the generic getter for all properties of this type. Should be
* overridden for every type with properties.
* @param property_id
* @param value
* @param pspec
*/
vfunc_get_property(property_id: number, value: GObject.Value | any, pspec: GObject.ParamSpec): void;
/**
* Emits a "notify" signal for the property `property_name` on `object`.
*
* When possible, eg. when signaling a property change from within the class
* that registered the property, you should use g_object_notify_by_pspec()
* instead.
*
* Note that emission of the notify signal may be blocked with
* g_object_freeze_notify(). In this case, the signal emissions are queued
* and will be emitted (in reverse order) when g_object_thaw_notify() is
* called.
* @param pspec
*/
vfunc_notify(pspec: GObject.ParamSpec): void;
/**
* the generic setter for all properties of this type. Should be
* overridden for every type with properties. If implementations of
* `set_property` don't emit property change notification explicitly, this will
* be done implicitly by the type system. However, if the notify signal is
* emitted explicitly, the type system will not emit it a second time.
* @param property_id
* @param value
* @param pspec
*/
vfunc_set_property(property_id: number, value: GObject.Value | any, pspec: GObject.ParamSpec): void;
/**
* Disconnects a handler from an instance so it will not be called during any future or currently ongoing emissions of the signal it has been connected to.
* @param id Handler ID of the handler to be disconnected
*/
disconnect(id: number): void;
/**
* Sets multiple properties of an object at once. The properties argument should be a dictionary mapping property names to values.
* @param properties Object containing the properties to set
*/
set(properties: { [key: string]: any }): void;
/**
* Blocks a handler of an instance so it will not be called during any signal emissions
* @param id Handler ID of the handler to be blocked
*/
block_signal_handler(id: number): void;
/**
* Unblocks a handler so it will be called again during any signal emissions
* @param id Handler ID of the handler to be unblocked
*/
unblock_signal_handler(id: number): void;
/**
* Stops a signal's emission by the given signal name. This will prevent the default handler and any subsequent signal handlers from being invoked.
* @param detailedName Name of the signal to stop emission of
*/
stop_emission_by_name(detailedName: string): void;
}
namespace Keymap {
// Constructor properties interface
interface ConstructorProps extends Object.ConstructorProps {}
}
/**
* An IBusKeymap defines the mapping between keyboard scancodes and
* keyboard symbols such as numbers, alphabets, and punctuation marks.
*
* Some input methods assume certain keyboard layout
* (such as Chewing and Wubi requires an US-QWERTY layout),
* and expect key symbols to be arranged in that order.
* These input methods should new an IBusKeymap
* instance and define the keyboard layout.
* Then ibus_keymap_lookup_keysym() can
* convert scancodes back to the key symbols.
*
* see_also: #IBusComponent, #IBusEngineDesc
*/
class Keymap extends Object {
static $gtype: GObject.GType;
// Fields
name: string;
keymap: number[];
// Constructors
constructor(properties?: Partial, ...args: any[]);
_init(...args: any[]): void;
static ['new'](name: string): Keymap;
// Conflicted with IBus.Object.new
static ['new'](...args: never[]): any;
// Static methods
/**
* Get an IBusKeymap associated with the giving name.
*
* This function loads the keymap file specified in `name`
* in the IBUS_DATA_DIR/keymaps directory.
* @param name The keymap file to be loaded, such as 'us', 'jp'.
*/
static get(name: string): Keymap;
// Methods
/**
* Converts the scancode to keysym, given the keymap.
* @param keycode A scancode to be converted.
* @param state Modifier flags(such as Ctrl, Shift).
* @returns Corresponding keysym.
*/
lookup_keysym(keycode: number, state: number): number;
}
namespace LookupTable {
// Constructor properties interface
interface ConstructorProps extends Serializable.ConstructorProps {}
}
/**
* An IBusLookuptable stores the candidate words or phrases for users to
* choose from.
*
* Use ibus_engine_update_lookup_table(), ibus_engine_show_lookup_table(),
* and ibus_engine_hide_lookup_table() to update, show and hide the lookup
* table.
*
* see_also: #IBusEngine
*/
class LookupTable extends Serializable {
static $gtype: GObject.GType;
// Fields
page_size: number;
cursor_pos: number;
cursor_visible: boolean;
round: boolean;
orientation: number;
candidates: any[];
labels: any[];
// Constructors
constructor(properties?: Partial, ...args: any[]);
_init(...args: any[]): void;
static ['new'](page_size: number, cursor_pos: number, cursor_visible: boolean, round: boolean): LookupTable;
// Conflicted with IBus.Serializable.new
static ['new'](...args: never[]): any;
// Methods
/**
* Append a candidate word/phrase to IBusLookupTable, and increase reference.
* @param text candidate word/phrase to be appended (in IBusText format).
*/
append_candidate(text: Text): void;
/**
* Append a candidate word/phrase to IBusLookupTable, and increase reference.
* This function is needed if the input method select candidate with
* non-numeric keys such as "asdfghjkl;".
* @param text A candidate label to be appended (in IBusText format).
*/
append_label(text: Text): void;
/**
* Clear and remove all candidate from an IBusLookupTable.
*/
clear(): void;
/**
* Go to next candidate of an #IBusLookupTable.
*
* It returns FALSE if it is already at the last candidate,
* unless table>-round==TRUE, where it will go
* to the first candidate.
* @returns %TRUE if succeed.
*/
cursor_down(): boolean;
/**
* Go to previous candidate of an #IBusLookupTable.
*
* It returns FALSE if it is already at the first candidate,
* unless table>-round==TRUE, where it will go
* to the last candidate.
* @returns %TRUE if succeed.
*/
cursor_up(): boolean;
/**
* Return #IBusText at the given index. Borrowed reference.
* @param index Index in the Lookup table.
* @returns IBusText at the given index; NULL if no such #IBusText.
*/
get_candidate(index: number): Text;
/**
* Gets the cursor position in current page of #IBusLookupTable.
* @returns The position of cursor in current page.
*/
get_cursor_in_page(): number;
/**
* Gets the cursor position of #IBusLookupTable.
* @returns The position of cursor.
*/
get_cursor_pos(): number;
/**
* Return #IBusText at the given index. Borrowed reference.
* @param index Index in the Lookup table.
* @returns #IBusText at the given index; %NULL if no such #IBusText.
*/
get_label(index: number): Text;
/**
* Return the number of candidate in the table.
* @returns The number of candidates in the table
*/
get_number_of_candidates(): number;
/**
* Returns the orientation of the #IBusLookupTable.
* @returns The orientation of the @table.
*/
get_orientation(): number;
/**
* Gets the number of candidate shown per page.
* @returns Page size, i.e., number of candidate shown per page. dd
*/
get_page_size(): number;
/**
* Returns whether the cursor of an #IBusLookupTable is visible.
* @returns Whether the cursor of @table is visible.
*/
is_cursor_visible(): boolean;
/**
* Returns whether the #IBusLookupTable is round.
* @returns Whether the @table is round.
*/
is_round(): boolean;
/**
* Go to next page of an #IBusLookupTable.
*
* It returns FALSE if it is already at the last page,
* unless table>-round==TRUE, where it will go
* to the first page.
* @returns %TRUE if succeed.
*/
page_down(): boolean;
/**
* Go to previous page of an #IBusLookupTable.
*
* It returns FALSE if it is already at the first page,
* unless table>-round==TRUE, where it will go
* to the last page.
* @returns %TRUE if succeed.
*/
page_up(): boolean;
/**
* Set the cursor position of IBusLookupTable.
* @param cursor_pos The position of cursor.
*/
set_cursor_pos(cursor_pos: number): void;
/**
* Set whether to make the cursor of an IBusLookupTable visible or not.
* @param visible Whether to make the cursor of @table visible.
*/
set_cursor_visible(visible: boolean): void;
/**
* Append a candidate word/phrase to IBusLookupTable, and increase reference.
* This function is needed if the input method select candidate with
* non-numeric keys such as "asdfghjkl;".
* @param index Intex in the Lookup table.
* @param text A candidate label to be appended (in IBusText format).
*/
set_label(index: number, text: Text): void;
/**
* Set the orientation.
* @param orientation .
*/
set_orientation(orientation: number): void;
/**
* Set the number of candidate shown per page.
* @param page_size number of candidate shown per page.
*/
set_page_size(page_size: number): void;
/**
* Set whether to make the IBusLookupTable round or not.
* @param round Whether to make @table round.
*/
set_round(round: boolean): void;
}
namespace Object {
// Signal callback interfaces
interface Destroy {
(): void;
}
// Constructor properties interface
interface ConstructorProps extends GObject.InitiallyUnowned.ConstructorProps {}
}
/**
* IBusObject is the base object for all objects in IBus.
*/
class Object extends GObject.InitiallyUnowned {
static $gtype: GObject.GType