
为了使用 C++ 封装一个跨平台的 Node.js 原生模块，
提供鼠标、键盘模拟功能，并支持扩展其他插件，
你需要采用 Node-API（稳定、跨 Node 版本兼容）配合 node-gyp 构建系统。
以下是一个完整的方案，涵盖项目结构、构建配置、平台适配代码、模块导出以及扩展机制。
以下是npm包的目录结构

os-sdk/
├── binding.gyp                # node-gyp 构建配置
├── package.json               # npm 包描述文件
├── src/
│   ├── main.cc                # 模块入口，注册所有插件
│   ├── mouse.cc               # 鼠标功能实现
│   ├── mouse.h                # 鼠标头文件
│   ├── keyboard.cc            # 键盘功能实现
│   ├── keyboard.h
│   └── plugin.h               # 插件管理器（可选，用于扩展）
└── test/
    └── test.js                # 测试脚本