@neurosity/sdk
Version:
Neurosity SDK
69 lines (68 loc) • 2.13 kB
TypeScript
import firebase from "firebase/app";
import { FirebaseApp } from "./FirebaseApp";
import { SDKDependencies } from "../../types/options";
declare type FirebaseDeviceOptions = {
deviceId: string;
firebaseApp: FirebaseApp;
dependencies: SDKDependencies;
};
/**
* @hidden
*/
export declare class FirebaseDevice {
static serverType: string;
protected app: firebase.app.App;
protected deviceStore: any;
deviceId: string;
constructor({ deviceId, firebaseApp, dependencies }: FirebaseDeviceOptions);
get timestamp(): any;
dispatchAction(action: any): Promise<any>;
getInfo(): Promise<any>;
onNamespace(namespace: string, callback: Function): Function;
onceNamespace(namespace: string): Promise<any>;
offNamespace(namespace: string, listener: Function): void;
getTimesync(): Promise<number>;
/**
* Pushes metric for each subscriptions in path:
* /devices/:deviceId/metrics/:metricName
*/
nextMetric(metricName: string, metricValue: {
[label: string]: any;
}): void;
/**
* Listens for metrics in path:
* /devices/:deviceId/metrics/:metricName
*/
onMetric(subscription: any, callback: any): Function;
/**
* Creates a new and unique subscription in path:
* /devices/:deviceId/subscriptions/:subscriptionId
* E.g. /devices/device1/subscriptions/subscription3
*
* @param subscription
* @returns subscriptionId
*/
subscribeToMetric(subscription: any): any;
/**
* Removes subscription in path:
* /devices/:deviceId/subscriptions/:subscriptionId
*
* @param subscription
*/
unsubscribeFromMetric(subscription: any): void;
/**
* Removes metric listener
* /devices/:deviceId/metric
* or
* /devices/:deviceId/metric/label
*
* @param subscription
* @param listener
*/
removeMetricListener(subscription: any, listener: Function): void;
changeSettings(settings: any): Promise<void>;
getSkill(bundleId: any): Promise<any>;
createBluetoothToken(): Promise<string>;
disconnect(): void;
}
export {};