The distinct view names the contract declares (routes + states).
Iterable<String> get declaredViews => { for (final route in declaredRoutes) route.view, ...stateBindings.keys, };