///
import { Request, Response } from '@loopback/rest';
import { SuccessResponse, IAuthUserWithPermissions } from '@sourcefuse-npm/alivio-lib';
import { DiPatientCaregiverUserService, MoodFactorLogsService } from '../services';
import * as AWS from 'aws-sdk';
import { Selfi, SelfieDeletSchema } from '../models';
import { IUploader } from '@sourcefuse-npm/file-uploader';
export declare class SelfiController {
protected patientService: MoodFactorLogsService;
protected readonly patientCgUserService: DiPatientCaregiverUserService;
private readonly multerS3Provider;
constructor(patientService: MoodFactorLogsService, patientCgUserService: DiPatientCaregiverUserService, multerS3Provider: IUploader);
private updatePreSignedUrl;
getPatientSelfies(id: number, s3: AWS.S3, currentUser: IAuthUserWithPermissions, token?: string, limit?: number, offset?: number): Promise;
addPatientSelfi(request: Request, id: number, response: Response, bindingRequest: Request, s3: AWS.S3, currentUser: IAuthUserWithPermissions, token?: string): Promise;
deleteSelfi(id: number, selfiId: number, currentUser: IAuthUserWithPermissions, token?: string): Promise;
deleteAllSelfi(id: number, selfie: SelfieDeletSchema, currentUser: IAuthUserWithPermissions, token?: string): Promise;
}