@iotize/ionic
Version:
Iotize specific building blocks on top of @ionic/angular.
54 lines (53 loc) • 1.75 kB
TypeScript
import { MonitoringController } from '@iotize/tap/data';
import { DataLogger } from '@iotize/tap/data-log';
import { Observable } from 'rxjs';
import { CurrentDeviceService } from '../../current-device.service';
import * as i0 from "@angular/core";
export declare namespace IonicDataLogger {
interface PacketInfo<DataType = any> extends DataLogger.RawPacket {
meta: DataLogger.RawPacket.Meta & {
bundleName?: string;
};
decodedData: DataType;
}
interface CachePacketType {
id: number;
name: string;
packets: IonicDataLogger.PacketInfo<any>[];
}
interface InstanceOptions {
period: number;
}
}
/**
* Experimental data logger class
*
* @experimental
*/
export declare class IonicDataLogger {
private service;
controller: MonitoringController;
/**
* Packet per packet stream
*/
stream: Observable<IonicDataLogger.PacketInfo>;
/**
* Whole data stream
*/
private _data;
private _data$;
get data(): Observable<IonicDataLogger.PacketInfo[]>;
_packetPerBundles: Record<number, IonicDataLogger.CachePacketType>;
options: IonicDataLogger.InstanceOptions;
constructor(service: CurrentDeviceService);
getCacheForBundle(bundleId: number): IonicDataLogger.CachePacketType;
set period(v: number);
get events(): Observable<IonicDataLogger.PacketInfo<any>>;
get running(): boolean;
storePacket(packet: IonicDataLogger.PacketInfo<Record<string, any>>): void;
pause(): void;
stop(): void;
start(): Observable<IonicDataLogger.PacketInfo<any>>;
static ɵfac: i0.ɵɵFactoryDeclaration<IonicDataLogger, never>;
static ɵprov: i0.ɵɵInjectableDeclaration<IonicDataLogger>;
}