import { type Controller, type ControllerDefinitionsMap, type InferControllerStaticStateMapFromDefinitionsWithSolutionType, type InferControllersMapFromDefinition, SolutionType, type CommerceEngine as SSRCommerceEngine } from '@coveo/headless/ssr-commerce-next'; import { type Context, type PropsWithChildren } from 'react'; import { type SingletonGetter } from '../utils.js'; import type { ContextState, InferControllerHooksMapFromDefinition } from './types.js'; export declare function buildControllerHooks, TSolutionType extends SolutionType>(singletonContext: SingletonGetter | null>>, controllersMap?: TControllers): InferControllerHooksMapFromDefinition; export declare function buildEngineHook, TSolutionType extends SolutionType>(singletonContext: SingletonGetter | null>>): () => SSRCommerceEngine | undefined; export declare function buildStateProvider, TSolutionType extends SolutionType>(singletonContext: SingletonGetter | null>>, solutionType: TSolutionType): ({ engine, controllers, children, }: PropsWithChildren<{ engine?: SSRCommerceEngine; controllers: InferControllersMapFromDefinition | InferControllerStaticStateMapFromDefinitionsWithSolutionType; }>) => import("react").JSX.Element;