import type { INotifyPropertiesChanged } from '../viewModels'; import { type DependencyList } from 'react'; /** * Represents a view model factory callback. * @template TViewModel The type of view model to create. */ export type ViewModelFactory = () => TViewModel; /** * Ensures a view models instance per component generated by the factory and watched for changes. Whenever the provided deps * change a new instance is created, similar to {@linkcode useMemo}. * @template TViewModel The type of view model to create. * @param viewModelFactory The view model factory callback for creating an instance. * @param deps Dependencies of the callback, whenever these change the callback is called again, similar to {@linkcode useMemo}. * @returns Returns the created view model instance. */ export declare function useViewModelMemo(viewModelFactory: ViewModelFactory, deps: DependencyList): TViewModel;