package com.sunzones.ui.main;

import com.sunzones.data.repository.LocationRepository;
import com.sunzones.domain.usecase.CalculateYearlyDaylightUseCase;
import com.sunzones.domain.usecase.GetLocationsUseCase;
import dagger.internal.DaggerGenerated;
import dagger.internal.Factory;
import dagger.internal.QualifierMetadata;
import dagger.internal.ScopeMetadata;
import javax.annotation.processing.Generated;
import javax.inject.Provider;

@ScopeMetadata
@QualifierMetadata
@DaggerGenerated
@Generated(
    value = "dagger.internal.codegen.ComponentProcessor",
    comments = "https://dagger.dev"
)
@SuppressWarnings({
    "unchecked",
    "rawtypes",
    "KotlinInternal",
    "KotlinInternalInJava",
    "cast",
    "deprecation",
    "nullness:initialization.field.uninitialized"
})
public final class MainViewModel_Factory implements Factory<MainViewModel> {
  private final Provider<GetLocationsUseCase> getLocationsUseCaseProvider;

  private final Provider<CalculateYearlyDaylightUseCase> calculateYearlyDaylightProvider;

  private final Provider<LocationRepository> repositoryProvider;

  public MainViewModel_Factory(Provider<GetLocationsUseCase> getLocationsUseCaseProvider,
      Provider<CalculateYearlyDaylightUseCase> calculateYearlyDaylightProvider,
      Provider<LocationRepository> repositoryProvider) {
    this.getLocationsUseCaseProvider = getLocationsUseCaseProvider;
    this.calculateYearlyDaylightProvider = calculateYearlyDaylightProvider;
    this.repositoryProvider = repositoryProvider;
  }

  @Override
  public MainViewModel get() {
    return newInstance(getLocationsUseCaseProvider.get(), calculateYearlyDaylightProvider.get(), repositoryProvider.get());
  }

  public static MainViewModel_Factory create(
      Provider<GetLocationsUseCase> getLocationsUseCaseProvider,
      Provider<CalculateYearlyDaylightUseCase> calculateYearlyDaylightProvider,
      Provider<LocationRepository> repositoryProvider) {
    return new MainViewModel_Factory(getLocationsUseCaseProvider, calculateYearlyDaylightProvider, repositoryProvider);
  }

  public static MainViewModel newInstance(GetLocationsUseCase getLocationsUseCase,
      CalculateYearlyDaylightUseCase calculateYearlyDaylight, LocationRepository repository) {
    return new MainViewModel(getLocationsUseCase, calculateYearlyDaylight, repository);
  }
}
