import { Context } from 'react'; import { AbstractManagerClass, AbstractManagerProvider, EffectListener, GetKeyType, GetValueFunc, InferManagerEvents, ManagerConstructorHook, ManagerConstructorHookProps, ManagerEventTypeName, UseManagerHook, UseOptionalManagerHook } from './types'; import { AbstractManager } from './manager'; export declare function getManagerContext>(managerClass: ManagerClass): Context | undefined>; export declare function useManagerContext>>(managerClass: ManagerClass, Context?: Context | undefined>): InstanceType; export declare function useOptionalManagerContext>>(managerClass: ManagerClass, Context?: Context | undefined>): InstanceType | undefined; export declare function createProvider, Props extends ManagerConstructorHookProps>(managerClass: ManagerClass, useConstructor: ManagerConstructorHook, Props>): AbstractManagerProvider; export declare function createManagerHook>>(managerClass: ManagerClass): UseManagerHook>; export declare function createOptionalManagerHook>>(managerClass: ManagerClass): UseOptionalManagerHook>; export declare function createValueListenerHook>, EventName extends ManagerEventTypeName>>, ArgsType, ReturnType>(managerClass: ManagerClass, eventName: EventName, getKey: GetKeyType, InferManagerEvents>, EventName, ArgsType>, getValue: GetValueFunc, InferManagerEvents>, EventName, ReturnType>, getServerValue?: GetValueFunc, InferManagerEvents>, EventName, ReturnType>): (...args: ArgsType[]) => ReturnType; export declare function createEffectListenerHook>, EventName extends ManagerEventTypeName>>, ArgsType>(managerClass: ManagerClass, eventName: EventName, getKey: GetKeyType, InferManagerEvents>, EventName, ArgsType>): (handler: EffectListener, InferManagerEvents>, EventName>, args?: ArgsType[]) => void; export declare function createGlobalValueListenerHook>, EventName extends ManagerEventTypeName>>, ReturnType>(managerClass: ManagerClass, eventName: EventName, getValue: GetValueFunc, InferManagerEvents>, EventName, ReturnType>, getServerValue?: GetValueFunc, InferManagerEvents>, EventName, ReturnType>): () => ReturnType; export declare function createGlobalEffectListenerHook>, EventName extends ManagerEventTypeName>>, ArgsType>(managerClass: ManagerClass, eventName: EventName): (handler: EffectListener, InferManagerEvents>, EventName>, args?: ArgsType[]) => void;