luxlabs header browser preview


@class NSDictionary, WBSSavedAccountContext, NSString, NSMutableSet, NSMutableIndexSet, NSTimer, NSArray, _WKRemoteObjectInterface, SFAppAutoFillOneTimeCodeProvider, _SFFormAutoFillInputSession, SFFormAutocompleteState, NSSet, UIView, _SFAuthenticationContext, WBSDispatchSourceTimer, WBSCreditCardData, _SFAutoFillInputView, CNContact, SFFormAutoFillFrameHandle, WKWebView, WBSFormMetadata;
@protocol SFFormAutoFillControllerDelegate, WBUFormAutoFillWebView, SFFormAutoFiller;

@interface _SFFormAutoFillController : NSObject <SFCredentialProviderExtensionManagerObserver, _SFAutoFillInputViewDelegate, SFFormMetadataObserver, _SFAuthenticationClient> {
    WKWebView<WBUFormAutoFillWebView> *_webView;
    id<SFFormAutoFillControllerDelegate> _delegate;
    _WKRemoteObjectInterface *_remoteObjectInterface;
    id<SFFormAutoFiller> _autoFiller;
    BOOL _isCurrentlyAuthenticating;
    long long _authenticationType;
    SFFormAutocompleteState *_state;
    SFFormAutocompleteState *_stateForPageLevelAutoFill;
    NSTimer *_prefillTimer;
    WBSFormMetadata *_unsubmittedForm;
    SFFormAutoFillFrameHandle *_unsubmittedFormFrame;
    NSMutableIndexSet *_uniqueIDsOfFormsThatWereAutoFilled;
    NSMutableSet *_uniqueIDsOfControlsThatWereAutoFilled;
    NSString *_uniqueIDOfFocusedPasswordElementWithAutomaticPassword;
    NSArray *_uniqueIDsOfPasswordElementsForAutomaticPasswords;
    SFFormAutoFillFrameHandle *_frameHandleForAutomaticPasswords;
    _SFFormAutoFillInputSession *_inputSessionForAutomaticPasswords;
    NSString *_alphanumericStrongPassword;
    _SFAutoFillInputView *_autoFillInputView;
    NSArray *_preservedLeadingBarButtonGroups;
    NSArray *_preservedTrailingBarButtonGroups;
    BOOL _attemptedOfferingStreamlinedLogin;
    NSDictionary *_externalCredentialIdentitiesForStreamlinedAutoFill;
    WBSDispatchSourceTimer *_timerToShowSpinnerInForm;
    WBSDispatchSourceTimer *_timerToStopShowingSpinnerInForm;
}

@property (readonly, nonatomic) UIView<WBUFormAutoFillWebView> *webView;
@property (nonatomic) BOOL metadataCorrectionsEnabled;
@property (readonly, copy, nonatomic) NSString *defaultStrongPassword;
@property (readonly, copy, nonatomic) NSString *currentStrongPassword;
@property (readonly, nonatomic) _SFAuthenticationContext *authenticationContext;
@property (readonly, nonatomic) SFAppAutoFillOneTimeCodeProvider *oneTimeCodeProvider;
@property (readonly, copy, nonatomic) WBSSavedAccountContext *savedAccountContext;
@property (readonly, nonatomic) NSDictionary *creditCardFormValues;
@property (retain, nonatomic) CNContact *lastFilledContact;
@property (nonatomic) BOOL waitingForCreditCardDataFromWallet;
@property (retain, nonatomic) WBSCreditCardData *lastFilledCreditCardData;
@property (retain, nonatomic) NSSet *lastFilledCreditCardDataTypes;
@property (readonly) unsigned long long hash;
@property (readonly) Class superclass;
@property (readonly, copy) NSString *description;
@property (readonly, copy) NSString *debugDescription;

+ (id)_filterAndSortCredentialIdentities:(id)a0 pageURL:(id)a1 exactMatchesOnly:(BOOL)a2;
+ (void)_getExternalLoginCredentialSuggestionsForDomains:(id)a0 completion:(id /* block */)a1;
+ (void)_getExternalLoginCredentialSuggestionsForDomains:(id)a0 pageURL:(id)a1 completion:(id /* block */)a2;

- (void)updateSuggestions;
- (void)clearAutoFilledCreditCardFieldsInFrame:(id)a0 textFieldMetadata:(id)a1 formMetadata:(id)a2 completionHandler:(id /* block */)a3;
- (id)alphanumericStrongPassword;
- (void)_fieldFocused:(id)a0 inForm:(id)a1 inFrame:(id)a2 inputSession:(id)a3;
- (void)_addUniqueIDsOfAutoFilledForm:(id)a0;
- (void)_didFocusSensitiveFormField;
- (void)authenticateForAutoFillAuthenticationType:(long long)a0 withCompletion:(id /* block */)a1;
- (void)didFillOneTimeCodeAndShouldSubmit:(BOOL)a0;
- (id)automaticPasswordForPasswordField:(id)a0 inForm:(id)a1 isFrame:(id)a2;
- (void)dealloc;
- (void)annotateForm:(long long)a0 inFrame:(id)a1 withValues:(id)a2;
- (void)_fieldFocusedWithInputSession:(id)a0;
- (id)_beginAutomaticPasswordInteractionWithInputSession:(id)a0 generatedPassword:(id)a1 ignorePreviousDecision:(BOOL)a2;
- (void)removeAutomaticPasswordButtonInitiatedByUser:(BOOL)a0;
- (void)autoFillInputViewDidSelectMorePasswords:(id)a0;
- (id)authenticationCustomUIProgressObserverForContext:(id)a0;
- (void)insertTextSuggestion:(id)a0;
- (id)_websiteForAuthenticationPrompt;
- (void)didCompleteWithPasskey;
- (id)_simulatedWebEventForReturnKeyWithType:(int)a0;
- (void)beginAutomaticPasswordInteractionWithInputSession:(id)a0 generatedPassword:(id)a1;
- (void)_removeUniqueIDsOfAutoFilledForm:(id)a0;
- (BOOL)_showingAutoFillInputView;
- (void)removeAutomaticPasswordVisualTreatment;
- (void)autoFillDidFinishWithUpdatedFormMetadata:(id)a0 inFrame:(id)a1 shouldSubmit:(BOOL)a2;
- (void)_dismissKeyboardAndSimulateCarriageReturnKeyEvents:(BOOL)a0;
- (void)fillTextField:(id)a0 inFrame:(id)a1 withGeneratedPassword:(id)a2;
- (void)invalidate;
- (void)didUpdateUnsubmittedForm:(id)a0 inFrame:(id)a1;
- (id)authenticationMessageForContext:(id)a0;
- (void)updateExistingStreamlinedSuggestionIfNecessary:(id)a0;
- (void)makeStrongPasswordFieldViewableAndEditable:(BOOL)a0;
- (id)initWithWebView:(id)a0 delegate:(id)a1;
- (void)automaticPasswordSheetDismissed;
- (void)showSpinnerInFormSoon:(id)a0 frame:(id)a1;
- (void)prefillFormsSoonIfNeeded;
- (void)autoFill;
- (void)setAutoFillSpinnerVisibility:(BOOL)a0 textFieldMetadata:(id)a1 frame:(id)a2;
- (id)passcodePromptForContext:(id)a0;
- (void)autoFillFormInFrame:(id)a0 withValues:(id)a1 setAutoFilled:(BOOL)a2 focusFieldAfterFilling:(BOOL)a3 fieldToFocus:(id)a4 submitForm:(BOOL)a5;
- (void)copyCurrentStrongPassword;
- (void)_restoreInputAssistantItemsIfNecessary;
- (void)autoFillInputViewDidSelectUseKeyboard:(id)a0;
- (void)clearFieldsAndSetFormControlsToNotAutoFilled:(id)a0 inFrame:(id)a1 completionHandler:(id /* block */)a2;
- (void)didPerformPageLevelAutoFill:(BOOL)a0;
- (void)autoFillOneTimeCodeFieldsInFrame:(id)a0 withValue:(id)a1 shouldSubmit:(BOOL)a2;
- (void)replaceCurrentPasswordWithPassword:(id)a0;
- (void)fieldFocusedWithInputSession:(id)a0;
- (void)willSubmitFormValues:(id)a0 userObject:(id)a1 submissionHandler:(id /* block */)a2;
- (void)didCollectFormMetadataForPreFilling:(id)a0 atURL:(id)a1;
- (void)autoFillFormInFrame:(id)a0 withValues:(id)a1 setAutoFilled:(BOOL)a2 focusFieldAfterFilling:(BOOL)a3 fieldToFocus:(id)a4 fieldsToObscure:(id)a5 submitForm:(BOOL)a6;
- (BOOL)elementIsBeingFocusedForStreamlinedLogin:(id)a0;
- (void)suppressSoftwareKeyboardOnWebView:(BOOL)a0;
- (id)beginAutomaticPasswordInteractionWithInputSession:(id)a0;
- (void)fieldDidFocusWithInputSession:(id)a0;
- (id)_preFillDisabledHosts;
- (void)fieldWillFocusWithInputSession:(id)a0;
- (void).cxx_destruct;
- (void)willSubmitForm:(id)a0 inFrame:(id)a1 submissionHandler:(id /* block */)a2;
- (void)_authenticateForAutoFillForHighLevelDomain:(id)a0 withCompletion:(id /* block */)a1;
- (void)performPageLevelAutoFill;
- (BOOL)shouldShowIconsInPasswordPicker;
- (void)didCollectFormMetadataForPageLevelAutoFill:(id)a0 atURL:(id)a1;
- (void)textFieldFocused:(id)a0 inForm:(id)a1 inFrame:(id)a2 inputSession:(id)a3;
- (void)didRemoveAutomaticStrongPasswordInForm:(id)a0 inputSessionUserObject:(id)a1 inFrame:(id)a2;
- (void)_hideInputAssistantItemsIfNecessary;
- (void)passwordFieldFocused:(id)a0 inForm:(id)a1 inFrame:(id)a2 inputSession:(id)a3;
- (void)fillCreditCardData:(id)a0 inFrame:(id)a1 textFieldMetadata:(id)a2 formMetadata:(id)a3;
- (void)autoFillTextSuggestion:(id)a0;
- (void)prepareForShowingAutomaticStrongPasswordWithInputSession:(id)a0;
- (void)didFillGeneratedPasswordInForm:(id)a0 inFrame:(id)a1;
- (void)willNavigateFrame:(id)a0 withUnsubmittedForm:(id)a1;
- (void)fetchMetadataForTextField:(id)a0 inFrame:(id)a1 withCompletion:(id /* block */)a2;
- (void)didCollectURLsForPreFilling:(id)a0 atURL:(id)a1 inFrame:(id)a2;
- (void)usernameFieldFocused:(id)a0 inForm:(id)a1 inFrame:(id)a2 inputSession:(id)a3;
- (BOOL)displayMessageAsTitleForContext:(id)a0;
- (void)credentialProviderExtensionManagerExtensionListDidChange:(id)a0;
- (void)textDidChangeInTextField:(id)a0 inForm:(id)a1 inFrame:(id)a2;
- (void)autoFillForm:(long long)a0 inFrame:(id)a1 withGeneratedPassword:(id)a2;
- (void)offerToSaveUnsubmittedFormDataIfNeeded;
- (void)stopShowingSpinnerInFormSoon:(double)a0 textFieldMetadata:(id)a1 frame:(id)a2;
- (void)setFormControls:(id)a0 areAutoFilled:(BOOL)a1 andClearField:(id)a2 inFrame:(id)a3;
- (void)_removeAutomaticPasswordButtonInitiatedByUser:(BOOL)a0 removeVisualTreatmentOnly:(BOOL)a1;
- (void)_prefillTimerFired:(id)a0;

@end