import type { Worklet } from './types.js';
/**
 * Hydrates a new worklet ctx from the first-screen ctx without requiring a
 * native Element. Backends compose their own replay semantics around this.
 */
export declare function hydrateWorkletCtx(worklet: Worklet, oldWorklet: Worklet): void;
/**
 * This function must be called when a worklet context is updated.
 *
 * @param worklet - The worklet to be updated
 * @param oldWorklet - The old worklet context
 * @param isFirstScreen - Whether it is before the hydration is finished
 * @param element - The element
 */
export declare function onWorkletCtxUpdate(worklet: Worklet, oldWorklet: Worklet | null | undefined, isFirstScreen: boolean, element: ElementNode): void;
export declare function retainWorkletCtx(worklet: Worklet): void;
export declare function flushDelayedRunOnBackgroundFunctions(): void;
export declare function clearDelayedRunOnBackgroundFunctions(): void;
/**
 * This must be called when the hydration is finished.
 */
export declare function onHydrationFinished(): void;
