/**
 * Theme Context for Code Buddy
 * Provides theme and avatar information to all UI components
 */
import React from 'react';
import { Theme, ThemeColor, ThemeColors, AvatarConfig, AvatarPreset } from '../../themes/theme.js';
/**
 * Theme context value interface
 */
interface ThemeContextValue {
    theme: Theme;
    colors: ThemeColors;
    avatars: AvatarConfig;
    setTheme: (themeId: string) => boolean;
    getAvailableThemes: () => Theme[];
    setAvatarPreset: (presetId: string) => boolean;
    setCustomAvatar: (key: keyof AvatarConfig, value: string) => void;
    clearCustomAvatars: () => void;
    getAvatarPresets: () => AvatarPreset[];
    setCustomColor: (key: keyof ThemeColors, value: ThemeColor) => void;
    clearCustomColors: () => void;
    refreshTheme: () => void;
}
/**
 * Theme provider props
 */
interface ThemeProviderProps {
    children: React.ReactNode;
}
/**
 * Theme provider component
 */
export declare function ThemeProvider({ children }: ThemeProviderProps): React.JSX.Element;
/**
 * Hook to access theme context
 */
export declare function useTheme(): ThemeContextValue;
/**
 * Hook to get only colors (for components that only need colors)
 */
export declare function useThemeColors(): ThemeColors;
/**
 * Hook to get only avatars (for components that only need avatars)
 */
export declare function useAvatars(): AvatarConfig;
export {};
