import React, { ReactNode } from 'react';
import { Metrics, AchievementConfig, MetricValue } from '../types';
import { Styles } from '../defaultStyles';
interface AchievementContextProps {
    metrics: Metrics;
    setMetrics: (metrics: Metrics | ((prevMetrics: Metrics) => Metrics)) => void;
    unlockedAchievements: string[];
    checkAchievements: () => void;
    showBadgesModal: () => void;
}
interface AchievementProviderProps {
    children: ReactNode;
    config: AchievementConfig;
    initialState?: Record<string, MetricValue>;
    storageKey?: string;
    badgesButtonPosition?: 'top-left' | 'top-right' | 'bottom-left' | 'bottom-right';
    styles?: Partial<Styles>;
}
export declare const AchievementProvider: React.FC<AchievementProviderProps>;
export declare const useAchievement: () => AchievementContextProps;
export {};
