/** * Color Mode System * * Provides dark/light mode toggling with SSR flash prevention. * * @module react/components/color-mode */ import * as React from "react"; type ColorMode = "light" | "dark" | "system"; type ResolvedColorMode = "light" | "dark"; interface ColorModeContextValue { mode: ColorMode; resolvedMode: ResolvedColorMode; setMode: (mode: ColorMode) => void; toggleMode: () => void; } declare const useColorMode: () => ColorModeContextValue; export { useColorMode }; export interface ColorModeProviderProps { children: React.ReactNode; defaultMode?: ColorMode; storageKey?: string; attribute?: "class" | "data-theme"; } export declare function ColorModeProvider({ children, defaultMode, storageKey, attribute, }: ColorModeProviderProps): React.ReactElement; export declare namespace ColorModeProvider { var displayName: string; } /** * Non-throwing variant — returns `null` when there is no `ColorModeProvider`. * Use for components that should render standalone (e.g. a `CodeBlock` dropped * into markdown) and fall back to light mode. */ export declare function useColorModeOptional(): ColorModeContextValue | null; /** * Inline script to prevent flash of wrong color mode on SSR. * Render this in before any content. * * Usage: */ export declare function ColorModeScript({ defaultMode, storageKey, attribute, }: { defaultMode?: ColorMode; storageKey?: string; attribute?: "class" | "data-theme"; }): React.ReactElement; export declare namespace ColorModeScript { var displayName: string; } /** * Simple toggle button for color mode. */ export declare const ColorModeToggle: any; //# sourceMappingURL=color-mode.d.ts.map