/// import { EventEmitter } from 'events'; import { Device } from './Device'; /** * Interface describing the supported events of Discovery. */ interface Events { hello: Device; goodbye: Device; } /** * Class responsible for discovering Axis cameras on the network. */ export declare class Discovery implements EventEmitter { private readonly eventEmitter; private bonjour?; private browser?; /** * Start listen for device advertisements on all network interface * addresses. */ start(): void; /** * Stop listening for device advertisements. */ stop(): void; /** * Triggers a new search for devices on the network. */ search(): void; /** * Alias for on(eventName, listener). */ addListener(eventName: E, listener: (arg: Events[E]) => void): this; /** * Adds the listener function to the end of the listeners array for the event named eventName. * No checks are made to see if the listener has already been added. Multiple calls passing the * same combination of eventName and listener will result in the listener being added, and * called, multiple times. * @param eventName The name of the event. * @param listener The callback function. */ on(eventName: E, listener: (arg: Events[E]) => void): this; /** * Adds a one-time listener function for the event named eventName. The next time eventName is * triggered, this listener is removed and then invoked. * @param eventName The name of the event. * @param listener The callback function. */ once(eventName: E, listener: (arg: Events[E]) => void): this; /** * Alias for off(eventName, listener). * @param eventName The name of the event. * @param listener The callback function. */ removeListener(eventName: E, listener: (arg: Events[E]) => void): this; /** * Removes the specified listener from the listener array for the event named eventName. * @param eventName The name of the event. * @param listener The callback function. */ off(eventName: E, listener: (arg: Events[E]) => void): this; /** * Removes all listeners, or those of the specified eventName. * @param eventName The name of the event. */ removeAllListeners(eventName?: E): this; /** * By default EventEmitters will print a warning if more than 10 listeners are added for a * particular event. This is a useful default that helps finding memory leaks. The * emitter.setMaxListeners() method allows the limit to be modified for this specific * EventEmitter instance. The value can be set to Infinity (or 0) to indicate an unlimited * number of listeners. */ setMaxListeners(n: number): this; /** * Returns the current max listener value for the EventEmitter which is either set by * emitter.setMaxListeners(n) or defaults to EventEmitter.defaultMaxListeners. */ getMaxListeners(): number; /** * Returns a copy of the array of listeners for the event named eventName. * @param eventName The name of the event. */ listeners(eventName: E): Function[]; /** * Returns a copy of the array of listeners for the event named eventName, including any * wrappers (such as those created by once()). * @param eventName The name of the event. */ rawListeners(eventName: E): Function[]; /** * Synchronously calls each of the listeners registered for the event named eventName, in the * order they were registered, passing the supplied arguments to each. * @param eventName The name of the event. */ emit(eventName: E, args: Events[E]): boolean; /** * Returns the number of listeners listening to the event named eventName. * @param eventName The name of the event. */ listenerCount(eventName: E): number; /** * Adds the listener function to the beginning of the listeners array for the event named * eventName. No checks are made to see if the listener has already been added. Multiple calls * passing the same combination of eventName and listener will result in the listener being * added, and called, multiple times. * @param eventName The name of the event. * @param listener The callback function. */ prependListener(eventName: E, listener: (arg: Events[E]) => void): this; /** * Adds a one-time listener function for the event named eventName to the beginning of the * listeners array. The next time eventName is triggered, this listener is removed, and then * invoked. * @param eventName The name of the event. * @param listener The callback function. */ prependOnceListener(eventName: E, listener: (arg: Events[E]) => void): this; /** * Returns an array listing the events for which the emitter has registered listeners. The * values in the array are strings or Symbols. */ eventNames(): (string | symbol)[]; private onUp; private onDown; private setup; private teardown; } export {}; //# sourceMappingURL=Discovery.d.ts.map