import { FulfilledReactPromise, RejectedReactPromise } from '../use/index.js'; /** * Explains why the content has to render in the browser. It becomes the `cause` * of the error reported by the server renderer. A function is only invoked by * the server renderer and never in the browser, so pass one (e.g. `() => new * Error('...')`) when creating the reason is expensive. */ type BrowserReason = string | (() => unknown); /** * The opaque value returned by `browser()`. Pass it to `use()`, do not read * it, await it, or throw it yourself. */ type BrowserUsable = FulfilledReactPromise | RejectedReactPromise; /** @private */ declare function browserBailoutError(reason?: BrowserReason): Error; /** @see https://foxact.skk.moe/browser */ declare const browser: (reason?: BrowserReason) => BrowserUsable; export { browser, browserBailoutError }; export type { BrowserReason, BrowserUsable };