index.ts•1.31 kB
import { AutomationProvider } from '../../interfaces/provider.js';
import {
KeyboardAutomation,
MouseAutomation,
ScreenAutomation,
ClipboardAutomation,
} from '../../interfaces/automation.js';
import { KeysenderKeyboardAutomation } from './keyboard.js';
import { KeysenderMouseAutomation } from './mouse.js';
import { KeysenderScreenAutomation } from './screen.js';
import { KeysenderClipboardAutomation } from './clipboard.js';
/**
* Keysender implementation of the AutomationProvider
*
* NOTE: This provider requires the Windows operating system to compile native dependencies.
* Building this module on non-Windows platforms will fail.
* Development requires:
* - Node.js installed via the official Windows installer (includes necessary build tools)
* - node-gyp installed globally (npm install -g node-gyp)
* - cmake-js installed globally (npm install -g cmake-js)
*/
export class KeysenderProvider implements AutomationProvider {
keyboard: KeyboardAutomation;
mouse: MouseAutomation;
screen: ScreenAutomation;
clipboard: ClipboardAutomation;
constructor() {
this.keyboard = new KeysenderKeyboardAutomation();
this.mouse = new KeysenderMouseAutomation();
this.screen = new KeysenderScreenAutomation();
this.clipboard = new KeysenderClipboardAutomation();
}
}