feat(unifi): implement comprehensive UniFi API client with controllers, protect, access, account, managers, resources, HTTP client, interfaces, logging, plugins, and tests

This commit is contained in:
2026-02-02 15:46:41 +00:00
parent aaa9e67835
commit 740b70cd83
38 changed files with 6275 additions and 15 deletions

View File

@@ -1,3 +1,37 @@
import * as plugins from './plugins.js';
/**
* @apiclient.xyz/unifi
*
* A comprehensive UniFi API client supporting multiple UniFi applications:
* - Site Manager API (cloud) - API key authentication
* - Network Controller API (local) - Session cookie authentication
* - Protect API (local) - Session + CSRF token authentication
* - Access API (local) - Bearer token authentication
*/
export let demoExport = 'Hi there! :) This is an exported string';
// Re-export all interfaces
export * from './interfaces/index.js';
// Export entry point classes
export { UnifiAccount } from './classes.unifi-account.js';
export { UnifiController } from './classes.unifi-controller.js';
export { UnifiProtect } from './classes.unifi-protect.js';
export { UnifiAccess } from './classes.unifi-access.js';
// Export manager classes
export { SiteManager } from './classes.sitemanager.js';
export { HostManager } from './classes.hostmanager.js';
export { DeviceManager } from './classes.devicemanager.js';
export { ClientManager } from './classes.clientmanager.js';
export { CameraManager } from './classes.cameramanager.js';
export { DoorManager } from './classes.doormanager.js';
// Export resource classes
export { UnifiSite } from './classes.site.js';
export { UnifiHost } from './classes.host.js';
export { UnifiDevice } from './classes.device.js';
export { UnifiClient } from './classes.client.js';
export { UnifiCamera } from './classes.camera.js';
export { UnifiDoor } from './classes.door.js';
// Export HTTP client for advanced usage
export { UnifiHttp } from './classes.unifihttp.js';