/// /// /// /// /** * 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; // Fields flags: number; // Constructors constructor(properties?: Partial, ...args: any[]); _init(...args: any[]): void; static ['new'](): Object; // 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: 'destroy', callback: (_source: this) => void): number; connect_after(signal: 'destroy', callback: (_source: this) => void): number; emit(signal: 'destroy'): void; // Virtual methods /** * Emit the "destroy" signal notifying all reference holders that they should * release the #IBusObject. * * The memory for the object itself won't be deleted until its reference count * actually drops to 0; ibus_object_destroy merely asks reference holders to * release their references. It does not free the object. */ vfunc_destroy(): void; // Methods /** * Emit the "destroy" signal notifying all reference holders that they should * release the #IBusObject. * * The memory for the object itself won't be deleted until its reference count * actually drops to 0; ibus_object_destroy merely asks reference holders to * release their references. It does not free the object. */ destroy(): void; } namespace ObservedPath { // Constructor properties interface interface ConstructorProps extends Serializable.ConstructorProps {} } /** * IBusObservedPath provides methods for file path manipulation, * such as monitor modification, directory tree traversal. */ class ObservedPath extends Serializable { static $gtype: GObject.GType; // Fields path: string; mtime: number; is_dir: boolean; is_exist: boolean; // Constructors constructor(properties?: Partial, ...args: any[]); _init(...args: any[]): void; static ['new'](path: string, fill_stat: boolean): ObservedPath; // Conflicted with IBus.Serializable.new static ['new'](...args: never[]): any; static new_from_xml_node(node: XML, fill_stat: boolean): ObservedPath; // Methods /** * Checks whether the path is modified by comparing the mtime in object and * mtime in file system. * @returns %TRUE if imtime is changed, otherwise %FALSE. */ check_modification(): boolean; /** * Append the observed path to a string with following format: * <path mtime="<i>modified time</i>" ><i>path</i></path> * @param output Path is appended to. * @param indent number of indent. */ output(output: GLib.String, indent: number): void; /** * Recursively traverse the path and put the files and subdirectory in to * a newly allocated * GLists, if the `path` is a directory. Otherwise returns NULL. * @param dir_only Only looks for subdirs, not files * @returns A newly allocate GList which holds content in path; NULL if @path is not directory. */ traverse(dir_only: boolean): ObservedPath[]; } namespace PanelService { // Signal callback interfaces interface CandidateClickedLookupTable { (object: number, p0: number, p1: number): void; } interface CommitTextReceived { (text: Text): void; } interface CursorDownLookupTable { (): void; } interface CursorUpLookupTable { (): void; } interface DestroyContext { (input_context_path: string): void; } interface FocusIn { (input_context_path: string): void; } interface FocusOut { (input_context_path: string): void; } interface HideAuxiliaryText { (): void; } interface HideLanguageBar { (): void; } interface HideLookupTable { (): void; } interface HidePreeditText { (): void; } interface PageDownLookupTable { (): void; } interface PageUpLookupTable { (): void; } interface PanelExtensionReceived { (data: ExtensionEvent): void; } interface ProcessKeyEvent { (keyval: number, keycode: number, state: number): boolean; } interface RegisterProperties { (prop_list: PropList): void; } interface Reset { (): void; } interface SetContentType { (purpose: number, hints: number): void; } interface SetCursorLocation { (x: number, y: number, w: number, h: number): void; } interface SetCursorLocationRelative { (x: number, y: number, w: number, h: number): void; } interface ShowAuxiliaryText { (): void; } interface ShowLanguageBar { (): void; } interface ShowLookupTable { (): void; } interface ShowPreeditText { (): void; } interface StartSetup { (): void; } interface StateChanged { (): void; } interface UpdateAuxiliaryText { (text: Text, visible: boolean): void; } interface UpdateLookupTable { (lookup_table: LookupTable, visible: boolean): void; } interface UpdatePreeditText { (text: Text, cursor_pos: number, visible: boolean): void; } interface UpdateProperty { (prop: Property): void; } // Constructor properties interface interface ConstructorProps extends Service.ConstructorProps {} } /** * An IBusPanelService is a base class for UI services. * Developers can "extend" this class for panel UI development. */ class PanelService extends Service { static $gtype: GObject.GType; // Constructors constructor(properties?: Partial, ...args: any[]); _init(...args: any[]): void; static ['new'](connection: Gio.DBusConnection): PanelService; // 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: 'candidate-clicked-lookup-table', callback: (_source: this, object: number, p0: number, p1: number) => void, ): number; connect_after( signal: 'candidate-clicked-lookup-table', callback: (_source: this, object: number, p0: number, p1: number) => void, ): number; emit(signal: 'candidate-clicked-lookup-table', object: number, p0: number, p1: number): void; connect(signal: 'commit-text-received', callback: (_source: this, text: Text) => void): number; connect_after(signal: 'commit-text-received', callback: (_source: this, text: Text) => void): number; emit(signal: 'commit-text-received', 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: 'destroy-context', callback: (_source: this, input_context_path: string) => void): number; connect_after( signal: 'destroy-context', callback: (_source: this, input_context_path: string) => void, ): number; emit(signal: 'destroy-context', input_context_path: string): void; connect(signal: 'focus-in', callback: (_source: this, input_context_path: string) => void): number; connect_after(signal: 'focus-in', callback: (_source: this, input_context_path: string) => void): number; emit(signal: 'focus-in', input_context_path: string): void; connect(signal: 'focus-out', callback: (_source: this, input_context_path: string) => void): number; connect_after(signal: 'focus-out', callback: (_source: this, input_context_path: string) => void): number; emit(signal: 'focus-out', input_context_path: string): 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-language-bar', callback: (_source: this) => void): number; connect_after(signal: 'hide-language-bar', callback: (_source: this) => void): number; emit(signal: 'hide-language-bar'): 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: 'panel-extension-received', callback: (_source: this, data: ExtensionEvent) => void, ): number; connect_after( signal: 'panel-extension-received', callback: (_source: this, data: ExtensionEvent) => void, ): number; emit(signal: 'panel-extension-received', data: ExtensionEvent): 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: 'register-properties', callback: (_source: this, prop_list: PropList) => void): number; connect_after( signal: 'register-properties', callback: (_source: this, prop_list: PropList) => void, ): number; emit(signal: 'register-properties', prop_list: PropList): 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-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-cursor-location-relative', callback: (_source: this, x: number, y: number, w: number, h: number) => void, ): number; connect_after( signal: 'set-cursor-location-relative', callback: (_source: this, x: number, y: number, w: number, h: number) => void, ): number; emit(signal: 'set-cursor-location-relative', x: number, y: number, w: number, h: number): 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-language-bar', callback: (_source: this) => void): number; connect_after(signal: 'show-language-bar', callback: (_source: this) => void): number; emit(signal: 'show-language-bar'): 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: 'start-setup', callback: (_source: this) => void): number; connect_after(signal: 'start-setup', callback: (_source: this) => void): number; emit(signal: 'start-setup'): void; connect(signal: 'state-changed', callback: (_source: this) => void): number; connect_after(signal: 'state-changed', callback: (_source: this) => void): number; emit(signal: 'state-changed'): 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, lookup_table: LookupTable, visible: boolean) => void, ): number; connect_after( signal: 'update-lookup-table', callback: (_source: this, lookup_table: LookupTable, visible: boolean) => void, ): number; emit(signal: 'update-lookup-table', lookup_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-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; // Virtual methods vfunc_candidate_clicked_lookup_table(index: number, button: number, state: number): void; vfunc_commit_text_received(text: Text): void; vfunc_cursor_down_lookup_table(): void; vfunc_cursor_up_lookup_table(): void; vfunc_destroy_context(input_context_path: string): void; vfunc_focus_in(input_context_path: string): void; vfunc_focus_out(input_context_path: string): void; vfunc_hide_auxiliary_text(): void; vfunc_hide_language_bar(): void; vfunc_hide_lookup_table(): void; vfunc_hide_preedit_text(): void; vfunc_page_down_lookup_table(): void; vfunc_page_up_lookup_table(): void; vfunc_panel_extension_received(event: ExtensionEvent): void; vfunc_process_key_event(keyval: number, keycode: number, state: number): boolean; vfunc_register_properties(prop_list: PropList): void; vfunc_reset(): 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_cursor_location_relative(x: number, y: number, w: number, h: number): void; vfunc_show_auxiliary_text(): void; vfunc_show_language_bar(): void; vfunc_show_lookup_table(): void; vfunc_show_preedit_text(): void; vfunc_start_setup(): void; vfunc_state_changed(): void; vfunc_update_auxiliary_text(text: Text, visible: boolean): void; vfunc_update_lookup_table(lookup_table: LookupTable, visible: boolean): void; vfunc_update_preedit_text(text: Text, cursor_pos: number, visible: boolean): void; vfunc_update_property(prop: Property): void; // Methods /** * Notify that a candidate is clicked * by sending a "CandidateClicked" to IBus service. * @param index Index in the Lookup table * @param button GdkEventButton::button (1: left button, etc.) * @param state GdkEventButton::state (key modifier flags) */ candidate_clicked(index: number, button: number, state: number): void; /** * Notify that a text is sent * by sending a "CommitText" message to IBus service. * @param text An #IBusText */ commit_text(text: Text): void; /** * Notify that the cursor is down * by sending a "CursorDown" to IBus service. */ cursor_down(): void; /** * Notify that the cursor is up * by sending a "CursorUp" to IBus service. */ cursor_up(): void; /** * Notify that the preedit is hidden by the panel extension */ hide_preedit_text_received(): void; /** * Notify that the page is down * by sending a "PageDown" to IBus service. */ page_down(): void; /** * Notify that the page is up * by sending a "PageUp" to IBus service. */ page_up(): void; /** * Enable or disable a panel extension with #IBusExtensionEvent. * Notify that a data is sent * by sending a "PanelExtension" message to IBus panel extension service. * @param event A #PanelExtensionEvent which is sent to a panel extension. */ panel_extension(event: ExtensionEvent): void; /** * Notify that a property is active * by sending a "PropertyActivate" message to IBus service. * @param prop_name A property name * @param prop_state State of the property */ property_activate(prop_name: string, prop_state: number): void; /** * Notify that a property is hidden * by sending a "ValueChanged" message to IBus service. * @param prop_name A property name */ property_hide(prop_name: string): void; /** * Notify that a property is shown * by sending a "ValueChanged" message to IBus service. * @param prop_name A property name */ property_show(prop_name: string): void; /** * Notify that the preedit is shown by the panel extension */ show_preedit_text_received(): void; /** * Notify that the auxilirary is updated by the panel extension. * * (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 text An #IBusText * @param visible Whether the auxilirary text is visible. */ update_auxiliary_text_received(text: Text, visible: boolean): void; /** * Notify that the lookup table is updated by the panel extension. * * (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 table An #IBusLookupTable * @param visible Whether the lookup table is visible. */ update_lookup_table_received(table: LookupTable, visible: boolean): void; /** * Notify that the preedit is updated by the panel extension * * (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 text Update content. * @param cursor_pos Current position of cursor * @param visible Whether the pre-edit buffer is visible. */ update_preedit_text_received(text: Text, cursor_pos: number, visible: boolean): void; } namespace PropList { // Constructor properties interface interface ConstructorProps extends Serializable.ConstructorProps {} } /** * See_also: #IBusProperty, #IBusEngine */ class PropList extends Serializable { static $gtype: GObject.GType; // Fields properties: any[]; // Constructors constructor(properties?: Partial, ...args: any[]); _init(...args: any[]): void; static ['new'](): PropList; // Methods /** * Append an IBusProperty to an IBusPropList, and increase reference. * @param prop IBusProperty to be append to @prop_list. */ append(prop: Property): void; /** * Gets #IBusProperty at given index. Borrowed reference. * @param index Index of an IBusPropList. * @returns #IBusProperty at given index, %NULL if no such #IBusProperty. */ get(index: number): Property; /** * Update an IBusProperty in IBusPropList. * @param prop IBusProperty to be update. * @returns %TRUE if succeeded, %FALSE otherwise. */ update_property(prop: Property): boolean; } namespace Property { // Constructor properties interface interface ConstructorProps extends Serializable.ConstructorProps { icon: string; key: string; label: Text; prop_type: PropType; propType: PropType; sensitive: boolean; state: PropState; sub_props: PropList; subProps: PropList; symbol: Text; tooltip: Text; visible: boolean; } } /** * An IBusProperty is an UI component like a button or a menu item * which shows the status of corresponding input method engine property. * End user can operate and see the current status of IME through these components. * For example, ibus-chewing users change the English/Chinese input mode by * pressing ctrl-space or click on the Eng/Chi switch button. * And the IBusProperty shows the change correspondingly. * * see_also: #IBusPropList, #IBusEngine */ class Property extends Serializable { static $gtype: GObject.GType; // Properties get icon(): string; set icon(val: string); get key(): string; get label(): Text; set label(val: Text); get prop_type(): PropType; get propType(): PropType; get sensitive(): boolean; set sensitive(val: boolean); get state(): PropState; set state(val: PropState); get sub_props(): PropList; set sub_props(val: PropList); get subProps(): PropList; set subProps(val: PropList); get symbol(): Text; set symbol(val: Text); get tooltip(): Text; set tooltip(val: Text); get visible(): boolean; set visible(val: boolean); // Constructors constructor(properties?: Partial, ...args: any[]); _init(...args: any[]): void; static ['new']( key: string, type: PropType, label: Text, icon: string | null, tooltip: Text, sensitive: boolean, visible: boolean, state: PropState, prop_list?: PropList | null, ): Property; // Conflicted with IBus.Serializable.new static ['new'](...args: never[]): any; // Methods /** * Get the icon of #IBusProperty. * @returns the icon of #IBusProperty. Should not be freed. */ get_icon(): string; /** * Get the key of #IBusProperty. * @returns the key of #IBusProperty. Should not be freed. */ get_key(): string; /** * Get the label of #IBusProperty. * @returns the label of #IBusProperty. Should not be freed. */ get_label(): Text; get_prop_type(): PropType; /** * Get the sensitive of #IBusProperty. * @returns the sensitive of #IBusProperty. */ get_sensitive(): boolean; /** * Get the state of #IBusProperty. * @returns the state of #IBusProperty. */ get_state(): PropState; /** * Get the IBusPropList of #IBusProperty. * @returns the IBusPropList of #IBusProperty. Should not be freed. */ get_sub_props(): PropList; /** * Get the symbol of #IBusProperty. * @returns the symbol of #IBusProperty. Should not be freed. */ get_symbol(): Text; /** * Get the tooltip of #IBusProperty. * @returns the tooltip of #IBusProperty. Should not be freed. */ get_tooltip(): Text; /** * Get the visible of #IBusProperty. * @returns the visible of #IBusProperty. */ get_visible(): boolean; /** * Set the icon of #IBusProperty. * @param icon Icon shown in UI. It could be a full path of an icon file or an icon name. */ set_icon(icon: string): void; /** * Set the label of #IBusProperty. * @param label Text shown in UI. */ set_label(label: Text): void; /** * Set whether the #IBusProperty is sensitive. * @param sensitive Whether the #IBusProperty is sensitive. */ set_sensitive(sensitive: boolean): void; /** * Set the state of the #IBusProperty. * @param state The state of the #IBusProperty. */ set_state(state: PropState | null): void; /** * Set the sub IBusProperties. * @param prop_list #IBusPropList that contains sub IBusProperties. */ set_sub_props(prop_list: PropList): void; /** * Set the symbol of #IBusProperty. * @param symbol Text shown in UI. */ set_symbol(symbol: Text): void; /** * Set the tooltip of #IBusProperty. * @param tooltip Text of the tooltip. */ set_tooltip(tooltip: Text): void; /** * Set whether the #IBusProperty is visible. * @param visible Whether the #IBusProperty is visible. */ set_visible(visible: boolean): void; /** * Update the content of an #IBusProperty. * #IBusProperty `prop_update` can either be sub-property of `prop,` * or holds new values for `prop`. * @param prop_update #IBusPropList that contains sub IBusProperties. * @returns TRUE if update succeeded; FALSE otherwise. */ update(prop_update: Property): boolean; } namespace Proxy { // Signal callback interfaces interface Destroy { (): void; } // Constructor properties interface interface ConstructorProps extends Gio.DBusProxy.ConstructorProps, Gio.AsyncInitable.ConstructorProps, Gio.DBusInterface.ConstructorProps, Gio.Initable.ConstructorProps {} } /** * An IBusProxy is the base of all proxy objects, * which communicate the corresponding #IBusServices on the other end of * IBusConnection. * For example, IBus clients (such as editors, web browsers) invoke the proxy * object, * IBusInputContext to communicate with the InputContext service of the * ibus-daemon. * * Almost all services have corresponding proxies, except very simple services. */ class Proxy extends Gio.DBusProxy implements Gio.AsyncInitable, Gio.DBusInterface, Gio.Initable { static $gtype: GObject.GType; // Fields flags: number; own: boolean; // Constructors constructor(properties?: Partial, ...args: any[]); _init(...args: any[]): void; // 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: 'destroy', callback: (_source: this) => void): number; connect_after(signal: 'destroy', callback: (_source: this) => void): number; emit(signal: 'destroy'): void; // Virtual methods /** * Dispose the proxy object. If the dbus connection is alive and the own * variable above is TRUE (which is the default), * org.freedesktop.IBus.Service.Destroy method will be called. * Note that "destroy" signal might be emitted when ibus_proxy_destroy is * called or the underlying dbus connection for the proxy is terminated. * In the callback of the destroy signal, you might have to call something * like 'g_object_unref(the_proxy);'. */ vfunc_destroy(): void; // Methods /** * Dispose the proxy object. If the dbus connection is alive and the own * variable above is TRUE (which is the default), * org.freedesktop.IBus.Service.Destroy method will be called. * Note that "destroy" signal might be emitted when ibus_proxy_destroy is * called or the underlying dbus connection for the proxy is terminated. * In the callback of the destroy signal, you might have to call something * like 'g_object_unref(the_proxy);'. */ destroy(): 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): Proxy; // 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; /** * Gets the #GDBusObject that `interface_` belongs to, if any. * @returns A #GDBusObject or %NULL. The returned reference should be freed with g_object_unref(). */ get_object(): Gio.DBusObject | null; /** * Gets D-Bus introspection information for the D-Bus interface * implemented by `interface_`. * @returns A #GDBusInterfaceInfo. Do not free. */ get_info(): Gio.DBusInterfaceInfo; /** * Sets the #GDBusObject for `interface_` to `object`. * * Note that `interface_` will hold a weak reference to `object`. * @param object A #GDBusObject or %NULL. */ set_object(object?: Gio.DBusObject | null): void; /** * Gets the #GDBusObject that `interface_` belongs to, if any. */ vfunc_dup_object(): Gio.DBusObject | null; /** * Gets D-Bus introspection information for the D-Bus interface * implemented by `interface_`. */ vfunc_get_info(): Gio.DBusInterfaceInfo; /** * Sets the #GDBusObject for `interface_` to `object`. * * Note that `interface_` will hold a weak reference to `object`. * @param object A #GDBusObject or %NULL. */ vfunc_set_object(object?: Gio.DBusObject | null): void; /** * Initializes the object implementing the interface. * * This method is intended for language bindings. If writing in C, * g_initable_new() should typically be used instead. * * The object must be initialized before any real use after initial * construction, either with this function or g_async_initable_init_async(). * * 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. * * 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. See the [description][iface`Gio`.Initable#description] for more details. * * Callers should not assume that a class which implements #GInitable can be * initialized multiple times, unless the class explicitly documents itself as * supporting this. Generally, a class’ implementation of init() can assume * (and assert) that it will only be called once. Previously, this documentation * recommended all #GInitable implementations should be idempotent; that * recommendation was relaxed in GLib 2.54. * * If a class explicitly supports being initialized multiple times, it is * recommended that the method is idempotent: multiple calls with the same * arguments should return the same results. Only the first call initializes * the object; further calls return the result of the first call. * * One reason why a class might need to support idempotent initialization is if * it is designed to be used via the singleton pattern, with a * #GObjectClass.constructor that sometimes returns an existing instance. * In this pattern, a caller would expect to be able to call g_initable_init() * on the result of g_object_new(), regardless of whether it is in fact a new * instance. * @param cancellable optional #GCancellable object, %NULL to ignore. * @returns %TRUE if successful. If an error has occurred, this function will return %FALSE and set @error appropriately if present. */ init(cancellable?: Gio.Cancellable | null): boolean; /** * Initializes the object implementing the interface. * * This method is intended for language bindings. If writing in C, * g_initable_new() should typically be used instead. * * The object must be initialized before any real use after initial * construction, either with this function or g_async_initable_init_async(). * * 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. * * 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. See the [description][iface`Gio`.Initable#description] for more details. * * Callers should not assume that a class which implements #GInitable can be * initialized multiple times, unless the class explicitly documents itself as * supporting this. Generally, a class’ implementation of init() can assume * (and assert) that it will only be called once. Previously, this documentation * recommended all #GInitable implementations should be idempotent; that * recommendation was relaxed in GLib 2.54. * * If a class explicitly supports being initialized multiple times, it is * recommended that the method is idempotent: multiple calls with the same * arguments should return the same results. Only the first call initializes * the object; further calls return the result of the first call. * * One reason why a class might need to support idempotent initialization is if * it is designed to be used via the singleton pattern, with a * #GObjectClass.constructor that sometimes returns an existing instance. * In this pattern, a caller would expect to be able to call g_initable_init() * on the result of g_object_new(), regardless of whether it is in fact a new * instance. * @param cancellable optional #GCancellable object, %NULL to ignore. */ vfunc_init(cancellable?: Gio.Cancellable | null): 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 Registry { // Signal callback interfaces interface Changed { (): void; } // Constructor properties interface interface ConstructorProps extends Serializable.ConstructorProps {} } /** * An #IBusRegistry loads IBus component files and generates the cache files. * * see_also: #IBusComponent */ class Registry extends Serializable { static $gtype: GObject.GType; // Constructors constructor(properties?: Partial, ...args: any[]); _init(...args: any[]): void; static ['new'](): Registry; // 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: 'changed', callback: (_source: this) => void): number; connect_after(signal: 'changed', callback: (_source: this) => void): number; emit(signal: 'changed'): void; // Methods /** * Check if the registry is updated. * @returns %TRUE if mtime is changed; %FALSE otherwise. */ check_modification(): boolean; /** * List components. * @returns a list of #IBusComponent objects. The caller has to call g_list_free() for the returned list. */ get_components(): Component[]; /** * List observed paths. * @returns a list of #IBusObservedPath objects. The caller has to call g_list_free() for the returned list. */ get_observed_paths(): ObservedPath[]; /** * Read all XML files in a IBus component directory (typically * /usr/share/ibus/component/ *.xml) and update the registry object. * IBUS_COMPONENT_PATH environment valuable is also available for * the custom component directories, whose delimiter is ':'. */ load(): void; /** * Load the user or system registry cache. * @param is_user %TRUE if the registry cache is loaded in the user directory. * @returns %TRUE if the cache exists and is loaded successfully, %FALSE otherwise. */ load_cache(is_user: boolean): boolean; /** * Load the registry cache `filename`. * @param filename The file path of the registry cache * @returns %TRUE if the cache exists and is loaded successfully, %FALSE otherwise. */ load_cache_file(filename: string): boolean; /** * Read all XML files in `dirname,` create a #IBusComponent object for each file, * and add the component objects to the registry. * If `dirname` is "/usr/share/ibus/component", this API and * ibus_registry_load() are same. * @param dirname IBus component directory which includes XML files. */ load_in_dir(dirname: string): void; /** * Output #IBusRegistry 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; /** * Save the registry in a user directory or system directory. * @param is_user %TRUE if the registry cache is saved in the user directory. * @returns %TRUE if the cache is saved successfully, %FALSE otherwise. */ save_cache(is_user: boolean): boolean; /** * Save the registry cache `filename`. * @param filename The file path of the registry cache * @returns %TRUE if the cache is saved successfully, %FALSE otherwise. */ save_cache_file(filename: string): boolean; /** * Start to monitor observed paths. */ start_monitor_changes(): void; } namespace Serializable { // Constructor properties interface interface ConstructorProps extends Object.ConstructorProps {} } /** * An #IBusSerializable is an IBus object which can be serialized, that is, * to be to and from a #GVariant. * * This class is to be extended by other class that requires serialization. * An extended class should overrides following methods: * * * serialize(object,iter): for serialize. * * * deserialize(object,iter): for deserialize. * * * copy(desc,src): for copy between IBusSerializable. * * * See IBusSerializableSerializeFunc(), IBusSerializableDeserializeFunc(), IBusSerializableCopyFunc() * for function prototype. */ class Serializable extends Object { static $gtype: GObject.GType; // Constructors constructor(properties?: Partial, ...args: any[]); _init(...args: any[]): void; static ['new'](): Serializable; // Static methods /** * Deserialize a #GVariant to an #IBusSerializable/ * The deserialize method should be implemented in extended class. * @param variant A #GVariant. */ static deserialize_object(variant: GLib.Variant): Serializable; // Virtual methods vfunc_copy(src: Serializable): boolean; vfunc_deserialize(variant: GLib.Variant): number; vfunc_serialize(builder: GLib.VariantBuilder): boolean; // Methods /** * Clone an #IBusSerializable. * The copy method should be implemented in extended class. * @returns A newly allocated clone object; or %NULL if @object is not serializable. See also: IBusSerializableCopyFunc(). */ copy(): Serializable; /** * Gets a value from attachment of an #IBusSerializable. * @param key String formatted key for indexing value. * @returns The attached value; or %NULL if fail to retrieve the value. See also: ibus_serializable_set_attachment(). */ get_qattachment(key: GLib.Quark): GLib.Variant; /** * Remove a value from attachment of an #IBusSerializable. * See also: ibus_serializable_remove_attachment(). * @param key String formatted key for indexing value. */ remove_qattachment(key: GLib.Quark): void; /** * Serialize an #IBusSerializable to a #GVariant. * The serialize method should be implemented in extended class. * @returns A #GVariant. See also: IBusSerializableCopyFunc(). */ serialize_object(): GLib.Variant; /** * Attach a value to an #IBusSerializable. If the value is floating, * the serializable will take the ownership. * * See also: ibus_serializable_set_attachment(). * @param key String formatted key for indexing value. * @param value Value to be attached or %NULL to remove any prevoius value. */ set_qattachment(key: GLib.Quark, value: GLib.Variant): void; } namespace Service { // Constructor properties interface interface ConstructorProps extends Object.ConstructorProps { connection: Gio.DBusConnection; object_path: string; objectPath: string; } } /** * An IBusService is a base class for services. */ class Service extends Object { static $gtype: GObject.GType; // Properties /** * The connection of service object. */ get connection(): Gio.DBusConnection; set connection(val: Gio.DBusConnection); /** * The path of service object. */ get object_path(): string; /** * The path of service object. */ get objectPath(): string; // Constructors constructor(properties?: Partial, ...args: any[]); _init(...args: any[]): void; static ['new'](connection: Gio.DBusConnection, path: string): Service; // Conflicted with IBus.Object.new static ['new'](...args: never[]): any; // Static methods static add_interfaces(xml_data: string): boolean; static free_interfaces(depth: number): number; // Virtual methods /** * The ::service_get_property class method is to connect * GDBusInterfaceGetPropertyFunc(). * @param connection A dbus connection. * @param sender A sender. * @param object_path An object path. * @param interface_name An interface name. * @param property_name A property name. */ vfunc_service_get_property( connection: Gio.DBusConnection, sender: string, object_path: string, interface_name: string, property_name: string, ): GLib.Variant | null; /** * The ::service_method_call class method is to connect * GDBusInterfaceMethodCallFunc(). * @param connection A dbus connection. * @param sender A sender. * @param object_path An object path. * @param interface_name An interface name. * @param method_name A method name. * @param parameters A parameters. * @param invocation A dbus method invocation. */ vfunc_service_method_call( connection: Gio.DBusConnection, sender: string, object_path: string, interface_name: string, method_name: string, parameters: GLib.Variant, invocation: Gio.DBusMethodInvocation, ): void; /** * The ::service_set_property class method is to connect * GDBusInterfaceSetPropertyFunc(). * @param connection A dbus connection. * @param sender A sender. * @param object_path An object path. * @param interface_name An interface name. * @param property_name An property name. * @param value An property value. */ vfunc_service_set_property( connection: Gio.DBusConnection, sender: string, object_path: string, interface_name: string, property_name: string, value: GLib.Variant, ): boolean; // Methods emit_signal( dest_bus_name: string, interface_name: string, signal_name: string, parameters: GLib.Variant, ): boolean; /** * Gets a connections. * @returns A #GDBusConnection of an #IBusService instance. */ get_connection(): Gio.DBusConnection; /** * Gets the object path of an IBusService. * @returns The object path of @service */ get_object_path(): string; /** * Registers service to a connection. * @param connection A GDBusConnection the service will be registered to. * @returns %TRUE if the service was registered, %FALSE otherwise. */ register(connection: Gio.DBusConnection): boolean; /** * Unregisters service from a connection. * @param connection A GDBusConnection the service was registered with. */ unregister(connection: Gio.DBusConnection): void; } namespace Text { // Constructor properties interface interface ConstructorProps extends Serializable.ConstructorProps {} } /** * An IBusText is the main text object in IBus. * The text is decorated according to associated IBusAttribute, * e.g. the foreground/background color, underline, and * applied scope. * * see_also: #IBusAttribute */ class Text extends Serializable { static $gtype: GObject.GType; // Fields is_static: boolean; text: string; attrs: AttrList; // Constructors constructor(properties?: Partial, ...args: any[]); _init(...args: any[]): void; static new_from_string(str: string): Text; static new_from_ucs4(str: number): Text; static new_from_unichar(c: number): Text; // Methods /** * Append an IBusAttribute for IBusText. * @param type IBusAttributeType for @text. * @param value Value for the type. * @param start_index The starting index, inclusive. * @param end_index The ending index, exclusive. */ append_attribute(type: number, value: number, start_index: number, end_index: number): void; /** * Return the attributes in an #IBusText. Should not be freed. * @returns the attrs in @text. */ get_attributes(): AttrList; /** * Return number of characters in an #IBusText. * This function is based on g_utf8_strlen(), so unlike strlen(), * it does not count by bytes but characters instead. * @returns Number of character in @text, not counted by bytes. */ get_length(): number; /** * Return the text in an #IBusText. Should not be freed. * @returns the text in @text. */ get_text(): string; set_attributes(attrs: AttrList): void; } namespace UnicodeBlock { // Constructor properties interface interface ConstructorProps extends Serializable.ConstructorProps { end: number; name: string; start: number; } } class UnicodeBlock extends Serializable { static $gtype: GObject.GType; // Properties /** * The Uniode end code point */ get end(): number; /** * The Uniode block name */ get name(): string; set name(val: string); /** * The Uniode start code point */ get start(): number; // Constructors constructor(properties?: Partial, ...args: any[]); _init(...args: any[]): void; // Static methods static load(path: string): UnicodeBlock[]; /** * Save the list of #IBusUnicodeBlock to the cache file. * @param path A path of the saved Unicode block. * @param list A list of unicode block. */ static save(path: string, list: UnicodeBlock[]): void; // Methods /** * Gets the end code point in #IBusUnicodeBlock. * @returns end property in #IBusUnicodeBlock */ get_end(): number; /** * Gets the name in #IBusUnicodeBlock. It should not be freed. * @returns name property in #IBusUnicodeBlock */ get_name(): string; /** * Gets the start code point in #IBusUnicodeBlock. * @returns start property in #IBusUnicodeBlock */ get_start(): number; } namespace UnicodeData { // Constructor properties interface interface ConstructorProps extends Serializable.ConstructorProps { alias: string; block_name: string; blockName: string; code: number; name: string; } } /** * Unicode data likes code, name, alias, block-name. * You can get extended values with g_object_get_properties. */ class UnicodeData extends Serializable { static $gtype: GObject.GType; // Properties /** * The Uniode alias name */ get alias(): string; set alias(val: string); /** * The Uniode block name */ get block_name(): string; set block_name(val: string); /** * The Uniode block name */ get blockName(): string; set blockName(val: string); /** * The Uniode code point */ get code(): number; /** * The Uniode name */ get name(): string; set name(val: string); // Constructors constructor(properties?: Partial, ...args: any[]); _init(...args: any[]): void; // Static methods static load(path: string, object?: GObject.Object | null): UnicodeData[]; /** * IBusUnicodeDataLoadAsyncFinish can receive the list of #IBusUnicodeData. * @param path A path of the saved dictionary file. * @param object If the #GObject has "unicode-deserialize-progress" signal, this function will emit (the number of desrialized #IBusUnicodeData, * the total number of #IBusUnicodeData) of uint values with that signal by 100 times. Otherwise %NULL. * @param cancellable cancellable. * @param callback IBusUnicodeDataLoadAsyncFinish. */ static load_async( path: string, object: GObject.Object | null, cancellable: Gio.Cancellable | null, callback: UnicodeDataLoadAsyncFinish, ): void; /** * Save the list of #IBusUnicodeData to the cache file. * @param path A path of the saved Unicode data. * @param list A list of unicode data. */ static save(path: string, list: UnicodeData[]): void; // Methods /** * Gets the alias in #IBusUnicodeData. It should not be freed. * @returns alias property in #IBusUnicodeData */ get_alias(): string; /** * Gets the block name in #IBusUnicodeData. It should not be freed. * @returns block-name property in #IBusUnicodeData */ get_block_name(): string; /** * Gets the code point in #IBusUnicodeData. * @returns code property in #IBusUnicodeData */ get_code(): number; /** * Gets the name in #IBusUnicodeData. It should not be freed. * @returns name property in #IBusUnicodeData */ get_name(): string; /** * Sets the block name in #IBusUnicodeData. * @param block_name A block name */ set_block_name(block_name: string): void; } namespace XEvent { // Constructor properties interface interface ConstructorProps extends Serializable.ConstructorProps { event_type: number; eventType: number; group: number; hardware_keycode: number; hardwareKeycode: number; is_modifier: boolean; isModifier: boolean; keyval: number; length: number; purpose: string; root: number; same_screen: boolean; sameScreen: boolean; send_event: number; sendEvent: number; serial: number; state: number; string: string; subwindow: number; time: number; version: number; window: number; x: number; x_root: number; xRoot: number; y: number; y_root: number; yRoot: number; } } /** * An IBusXEvent provides a wrapper of XEvent. * * see_also: #IBusComponent, #IBusEngineDesc */ class XEvent extends Serializable { static $gtype: GObject.GType; // Properties /** * IBusXEventType of this IBusXEvent. */ get event_type(): number; /** * IBusXEventType of this IBusXEvent. */ get eventType(): number; /** * group of this IBusXEvent. */ get group(): number; /** * hardware keycode of this IBusXEvent. */ get hardware_keycode(): number; /** * hardware keycode of this IBusXEvent. */ get hardwareKeycode(): number; /** * is_modifier of this IBusXEvent. */ get is_modifier(): boolean; /** * is_modifier of this IBusXEvent. */ get isModifier(): boolean; /** * keyval of this IBusXEvent. */ get keyval(): number; /** * keyval of this IBusXEvent. */ get length(): number; /** * purpose of this IBusXEvent. */ get purpose(): string; /** * root window of this IBusXEvent. */ get root(): number; /** * same_screen of this IBusXEvent. */ get same_screen(): boolean; /** * same_screen of this IBusXEvent. */ get sameScreen(): boolean; /** * send_event of this IBusXEvent. */ get send_event(): number; /** * send_event of this IBusXEvent. */ get sendEvent(): number; /** * serial of this IBusXEvent. */ get serial(): number; /** * state of this IBusXEvent. */ get state(): number; /** * string of this IBusXEvent. */ get string(): string; /** * subwindow of this IBusXEvent. */ get subwindow(): number; /** * time of this IBusXEvent. */ get time(): number; /** * Version of this IBusXEvent. */ get version(): number; /** * window of this IBusXEvent. */ get window(): number; /** * x of this IBusXEvent. */ get x(): number; /** * root-x of this IBusXEvent. */ get x_root(): number; /** * root-x of this IBusXEvent. */ get xRoot(): number; /** * x of this IBusXEvent. */ get y(): number; /** * root-y of this IBusXEvent. */ get y_root(): number; /** * root-y of this IBusXEvent. */ get yRoot(): number; // Constructors constructor(properties?: Partial, ...args: any[]); _init(...args: any[]): void; // Methods get_event_type(): XEventType; get_group(): number; get_hardware_keycode(): number; get_is_modifier(): boolean; get_keyval(): number; get_length(): number; get_purpose(): string; get_root(): number; get_same_screen(): boolean; get_send_event(): number; get_serial(): number; get_state(): number; get_string(): string; get_subwindow(): number; get_time(): number; get_version(): number; get_window(): number; get_x(): number; get_x_root(): number; get_y(): number; get_y_root(): number; } type AttrListClass = typeof AttrList; type AttributeClass = typeof Attribute; type BusClass = typeof Bus; abstract class BusPrivate { static $gtype: GObject.GType; // Constructors _init(...args: any[]): void; } type ComponentClass = typeof Component; abstract class ComponentPrivate { static $gtype: GObject.GType; // Constructors _init(...args: any[]): void; } type ConfigClass = typeof Config; abstract class ConfigPrivate { static $gtype: GObject.GType; // Constructors _init(...args: any[]): void; } type ConfigServiceClass = typeof ConfigService; type EmojiDataClass = typeof EmojiData; abstract class EmojiDataPrivate { static $gtype: GObject.GType; // Constructors _init(...args: any[]): void; } type EngineClass = typeof Engine; type EngineDescClass = typeof EngineDesc; abstract class EngineDescPrivate { static $gtype: GObject.GType; // Constructors _init(...args: any[]): void; } abstract class EnginePrivate { static $gtype: GObject.GType; // Constructors _init(...args: any[]): void; } type EngineSimpleClass = typeof EngineSimple; abstract class EngineSimplePrivate { static $gtype: GObject.GType; // Constructors _init(...args: any[]): void; } type ExtensionEventClass = typeof ExtensionEvent; abstract class ExtensionEventPrivate { static $gtype: GObject.GType; // Constructors _init(...args: any[]): void; } type FactoryClass = typeof Factory; abstract class FactoryPrivate { static $gtype: GObject.GType; // Constructors _init(...args: any[]): void; } type HotkeyProfileClass = typeof HotkeyProfile; type InputContextClass = typeof InputContext; type KeymapClass = typeof Keymap; type LookupTableClass = typeof LookupTable; type ObjectClass = typeof Object; abstract class ObjectPrivate { static $gtype: GObject.GType; // Constructors _init(...args: any[]): void; } type ObservedPathClass = typeof ObservedPath; type PanelServiceClass = typeof PanelService; /** * IBuProcessKeyEventData properties. */ class ProcessKeyEventData { static $gtype: GObject.GType; // Fields keyval: number; keycode: number; state: number; // Constructors constructor( properties?: Partial<{ keyval: number; keycode: number; state: number; }>, ); _init(...args: any[]): void; } type PropListClass = typeof PropList; type PropertyClass = typeof Property; abstract class PropertyPrivate { static $gtype: GObject.GType; // Constructors _init(...args: any[]): void; } type ProxyClass = typeof Proxy; /** * Rectangle definition. */ class Rectangle { static $gtype: GObject.GType; // Fields x: number; y: number; width: number; height: number; // Constructors constructor( properties?: Partial<{ x: number; y: number; width: number; height: number; }>, ); _init(...args: any[]): void; } type RegistryClass = typeof Registry; abstract class RegistryPrivate { static $gtype: GObject.GType; // Constructors _init(...args: any[]): void; } type SerializableClass = typeof Serializable; abstract class SerializablePrivate { static $gtype: GObject.GType; // Constructors _init(...args: any[]): void; } type ServiceClass = typeof Service; abstract class ServicePrivate { static $gtype: GObject.GType; // Constructors _init(...args: any[]): void; } type TextClass = typeof Text; type UnicodeBlockClass = typeof UnicodeBlock; abstract class UnicodeBlockPrivate { static $gtype: GObject.GType; // Constructors _init(...args: any[]): void; } type UnicodeDataClass = typeof UnicodeData; abstract class UnicodeDataPrivate { static $gtype: GObject.GType; // Constructors _init(...args: any[]): void; } type XEventClass = typeof XEvent; abstract class XEventPrivate { static $gtype: GObject.GType; // Constructors _init(...args: any[]): void; } /** * IBusXML lists data structure and handling function for XML in IBus. */ class XML { static $gtype: GObject.GType; // Fields name: string; text: string; attributes: string; sub_nodes: any[]; // Constructors constructor( properties?: Partial<{ name: string; text: string; attributes: string; }>, ); _init(...args: any[]): void; // Static methods /** * Parse a string buffer which contains an XML-formatted string, * and return a corresponding XML tree. * @param buffer Buffer to be parsed. */ static parse_buffer(buffer: string): XML; /** * Parse an XML file and return a corresponding XML tree. * @param name File name to be parsed. */ static parse_file(name: string): XML; // Methods /** * Creates a copy of `node,` which should be freed with * ibus_xml_free(). Primarily used by language bindings, * not that useful otherwise (since `node` can just be copied * by assignment in C). * @returns the newly allocated #IBusXML, which should be freed with ibus_xml_free(), or %NULL if @node was %NULL. */ copy(): XML; /** * Free an XML tree. */ free(): void; /** * Output an XML tree to a GString. * @param output GString which stores the output. */ output(output: GLib.String): void; } /** * Name of the imported GIR library * `see` https://gitlab.gnome.org/GNOME/gjs/-/blob/master/gi/ns.cpp#L188 */ const __name__: string; /** * Version of the imported GIR library * `see` https://gitlab.gnome.org/GNOME/gjs/-/blob/master/gi/ns.cpp#L189 */ const __version__: string; } export default IBus; } declare module 'gi://IBus' { import IBus10 from 'gi://IBus?version=1.0'; export default IBus10; } // END