import { IAuthUserWithPermissions } from '@sourcefuse-npm/alivio-lib'; import { DailyCheckIns, DurationRequiredType, MealType, MostFrequentlyUserdKeywords, Sentiment, SentimentAnalysis, Sleep, SleepLogs } from '../models'; import { CheckInUsersService, DailyCheckInsService, DiPatientCaregiverUserService, MoodFactorLogsService } from '../services'; import { FoodLog, MedicineLog, MedicineLogService, MoodLogs, PatientService, StartAndEndDate, UsersService } from '@sourcefuse-npm/patient-facade'; import { Moods } from '@sourcefuse-npm/patient-facade/dist/models/moods.model'; import { AnalysisTypeFormate, JourneyResponse, MedicineAnalysisList } from '../models/journey-response.model'; import * as AWS from 'aws-sdk'; export declare class JourneyController { dailyCheckIns: DailyCheckInsService; protected patientService: PatientService; protected moodFactorLogsService: MoodFactorLogsService; protected usersService: UsersService; protected checkInUsersService: CheckInUsersService; protected medicineLogService: MedicineLogService; protected readonly patientCgUserService: DiPatientCaregiverUserService; constructor(dailyCheckIns: DailyCheckInsService, patientService: PatientService, moodFactorLogsService: MoodFactorLogsService, usersService: UsersService, checkInUsersService: CheckInUsersService, medicineLogService: MedicineLogService, patientCgUserService: DiPatientCaregiverUserService); private updatePreSignedUrl; getCheckInLogs(id: number, currentUser: IAuthUserWithPermissions, start: Date, end: Date, s3: AWS.S3, token?: string, isWeeklyFormat?: boolean): Promise; getsentimentAnalysis(patientId: number, start: Date, end: Date, currentUser: IAuthUserWithPermissions, token?: string): Promise; getsentimentMostUsedWords(patientId: number, start: Date, end: Date, currentUser: IAuthUserWithPermissions, token?: string): Promise; getMoods(moodLogIds: number[], token?: string): Promise; getFoods(foodLogIds: number[], ptainetId: number, token?: string): Promise; getSleepLogs(sleepLogIds: number[], token?: string): Promise; prepareJourneyResponse(patientId: number, checkins: DailyCheckIns[], startEndDates: StartAndEndDate, moodLogs: MoodLogs[], foodLogs: FoodLog[], sleepLog: SleepLogs[], actualEndDate: Date, s3: AWS.S3, isWeeklyFormat?: boolean, token?: string): Promise; calculateSentimentalAnalysis(checkins: DailyCheckIns[], token?: string): Promise; calculateMedicationAdherence(data: MedicineLog[]): number; calculateFrequetlyMissedMedication(data: MedicineLog[]): MedicineAnalysisList[]; getMaxValuePropery(obje: { [key: string]: number; }): string; getMinValuePropery(obje: { [key: string]: number; }): string; calculateMoodLogsPercentage(moods: Moods[], moodLogs: MoodLogs[], s3: AWS.S3): { count: { [key: string]: number; }; percenatge: { [key: string]: number; }; completeAnalysis: AnalysisTypeFormate[]; }; calculateSleepLogsPercentage(sleep: Sleep[], sleepLogs: SleepLogs[], s3: AWS.S3): { count: { [key: string]: number; }; percenatge: { [key: string]: number; }; completeAnalysis: AnalysisTypeFormate[]; }; calculateSMealLogsPercentage(food: MealType[], foodLogs: FoodLog[], s3: AWS.S3): { count: { [key: string]: number; }; percenatge: { [key: string]: number; }; completeAnalysis: AnalysisTypeFormate[]; }; getDiffDays(startDate: Date | string, endDate: Date | string, type?: DurationRequiredType): number; }