code: void expectAllInterfaceProperties(Node n, FunctionType type) {
      ObjectType instance = type.getInstanceType();
      for (ObjectType implemented : type.getAllImplementedInterfaces()) {
        if (implemented.getImplicitPrototype() != null) {
          for (String prop :
               implemented.getImplicitPrototype().getOwnPropertyNames()) {
            expectInterfaceProperty(n, instance, implemented, prop);
          }
        }
      }
    }
docs: Expect that all properties on interfaces that this type implements are implemented and
  correctly typed.