Тип интерфейса получают через указатель на nil: ifaceType := reflect.TypeOf((*Writer)(nil)).Elem(). Затем проверяют через Implements:
ifaceType := reflect.TypeOf((*io.Writer)(nil)).Elem()
implType := reflect.TypeOf((*bytes.Buffer)(nil))
fmt.Println(implType.Implements(ifaceType)) // trueИспользуется в плагинах, сериализаторах и фреймворках для проверки типов в рантайме.