// Signature format: 4.0
package androidx.credentials {

  public final class ClearCredentialStateRequest {
    ctor public ClearCredentialStateRequest();
  }

  public abstract class CreateCredentialRequest {
    method public final android.os.Bundle getCandidateQueryData();
    method public final android.os.Bundle getCredentialData();
    method public final androidx.credentials.CreateCredentialRequest.DisplayInfo getDisplayInfo();
    method public final String? getOrigin();
    method public final boolean getPreferImmediatelyAvailableCredentials();
    method public final String getType();
    method public final boolean isAutoSelectAllowed();
    method public final boolean isSystemProviderRequired();
    property public final android.os.Bundle candidateQueryData;
    property public final android.os.Bundle credentialData;
    property public final androidx.credentials.CreateCredentialRequest.DisplayInfo displayInfo;
    property public final boolean isAutoSelectAllowed;
    property public final boolean isSystemProviderRequired;
    property public final String? origin;
    property public final boolean preferImmediatelyAvailableCredentials;
    property public final String type;
  }

  public static final class CreateCredentialRequest.DisplayInfo {
    ctor public CreateCredentialRequest.DisplayInfo(CharSequence userId);
    ctor public CreateCredentialRequest.DisplayInfo(CharSequence userId, optional CharSequence? userDisplayName);
    ctor public CreateCredentialRequest.DisplayInfo(CharSequence userId, CharSequence? userDisplayName, String? preferDefaultProvider);
    method public CharSequence? getUserDisplayName();
    method public CharSequence getUserId();
    property public final CharSequence? userDisplayName;
    property public final CharSequence userId;
  }

  public abstract class CreateCredentialResponse {
    method public final android.os.Bundle getData();
    method public final String getType();
    property public final android.os.Bundle data;
    property public final String type;
  }

  public class CreateCustomCredentialRequest extends androidx.credentials.CreateCredentialRequest {
    ctor public CreateCustomCredentialRequest(String type, android.os.Bundle credentialData, android.os.Bundle candidateQueryData, boolean isSystemProviderRequired, androidx.credentials.CreateCredentialRequest.DisplayInfo displayInfo);
    ctor public CreateCustomCredentialRequest(String type, android.os.Bundle credentialData, android.os.Bundle candidateQueryData, boolean isSystemProviderRequired, androidx.credentials.CreateCredentialRequest.DisplayInfo displayInfo, optional boolean isAutoSelectAllowed);
    ctor public CreateCustomCredentialRequest(String type, android.os.Bundle credentialData, android.os.Bundle candidateQueryData, boolean isSystemProviderRequired, androidx.credentials.CreateCredentialRequest.DisplayInfo displayInfo, optional boolean isAutoSelectAllowed, optional String? origin);
    ctor public CreateCustomCredentialRequest(String type, android.os.Bundle credentialData, android.os.Bundle candidateQueryData, boolean isSystemProviderRequired, androidx.credentials.CreateCredentialRequest.DisplayInfo displayInfo, optional boolean isAutoSelectAllowed, optional String? origin, optional boolean preferImmediatelyAvailableCredentials);
  }

  public class CreateCustomCredentialResponse extends androidx.credentials.CreateCredentialResponse {
    ctor public CreateCustomCredentialResponse(String type, android.os.Bundle data);
  }

  public final class CreatePasswordRequest extends androidx.credentials.CreateCredentialRequest {
    ctor public CreatePasswordRequest(String id, String password);
    ctor public CreatePasswordRequest(String id, String password, optional String? origin);
    ctor public CreatePasswordRequest(String id, String password, optional String? origin, optional boolean preferImmediatelyAvailableCredentials);
    ctor public CreatePasswordRequest(String id, String password, String? origin, String? preferDefaultProvider, boolean preferImmediatelyAvailableCredentials);
    method public String getId();
    method public String getPassword();
    property public final String id;
    property public final String password;
  }

  public final class CreatePasswordResponse extends androidx.credentials.CreateCredentialResponse {
    ctor public CreatePasswordResponse();
  }

  public final class CreatePublicKeyCredentialRequest extends androidx.credentials.CreateCredentialRequest {
    ctor public CreatePublicKeyCredentialRequest(String requestJson);
    ctor public CreatePublicKeyCredentialRequest(String requestJson, optional byte[]? clientDataHash);
    ctor public CreatePublicKeyCredentialRequest(String requestJson, optional byte[]? clientDataHash, optional boolean preferImmediatelyAvailableCredentials);
    ctor public CreatePublicKeyCredentialRequest(String requestJson, optional byte[]? clientDataHash, optional boolean preferImmediatelyAvailableCredentials, optional String? origin);
    ctor public CreatePublicKeyCredentialRequest(String requestJson, byte[]? clientDataHash, boolean preferImmediatelyAvailableCredentials, String? origin, String? preferDefaultProvider);
    method public byte[]? getClientDataHash();
    method public String getRequestJson();
    property public final byte[]? clientDataHash;
    property public final String requestJson;
  }

  public final class CreatePublicKeyCredentialResponse extends androidx.credentials.CreateCredentialResponse {
    ctor public CreatePublicKeyCredentialResponse(String registrationResponseJson);
    method public String getRegistrationResponseJson();
    property public final String registrationResponseJson;
  }

  public abstract class Credential {
    method public final android.os.Bundle getData();
    method public final String getType();
    property public final android.os.Bundle data;
    property public final String type;
  }

  @RequiresApi(16) public interface CredentialManager {
    method public default suspend Object? clearCredentialState(androidx.credentials.ClearCredentialStateRequest request, kotlin.coroutines.Continuation<? super kotlin.Unit>);
    method public void clearCredentialStateAsync(androidx.credentials.ClearCredentialStateRequest request, android.os.CancellationSignal? cancellationSignal, java.util.concurrent.Executor executor, androidx.credentials.CredentialManagerCallback<java.lang.Void,androidx.credentials.exceptions.ClearCredentialException> callback);
    method public default static androidx.credentials.CredentialManager create(android.content.Context context);
    method public default suspend Object? createCredential(android.content.Context context, androidx.credentials.CreateCredentialRequest request, kotlin.coroutines.Continuation<? super androidx.credentials.CreateCredentialResponse>);
    method public void createCredentialAsync(android.content.Context context, androidx.credentials.CreateCredentialRequest request, android.os.CancellationSignal? cancellationSignal, java.util.concurrent.Executor executor, androidx.credentials.CredentialManagerCallback<androidx.credentials.CreateCredentialResponse,androidx.credentials.exceptions.CreateCredentialException> callback);
    method @RequiresApi(34) public android.app.PendingIntent createSettingsPendingIntent();
    method public default suspend Object? getCredential(android.content.Context context, androidx.credentials.GetCredentialRequest request, kotlin.coroutines.Continuation<? super androidx.credentials.GetCredentialResponse>);
    method @RequiresApi(34) public default suspend Object? getCredential(android.content.Context context, androidx.credentials.PrepareGetCredentialResponse.PendingGetCredentialHandle pendingGetCredentialHandle, kotlin.coroutines.Continuation<? super androidx.credentials.GetCredentialResponse>);
    method public void getCredentialAsync(android.content.Context context, androidx.credentials.GetCredentialRequest request, android.os.CancellationSignal? cancellationSignal, java.util.concurrent.Executor executor, androidx.credentials.CredentialManagerCallback<androidx.credentials.GetCredentialResponse,androidx.credentials.exceptions.GetCredentialException> callback);
    method @RequiresApi(34) public void getCredentialAsync(android.content.Context context, androidx.credentials.PrepareGetCredentialResponse.PendingGetCredentialHandle pendingGetCredentialHandle, android.os.CancellationSignal? cancellationSignal, java.util.concurrent.Executor executor, androidx.credentials.CredentialManagerCallback<androidx.credentials.GetCredentialResponse,androidx.credentials.exceptions.GetCredentialException> callback);
    method @RequiresApi(34) public default suspend Object? prepareGetCredential(androidx.credentials.GetCredentialRequest request, kotlin.coroutines.Continuation<? super androidx.credentials.PrepareGetCredentialResponse>);
    method @RequiresApi(34) public void prepareGetCredentialAsync(androidx.credentials.GetCredentialRequest request, android.os.CancellationSignal? cancellationSignal, java.util.concurrent.Executor executor, androidx.credentials.CredentialManagerCallback<androidx.credentials.PrepareGetCredentialResponse,androidx.credentials.exceptions.GetCredentialException> callback);
    field public static final androidx.credentials.CredentialManager.Companion Companion;
  }

  public static final class CredentialManager.Companion {
    method public androidx.credentials.CredentialManager create(android.content.Context context);
  }

  public interface CredentialManagerCallback<R, E> {
    method public void onError(E e);
    method public void onResult(R result);
  }

  public abstract class CredentialOption {
    method public final java.util.Set<android.content.ComponentName> getAllowedProviders();
    method public final android.os.Bundle getCandidateQueryData();
    method public final android.os.Bundle getRequestData();
    method public final String getType();
    method public final boolean isAutoSelectAllowed();
    method public final boolean isSystemProviderRequired();
    property public final java.util.Set<android.content.ComponentName> allowedProviders;
    property public final android.os.Bundle candidateQueryData;
    property public final boolean isAutoSelectAllowed;
    property public final boolean isSystemProviderRequired;
    property public final android.os.Bundle requestData;
    property public final String type;
  }

  public interface CredentialProvider {
    method public boolean isAvailableOnDevice();
    method public void onClearCredential(androidx.credentials.ClearCredentialStateRequest request, android.os.CancellationSignal? cancellationSignal, java.util.concurrent.Executor executor, androidx.credentials.CredentialManagerCallback<java.lang.Void,androidx.credentials.exceptions.ClearCredentialException> callback);
    method public void onCreateCredential(android.content.Context context, androidx.credentials.CreateCredentialRequest request, android.os.CancellationSignal? cancellationSignal, java.util.concurrent.Executor executor, androidx.credentials.CredentialManagerCallback<androidx.credentials.CreateCredentialResponse,androidx.credentials.exceptions.CreateCredentialException> callback);
    method public void onGetCredential(android.content.Context context, androidx.credentials.GetCredentialRequest request, android.os.CancellationSignal? cancellationSignal, java.util.concurrent.Executor executor, androidx.credentials.CredentialManagerCallback<androidx.credentials.GetCredentialResponse,androidx.credentials.exceptions.GetCredentialException> callback);
    method @RequiresApi(34) public default void onGetCredential(android.content.Context context, androidx.credentials.PrepareGetCredentialResponse.PendingGetCredentialHandle pendingGetCredentialHandle, android.os.CancellationSignal? cancellationSignal, java.util.concurrent.Executor executor, androidx.credentials.CredentialManagerCallback<androidx.credentials.GetCredentialResponse,androidx.credentials.exceptions.GetCredentialException> callback);
    method @RequiresApi(34) public default void onPrepareCredential(androidx.credentials.GetCredentialRequest request, android.os.CancellationSignal? cancellationSignal, java.util.concurrent.Executor executor, androidx.credentials.CredentialManagerCallback<androidx.credentials.PrepareGetCredentialResponse,androidx.credentials.exceptions.GetCredentialException> callback);
  }

  public class CustomCredential extends androidx.credentials.Credential {
    ctor public CustomCredential(String type, android.os.Bundle data);
  }

  public final class GetCredentialRequest {
    ctor public GetCredentialRequest(java.util.List<? extends androidx.credentials.CredentialOption> credentialOptions);
    ctor public GetCredentialRequest(java.util.List<? extends androidx.credentials.CredentialOption> credentialOptions, optional String? origin);
    ctor public GetCredentialRequest(java.util.List<? extends androidx.credentials.CredentialOption> credentialOptions, optional String? origin, optional boolean preferIdentityDocUi);
    ctor public GetCredentialRequest(java.util.List<? extends androidx.credentials.CredentialOption> credentialOptions, optional String? origin, optional boolean preferIdentityDocUi, optional android.content.ComponentName? preferUiBrandingComponentName);
    ctor public GetCredentialRequest(java.util.List<? extends androidx.credentials.CredentialOption> credentialOptions, optional String? origin, optional boolean preferIdentityDocUi, optional android.content.ComponentName? preferUiBrandingComponentName, optional boolean preferImmediatelyAvailableCredentials);
    method public java.util.List<androidx.credentials.CredentialOption> getCredentialOptions();
    method public String? getOrigin();
    method public boolean getPreferIdentityDocUi();
    method public boolean getPreferImmediatelyAvailableCredentials();
    method public android.content.ComponentName? getPreferUiBrandingComponentName();
    property public final java.util.List<androidx.credentials.CredentialOption> credentialOptions;
    property public final String? origin;
    property public final boolean preferIdentityDocUi;
    property public final boolean preferImmediatelyAvailableCredentials;
    property public final android.content.ComponentName? preferUiBrandingComponentName;
  }

  public static final class GetCredentialRequest.Builder {
    ctor public GetCredentialRequest.Builder();
    method public androidx.credentials.GetCredentialRequest.Builder addCredentialOption(androidx.credentials.CredentialOption credentialOption);
    method public androidx.credentials.GetCredentialRequest build();
    method public androidx.credentials.GetCredentialRequest.Builder setCredentialOptions(java.util.List<? extends androidx.credentials.CredentialOption> credentialOptions);
    method public androidx.credentials.GetCredentialRequest.Builder setOrigin(String origin);
    method public androidx.credentials.GetCredentialRequest.Builder setPreferIdentityDocUi(boolean preferIdentityDocUi);
    method public androidx.credentials.GetCredentialRequest.Builder setPreferImmediatelyAvailableCredentials(boolean preferImmediatelyAvailableCredentials);
    method public androidx.credentials.GetCredentialRequest.Builder setPreferUiBrandingComponentName(android.content.ComponentName? component);
  }

  public final class GetCredentialResponse {
    ctor public GetCredentialResponse(androidx.credentials.Credential credential);
    method public androidx.credentials.Credential getCredential();
    property public final androidx.credentials.Credential credential;
  }

  public class GetCustomCredentialOption extends androidx.credentials.CredentialOption {
    ctor public GetCustomCredentialOption(String type, android.os.Bundle requestData, android.os.Bundle candidateQueryData, boolean isSystemProviderRequired);
    ctor public GetCustomCredentialOption(String type, android.os.Bundle requestData, android.os.Bundle candidateQueryData, boolean isSystemProviderRequired, optional boolean isAutoSelectAllowed);
    ctor public GetCustomCredentialOption(String type, android.os.Bundle requestData, android.os.Bundle candidateQueryData, boolean isSystemProviderRequired, optional boolean isAutoSelectAllowed, optional java.util.Set<android.content.ComponentName> allowedProviders);
  }

  public final class GetPasswordOption extends androidx.credentials.CredentialOption {
    ctor public GetPasswordOption();
    ctor public GetPasswordOption(optional java.util.Set<java.lang.String> allowedUserIds);
    ctor public GetPasswordOption(optional java.util.Set<java.lang.String> allowedUserIds, optional boolean isAutoSelectAllowed);
    ctor public GetPasswordOption(optional java.util.Set<java.lang.String> allowedUserIds, optional boolean isAutoSelectAllowed, optional java.util.Set<android.content.ComponentName> allowedProviders);
    method public java.util.Set<java.lang.String> getAllowedUserIds();
    property public final java.util.Set<java.lang.String> allowedUserIds;
  }

  public final class GetPublicKeyCredentialOption extends androidx.credentials.CredentialOption {
    ctor public GetPublicKeyCredentialOption(String requestJson);
    ctor public GetPublicKeyCredentialOption(String requestJson, optional byte[]? clientDataHash);
    ctor public GetPublicKeyCredentialOption(String requestJson, optional byte[]? clientDataHash, optional java.util.Set<android.content.ComponentName> allowedProviders);
    method public byte[]? getClientDataHash();
    method public String getRequestJson();
    property public final byte[]? clientDataHash;
    property public final String requestJson;
  }

  public final class PasswordCredential extends androidx.credentials.Credential {
    ctor public PasswordCredential(String id, String password);
    method public String getId();
    method public String getPassword();
    property public final String id;
    property public final String password;
    field public static final androidx.credentials.PasswordCredential.Companion Companion;
    field public static final String TYPE_PASSWORD_CREDENTIAL = "android.credentials.TYPE_PASSWORD_CREDENTIAL";
  }

  public static final class PasswordCredential.Companion {
  }

  @RequiresApi(34) public final class PrepareGetCredentialResponse {
    method public androidx.credentials.PrepareGetCredentialResponse.PendingGetCredentialHandle getPendingGetCredentialHandle();
    method @RequiresPermission(android.Manifest.permission.CREDENTIAL_MANAGER_QUERY_CANDIDATE_CREDENTIALS) public boolean hasAuthenticationResults();
    method @RequiresPermission(android.Manifest.permission.CREDENTIAL_MANAGER_QUERY_CANDIDATE_CREDENTIALS) public boolean hasCredentialResults(String credentialType);
    method @RequiresPermission(android.Manifest.permission.CREDENTIAL_MANAGER_QUERY_CANDIDATE_CREDENTIALS) public boolean hasRemoteResults();
    property public final androidx.credentials.PrepareGetCredentialResponse.PendingGetCredentialHandle pendingGetCredentialHandle;
  }

  @RequiresApi(34) public static final class PrepareGetCredentialResponse.PendingGetCredentialHandle {
    ctor public PrepareGetCredentialResponse.PendingGetCredentialHandle(android.credentials.PrepareGetCredentialResponse.PendingGetCredentialHandle? frameworkHandle);
  }

  public final class PublicKeyCredential extends androidx.credentials.Credential {
    ctor public PublicKeyCredential(String authenticationResponseJson);
    method public String getAuthenticationResponseJson();
    property public final String authenticationResponseJson;
    field public static final androidx.credentials.PublicKeyCredential.Companion Companion;
    field public static final String TYPE_PUBLIC_KEY_CREDENTIAL = "androidx.credentials.TYPE_PUBLIC_KEY_CREDENTIAL";
  }

  public static final class PublicKeyCredential.Companion {
  }

}

package androidx.credentials.exceptions {

  public abstract class ClearCredentialException extends java.lang.Exception {
  }

  public final class ClearCredentialInterruptedException extends androidx.credentials.exceptions.ClearCredentialException {
    ctor public ClearCredentialInterruptedException();
    ctor public ClearCredentialInterruptedException(optional CharSequence? errorMessage);
  }

  public final class ClearCredentialProviderConfigurationException extends androidx.credentials.exceptions.ClearCredentialException {
    ctor public ClearCredentialProviderConfigurationException();
    ctor public ClearCredentialProviderConfigurationException(optional CharSequence? errorMessage);
  }

  public final class ClearCredentialUnknownException extends androidx.credentials.exceptions.ClearCredentialException {
    ctor public ClearCredentialUnknownException();
    ctor public ClearCredentialUnknownException(optional CharSequence? errorMessage);
  }

  public final class ClearCredentialUnsupportedException extends androidx.credentials.exceptions.ClearCredentialException {
    ctor public ClearCredentialUnsupportedException();
    ctor public ClearCredentialUnsupportedException(optional CharSequence? errorMessage);
  }

  public final class ClearCustomCredentialException extends androidx.credentials.exceptions.ClearCredentialException {
    ctor public ClearCustomCredentialException(String type);
    ctor public ClearCustomCredentialException(String type, optional CharSequence? errorMessage);
    method public String getType();
    property public String type;
  }

  public final class CreateCredentialCancellationException extends androidx.credentials.exceptions.CreateCredentialException {
    ctor public CreateCredentialCancellationException();
    ctor public CreateCredentialCancellationException(optional CharSequence? errorMessage);
  }

  public abstract class CreateCredentialException extends java.lang.Exception {
  }

  public final class CreateCredentialInterruptedException extends androidx.credentials.exceptions.CreateCredentialException {
    ctor public CreateCredentialInterruptedException();
    ctor public CreateCredentialInterruptedException(optional CharSequence? errorMessage);
  }

  public final class CreateCredentialNoCreateOptionException extends androidx.credentials.exceptions.CreateCredentialException {
    ctor public CreateCredentialNoCreateOptionException();
    ctor public CreateCredentialNoCreateOptionException(optional CharSequence? errorMessage);
  }

  public final class CreateCredentialProviderConfigurationException extends androidx.credentials.exceptions.CreateCredentialException {
    ctor public CreateCredentialProviderConfigurationException();
    ctor public CreateCredentialProviderConfigurationException(optional CharSequence? errorMessage);
  }

  public final class CreateCredentialUnknownException extends androidx.credentials.exceptions.CreateCredentialException {
    ctor public CreateCredentialUnknownException();
    ctor public CreateCredentialUnknownException(optional CharSequence? errorMessage);
  }

  public final class CreateCredentialUnsupportedException extends androidx.credentials.exceptions.CreateCredentialException {
    ctor public CreateCredentialUnsupportedException();
    ctor public CreateCredentialUnsupportedException(optional CharSequence? errorMessage);
  }

  public final class CreateCustomCredentialException extends androidx.credentials.exceptions.CreateCredentialException {
    ctor public CreateCustomCredentialException(String type);
    ctor public CreateCustomCredentialException(String type, optional CharSequence? errorMessage);
    method public String getType();
    property public String type;
  }

  public final class GetCredentialCancellationException extends androidx.credentials.exceptions.GetCredentialException {
    ctor public GetCredentialCancellationException();
    ctor public GetCredentialCancellationException(optional CharSequence? errorMessage);
  }

  public abstract class GetCredentialException extends java.lang.Exception {
  }

  public final class GetCredentialInterruptedException extends androidx.credentials.exceptions.GetCredentialException {
    ctor public GetCredentialInterruptedException();
    ctor public GetCredentialInterruptedException(optional CharSequence? errorMessage);
  }

  public final class GetCredentialProviderConfigurationException extends androidx.credentials.exceptions.GetCredentialException {
    ctor public GetCredentialProviderConfigurationException();
    ctor public GetCredentialProviderConfigurationException(optional CharSequence? errorMessage);
  }

  public final class GetCredentialUnknownException extends androidx.credentials.exceptions.GetCredentialException {
    ctor public GetCredentialUnknownException();
    ctor public GetCredentialUnknownException(optional CharSequence? errorMessage);
  }

  public final class GetCredentialUnsupportedException extends androidx.credentials.exceptions.GetCredentialException {
    ctor public GetCredentialUnsupportedException();
    ctor public GetCredentialUnsupportedException(optional CharSequence? errorMessage);
  }

  public final class GetCustomCredentialException extends androidx.credentials.exceptions.GetCredentialException {
    ctor public GetCustomCredentialException(String type);
    ctor public GetCustomCredentialException(String type, optional CharSequence? errorMessage);
    method public String getType();
    property public String type;
  }

  public final class NoCredentialException extends androidx.credentials.exceptions.GetCredentialException {
    ctor public NoCredentialException();
    ctor public NoCredentialException(optional CharSequence? errorMessage);
  }

}

package androidx.credentials.exceptions.domerrors {

  public final class AbortError extends androidx.credentials.exceptions.domerrors.DomError {
    ctor public AbortError();
  }

  public final class ConstraintError extends androidx.credentials.exceptions.domerrors.DomError {
    ctor public ConstraintError();
  }

  public final class DataCloneError extends androidx.credentials.exceptions.domerrors.DomError {
    ctor public DataCloneError();
  }

  public final class DataError extends androidx.credentials.exceptions.domerrors.DomError {
    ctor public DataError();
  }

  public abstract class DomError {
    ctor public DomError(String type);
  }

  public final class EncodingError extends androidx.credentials.exceptions.domerrors.DomError {
    ctor public EncodingError();
  }

  public final class HierarchyRequestError extends androidx.credentials.exceptions.domerrors.DomError {
    ctor public HierarchyRequestError();
  }

  public final class InUseAttributeError extends androidx.credentials.exceptions.domerrors.DomError {
    ctor public InUseAttributeError();
  }

  public final class InvalidCharacterError extends androidx.credentials.exceptions.domerrors.DomError {
    ctor public InvalidCharacterError();
  }

  public final class InvalidModificationError extends androidx.credentials.exceptions.domerrors.DomError {
    ctor public InvalidModificationError();
  }

  public final class InvalidNodeTypeError extends androidx.credentials.exceptions.domerrors.DomError {
    ctor public InvalidNodeTypeError();
  }

  public final class InvalidStateError extends androidx.credentials.exceptions.domerrors.DomError {
    ctor public InvalidStateError();
  }

  public final class NamespaceError extends androidx.credentials.exceptions.domerrors.DomError {
    ctor public NamespaceError();
  }

  public final class NetworkError extends androidx.credentials.exceptions.domerrors.DomError {
    ctor public NetworkError();
  }

  public final class NoModificationAllowedError extends androidx.credentials.exceptions.domerrors.DomError {
    ctor public NoModificationAllowedError();
  }

  public final class NotAllowedError extends androidx.credentials.exceptions.domerrors.DomError {
    ctor public NotAllowedError();
  }

  public final class NotFoundError extends androidx.credentials.exceptions.domerrors.DomError {
    ctor public NotFoundError();
  }

  public final class NotReadableError extends androidx.credentials.exceptions.domerrors.DomError {
    ctor public NotReadableError();
  }

  public final class NotSupportedError extends androidx.credentials.exceptions.domerrors.DomError {
    ctor public NotSupportedError();
  }

  public final class OperationError extends androidx.credentials.exceptions.domerrors.DomError {
    ctor public OperationError();
  }

  public final class OptOutError extends androidx.credentials.exceptions.domerrors.DomError {
    ctor public OptOutError();
  }

  public final class QuotaExceededError extends androidx.credentials.exceptions.domerrors.DomError {
    ctor public QuotaExceededError();
  }

  public final class ReadOnlyError extends androidx.credentials.exceptions.domerrors.DomError {
    ctor public ReadOnlyError();
  }

  public final class SecurityError extends androidx.credentials.exceptions.domerrors.DomError {
    ctor public SecurityError();
  }

  public final class SyntaxError extends androidx.credentials.exceptions.domerrors.DomError {
    ctor public SyntaxError();
  }

  public final class TimeoutError extends androidx.credentials.exceptions.domerrors.DomError {
    ctor public TimeoutError();
  }

  public final class TransactionInactiveError extends androidx.credentials.exceptions.domerrors.DomError {
    ctor public TransactionInactiveError();
  }

  public final class UnknownError extends androidx.credentials.exceptions.domerrors.DomError {
    ctor public UnknownError();
  }

  public final class VersionError extends androidx.credentials.exceptions.domerrors.DomError {
    ctor public VersionError();
  }

  public final class WrongDocumentError extends androidx.credentials.exceptions.domerrors.DomError {
    ctor public WrongDocumentError();
  }

}

package androidx.credentials.exceptions.publickeycredential {

  public final class CreatePublicKeyCredentialDomException extends androidx.credentials.exceptions.publickeycredential.CreatePublicKeyCredentialException {
    ctor public CreatePublicKeyCredentialDomException(androidx.credentials.exceptions.domerrors.DomError domError);
    ctor public CreatePublicKeyCredentialDomException(androidx.credentials.exceptions.domerrors.DomError domError, optional CharSequence? errorMessage);
    method public androidx.credentials.exceptions.domerrors.DomError getDomError();
    property public final androidx.credentials.exceptions.domerrors.DomError domError;
  }

  public class CreatePublicKeyCredentialException extends androidx.credentials.exceptions.CreateCredentialException {
  }

  public final class GetPublicKeyCredentialDomException extends androidx.credentials.exceptions.publickeycredential.GetPublicKeyCredentialException {
    ctor public GetPublicKeyCredentialDomException(androidx.credentials.exceptions.domerrors.DomError domError);
    ctor public GetPublicKeyCredentialDomException(androidx.credentials.exceptions.domerrors.DomError domError, optional CharSequence? errorMessage);
    method public androidx.credentials.exceptions.domerrors.DomError getDomError();
    property public final androidx.credentials.exceptions.domerrors.DomError domError;
  }

  public class GetPublicKeyCredentialException extends androidx.credentials.exceptions.GetCredentialException {
  }

}

package androidx.credentials.provider {

  public final class Action {
    ctor public Action(CharSequence title, android.app.PendingIntent pendingIntent, optional CharSequence? subtitle);
    method public android.app.PendingIntent getPendingIntent();
    method public CharSequence? getSubtitle();
    method public CharSequence getTitle();
    property public final android.app.PendingIntent pendingIntent;
    property public final CharSequence? subtitle;
    property public final CharSequence title;
  }

  public static final class Action.Builder {
    ctor public Action.Builder(CharSequence title, android.app.PendingIntent pendingIntent);
    method public androidx.credentials.provider.Action build();
    method public androidx.credentials.provider.Action.Builder setSubtitle(CharSequence? subtitle);
  }

  public final class AuthenticationAction {
    ctor public AuthenticationAction(CharSequence title, android.app.PendingIntent pendingIntent);
    method public android.app.PendingIntent getPendingIntent();
    method public CharSequence getTitle();
    property public final android.app.PendingIntent pendingIntent;
    property public final CharSequence title;
  }

  public abstract class BeginCreateCredentialRequest {
    ctor public BeginCreateCredentialRequest(String type, android.os.Bundle candidateQueryData, android.service.credentials.CallingAppInfo? callingAppInfo);
    method public final android.service.credentials.CallingAppInfo? getCallingAppInfo();
    method public final android.os.Bundle getCandidateQueryData();
    method public final String getType();
    method public static final androidx.credentials.provider.BeginCreateCredentialRequest? readFromBundle(android.os.Bundle bundle);
    method public static final android.os.Bundle writeToBundle(androidx.credentials.provider.BeginCreateCredentialRequest request);
    property public final android.service.credentials.CallingAppInfo? callingAppInfo;
    property public final android.os.Bundle candidateQueryData;
    property public final String type;
    field public static final androidx.credentials.provider.BeginCreateCredentialRequest.Companion Companion;
  }

  public static final class BeginCreateCredentialRequest.Companion {
    method public androidx.credentials.provider.BeginCreateCredentialRequest? readFromBundle(android.os.Bundle bundle);
    method public android.os.Bundle writeToBundle(androidx.credentials.provider.BeginCreateCredentialRequest request);
  }

  public final class BeginCreateCredentialResponse {
    ctor public BeginCreateCredentialResponse(optional java.util.List<androidx.credentials.provider.CreateEntry> createEntries, optional androidx.credentials.provider.RemoteEntry? remoteEntry);
    method public java.util.List<androidx.credentials.provider.CreateEntry> getCreateEntries();
    method public androidx.credentials.provider.RemoteEntry? getRemoteEntry();
    method public static androidx.credentials.provider.BeginCreateCredentialResponse? readFromBundle(android.os.Bundle bundle);
    method public static android.os.Bundle writeToBundle(androidx.credentials.provider.BeginCreateCredentialResponse response);
    property public final java.util.List<androidx.credentials.provider.CreateEntry> createEntries;
    property public final androidx.credentials.provider.RemoteEntry? remoteEntry;
    field public static final androidx.credentials.provider.BeginCreateCredentialResponse.Companion Companion;
  }

  public static final class BeginCreateCredentialResponse.Builder {
    ctor public BeginCreateCredentialResponse.Builder();
    method public androidx.credentials.provider.BeginCreateCredentialResponse.Builder addCreateEntry(androidx.credentials.provider.CreateEntry createEntry);
    method public androidx.credentials.provider.BeginCreateCredentialResponse build();
    method public androidx.credentials.provider.BeginCreateCredentialResponse.Builder setCreateEntries(java.util.List<androidx.credentials.provider.CreateEntry> createEntries);
    method public androidx.credentials.provider.BeginCreateCredentialResponse.Builder setRemoteEntry(androidx.credentials.provider.RemoteEntry? remoteEntry);
  }

  public static final class BeginCreateCredentialResponse.Companion {
    method public androidx.credentials.provider.BeginCreateCredentialResponse? readFromBundle(android.os.Bundle bundle);
    method public android.os.Bundle writeToBundle(androidx.credentials.provider.BeginCreateCredentialResponse response);
  }

  public class BeginCreateCustomCredentialRequest extends androidx.credentials.provider.BeginCreateCredentialRequest {
    ctor public BeginCreateCustomCredentialRequest(String type, android.os.Bundle candidateQueryData, android.service.credentials.CallingAppInfo? callingAppInfo);
  }

  public final class BeginCreatePasswordCredentialRequest extends androidx.credentials.provider.BeginCreateCredentialRequest {
    ctor public BeginCreatePasswordCredentialRequest(android.service.credentials.CallingAppInfo? callingAppInfo, android.os.Bundle candidateQueryData);
  }

  public final class BeginCreatePublicKeyCredentialRequest extends androidx.credentials.provider.BeginCreateCredentialRequest {
    ctor public BeginCreatePublicKeyCredentialRequest(String requestJson, android.service.credentials.CallingAppInfo? callingAppInfo, android.os.Bundle candidateQueryData);
    ctor public BeginCreatePublicKeyCredentialRequest(String requestJson, android.service.credentials.CallingAppInfo? callingAppInfo, android.os.Bundle candidateQueryData, optional byte[]? clientDataHash);
    method public byte[]? getClientDataHash();
    method public String getRequestJson();
    property public final byte[]? clientDataHash;
    property public final String requestJson;
  }

  public abstract class BeginGetCredentialOption {
    method public final android.os.Bundle getCandidateQueryData();
    method public final String getId();
    method public final String getType();
    property public final android.os.Bundle candidateQueryData;
    property public final String id;
    property public final String type;
  }

  public final class BeginGetCredentialRequest {
    ctor public BeginGetCredentialRequest(java.util.List<? extends androidx.credentials.provider.BeginGetCredentialOption> beginGetCredentialOptions);
    ctor public BeginGetCredentialRequest(java.util.List<? extends androidx.credentials.provider.BeginGetCredentialOption> beginGetCredentialOptions, optional android.service.credentials.CallingAppInfo? callingAppInfo);
    method public java.util.List<androidx.credentials.provider.BeginGetCredentialOption> getBeginGetCredentialOptions();
    method public android.service.credentials.CallingAppInfo? getCallingAppInfo();
    method public static androidx.credentials.provider.BeginGetCredentialRequest? readFromBundle(android.os.Bundle bundle);
    method public static android.os.Bundle writeToBundle(androidx.credentials.provider.BeginGetCredentialRequest request);
    property public final java.util.List<androidx.credentials.provider.BeginGetCredentialOption> beginGetCredentialOptions;
    property public final android.service.credentials.CallingAppInfo? callingAppInfo;
    field public static final androidx.credentials.provider.BeginGetCredentialRequest.Companion Companion;
  }

  public static final class BeginGetCredentialRequest.Companion {
    method public androidx.credentials.provider.BeginGetCredentialRequest? readFromBundle(android.os.Bundle bundle);
    method public android.os.Bundle writeToBundle(androidx.credentials.provider.BeginGetCredentialRequest request);
  }

  public final class BeginGetCredentialResponse {
    ctor public BeginGetCredentialResponse(optional java.util.List<? extends androidx.credentials.provider.CredentialEntry> credentialEntries, optional java.util.List<androidx.credentials.provider.Action> actions, optional java.util.List<androidx.credentials.provider.AuthenticationAction> authenticationActions, optional androidx.credentials.provider.RemoteEntry? remoteEntry);
    method public java.util.List<androidx.credentials.provider.Action> getActions();
    method public java.util.List<androidx.credentials.provider.AuthenticationAction> getAuthenticationActions();
    method public java.util.List<androidx.credentials.provider.CredentialEntry> getCredentialEntries();
    method public androidx.credentials.provider.RemoteEntry? getRemoteEntry();
    method public static androidx.credentials.provider.BeginGetCredentialResponse? readFromBundle(android.os.Bundle bundle);
    method public static android.os.Bundle writeToBundle(androidx.credentials.provider.BeginGetCredentialResponse response);
    property public final java.util.List<androidx.credentials.provider.Action> actions;
    property public final java.util.List<androidx.credentials.provider.AuthenticationAction> authenticationActions;
    property public final java.util.List<androidx.credentials.provider.CredentialEntry> credentialEntries;
    property public final androidx.credentials.provider.RemoteEntry? remoteEntry;
    field public static final androidx.credentials.provider.BeginGetCredentialResponse.Companion Companion;
  }

  public static final class BeginGetCredentialResponse.Builder {
    ctor public BeginGetCredentialResponse.Builder();
    method public androidx.credentials.provider.BeginGetCredentialResponse.Builder addAction(androidx.credentials.provider.Action action);
    method public androidx.credentials.provider.BeginGetCredentialResponse.Builder addAuthenticationAction(androidx.credentials.provider.AuthenticationAction authenticationAction);
    method public androidx.credentials.provider.BeginGetCredentialResponse.Builder addCredentialEntry(androidx.credentials.provider.CredentialEntry entry);
    method public androidx.credentials.provider.BeginGetCredentialResponse build();
    method public androidx.credentials.provider.BeginGetCredentialResponse.Builder setActions(java.util.List<androidx.credentials.provider.Action> actions);
    method public androidx.credentials.provider.BeginGetCredentialResponse.Builder setAuthenticationActions(java.util.List<androidx.credentials.provider.AuthenticationAction> authenticationEntries);
    method public androidx.credentials.provider.BeginGetCredentialResponse.Builder setCredentialEntries(java.util.List<? extends androidx.credentials.provider.CredentialEntry> entries);
    method public androidx.credentials.provider.BeginGetCredentialResponse.Builder setRemoteEntry(androidx.credentials.provider.RemoteEntry? remoteEntry);
  }

  public static final class BeginGetCredentialResponse.Companion {
    method public androidx.credentials.provider.BeginGetCredentialResponse? readFromBundle(android.os.Bundle bundle);
    method public android.os.Bundle writeToBundle(androidx.credentials.provider.BeginGetCredentialResponse response);
  }

  public class BeginGetCustomCredentialOption extends androidx.credentials.provider.BeginGetCredentialOption {
    ctor public BeginGetCustomCredentialOption(String id, String type, android.os.Bundle candidateQueryData);
  }

  public final class BeginGetPasswordOption extends androidx.credentials.provider.BeginGetCredentialOption {
    ctor public BeginGetPasswordOption(java.util.Set<java.lang.String> allowedUserIds, android.os.Bundle candidateQueryData, String id);
    method public java.util.Set<java.lang.String> getAllowedUserIds();
    property public final java.util.Set<java.lang.String> allowedUserIds;
  }

  public final class BeginGetPublicKeyCredentialOption extends androidx.credentials.provider.BeginGetCredentialOption {
    ctor public BeginGetPublicKeyCredentialOption(android.os.Bundle candidateQueryData, String id, String requestJson);
    ctor public BeginGetPublicKeyCredentialOption(android.os.Bundle candidateQueryData, String id, String requestJson, optional byte[]? clientDataHash);
    method public byte[]? getClientDataHash();
    method public String getRequestJson();
    property public final byte[]? clientDataHash;
    property public final String requestJson;
  }

  public final class CreateEntry {
    ctor public CreateEntry(CharSequence accountName, android.app.PendingIntent pendingIntent, optional CharSequence? description, optional java.time.Instant? lastUsedTime, optional android.graphics.drawable.Icon? icon, optional Integer? passwordCredentialCount, optional Integer? publicKeyCredentialCount, optional Integer? totalCredentialCount);
    method public CharSequence getAccountName();
    method public CharSequence? getDescription();
    method public android.graphics.drawable.Icon? getIcon();
    method public java.time.Instant? getLastUsedTime();
    method public Integer? getPasswordCredentialCount();
    method public android.app.PendingIntent getPendingIntent();
    method public Integer? getPublicKeyCredentialCount();
    method public Integer? getTotalCredentialCount();
    property public final CharSequence accountName;
    property public final CharSequence? description;
    property public final android.graphics.drawable.Icon? icon;
    property public final java.time.Instant? lastUsedTime;
    property public final android.app.PendingIntent pendingIntent;
  }

  public static final class CreateEntry.Builder {
    ctor public CreateEntry.Builder(CharSequence accountName, android.app.PendingIntent pendingIntent);
    method public androidx.credentials.provider.CreateEntry build();
    method public androidx.credentials.provider.CreateEntry.Builder setDescription(CharSequence? description);
    method public androidx.credentials.provider.CreateEntry.Builder setIcon(android.graphics.drawable.Icon? icon);
    method public androidx.credentials.provider.CreateEntry.Builder setLastUsedTime(java.time.Instant? lastUsedTime);
    method public androidx.credentials.provider.CreateEntry.Builder setPasswordCredentialCount(int count);
    method public androidx.credentials.provider.CreateEntry.Builder setPublicKeyCredentialCount(int count);
    method public androidx.credentials.provider.CreateEntry.Builder setTotalCredentialCount(int count);
  }

  public abstract class CredentialEntry {
    method public final androidx.credentials.provider.BeginGetCredentialOption getBeginGetCredentialOption();
    property public final androidx.credentials.provider.BeginGetCredentialOption beginGetCredentialOption;
  }

  @RequiresApi(34) public abstract class CredentialProviderService extends android.service.credentials.CredentialProviderService {
    ctor public CredentialProviderService();
    method public final void onBeginCreateCredential(android.service.credentials.BeginCreateCredentialRequest request, android.os.CancellationSignal cancellationSignal, android.os.OutcomeReceiver<android.service.credentials.BeginCreateCredentialResponse,android.credentials.CreateCredentialException> callback);
    method public abstract void onBeginCreateCredentialRequest(androidx.credentials.provider.BeginCreateCredentialRequest request, android.os.CancellationSignal cancellationSignal, android.os.OutcomeReceiver<androidx.credentials.provider.BeginCreateCredentialResponse,androidx.credentials.exceptions.CreateCredentialException> callback);
    method public final void onBeginGetCredential(android.service.credentials.BeginGetCredentialRequest request, android.os.CancellationSignal cancellationSignal, android.os.OutcomeReceiver<android.service.credentials.BeginGetCredentialResponse,android.credentials.GetCredentialException> callback);
    method public abstract void onBeginGetCredentialRequest(androidx.credentials.provider.BeginGetCredentialRequest request, android.os.CancellationSignal cancellationSignal, android.os.OutcomeReceiver<androidx.credentials.provider.BeginGetCredentialResponse,androidx.credentials.exceptions.GetCredentialException> callback);
    method public final void onClearCredentialState(android.service.credentials.ClearCredentialStateRequest request, android.os.CancellationSignal cancellationSignal, android.os.OutcomeReceiver<java.lang.Void,android.credentials.ClearCredentialStateException> callback);
    method public abstract void onClearCredentialStateRequest(androidx.credentials.provider.ProviderClearCredentialStateRequest request, android.os.CancellationSignal cancellationSignal, android.os.OutcomeReceiver<java.lang.Void,androidx.credentials.exceptions.ClearCredentialException> callback);
  }

  @RequiresApi(28) public final class CustomCredentialEntry extends androidx.credentials.provider.CredentialEntry {
    ctor public CustomCredentialEntry(android.content.Context context, CharSequence title, android.app.PendingIntent pendingIntent, androidx.credentials.provider.BeginGetCredentialOption beginGetCredentialOption, optional CharSequence? subtitle, optional CharSequence? typeDisplayName, optional java.time.Instant? lastUsedTime, optional android.graphics.drawable.Icon icon, optional boolean isAutoSelectAllowed);
    method public android.graphics.drawable.Icon getIcon();
    method public java.time.Instant? getLastUsedTime();
    method public android.app.PendingIntent getPendingIntent();
    method public CharSequence? getSubtitle();
    method public CharSequence getTitle();
    method public String getType();
    method public CharSequence? getTypeDisplayName();
    method public boolean isAutoSelectAllowed();
    property public final android.graphics.drawable.Icon icon;
    property public final boolean isAutoSelectAllowed;
    property public final java.time.Instant? lastUsedTime;
    property public final android.app.PendingIntent pendingIntent;
    property public final CharSequence? subtitle;
    property public final CharSequence title;
    property public String type;
    property public final CharSequence? typeDisplayName;
  }

  public static final class CustomCredentialEntry.Builder {
    ctor public CustomCredentialEntry.Builder(android.content.Context context, String type, CharSequence title, android.app.PendingIntent pendingIntent, androidx.credentials.provider.BeginGetCredentialOption beginGetCredentialOption);
    method public androidx.credentials.provider.CustomCredentialEntry build();
    method public androidx.credentials.provider.CustomCredentialEntry.Builder setAutoSelectAllowed(boolean autoSelectAllowed);
    method public androidx.credentials.provider.CustomCredentialEntry.Builder setIcon(android.graphics.drawable.Icon icon);
    method public androidx.credentials.provider.CustomCredentialEntry.Builder setLastUsedTime(java.time.Instant? lastUsedTime);
    method public androidx.credentials.provider.CustomCredentialEntry.Builder setSubtitle(CharSequence? subtitle);
    method public androidx.credentials.provider.CustomCredentialEntry.Builder setTypeDisplayName(CharSequence? typeDisplayName);
  }

  @RequiresApi(28) public final class PasswordCredentialEntry extends androidx.credentials.provider.CredentialEntry {
    ctor public PasswordCredentialEntry(android.content.Context context, CharSequence username, android.app.PendingIntent pendingIntent, androidx.credentials.provider.BeginGetPasswordOption beginGetPasswordOption, optional CharSequence? displayName, optional java.time.Instant? lastUsedTime, optional android.graphics.drawable.Icon icon, optional boolean isAutoSelectAllowed);
    method public CharSequence? getDisplayName();
    method public android.graphics.drawable.Icon getIcon();
    method public java.time.Instant? getLastUsedTime();
    method public android.app.PendingIntent getPendingIntent();
    method public CharSequence getTypeDisplayName();
    method public CharSequence getUsername();
    method public boolean isAutoSelectAllowed();
    property public final CharSequence? displayName;
    property public final android.graphics.drawable.Icon icon;
    property public final boolean isAutoSelectAllowed;
    property public final java.time.Instant? lastUsedTime;
    property public final android.app.PendingIntent pendingIntent;
    property public final CharSequence typeDisplayName;
    property public final CharSequence username;
  }

  public static final class PasswordCredentialEntry.Builder {
    ctor public PasswordCredentialEntry.Builder(android.content.Context context, CharSequence username, android.app.PendingIntent pendingIntent, androidx.credentials.provider.BeginGetPasswordOption beginGetPasswordOption);
    method public androidx.credentials.provider.PasswordCredentialEntry build();
    method public androidx.credentials.provider.PasswordCredentialEntry.Builder setAutoSelectAllowed(boolean autoSelectAllowed);
    method public androidx.credentials.provider.PasswordCredentialEntry.Builder setDisplayName(CharSequence? displayName);
    method public androidx.credentials.provider.PasswordCredentialEntry.Builder setIcon(android.graphics.drawable.Icon icon);
    method public androidx.credentials.provider.PasswordCredentialEntry.Builder setLastUsedTime(java.time.Instant? lastUsedTime);
  }

  @RequiresApi(34) public final class PendingIntentHandler {
    ctor public PendingIntentHandler();
    method public static androidx.credentials.provider.BeginGetCredentialRequest? retrieveBeginGetCredentialRequest(android.content.Intent intent);
    method public static androidx.credentials.provider.ProviderCreateCredentialRequest? retrieveProviderCreateCredentialRequest(android.content.Intent intent);
    method public static androidx.credentials.provider.ProviderGetCredentialRequest? retrieveProviderGetCredentialRequest(android.content.Intent intent);
    method public static void setBeginGetCredentialResponse(android.content.Intent intent, androidx.credentials.provider.BeginGetCredentialResponse response);
    method public static void setCreateCredentialException(android.content.Intent intent, androidx.credentials.exceptions.CreateCredentialException exception);
    method public static void setCreateCredentialResponse(android.content.Intent intent, androidx.credentials.CreateCredentialResponse response);
    method public static void setGetCredentialException(android.content.Intent intent, androidx.credentials.exceptions.GetCredentialException exception);
    method public static void setGetCredentialResponse(android.content.Intent intent, androidx.credentials.GetCredentialResponse response);
    field public static final androidx.credentials.provider.PendingIntentHandler.Companion Companion;
  }

  public static final class PendingIntentHandler.Companion {
    method public androidx.credentials.provider.BeginGetCredentialRequest? retrieveBeginGetCredentialRequest(android.content.Intent intent);
    method public androidx.credentials.provider.ProviderCreateCredentialRequest? retrieveProviderCreateCredentialRequest(android.content.Intent intent);
    method public androidx.credentials.provider.ProviderGetCredentialRequest? retrieveProviderGetCredentialRequest(android.content.Intent intent);
    method public void setBeginGetCredentialResponse(android.content.Intent intent, androidx.credentials.provider.BeginGetCredentialResponse response);
    method public void setCreateCredentialException(android.content.Intent intent, androidx.credentials.exceptions.CreateCredentialException exception);
    method public void setCreateCredentialResponse(android.content.Intent intent, androidx.credentials.CreateCredentialResponse response);
    method public void setGetCredentialException(android.content.Intent intent, androidx.credentials.exceptions.GetCredentialException exception);
    method public void setGetCredentialResponse(android.content.Intent intent, androidx.credentials.GetCredentialResponse response);
  }

  public final class ProviderClearCredentialStateRequest {
    ctor public ProviderClearCredentialStateRequest(android.service.credentials.CallingAppInfo callingAppInfo);
    method public android.service.credentials.CallingAppInfo getCallingAppInfo();
    property public final android.service.credentials.CallingAppInfo callingAppInfo;
  }

  public final class ProviderCreateCredentialRequest {
    ctor public ProviderCreateCredentialRequest(androidx.credentials.CreateCredentialRequest callingRequest, android.service.credentials.CallingAppInfo callingAppInfo);
    method public android.service.credentials.CallingAppInfo getCallingAppInfo();
    method public androidx.credentials.CreateCredentialRequest getCallingRequest();
    property public final android.service.credentials.CallingAppInfo callingAppInfo;
    property public final androidx.credentials.CreateCredentialRequest callingRequest;
  }

  @RequiresApi(34) public final class ProviderGetCredentialRequest {
    ctor public ProviderGetCredentialRequest(java.util.List<? extends androidx.credentials.CredentialOption> credentialOptions, android.service.credentials.CallingAppInfo callingAppInfo);
    method public android.service.credentials.CallingAppInfo getCallingAppInfo();
    method public java.util.List<androidx.credentials.CredentialOption> getCredentialOptions();
    property public final android.service.credentials.CallingAppInfo callingAppInfo;
    property public final java.util.List<androidx.credentials.CredentialOption> credentialOptions;
  }

  @RequiresApi(28) public final class PublicKeyCredentialEntry extends androidx.credentials.provider.CredentialEntry {
    ctor public PublicKeyCredentialEntry(android.content.Context context, CharSequence username, android.app.PendingIntent pendingIntent, androidx.credentials.provider.BeginGetPublicKeyCredentialOption beginGetPublicKeyCredentialOption, optional CharSequence? displayName, optional java.time.Instant? lastUsedTime, optional android.graphics.drawable.Icon icon, optional boolean isAutoSelectAllowed);
    method public CharSequence? getDisplayName();
    method public android.graphics.drawable.Icon getIcon();
    method public java.time.Instant? getLastUsedTime();
    method public android.app.PendingIntent getPendingIntent();
    method public CharSequence getTypeDisplayName();
    method public CharSequence getUsername();
    method public boolean isAutoSelectAllowed();
    property public final CharSequence? displayName;
    property public final android.graphics.drawable.Icon icon;
    property public final boolean isAutoSelectAllowed;
    property public final java.time.Instant? lastUsedTime;
    property public final android.app.PendingIntent pendingIntent;
    property public final CharSequence typeDisplayName;
    property public final CharSequence username;
  }

  public static final class PublicKeyCredentialEntry.Builder {
    ctor public PublicKeyCredentialEntry.Builder(android.content.Context context, CharSequence username, android.app.PendingIntent pendingIntent, androidx.credentials.provider.BeginGetPublicKeyCredentialOption beginGetPublicKeyCredentialOption);
    method public androidx.credentials.provider.PublicKeyCredentialEntry build();
    method public androidx.credentials.provider.PublicKeyCredentialEntry.Builder setAutoSelectAllowed(boolean autoSelectAllowed);
    method public androidx.credentials.provider.PublicKeyCredentialEntry.Builder setDisplayName(CharSequence? displayName);
    method public androidx.credentials.provider.PublicKeyCredentialEntry.Builder setIcon(android.graphics.drawable.Icon icon);
    method public androidx.credentials.provider.PublicKeyCredentialEntry.Builder setLastUsedTime(java.time.Instant? lastUsedTime);
  }

  public final class RemoteEntry {
    ctor public RemoteEntry(android.app.PendingIntent pendingIntent);
    method public android.app.PendingIntent getPendingIntent();
    property public final android.app.PendingIntent pendingIntent;
  }

}

