В Go интерфейсы определяются на стороне потребителя, а не реализации. Если пакет service использует зависимость — он объявляет интерфейс у себя, а не в пакете зависимости.
Это принцип Go: «Accept interfaces, return structs». Маленькие интерфейсы (1-3 метода) лучше больших.
Стандартная библиотека подаёт пример: io.Reader, io.Writer — по одному методу. Не создавай интерфейс заранее «на всякий случай» — только когда есть реальная потребность в абстракции.