import { Accessor, JSX } from 'solid-js'; type RootNode = ShadowRoot | Document | Node; interface UseEnvironmentContext { /** * The root node of the application. * This is used to determine the window and document objects. * @default document */ getRootNode(): RootNode; /** * The document context for the root node. * @default document */ getDocument(): Document; /** * The window context for the root node. * @default window */ getWindow(): Window & typeof globalThis; } declare const useEnvironmentContext: () => Accessor; interface EnvironmentProviderProps { children?: JSX.Element; value?: RootNode | (() => RootNode); } declare const EnvironmentProvider: (props: EnvironmentProviderProps) => JSX.Element; export { type UseEnvironmentContext as EnvironmentContext, EnvironmentProvider, type EnvironmentProviderProps, type RootNode, type UseEnvironmentContext, useEnvironmentContext };