Значение типа «Объект» не может быть присвоено переменной типа «GlobalBaseState» во flutter

#flutter

Вопрос:

Объект pageState был реализован GlobalBaseState , например:

 class MainState implements GlobalBaseState,Cloneable<MainState> {

  @override
  MainState clone() {
    return MainState()
    ..showDebug = this.showDebug;
  }

  @override
  bool showDebug = false;
}

MainState initState(Map<String, dynamic> args) {
  return MainState();
}
 

это и есть GlobalBaseState определение:

 abstract class GlobalBaseState{
  bool get showDebug;

  set showDebug(bool showDebug);
}
 

когда я пишу такой код, как этот:

 static AbstractRoutes buildRoute() {
    final AbstractRoutes routes = PageRoutes(
        pages: <String, fishPage.Page<Object, dynamic>>{
          'home_page': HomePage(), 'app_page': AppPage(), 'main_page': MainPage()
        },
        visitor: (String path, fishPage.Page<Object, dynamic> page) {
          if (page.isTypeof<GlobalBaseState>()) {
            page.connectExtraStore<GlobalState>(GlobalStore.store, (Object pageState, GlobalState appState) {
              final GlobalBaseState p = pageState;
              if(p.showDebug !=appState.showDebug){
                if(pageState is Cloneable){
                  final Object copy = pageState.clone();
                  final GlobalBaseState newState = copy;
                  newState.showDebug = appState.showDebug;
                  return newState;
                }
              }
              return pageState;
            });
          }
        });
    return routes;
  }
 

эта строка final GlobalBaseState p = pageState; показывает это A value of type 'Object' can't be assigned to a variable of type 'GlobalBaseState' . почему это должно было произойти? что я должен сделать, чтобы это исправить? версия sdk является sdk: ">=2.12.0 <3.0.0"