// 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.databinding.Bindable;
import androidx.databinding.DataBindingUtil;
import androidx.databinding.ViewDataBinding;
import com.toughra.ustadmobile.R;
import com.ustadmobile.core.controller.StatementListPresenter;
import com.ustadmobile.lib.db.entities.StatementWithSessionDetailDisplay;
import com.ustadmobile.port.android.view.StatementListViewFragment;
import java.lang.Deprecated;
import java.lang.Object;

public abstract class ItemStatementSessionDetailListBinding extends ViewDataBinding {
  @NonNull
  public final TextView itemPersonDuration;

  @NonNull
  public final TextView itemPersonObjectDescription;

  @NonNull
  public final TextView itemPersonObjectQuestionAnswer;

  @NonNull
  public final TextView itemPersonProgress;

  @NonNull
  public final AppCompatImageView itemPersonProgressImage;

  @NonNull
  public final TextView itemPersonScoreResults;

  @NonNull
  public final AppCompatImageView itemPersonStartDateImage;

  @NonNull
  public final TextView itemPersonStartDateTime;

  @NonNull
  public final AppCompatImageView itemPersonVerbImage;

  @NonNull
  public final TextView itemPersonVerbTitle;

  @Bindable
  protected StatementWithSessionDetailDisplay mStatement;

  @Bindable
  protected StatementListPresenter mPresenter;

  @Bindable
  protected StatementListViewFragment.StatementWithSessionsDetailListRecyclerAdapter mSelectablePagedListAdapter;

  protected ItemStatementSessionDetailListBinding(Object _bindingComponent, View _root,
      int _localFieldCount, TextView itemPersonDuration, TextView itemPersonObjectDescription,
      TextView itemPersonObjectQuestionAnswer, TextView itemPersonProgress,
      AppCompatImageView itemPersonProgressImage, TextView itemPersonScoreResults,
      AppCompatImageView itemPersonStartDateImage, TextView itemPersonStartDateTime,
      AppCompatImageView itemPersonVerbImage, TextView itemPersonVerbTitle) {
    super(_bindingComponent, _root, _localFieldCount);
    this.itemPersonDuration = itemPersonDuration;
    this.itemPersonObjectDescription = itemPersonObjectDescription;
    this.itemPersonObjectQuestionAnswer = itemPersonObjectQuestionAnswer;
    this.itemPersonProgress = itemPersonProgress;
    this.itemPersonProgressImage = itemPersonProgressImage;
    this.itemPersonScoreResults = itemPersonScoreResults;
    this.itemPersonStartDateImage = itemPersonStartDateImage;
    this.itemPersonStartDateTime = itemPersonStartDateTime;
    this.itemPersonVerbImage = itemPersonVerbImage;
    this.itemPersonVerbTitle = itemPersonVerbTitle;
  }

  public abstract void setStatement(@Nullable StatementWithSessionDetailDisplay statement);

  @Nullable
  public StatementWithSessionDetailDisplay getStatement() {
    return mStatement;
  }

  public abstract void setPresenter(@Nullable StatementListPresenter presenter);

  @Nullable
  public StatementListPresenter getPresenter() {
    return mPresenter;
  }

  public abstract void setSelectablePagedListAdapter(
      @Nullable StatementListViewFragment.StatementWithSessionsDetailListRecyclerAdapter selectablePagedListAdapter);

  @Nullable
  public StatementListViewFragment.StatementWithSessionsDetailListRecyclerAdapter getSelectablePagedListAdapter(
      ) {
    return mSelectablePagedListAdapter;
  }

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

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

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