import Controller from "./Controller"; import UserProfileView from "../views/UserProfileView"; import GetUserProfile from "../../business/interactors/profile/GetUserProfile"; import GetCurrentUser from "../../business/interactors/user/GetCurrentUser"; import { SetUserProfilePhoto } from "../../business/interactors/profile/SetUserProfilePhoto"; import { FollowUser } from "../../business/interactors/profile/FollowUser"; import { UnFollowUser } from "../../business/interactors/profile/UnFollowUser"; export default class UserProfileController extends Controller { private getUserPofile; private getCurrentUser; private setUserProfilePhoto; private followUseCase; private unFollowUseCase; private userId; private currentUserProfile; private loggedUser; constructor(getUserPofile: GetUserProfile, getCurrentUser: GetCurrentUser, setUserProfilePhoto: SetUserProfilePhoto, followUseCase: FollowUser, unFollowUseCase: UnFollowUser); init(): void; private onUserProfileReceived; private onCurrentUserReceived; private handleOnUserProfileRequestError; private handleOnUserProfilePhotoUpdateError; setProfilePhoto(contentPath: string): void; requestFollow(): void; requestUnFollow(): void; resume(): void; pause(): void; dismiss(): void; setUserId(userId: string): void; }