I agree. In theory, declarative languages let programs reason about the content more easily. But I can't think of when that has actually been a real benefit.
Flutter gets it right. The code looks almost like it is declarative. But really it's just Dart code (an underappreciated language IMO) and you never get stuck by things that are impossible to express.