import { DOMApi, ComponentLike, RootLike } from './types'; export declare const RENDERING_CONTEXT: unique symbol; export declare const ROOT_CONTEXT: unique symbol; export declare const API_FACTORY_CONTEXT: unique symbol; export declare function context(contextKey: symbol): (klass: any, key: string, descriptor?: PropertyDescriptor & { initializer?: () => any; }) => void; export declare function initDOM(ctx: ComponentLike | RootLike): DOMApi; export declare function getDocument(ctx: ComponentLike | RootLike): Document; export declare function getContext(ctx: ComponentLike | RootLike, key: symbol, /** Set to false for optional contexts that may not be provided */ required?: boolean): T | null; export declare function cleanupFastContext(): void; export declare function snapshotRenderingContext(): { fast: unknown; root: unknown; }; export declare function restoreRenderingContext(s: { fast: unknown; root: unknown; }): void; export declare function provideContext(ctx: ComponentLike | RootLike, key: symbol, value: T): void;