import { ThemeMode, ThemeListener } from './types.mjs';

/**
 * Get the current theme
 */
declare function getTheme(): ThemeMode;
/**
 * Get the resolved theme (light or dark)
 * Takes into account the 'system' setting
 */
declare function getResolvedTheme(): 'light' | 'dark';
/**
 * Set the theme
 */
declare function setTheme(theme: ThemeMode): void;
/**
 * Toggle between light and dark themes
 */
declare function toggleTheme(): void;
/**
 * Register a theme change listener
 */
declare function onThemeChange(listener: ThemeListener): void;
/**
 * Remove a theme change listener
 */
declare function offThemeChange(listener: ThemeListener): void;
declare const ThemeProvider: ({ children }: {
    children: any;
}) => any;

export { ThemeProvider, getResolvedTheme, getTheme, offThemeChange, onThemeChange, setTheme, toggleTheme };
