import { FiberTag, type Fiber, type FiberRoot, type ReactElement, type ReactNode, type Effect } from '../core'; export declare function scheduleUpdate(fiber: Fiber): void; export declare function flushSyncWork(fn: () => void): void; export declare function batchedUpdates(fn: () => T): T; export declare function discardPendingWork(root: FiberRoot): void; export declare function findRoot(fiber: Fiber): FiberRoot | null; export declare function renderRoot(root: FiberRoot, children: ReactNode): void; type NormalizedChild = ReactElement | string | null; export declare function childrenToArray(children: ReactNode): NormalizedChild[]; /** * Reconcile a parent fiber's child list against new normalized children. * Mutates parent.child and the sibling chain. * Mounts new host DOM into `domParent` before `anchor` (or appends if anchor === null). */ export declare function reconcileChildren(parent: Fiber, newChildren: NormalizedChild[], domParent: Node, anchor: Node | null): void; export type RenderFn = (fiber: Fiber, domParent: Node, anchor: Node | null) => void; export type TypeMatcher = (type: any, marker: any) => FiberTag | null; export declare function registerRenderer(tag: FiberTag, fn: RenderFn): void; export declare function registerTypeMatcher(m: TypeMatcher): void; export declare function registerElementMarker(sym: symbol): void; export declare function getCurrentRoot(): FiberRoot | null; export declare function withCurrentRoot(root: FiberRoot | null, fn: () => T): T; export declare function getForceRerenderingFiber(): Fiber | null; export declare function renderFiber(fiber: Fiber, domParent: Node, anchor: Node | null): void; export declare function deferHydration(fiber: Fiber, thenable: Promise): boolean; export interface Capabilities { handleSuspended: (fiber: Fiber, thenable: Promise) => void; readContext: (fiber: Fiber, ctx: any) => any; } export declare function installCapability(name: K, fn: Capabilities[K]): void; export declare function handleSuspended(fiber: Fiber, thenable: Promise): void; export declare function handleErrorInRender(fiber: Fiber, err: any): void; export declare function isThenable(x: any): x is Promise; export declare function unmountFiber(fiber: Fiber, domParent: Node): void; export declare function unmountAllChildren(parent: Fiber, domParent: Node): void; export declare function readContext(fiber: Fiber, ctx: any): any; export declare function enqueueEffect(fiber: Fiber, effect: Effect): void; export declare function scheduleLifecycle(_fiber: Fiber, fn: () => void): void; export declare function runEffects(root: FiberRoot): void; export {};