#ifndef IOS_CHROME_CREDENTIAL_PROVIDER_EXTENSION_PASSKEY_REQUEST_DETAILS_H_
#define IOS_CHROME_CREDENTIAL_PROVIDER_EXTENSION_PASSKEY_REQUEST_DETAILS_H_
#import <AuthenticationServices/AuthenticationServices.h>
#import <Foundation/Foundation.h>
@protocol Credential;
@interface PasskeyRequestDetails : NSObject
- (instancetype)initWithParameters:(ASPasskeyCredentialRequestParameters*)
passkeyCredentialRequestParameters
isBiometricAuthenticationEnabled:(BOOL)isBiometricAuthenticationEnabled;
- (instancetype)initWithRequest:(id<ASCredentialRequest>)credentialRequest
isBiometricAuthenticationEnabled:(BOOL)isBiometricAuthenticationEnabled
isConditionalCreate:(BOOL)isConditionalCreate;
- (instancetype)init NS_UNAVAILABLE;
- (ASPasskeyRegistrationCredential*)
createPasskeyForGaia:(NSString*)gaia
securityDomainSecrets:(NSArray<NSData*>*)securityDomainSecrets
didCompleteUserVerification:(BOOL)didCompleteUserVerification;
- (ASPasskeyAssertionCredential*)
assertPasskeyCredential:(id<Credential>)credential
securityDomainSecrets:(NSArray<NSData*>*)securityDomainSecrets
didCompleteUserVerification:(BOOL)didCompleteUserVerification;
- (BOOL)hasMatchingPassword:(NSArray<id<Credential>>*)credentials;
- (BOOL)hasExcludedPasskey:(NSArray<id<Credential>>*)credentials;
@property(nonatomic, readonly) BOOL userVerificationRequired;
@property(nonatomic, readonly) NSString* relyingPartyIdentifier;
@property(nonatomic, readonly) NSString* userName;
@property(nonatomic, readonly) NSArray<NSData*>* allowedCredentials;
@property(nonatomic, readonly) BOOL algorithmIsSupported;
@end
#endif