Files
workavia-mail-front/lib/features/login/data/datasource/authentication_oidc_datasource.dart
T
dab246 8be3eb53e9 TF-1963 Sync handle exception at data and domain layer
(cherry picked from commit 591388e01fc4fc4c357bdb40a44dac0377dc9fe5)
2023-07-07 22:45:26 +07:00

41 lines
1.2 KiB
Dart

import 'package:model/model.dart';
abstract class AuthenticationOIDCDataSource {
Future<OIDCResponse> checkOIDCIsAvailable(OIDCRequest oidcRequest);
Future<OIDCConfiguration> getOIDCConfiguration(OIDCResponse oidcResponse);
Future<OIDCDiscoveryResponse> discoverOIDC(OIDCConfiguration oidcConfiguration);
Future<TokenOIDC> getTokenOIDC(String clientId, String redirectUrl, String discoveryUrl, List<String> scopes);
Future<void> persistTokenOIDC(TokenOIDC tokenOidc);
Future<void> deleteTokenOIDC();
Future<TokenOIDC> getStoredTokenOIDC(String tokenIdHash);
Future<void> persistAuthorityOidc(String authority);
Future<void> deleteAuthorityOidc();
Future<OIDCConfiguration> getStoredOidcConfiguration();
Future<TokenOIDC> refreshingTokensOIDC(
String clientId,
String redirectUrl,
String discoveryUrl,
List<String> scopes,
String refreshToken);
Future<bool> logout(TokenId tokenId, OIDCConfiguration config, OIDCDiscoveryResponse oidcRescovery);
Future<void> authenticateOidcOnBrowser(
String clientId,
String redirectUrl,
String discoveryUrl,
List<String> scopes);
Future<String> getAuthenticationInfo();
}