import { ICreateSubadmin, IUser, ILogin, ILoginResponse, ResetPasswordPayload, IUpdateProfilePayload } from "../models/User"; import { IServiceException } from "../models/Exception"; import { ChangePasswordPayload } from "../../ApplicationLayer/middleware/requestValidators/user.controller.validators/user.validator"; import { UserModel } from "../../DataAcessLayer/models/User"; export interface IUserService { login(payload: ILogin): Promise; createUser(payload: ICreateSubadmin): Promise; forgetPassword(email: string): Promise; resetPassword(payload: ResetPasswordPayload): Promise; changePassword(payload: ChangePasswordPayload): Promise; getAccountById(id: number, attributes?: string[]): Promise; updateProfile(id: number, payload: IUpdateProfilePayload): Promise }