export declare enum Led { LED_NUM_LOCK = 1, LED_CAPS_LOCK = 2, LED_SCROLL_LOCK = 4 } export declare type nrmlvo = { name: string; rules: string; model: string; layout: string; variant?: string; options?: string; }; export declare function buildNrmlvoEntries(): nrmlvo[]; export declare function createFromResource(resource: string): Promise; /** * @param keymapLayout an xkb keymap as a single string. */ export declare function createFromString(keymapLayout: string): Xkb; export declare function createFromNames({ rules, model, layout, variant, options, }: { rules?: string; model?: string; layout?: string; variant?: string; options?: string; }): Xkb; export declare class Xkb { readonly keymap: number; readonly state: number; leds: Led; readonly shiftMod: number; readonly capsMod: number; readonly ctrlMod: number; readonly altMod: number; readonly mod2Mod: number; readonly mod3Mod: number; readonly superMod: number; readonly mod5Mod: number; readonly numLed: number; readonly capsLed: number; readonly scrollLed: number; readonly keymapString: string; constructor(keymap: number, state: number); get modsDepressed(): number; get modsLatched(): number; get modsLocked(): number; get group(): number; asString(): string; updateMask(depressedMods: number, latchedMods: number, lockedMods: number, depressedLayout: number, latchedLayout: number, lockedLayout: number): number; keyUp(linuxKeyCode: EvDevKeyCode): boolean; keyDown(linuxKeyCode: EvDevKeyCode): boolean; numLedActive(): boolean; capsLedActive(): boolean; scrollLockLedActive(): boolean; destroy(): void; } export declare enum EvDevKeyCode { Escape = 1, Digit1 = 2, Digit2 = 3, Digit3 = 4, Digit4 = 5, Digit5 = 6, Digit6 = 7, Digit7 = 8, Digit8 = 9, Digit9 = 10, Digit0 = 11, Minus = 12, Equal = 13, Backspace = 14, Tab = 15, KeyQ = 16, KeyW = 17, KeyE = 18, KeyR = 19, KeyT = 20, KeyY = 21, KeyU = 22, KeyI = 23, KeyO = 24, KeyP = 25, BracketLeft = 26, BracketRight = 27, Enter = 28, ControlLeft = 29, KeyA = 30, KeyS = 31, KeyD = 32, KeyF = 33, KeyG = 34, KeyH = 35, KeyJ = 36, KeyK = 37, KeyL = 38, Semicolon = 39, Quote = 40, Backquote = 41, ShiftLeft = 42, Backslash = 43, KeyZ = 44, KeyX = 45, KeyC = 46, KeyV = 47, KeyB = 48, KeyN = 49, KeyM = 50, Comma = 51, Period = 52, Slash = 53, ShiftRight = 54, NumpadMultiply = 55, AltLeft = 56, Space = 57, CapsLock = 58, F1 = 59, F2 = 60, F3 = 61, F4 = 62, F5 = 63, F6 = 64, F7 = 65, F8 = 66, F9 = 67, F10 = 68, NumLock = 69, ScrollLock = 70, Numpad7 = 71, Numpad8 = 72, Numpad9 = 73, NumpadSubtract = 74, Numpad4 = 75, Numpad5 = 76, Numpad6 = 77, NumpadAdd = 78, Numpad1 = 79, Numpad2 = 80, Numpad3 = 81, Numpad0 = 82, NumpadDecimal = 83, IntlBackslash = 86, F11 = 87, F12 = 88, IntlRo = 89, Convert = 92, KanaMode = 93, NonConvert = 94, NumpadEnter = 96, ControlRight = 97, NumpadDivide = 98, PrintScreen = 99, AltRight = 100, Home = 102, ArrowUp = 103, PageUp = 104, ArrowLeft = 105, ArrowRight = 106, End = 107, ArrowDown = 108, PageDown = 109, Insert = 110, Delete = 111, NumpadEqual = 117, Pause = 119, IntlYen = 124, OSLeft = 125, OSRight = 126, ContextMenu = 127 }