// 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.webkit.WebView;
import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.constraintlayout.widget.Barrier;
import androidx.constraintlayout.widget.ConstraintLayout;
import androidx.core.widget.NestedScrollView;
import androidx.databinding.Bindable;
import androidx.databinding.DataBindingUtil;
import androidx.databinding.ViewDataBinding;
import com.google.android.material.button.MaterialButton;
import com.google.android.material.textfield.TextInputLayout;
import com.toughra.ustadmobile.R;
import com.ustadmobile.core.util.IdOption;
import com.ustadmobile.lib.db.entities.PersonParentJoinWithMinorPerson;
import com.ustadmobile.lib.db.entities.SiteTerms;
import com.ustadmobile.port.android.view.IdOptionAutoCompleteTextView;
import com.ustadmobile.port.android.view.ParentAccountLandingFragmentEventHandler;
import java.lang.Deprecated;
import java.lang.Object;
import java.util.List;

public abstract class FragmentParentalConsentManagementBinding extends ViewDataBinding {
  @NonNull
  public final MaterialButton changeConsentButton;

  @NonNull
  public final MaterialButton consentButton;

  @NonNull
  public final MaterialButton dontConsentButton;

  @NonNull
  public final ConstraintLayout fragmentParentAccountLandingEditClx;

  @NonNull
  public final NestedScrollView fragmentParentAccountLandingEditScroll;

  @NonNull
  public final TextView infoTextView;

  @NonNull
  public final Barrier parentaccountBottomBarrier;

  @NonNull
  public final Barrier parentaccountTopBarrier;

  @NonNull
  public final TextInputLayout relationshipTextinputlayout;

  @NonNull
  public final IdOptionAutoCompleteTextView relationshipValue;

  @NonNull
  public final TextView termsAndPoliciesHeader;

  @NonNull
  public final WebView termsWebview;

  @Bindable
  protected PersonParentJoinWithMinorPerson mPersonParentJoin;

  @Bindable
  protected boolean mLoading;

  @Bindable
  protected boolean mFieldsEnabled;

  @Bindable
  protected ParentAccountLandingFragmentEventHandler mEventHandler;

  @Bindable
  protected String mInfoText;

  @Bindable
  protected SiteTerms mSiteTerms;

  @Bindable
  protected String mRelationshipFieldError;

  @Bindable
  protected List<IdOption> mRelationshipFieldOptions;

  protected FragmentParentalConsentManagementBinding(Object _bindingComponent, View _root,
      int _localFieldCount, MaterialButton changeConsentButton, MaterialButton consentButton,
      MaterialButton dontConsentButton, ConstraintLayout fragmentParentAccountLandingEditClx,
      NestedScrollView fragmentParentAccountLandingEditScroll, TextView infoTextView,
      Barrier parentaccountBottomBarrier, Barrier parentaccountTopBarrier,
      TextInputLayout relationshipTextinputlayout, IdOptionAutoCompleteTextView relationshipValue,
      TextView termsAndPoliciesHeader, WebView termsWebview) {
    super(_bindingComponent, _root, _localFieldCount);
    this.changeConsentButton = changeConsentButton;
    this.consentButton = consentButton;
    this.dontConsentButton = dontConsentButton;
    this.fragmentParentAccountLandingEditClx = fragmentParentAccountLandingEditClx;
    this.fragmentParentAccountLandingEditScroll = fragmentParentAccountLandingEditScroll;
    this.infoTextView = infoTextView;
    this.parentaccountBottomBarrier = parentaccountBottomBarrier;
    this.parentaccountTopBarrier = parentaccountTopBarrier;
    this.relationshipTextinputlayout = relationshipTextinputlayout;
    this.relationshipValue = relationshipValue;
    this.termsAndPoliciesHeader = termsAndPoliciesHeader;
    this.termsWebview = termsWebview;
  }

  public abstract void setPersonParentJoin(
      @Nullable PersonParentJoinWithMinorPerson personParentJoin);

  @Nullable
  public PersonParentJoinWithMinorPerson getPersonParentJoin() {
    return mPersonParentJoin;
  }

  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 setEventHandler(
      @Nullable ParentAccountLandingFragmentEventHandler eventHandler);

  @Nullable
  public ParentAccountLandingFragmentEventHandler getEventHandler() {
    return mEventHandler;
  }

  public abstract void setInfoText(@Nullable String infoText);

  @Nullable
  public String getInfoText() {
    return mInfoText;
  }

  public abstract void setSiteTerms(@Nullable SiteTerms siteTerms);

  @Nullable
  public SiteTerms getSiteTerms() {
    return mSiteTerms;
  }

  public abstract void setRelationshipFieldError(@Nullable String relationshipFieldError);

  @Nullable
  public String getRelationshipFieldError() {
    return mRelationshipFieldError;
  }

  public abstract void setRelationshipFieldOptions(
      @Nullable List<IdOption> relationshipFieldOptions);

  @Nullable
  public List<IdOption> getRelationshipFieldOptions() {
    return mRelationshipFieldOptions;
  }

  @NonNull
  public static FragmentParentalConsentManagementBinding 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_parental_consent_management, root, attachToRoot, component)
   */
  @NonNull
  @Deprecated
  public static FragmentParentalConsentManagementBinding inflate(@NonNull LayoutInflater inflater,
      @Nullable ViewGroup root, boolean attachToRoot, @Nullable Object component) {
    return ViewDataBinding.<FragmentParentalConsentManagementBinding>inflateInternal(inflater, R.layout.fragment_parental_consent_management, root, attachToRoot, component);
  }

  @NonNull
  public static FragmentParentalConsentManagementBinding 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_parental_consent_management, null, false, component)
   */
  @NonNull
  @Deprecated
  public static FragmentParentalConsentManagementBinding inflate(@NonNull LayoutInflater inflater,
      @Nullable Object component) {
    return ViewDataBinding.<FragmentParentalConsentManagementBinding>inflateInternal(inflater, R.layout.fragment_parental_consent_management, null, false, component);
  }

  public static FragmentParentalConsentManagementBinding 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 FragmentParentalConsentManagementBinding bind(@NonNull View view,
      @Nullable Object component) {
    return (FragmentParentalConsentManagementBinding)bind(component, view, R.layout.fragment_parental_consent_management);
  }
}
