mobx-wouter
Version:
<img src="assets/logo.png" align="right" height="156" alt="logo" />
9 lines • 1.01 kB
TypeScript
import { LazyViewAndModel, LazyViewModelHocConfig } from 'mobx-view-model';
import { ComponentProps, ComponentType } from 'react';
import type { LoadableConfig, LoadableMixin } from 'react-simple-loadable';
import { MaybePromise } from 'yummies/utils/types';
import { AnyPageViewModel, PageViewModel } from '../page-view-model/index.js';
import { ComponentWithPageViewModel } from './with-page-view-model.js';
export type ComponentWithLazyPageViewModel<TViewModel extends AnyPageViewModel, TView extends ComponentType<any>> = ComponentWithPageViewModel<TViewModel, ComponentProps<TView>> & LoadableMixin;
export declare function withLazyPageViewModel<TViewModel extends PageViewModel<any, any>, TView extends ComponentType<any>>(loadFunction: () => MaybePromise<LazyViewAndModel<TViewModel, TView>>, configOrFallbackComponent?: LazyViewModelHocConfig<NoInfer<TViewModel>> | LoadableConfig['loading']): ComponentWithLazyPageViewModel<TViewModel, TView>;
//# sourceMappingURL=with-lazy-page-view-model.d.ts.map