component-dbs-core
Version:
DTO objects shared among device backend
44 lines (43 loc) • 2.62 kB
TypeScript
import { DeviceUuidInputEvent, DeviceUuidResponse, DeviceMetricsInput, DeviceMetricsOutput, DeviceStatus, DeviceSettings } from '../types.d';
import { DeviceType } from './deviceTypes.d';
import { DeviceMetrics } from './deviceMetrics';
import { EnvironmentService } from '../common_services/config';
import { DeviceVerification } from './deviceVerification';
import { DeviceDb } from './deviceDb';
import { DynamodbService, AppSyncClient } from '../common_services';
import { UpdateEventPublisher } from '../common_interfaces';
export declare class DeviceService extends UpdateEventPublisher {
private readonly dynamodbService;
private readonly envService;
private readonly deviceMetrics;
private readonly deviceVerify;
private readonly appsyncClient;
deviceDb: DeviceDb;
constructor(dynamodbService: DynamodbService, envService: EnvironmentService, deviceMetrics: DeviceMetrics, deviceVerify: DeviceVerification, appsyncClient: AppSyncClient);
getDeviceUuid: (event: DeviceUuidInputEvent) => Promise<DeviceUuidResponse>;
getDeviceMetrics: (deviceUuid: string, type: string) => Promise<import("aws-sdk/clients/dynamodb").DocumentClient.QueryOutput>;
createDeviceMetrics: (input: DeviceMetricsInput) => Promise<DeviceMetricsOutput>;
saveDeviceRecord: (deviceUuid: string, type: DeviceType, data: {
[key: string]: any;
}) => Promise<void>;
saveDeviceTokens: (deviceUuid: string, accessToken: string, refreshToken: string, idToken?: string | undefined) => Promise<void>;
saveDevicePhone: (deviceUuid: string, phone: string) => Promise<void>;
saveDevicePin: (deviceUuid: string, pin: string) => Promise<void>;
saveEntity: (deviceUuid: string, entityUuid: string) => Promise<void>;
saveSite: (deviceUuid: string, siteUuid: string) => Promise<void>;
getEntityUuidByAccessToken: (accessToken: string) => Promise<string>;
getRefreshTokenByUuid: (deviceUuid: string) => Promise<any>;
deactivateDevice: (deviceUuid: string) => Promise<void>;
getDeviceStatus: (deviceUuid: string) => Promise<DeviceStatus>;
saveDeviceStatus: (deviceUuid: string, status: DeviceStatus) => Promise<void>;
updateDeviceSettings: (deviceSettings: DeviceSettings) => Promise<boolean>;
getDeviceSettings: (deviceUuid: string) => Promise<DeviceSettings>;
prepareUpdateEventRequest(item: any, keys: any): {
mutation: import("graphql").DocumentNode;
variables: {
item: any;
};
};
onDeviceSettingsStream: (event: any) => Promise<void>;
onDeviceSettingsUpdate: (accessToken: string) => Promise<void>;
}