37 lines
1.1 KiB
TypeScript
37 lines
1.1 KiB
TypeScript
import { ReactNode } from "react";
|
|
import { Types } from "@a2ui/lit/0.8";
|
|
import * as react_jsx_runtime0 from "react/jsx-runtime";
|
|
|
|
//#region src/react-renderer/theme/ThemeContext.d.ts
|
|
/**
|
|
* Props for the ThemeProvider component.
|
|
*/
|
|
interface ThemeProviderProps {
|
|
/** The theme to provide. Falls back to defaultTheme if not specified. */
|
|
theme?: Types.Theme;
|
|
/** Child components that will have access to the theme */
|
|
children: ReactNode;
|
|
}
|
|
/**
|
|
* Provider component that makes the A2UI theme available to descendant components.
|
|
*/
|
|
declare function ThemeProvider({
|
|
theme,
|
|
children
|
|
}: ThemeProviderProps): react_jsx_runtime0.JSX.Element;
|
|
/**
|
|
* Hook to access the current A2UI theme.
|
|
*
|
|
* @returns The current theme
|
|
* @throws If used outside of a ThemeProvider
|
|
*/
|
|
declare function useTheme(): Types.Theme;
|
|
/**
|
|
* Hook to optionally access the current A2UI theme.
|
|
*
|
|
* @returns The current theme, or undefined if not within a provider
|
|
*/
|
|
declare function useThemeOptional(): Types.Theme | undefined;
|
|
//#endregion
|
|
export { ThemeProvider, useTheme, useThemeOptional };
|
|
//# sourceMappingURL=ThemeContext.d.mts.map
|