2026-02-25 14:51:21 +08:00
|
|
|
import 'package:social_app/features/auth/data/models/signup_request.dart';
|
|
|
|
|
import 'package:social_app/features/auth/data/models/login_request.dart';
|
|
|
|
|
import 'package:social_app/features/auth/data/models/auth_response.dart';
|
|
|
|
|
|
|
|
|
|
abstract class AuthRepository {
|
2026-02-26 14:28:58 +08:00
|
|
|
Future<VerificationCreateResponse> createVerification(
|
|
|
|
|
SignupStartRequest request,
|
|
|
|
|
);
|
|
|
|
|
Future<AuthResponse> verifyVerification(SignupVerifyRequest request);
|
|
|
|
|
Future<void> resendVerification(SignupResendRequest request);
|
|
|
|
|
Future<AuthResponse> createSession(LoginRequest request);
|
|
|
|
|
Future<AuthResponse> refreshSession(String refreshToken);
|
|
|
|
|
Future<void> deleteSession();
|
2026-02-25 14:51:21 +08:00
|
|
|
Future<String?> getAccessToken();
|
|
|
|
|
Future<String?> getRefreshToken();
|
|
|
|
|
Future<bool> isAuthenticated();
|
2026-02-27 15:22:42 +08:00
|
|
|
Future<void> requestPasswordReset(String email);
|
|
|
|
|
Future<void> confirmPasswordReset({
|
|
|
|
|
required String email,
|
|
|
|
|
required String token,
|
|
|
|
|
required String newPassword,
|
|
|
|
|
});
|
2026-02-25 14:51:21 +08:00
|
|
|
}
|