import { ExtractContainerProperty } from "./container"; import { NyaxContext } from "./context"; import { NamespacedModelClass } from "./model"; export interface InitialState { [key: string]: unknown | InitialState; } export declare type ConvertState = TInitialState extends any ? TInitialState : never; export interface GetState { (): unknown | undefined; (modelClassOrNamespace: TModelClass | string): TModelClass extends NamespacedModelClass ? Record> | undefined : TModelClass extends NamespacedModelClass ? ExtractContainerProperty | undefined : Record> | ExtractContainerProperty | undefined; (modelClassOrNamespace: TModelClass | string, key: string): TModelClass extends NamespacedModelClass ? ExtractContainerProperty | undefined : TModelClass extends NamespacedModelClass ? never : ExtractContainerProperty | never | undefined; } export declare function createGetState(nyaxContext: NyaxContext): GetState;