// Generated by data binding compiler. Do not edit!
package com.toughra.ustadmobile.databinding;

import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.appcompat.widget.AppCompatImageView;
import androidx.constraintlayout.widget.Barrier;
import androidx.core.widget.NestedScrollView;
import androidx.databinding.Bindable;
import androidx.databinding.DataBindingUtil;
import androidx.databinding.ViewDataBinding;
import com.google.android.material.textfield.TextInputEditText;
import com.google.android.material.textfield.TextInputLayout;
import com.toughra.ustadmobile.R;
import com.ustadmobile.core.util.IdOption;
import com.ustadmobile.lib.db.entities.PersonParentJoin;
import com.ustadmobile.lib.db.entities.PersonPicture;
import com.ustadmobile.lib.db.entities.PersonWithAccount;
import com.ustadmobile.port.android.view.IdOptionAutoCompleteTextView;
import com.ustadmobile.port.android.view.PersonEditFragmentEventHandler;
import com.ustadmobile.port.android.view.binding.ImageViewLifecycleObserver2;
import de.hdodenhof.circleimageview.CircleImageView;
import java.lang.Deprecated;
import java.lang.Object;
import java.util.List;

public abstract class FragmentPersonEditBinding extends ViewDataBinding {
  @NonNull
  public final TextInputEditText addressText;

  @NonNull
  public final TextInputLayout addressTextinputlayout;

  @NonNull
  public final TextInputEditText birthdayText;

  @NonNull
  public final TextInputLayout birthdayTextinputlayout;

  @NonNull
  public final TextInputEditText confirmPasswordText;

  @NonNull
  public final TextInputLayout confirmPasswordTextinputlayout;

  @NonNull
  public final TextInputEditText emailText;

  @NonNull
  public final TextInputLayout emailTextinputlayout;

  @NonNull
  public final TextView errorText;

  @NonNull
  public final TextInputEditText firstnamesText;

  @NonNull
  public final TextInputLayout firstnamesTextinputlayout;

  @NonNull
  public final Barrier genderParentContactBottomBarrier;

  @NonNull
  public final TextInputLayout genderTextinputlayout;

  @NonNull
  public final IdOptionAutoCompleteTextView genderValue;

  @NonNull
  public final CircleImageView itemPresenterFieldRowImageView;

  @NonNull
  public final AppCompatImageView itemPresenterFieldRowPicturePhotoicon;

  @NonNull
  public final TextInputEditText lastnameText;

  @NonNull
  public final TextInputLayout lastnameTextInputLayout;

  @NonNull
  public final NestedScrollView nestedView;

  @NonNull
  public final Barrier optionalFieldsBottomBarrier;

  @NonNull
  public final TextInputLayout parentContactTextInputLayout;

  @NonNull
  public final TextInputEditText parentcontactText;

  @NonNull
  public final TextInputEditText passwordText;

  @NonNull
  public final TextInputLayout passwordTextinputlayout;

  @NonNull
  public final TextInputEditText phonenumberText;

  @NonNull
  public final TextInputLayout phonenumberTextinputlayout;

  @NonNull
  public final TextInputEditText usernameText;

  @NonNull
  public final TextInputLayout usernameTextinputlayout;

  @Bindable
  protected PersonWithAccount mPerson;

  @Bindable
  protected PersonParentJoin mApprovalPersonParentJoin;

  @Bindable
  protected PersonPicture mPersonPicture;

  @Bindable
  protected ImageViewLifecycleObserver2 mImageViewLifecycleObserver;

  @Bindable
  protected boolean mLoading;

  @Bindable
  protected boolean mFieldsEnabled;

  @Bindable
  protected List<IdOption> mGenderOptions;

  @Bindable
  protected int mRegistrationMode;

  @Bindable
  protected boolean mHideClazzes;

  @Bindable
  protected PersonEditFragmentEventHandler mActivityEventHandler;

  @Bindable
  protected String mParentContactError;

  @Bindable
  protected String mFirstNamesError;

  @Bindable
  protected String mLastNameError;

  @Bindable
  protected String mUsernameError;

  @Bindable
  protected String mGenderFieldError;

  @Bindable
  protected String mPasswordError;

  @Bindable
  protected String mPasswordConfirmError;

  @Bindable
  protected String mDateOfBirthFieldError;

  @Bindable
  protected String mEmailError;

  @Bindable
  protected String mTimeZoneId;

  @Bindable
  protected Integer mDateTimeMode;

  protected FragmentPersonEditBinding(Object _bindingComponent, View _root, int _localFieldCount,
      TextInputEditText addressText, TextInputLayout addressTextinputlayout,
      TextInputEditText birthdayText, TextInputLayout birthdayTextinputlayout,
      TextInputEditText confirmPasswordText, TextInputLayout confirmPasswordTextinputlayout,
      TextInputEditText emailText, TextInputLayout emailTextinputlayout, TextView errorText,
      TextInputEditText firstnamesText, TextInputLayout firstnamesTextinputlayout,
      Barrier genderParentContactBottomBarrier, TextInputLayout genderTextinputlayout,
      IdOptionAutoCompleteTextView genderValue, CircleImageView itemPresenterFieldRowImageView,
      AppCompatImageView itemPresenterFieldRowPicturePhotoicon, TextInputEditText lastnameText,
      TextInputLayout lastnameTextInputLayout, NestedScrollView nestedView,
      Barrier optionalFieldsBottomBarrier, TextInputLayout parentContactTextInputLayout,
      TextInputEditText parentcontactText, TextInputEditText passwordText,
      TextInputLayout passwordTextinputlayout, TextInputEditText phonenumberText,
      TextInputLayout phonenumberTextinputlayout, TextInputEditText usernameText,
      TextInputLayout usernameTextinputlayout) {
    super(_bindingComponent, _root, _localFieldCount);
    this.addressText = addressText;
    this.addressTextinputlayout = addressTextinputlayout;
    this.birthdayText = birthdayText;
    this.birthdayTextinputlayout = birthdayTextinputlayout;
    this.confirmPasswordText = confirmPasswordText;
    this.confirmPasswordTextinputlayout = confirmPasswordTextinputlayout;
    this.emailText = emailText;
    this.emailTextinputlayout = emailTextinputlayout;
    this.errorText = errorText;
    this.firstnamesText = firstnamesText;
    this.firstnamesTextinputlayout = firstnamesTextinputlayout;
    this.genderParentContactBottomBarrier = genderParentContactBottomBarrier;
    this.genderTextinputlayout = genderTextinputlayout;
    this.genderValue = genderValue;
    this.itemPresenterFieldRowImageView = itemPresenterFieldRowImageView;
    this.itemPresenterFieldRowPicturePhotoicon = itemPresenterFieldRowPicturePhotoicon;
    this.lastnameText = lastnameText;
    this.lastnameTextInputLayout = lastnameTextInputLayout;
    this.nestedView = nestedView;
    this.optionalFieldsBottomBarrier = optionalFieldsBottomBarrier;
    this.parentContactTextInputLayout = parentContactTextInputLayout;
    this.parentcontactText = parentcontactText;
    this.passwordText = passwordText;
    this.passwordTextinputlayout = passwordTextinputlayout;
    this.phonenumberText = phonenumberText;
    this.phonenumberTextinputlayout = phonenumberTextinputlayout;
    this.usernameText = usernameText;
    this.usernameTextinputlayout = usernameTextinputlayout;
  }

  public abstract void setPerson(@Nullable PersonWithAccount person);

  @Nullable
  public PersonWithAccount getPerson() {
    return mPerson;
  }

  public abstract void setApprovalPersonParentJoin(
      @Nullable PersonParentJoin approvalPersonParentJoin);

  @Nullable
  public PersonParentJoin getApprovalPersonParentJoin() {
    return mApprovalPersonParentJoin;
  }

  public abstract void setPersonPicture(@Nullable PersonPicture personPicture);

  @Nullable
  public PersonPicture getPersonPicture() {
    return mPersonPicture;
  }

  public abstract void setImageViewLifecycleObserver(
      @Nullable ImageViewLifecycleObserver2 imageViewLifecycleObserver);

  @Nullable
  public ImageViewLifecycleObserver2 getImageViewLifecycleObserver() {
    return mImageViewLifecycleObserver;
  }

  public abstract void setLoading(boolean loading);

  public boolean getLoading() {
    return mLoading;
  }

  public abstract void setFieldsEnabled(boolean fieldsEnabled);

  public boolean getFieldsEnabled() {
    return mFieldsEnabled;
  }

  public abstract void setGenderOptions(@Nullable List<IdOption> genderOptions);

  @Nullable
  public List<IdOption> getGenderOptions() {
    return mGenderOptions;
  }

  public abstract void setRegistrationMode(int registrationMode);

  public int getRegistrationMode() {
    return mRegistrationMode;
  }

  public abstract void setHideClazzes(boolean hideClazzes);

  public boolean getHideClazzes() {
    return mHideClazzes;
  }

  public abstract void setActivityEventHandler(
      @Nullable PersonEditFragmentEventHandler activityEventHandler);

  @Nullable
  public PersonEditFragmentEventHandler getActivityEventHandler() {
    return mActivityEventHandler;
  }

  public abstract void setParentContactError(@Nullable String parentContactError);

  @Nullable
  public String getParentContactError() {
    return mParentContactError;
  }

  public abstract void setFirstNamesError(@Nullable String firstNamesError);

  @Nullable
  public String getFirstNamesError() {
    return mFirstNamesError;
  }

  public abstract void setLastNameError(@Nullable String lastNameError);

  @Nullable
  public String getLastNameError() {
    return mLastNameError;
  }

  public abstract void setUsernameError(@Nullable String usernameError);

  @Nullable
  public String getUsernameError() {
    return mUsernameError;
  }

  public abstract void setGenderFieldError(@Nullable String genderFieldError);

  @Nullable
  public String getGenderFieldError() {
    return mGenderFieldError;
  }

  public abstract void setPasswordError(@Nullable String passwordError);

  @Nullable
  public String getPasswordError() {
    return mPasswordError;
  }

  public abstract void setPasswordConfirmError(@Nullable String passwordConfirmError);

  @Nullable
  public String getPasswordConfirmError() {
    return mPasswordConfirmError;
  }

  public abstract void setDateOfBirthFieldError(@Nullable String dateOfBirthFieldError);

  @Nullable
  public String getDateOfBirthFieldError() {
    return mDateOfBirthFieldError;
  }

  public abstract void setEmailError(@Nullable String emailError);

  @Nullable
  public String getEmailError() {
    return mEmailError;
  }

  public abstract void setTimeZoneId(@Nullable String timeZoneId);

  @Nullable
  public String getTimeZoneId() {
    return mTimeZoneId;
  }

  public abstract void setDateTimeMode(@Nullable Integer dateTimeMode);

  @Nullable
  public Integer getDateTimeMode() {
    return mDateTimeMode;
  }

  @NonNull
  public static FragmentPersonEditBinding inflate(@NonNull LayoutInflater inflater,
      @Nullable ViewGroup root, boolean attachToRoot) {
    return inflate(inflater, root, attachToRoot, DataBindingUtil.getDefaultComponent());
  }

  /**
   * This method receives DataBindingComponent instance as type Object instead of
   * type DataBindingComponent to avoid causing too many compilation errors if
   * compilation fails for another reason.
   * https://issuetracker.google.com/issues/116541301
   * @Deprecated Use DataBindingUtil.inflate(inflater, R.layout.fragment_person_edit, root, attachToRoot, component)
   */
  @NonNull
  @Deprecated
  public static FragmentPersonEditBinding inflate(@NonNull LayoutInflater inflater,
      @Nullable ViewGroup root, boolean attachToRoot, @Nullable Object component) {
    return ViewDataBinding.<FragmentPersonEditBinding>inflateInternal(inflater, R.layout.fragment_person_edit, root, attachToRoot, component);
  }

  @NonNull
  public static FragmentPersonEditBinding inflate(@NonNull LayoutInflater inflater) {
    return inflate(inflater, DataBindingUtil.getDefaultComponent());
  }

  /**
   * This method receives DataBindingComponent instance as type Object instead of
   * type DataBindingComponent to avoid causing too many compilation errors if
   * compilation fails for another reason.
   * https://issuetracker.google.com/issues/116541301
   * @Deprecated Use DataBindingUtil.inflate(inflater, R.layout.fragment_person_edit, null, false, component)
   */
  @NonNull
  @Deprecated
  public static FragmentPersonEditBinding inflate(@NonNull LayoutInflater inflater,
      @Nullable Object component) {
    return ViewDataBinding.<FragmentPersonEditBinding>inflateInternal(inflater, R.layout.fragment_person_edit, null, false, component);
  }

  public static FragmentPersonEditBinding bind(@NonNull View view) {
    return bind(view, DataBindingUtil.getDefaultComponent());
  }

  /**
   * This method receives DataBindingComponent instance as type Object instead of
   * type DataBindingComponent to avoid causing too many compilation errors if
   * compilation fails for another reason.
   * https://issuetracker.google.com/issues/116541301
   * @Deprecated Use DataBindingUtil.bind(view, component)
   */
  @Deprecated
  public static FragmentPersonEditBinding bind(@NonNull View view, @Nullable Object component) {
    return (FragmentPersonEditBinding)bind(component, view, R.layout.fragment_person_edit);
  }
}
