2026-01-09 07:14:39 +00:00
|
|
|
/**
|
|
|
|
|
* @push.rocks/devicemanager
|
2026-01-09 09:03:42 +00:00
|
|
|
* A comprehensive device manager for discovering and communicating with network devices
|
|
|
|
|
* Supports: Scanners, Printers, SNMP devices, UPS, DLNA, Sonos, AirPlay, Chromecast
|
2026-01-09 07:14:39 +00:00
|
|
|
*/
|
2026-01-09 06:00:42 +00:00
|
|
|
|
2026-01-09 09:36:43 +00:00
|
|
|
// ============================================================================
|
|
|
|
|
// Core Device Manager
|
|
|
|
|
// ============================================================================
|
|
|
|
|
|
2026-01-09 07:14:39 +00:00
|
|
|
export {
|
|
|
|
|
DeviceManager,
|
|
|
|
|
MdnsDiscovery,
|
|
|
|
|
NetworkScanner,
|
2026-01-09 09:03:42 +00:00
|
|
|
SsdpDiscovery,
|
2026-01-09 07:14:39 +00:00
|
|
|
SERVICE_TYPES,
|
2026-01-09 09:03:42 +00:00
|
|
|
SSDP_SERVICE_TYPES,
|
2026-01-09 07:14:39 +00:00
|
|
|
} from './devicemanager.classes.devicemanager.js';
|
|
|
|
|
|
2026-01-09 09:36:43 +00:00
|
|
|
// ============================================================================
|
|
|
|
|
// Universal Device & Features
|
|
|
|
|
// ============================================================================
|
2026-01-09 07:14:39 +00:00
|
|
|
|
2026-01-09 09:36:43 +00:00
|
|
|
export { UniversalDevice, type IUniversalDeviceInfo, type IDeviceCreateOptions } from './device/device.classes.device.js';
|
2026-01-09 09:03:42 +00:00
|
|
|
export {
|
|
|
|
|
Feature,
|
|
|
|
|
ScanFeature,
|
|
|
|
|
PrintFeature,
|
|
|
|
|
PlaybackFeature,
|
|
|
|
|
VolumeFeature,
|
|
|
|
|
PowerFeature,
|
|
|
|
|
SnmpFeature,
|
|
|
|
|
type TDeviceReference,
|
|
|
|
|
type IScanFeatureOptions,
|
|
|
|
|
type IPrintFeatureOptions,
|
|
|
|
|
type IPlaybackFeatureOptions,
|
|
|
|
|
type IVolumeFeatureOptions,
|
|
|
|
|
type IVolumeController,
|
|
|
|
|
type IPowerFeatureOptions,
|
|
|
|
|
type ISnmpFeatureOptions,
|
|
|
|
|
} from './features/index.js';
|
|
|
|
|
|
2026-01-09 09:36:43 +00:00
|
|
|
// ============================================================================
|
|
|
|
|
// Device Factories
|
|
|
|
|
// ============================================================================
|
2026-01-09 09:03:42 +00:00
|
|
|
|
2026-01-09 09:36:43 +00:00
|
|
|
export {
|
|
|
|
|
createScanner,
|
|
|
|
|
createPrinter,
|
|
|
|
|
createSnmpDevice,
|
|
|
|
|
createUpsDevice,
|
|
|
|
|
createSpeaker,
|
|
|
|
|
createDlnaRenderer,
|
|
|
|
|
type IScannerDiscoveryInfo,
|
|
|
|
|
type IPrinterDiscoveryInfo,
|
|
|
|
|
type ISnmpDiscoveryInfo,
|
|
|
|
|
type IUpsDiscoveryInfo,
|
|
|
|
|
type ISpeakerDiscoveryInfo,
|
|
|
|
|
type IDlnaRendererDiscoveryInfo,
|
|
|
|
|
} from './factories/index.js';
|
|
|
|
|
|
|
|
|
|
// ============================================================================
|
|
|
|
|
// Protocol Implementations
|
|
|
|
|
// ============================================================================
|
2026-01-09 09:03:42 +00:00
|
|
|
|
|
|
|
|
export {
|
2026-01-09 09:36:43 +00:00
|
|
|
EsclProtocol,
|
|
|
|
|
SaneProtocol,
|
|
|
|
|
IppProtocol,
|
|
|
|
|
SnmpProtocol,
|
|
|
|
|
SNMP_OIDS,
|
|
|
|
|
NutProtocol,
|
|
|
|
|
NUT_COMMANDS,
|
|
|
|
|
NUT_VARIABLES,
|
2026-01-09 09:03:42 +00:00
|
|
|
UpnpSoapClient,
|
|
|
|
|
UPNP_SERVICE_TYPES,
|
|
|
|
|
UPNP_DEVICE_TYPES,
|
2026-01-09 09:36:43 +00:00
|
|
|
UpsSnmpHandler,
|
|
|
|
|
UPS_SNMP_OIDS,
|
|
|
|
|
type ISnmpOptions,
|
|
|
|
|
type ISnmpVarbind,
|
|
|
|
|
type TSnmpValueType,
|
|
|
|
|
type TNutStatusFlag,
|
|
|
|
|
type INutUpsInfo,
|
|
|
|
|
type INutVariable,
|
|
|
|
|
type TDlnaTransportState,
|
|
|
|
|
type TDlnaTransportStatus,
|
|
|
|
|
type IDlnaPositionInfo,
|
|
|
|
|
type IDlnaTransportInfo,
|
|
|
|
|
type IDlnaMediaInfo,
|
|
|
|
|
type IDlnaContentItem,
|
|
|
|
|
type IDlnaBrowseResult,
|
|
|
|
|
type TUpsBatteryStatus,
|
|
|
|
|
type TUpsOutputSource,
|
|
|
|
|
type TUpsTestResult,
|
|
|
|
|
type IUpsSnmpStatus,
|
|
|
|
|
} from './protocols/index.js';
|
|
|
|
|
|
|
|
|
|
// ============================================================================
|
2026-01-09 07:14:39 +00:00
|
|
|
// Helpers
|
2026-01-09 09:36:43 +00:00
|
|
|
// ============================================================================
|
|
|
|
|
|
2026-01-09 07:14:39 +00:00
|
|
|
export { withRetry, createRetryable, defaultRetryOptions } from './helpers/helpers.retry.js';
|
|
|
|
|
export {
|
|
|
|
|
isValidIp,
|
|
|
|
|
ipToNumber,
|
|
|
|
|
numberToIp,
|
|
|
|
|
ipRangeToIps,
|
|
|
|
|
cidrToIps,
|
|
|
|
|
getLocalSubnet,
|
|
|
|
|
countIpsInCidr,
|
|
|
|
|
} from './helpers/helpers.iprange.js';
|
|
|
|
|
|
2026-01-09 09:36:43 +00:00
|
|
|
// ============================================================================
|
|
|
|
|
// All Interfaces and Types
|
|
|
|
|
// ============================================================================
|
2026-01-09 09:03:42 +00:00
|
|
|
|
2026-01-09 09:36:43 +00:00
|
|
|
export * from './interfaces/index.js';
|
2026-01-09 09:03:42 +00:00
|
|
|
|
|
|
|
|
// SSDP types
|
|
|
|
|
export type {
|
|
|
|
|
ISsdpDevice,
|
|
|
|
|
ISsdpDeviceDescription,
|
|
|
|
|
ISsdpService,
|
|
|
|
|
ISsdpIcon,
|
|
|
|
|
} from './discovery/discovery.classes.ssdp.js';
|