/// ### This instance will be [NULL] until the login or registration process completed successfully by calling [login] or [register] functions
User?user;
UserApiClient._internal();
factoryUserApiClient()=>_instance;
/// - [user] object have to contains username & password
/// - If the request completed successfully the [UserApiClient.user] object inside [UserApiClient] class won't be null and will contains the data comes from the response.
/// - Returns exception of type [APIException] if any error happened.
/// - [newUser] object have to contains the new user data [email, phone, ...]
/// - If the request completed successfully the [user] object inside [UserApiClient] class won't be null and will contains the data comes from the response.
/// - Returns exception of type [APIException] if any error happened.
/// [updatedUser] have to contains the new data for the current user
/// - If the request completed successfully the [user] object inside [UserApiClient] class won't be null and will contains the data comes from the response.
/// - Returns exception of type [APIException] if any error happened.