Não faria mais sentido a interface ser definida dentro da camada da aplicação ao invés do domínio? tendo em vista que é ela quem vai precisar receber alguem que assine o contrato da interface, tipo... um caso de uso - Adicionar Aluno - ele recebe em seu construtor um objeto do tipo AlunoRepository.