Члены интерфейса имеют того же оператора доступа, что и интерфейс, в котором они находятся, и в этом смысл интерфейса. В противном случае у вас был бы открытый интерфейс IFoo, который имеет внутренний член Bar, что было бы проблематично, если код хочет программировать против IFoo: он не всегда может получить доступ к Bar, хотя он может использовать IFoo: тип, реализующий IFoo, очевидно, не В этот момент реализовать Бар.
Так что, если вы хотите иметь некоторые внутренние элементы, например, используйте внутренний интерфейс для этих членов.