UNPKG

850 BTypeScriptView Raw
1import { EventEmitter, Subscription } from '@unimodules/core';
2declare type Listener<E> = (event: E) => void;
3declare type NativeSensorModule = any;
4/**
5 * A base class for subscribable sensors. The events emitted by this class are measurements
6 * specified by the parameter type `M`.
7 */
8export default class DeviceSensor<M> {
9 _nativeModule: NativeSensorModule;
10 _nativeEmitter: EventEmitter;
11 _nativeEventName: string;
12 _listenerCount: number;
13 constructor(nativeSensorModule: NativeSensorModule, nativeEventName: string);
14 addListener(listener: Listener<M>): Subscription;
15 hasListeners(): boolean;
16 getListenerCount(): number;
17 removeAllListeners(): void;
18 removeSubscription(subscription: Subscription): void;
19 setUpdateInterval(intervalMs: number): void;
20 isAvailableAsync(): Promise<boolean>;
21}
22export {};