package cy.hexor.furumi.di

import cy.hexor.furumi.data.repository.AuthRepositoryImpl
import cy.hexor.furumi.data.repository.PlayerRepositoryImpl
import cy.hexor.furumi.domain.repository.AuthRepository
import cy.hexor.furumi.domain.repository.PlayerRepository
import dagger.Binds
import dagger.Module
import dagger.hilt.InstallIn
import dagger.hilt.components.SingletonComponent
import javax.inject.Singleton

@Module
@InstallIn(SingletonComponent::class)
abstract class RepositoryModule {

    @Binds
    @Singleton
    abstract fun bindAuthRepository(
        impl: AuthRepositoryImpl
    ): AuthRepository

    @Binds
    @Singleton
    abstract fun bindPlayerRepository(
        impl: PlayerRepositoryImpl
    ): PlayerRepository
}
