UNPKG

@iotize/ionic

Version:

Iotize specific building blocks on top of @ionic/angular.

50 lines (49 loc) 1.4 kB
import { IonicDataLogger } from '../extensions/datalogger/data-logger'; import { Observable } from 'rxjs'; export interface RemoteConfig { brokerUrl: any; serialNumber: any; password: any; period: any; } export declare enum ConnectionState { CONNECTED = "CONNECTED", DISCONNECTED = "DISCONNECTED", CONNECTING = "CONNECTING", DISCONNECTING = "DISCONNECTING" } export interface RemoteStateEvent { isDisconnectable?: boolean; isConnectable?: boolean; state?: ConnectionState; isLoading?: boolean; } export declare enum RunnableState { RUNNING = "RUNNING", STOPED = "STOPED" } export interface RunnableStateEvent { newState: RunnableState; oldState?: RunnableState; } export interface SyncableDatalogPacket extends IonicDataLogger.PacketInfo { syncInfo?: SyncMeta; rawSinglePacket?: Uint8Array; } export interface SyncMeta { error?: Error; isSync: boolean; lastSync?: Date; } export interface SyncStats { remainingCount?: number; synchronizedCount?: number; } export interface SyncEngine { config: Observable<RemoteConfig>; state: Observable<RemoteStateEvent>; disconnect(): Promise<void>; connect(): Promise<void>; syncEntry(syncInfo: SyncableDatalogPacket): Promise<SyncableDatalogPacket>; configure(data: RemoteConfig): Promise<any>; }