import { type Context, type FC, type ReactNode } from "react"; /** * Creates a context with a custom provider and a hook to use the context. */ declare function createContext(rootComponentName: string, defaultContext?: ContextValueType): readonly [FC, (consumerName: string) => ContextValueType]; type Scope = { [scopeName: string]: Context[]; } | undefined; type ScopeHook = (_scope: Scope) => { [__scopeProp: string]: Scope; }; interface CreateScope { scopeName: string; (): ScopeHook; } /** * Creates a scoped context that can be composed with other scoped contexts. */ declare function createContextScope(scopeName: string, createContextScopeDeps?: CreateScope[]): readonly [(rootComponentName: string, defaultContext?: ContextValueType) => readonly [FC; children: ReactNode; }>, (consumerName: string, scope: Scope) => ContextValueType], CreateScope]; export { createContext, createContextScope }; export type { CreateScope, Scope };