import { HttpClient } from '../http-client'; /** * Represents a UniFi wireless network (WLAN) configuration. */ export interface WlanConfig { _id?: string; name: string; enabled?: boolean; security?: 'open' | 'wep' | 'wpapsk' | 'wpa2psk' | 'wpaeap' | 'wpa2eap'; wpa_mode?: 'wpa1' | 'wpa2' | 'wpa1/2'; wpa_enc?: 'auto' | 'ccmp' | 'tkip' | 'tkipaes'; usergroup_id?: string; wlangroup_id?: string; passphrase?: string; hide_ssid?: boolean; is_guest?: boolean; schedule?: string[]; [key: string]: unknown; } /** * Represents radio settings for a UniFi device. */ export interface RadioSettings { _id?: string; name?: string; radio?: 'ng' | 'na'; channel?: number; ht?: '20' | '40' | '80'; tx_power_mode?: 'auto' | 'medium' | 'high' | 'low'; channel_width?: number; [key: string]: unknown; } /** * Represents WLAN utilization statistics. */ export interface WlanUtilization { _id?: string; wlan_id?: string; date: string; utilization: number; [key: string]: unknown; } /** * Endpoints for UniFi wireless configuration (WLANs). */ export declare class WirelessEndpoints { private http; private site; constructor(http: HttpClient, site: string); /** * List all wireless networks (WLANs). * @returns Promise resolving to an array of WlanConfig objects * @throws WirelessEndpointError on failure */ getWlanConfigs(): Promise; /** * Create a new wireless network (WLAN). * @param wlanConfig WLAN configuration object * @returns Promise resolving to the created WlanConfig * @throws WirelessEndpointError on failure */ createWlanConfig(wlanConfig: WlanConfig): Promise; /** * Update an existing wireless network (WLAN). * @param wlanId WLAN ID * @param wlanConfig Partial WLAN configuration object * @returns Promise resolving to the updated WlanConfig * @throws WirelessEndpointError on failure */ updateWlanConfig(wlanId: string, wlanConfig: Partial): Promise; /** * Delete a wireless network (WLAN). * @param wlanId WLAN ID * @returns Promise resolving to true if successful * @throws WirelessEndpointError on failure */ deleteWlanConfig(wlanId: string): Promise; /** * Get radio settings for a device. * @param deviceMac Device MAC address * @returns Promise resolving to an array of RadioSettings * @throws WirelessEndpointError on failure */ getRadioSettings(deviceMac: string): Promise; /** * Update radio settings for a device. * @param deviceMac Device MAC address * @param radioSettings Partial radio settings object * @returns Promise resolving to true if successful * @throws WirelessEndpointError on failure */ updateRadioSettings(deviceMac: string, radioSettings: Partial): Promise; /** * Get wireless networks utilization statistics. * @returns Promise resolving to an array of utilization stats * @throws WirelessEndpointError on failure */ getWlanUtilization(): Promise; }