import { Consumer, ConsumerProps, Provider, ProviderProps, ReactNode } from 'react'; import { GenericDataProvider, InferResponse, InferMetaType, InferOptions, InferQuery, ResourceContextValue, InferContextPluginTypes, InferUIPluginTypes } from './DataProvider'; export type ConfigContextValue = { dataProvider?: DataProviderI; }; export declare const ConfigContext: import('react').Context>; export declare const ConfigConsumer: Consumer> & { (props: ConsumerProps>): ReactNode; }; export declare const useConfigContext: () => ConfigContextValue; export declare const ResourceContextProvider: Provider> & { = InferResponse, QueryI extends InferQuery = InferQuery, OptionsI extends InferOptions = InferOptions, MetaTypeI extends InferMetaType = InferMetaType>(props: ProviderProps & InferContextPluginTypes & InferUIPluginTypes>): ReactNode; }; export declare const ResourceConsumer: Consumer> & { = InferResponse, QueryI extends InferQuery = InferQuery, OptionsI extends InferOptions = InferOptions, MetaTypeI extends InferMetaType = InferMetaType>(props: ConsumerProps & InferContextPluginTypes & InferUIPluginTypes>): ReactNode; }; export declare const useResourceContext: = InferResponse, QueryI extends InferQuery = InferQuery, OptionsI extends InferOptions = InferOptions, MetaTypeI extends InferMetaType = InferMetaType>() => ResourceContextValue & InferContextPluginTypes & InferUIPluginTypes;