import { HttpClient } from '../http-client'; import { Client, ClientStats, ClientIdentifier, PaginationOptions, SortOptions } from '../types/clients'; /** * Endpoints for UniFi client management (network clients). */ export declare class ClientEndpoints { private http; private site; constructor(http: HttpClient, site: string); /** * List all active clients. * @param options Pagination and sorting options * @returns Promise resolving to an array of Client objects * @throws ClientEndpointError on failure */ getActiveClients(options?: PaginationOptions & SortOptions): Promise; /** * List all clients (active and historical). * @param options Pagination and sorting options * @returns Promise resolving to an array of Client objects * @throws ClientEndpointError on failure */ getAllClients(options?: PaginationOptions & SortOptions): Promise; /** * Get client details by identifier (MAC, IP, or name). * @param identifier Object with mac, ip, or name * @returns Promise resolving to a Client object or null if not found * @throws ClientEndpointError on failure or invalid MAC */ getClientDetails(identifier: ClientIdentifier): Promise; /** * Block a client by MAC address. * @param mac MAC address of the client * @returns Promise resolving to true if successful * @throws ClientEndpointError on failure or invalid MAC */ blockClient(mac: string): Promise; /** * Unblock a client by MAC address. * @param mac MAC address of the client * @returns Promise resolving to true if successful * @throws ClientEndpointError on failure or invalid MAC */ unblockClient(mac: string): Promise; /** * Reconnect (kick) a client by MAC address. * @param mac MAC address of the client * @returns Promise resolving to true if successful * @throws ClientEndpointError on failure or invalid MAC */ reconnectClient(mac: string): Promise; /** * Authorize a guest client for a given number of minutes. * @param mac MAC address of the client * @param minutes Number of minutes to authorize (default 60) * @returns Promise resolving to true if successful * @throws ClientEndpointError on failure, invalid MAC, or invalid minutes */ authorizeGuest(mac: string, minutes?: number): Promise; /** * Unauthorize a guest client by MAC address. * @param mac MAC address of the client * @returns Promise resolving to true if successful * @throws ClientEndpointError on failure or invalid MAC */ unauthorizeGuest(mac: string): Promise; /** * Get statistics for a client by MAC address. * @param mac MAC address of the client * @returns Promise resolving to a ClientStats object or null if not found * @throws ClientEndpointError on failure or invalid MAC */ getClientStats(mac: string): Promise; }