import { type CSSProperties, type RefCallback, type RefObject } from "react"; export type PortalTokenStyle = Pick & Partial>; export declare const PORTAL_SOURCE_INLINE_SIZE = "--og-portal-source-inline-size"; /** * A callback ref that publishes the currently mounted source element through * React state. Unlike a bare mutable ref, late mounts and replacements cause * consumers to render and restart their observers without polling. */ export declare function usePortalTokenSource(): { source: T | null; currentRef: RefObject; ref: RefCallback; }; /** * Copy the effective SDK tokens across a portal boundary. A locally themed or * rebranded embed cannot rely on CSS inheritance once a portal mounts under * ``. Ancestor theme/class/style mutations and OS color-scheme changes * keep the copied values live. */ export declare function usePortalTokenStyle(source: HTMLElement | null): PortalTokenStyle;