import { a as stable, i as StableDeps, n as Stable, r as StableDependency, t as Primitive } from "./core-DN1BZm7Y.mjs"; import { t as CheckedDeps } from "./strict-deps-C8RGmSxZ.mjs"; import * as React from "react"; import { Context } from "react"; //#region src/react-context.d.ts /** A context whose provider and consumers agree that its value is stable. */ type StableContext = Context>; /** Create a context whose Provider rejects unbranded reference values. */ declare function createStableContext(defaultValue: Stable): StableContext; //#endregion //#region src/react-hooks.d.ts type StrictEffectHook = { (effect: React.EffectCallback): void; (effect: React.EffectCallback, dependencies: undefined): void; (effect: React.EffectCallback, dependencies: CheckedDeps): void; }; type StrictImperativeHandle = { (ref: React.Ref | undefined, init: () => R): void; (ref: React.Ref | undefined, init: () => R, dependencies: undefined): void; (ref: React.Ref | undefined, init: () => R, dependencies: CheckedDeps): void; }; /** The original React hook reference with a proof-producing signature. */ declare const useMemo: (factory: () => T, dependencies: CheckedDeps) => Stable; /** The original React hook reference with a proof-producing signature. */ declare const useCallback: any, const D extends readonly unknown[]>(callback: F, dependencies: CheckedDeps) => Stable; /** Effects without a list still run every render; supplied lists are checked. */ declare const useEffect: StrictEffectHook; declare const useLayoutEffect: StrictEffectHook; declare const useInsertionEffect: StrictEffectHook; declare const useImperativeHandle: StrictImperativeHandle; type StrictStateHook = { (initialState: S | (() => S)): [Stable, Stable>>]; (): [Stable, Stable>>]; }; declare const useState: StrictStateHook; type StrictReducerHook = { (reducer: React.ReducerWithoutAction, initialState: S): [Stable, Stable]; (reducer: React.ReducerWithoutAction, initialArg: I, init: (arg: I) => S): [Stable, Stable]; (reducer: React.Reducer, initialState: S): [Stable, Stable>]; (reducer: React.Reducer, initialArg: I, init: (arg: I) => S): [Stable, Stable>]; }; declare const useReducer: StrictReducerHook; type StrictRefHook = { (initialValue: T): Stable>; (initialValue: T | null): Stable>; (initialValue: T | undefined): Stable>; }; declare const useRef: StrictRefHook; declare const useTransition: () => [boolean, Stable]; //#endregion export { type Primitive, type Stable, type StableContext, type StableDependency, type StableDeps, createStableContext, stable, useCallback, useEffect, useImperativeHandle, useInsertionEffect, useLayoutEffect, useMemo, useReducer, useRef, useState, useTransition };