///
import { Count, Filter, FilterExcludingWhere, Where } from '@loopback/repository';
import { Request } from '@loopback/rest';
import { IAuthUserWithPermissions, SuccessResponse } from '@sourcefuse-npm/alivio-lib';
import { PatientCaregiverUserService, PatientOnboardingService, PatientService, UsersService } from '@sourcefuse-npm/patient-facade';
import { CheckInContentCard, DailyCheckInDto, DailyCheckinLog, DailyCheckIns, Selfi } from '../models';
import { CheckInUsersService, DailyCheckInsService, MoodFactorLogsService } from '../services';
import * as AWS from 'aws-sdk';
export declare class DailyCheckInsDetailsController {
dailyCheckIns: DailyCheckInsService;
protected patientService: PatientService;
protected patientOnbService: PatientOnboardingService;
private readonly patientCgUserService;
protected usersService: UsersService;
protected moodFactorLogsService: MoodFactorLogsService;
protected checkInUsersService: CheckInUsersService;
constructor(dailyCheckIns: DailyCheckInsService, patientService: PatientService, patientOnbService: PatientOnboardingService, patientCgUserService: PatientCaregiverUserService, usersService: UsersService, moodFactorLogsService: MoodFactorLogsService, checkInUsersService: CheckInUsersService);
private updatePreSignedUrl;
create(dailyCheckIns: DailyCheckInDto, currentUser: IAuthUserWithPermissions, token: string, bindingRequest: Request): Promise;
getStartEndDateTimezoneOffset(): {
startDate: Date;
endDate: Date;
};
count(where?: Where, token?: string): Promise;
find(filter?: Filter, token?: string): Promise;
updateAll(dailyCheckIns: DailyCheckIns, token?: string, where?: Where): Promise;
findById(id: number, filter?: FilterExcludingWhere, token?: string): Promise;
updateById(id: number, dailyCheckIns: DailyCheckIns, token?: string): Promise;
replaceById(id: number, dailyCheckIns: DailyCheckIns, token?: string): Promise;
deleteById(id: number, token?: string): Promise;
getDailyCheckInLog(filter: Filter, currentUser: IAuthUserWithPermissions, s3: AWS.S3, token: string): Promise;
prepareCheckInResponse(checinDetails: DailyCheckinLog[], latestSelfies: Selfi[]): CheckInContentCard[];
updateSelfeLog(id: number, token: string, checkInLog: DailyCheckinLog): Promise;
}