When a repository interface should not be instantiated at runtime, it should be marked with @NoRepositoryBean annotation as follows:
@NoRepositoryBean interface BaseRepository extends Repository { // CRUD methods that will not be exposed }