import * as React from 'react';
import React__default from 'react';

interface TranslateContextType {
    currentLanguage: string;
    defaultLanguage: string;
    setLanguage: (lang: string) => void;
    translate: (text: string) => Promise<string>;
    isTranslating: boolean;
}
interface TranslateProviderProps {
    children: React__default.ReactNode;
    defaultLanguage?: string;
    targetLanguage?: string;
}
declare const TranslateProvider: React__default.FC<TranslateProviderProps>;
declare const useTranslator: () => TranslateContextType;

interface TranslateError extends Error {
    code?: string;
    response?: any;
}

declare function useAutoTranslate(text: string): {
    translatedText: string;
    isLoading: boolean;
    error: TranslateError | null;
};

interface TranslateTextProps {
    children: string | React__default.ReactNode;
}
declare const TranslateText: React__default.FC<TranslateTextProps>;

interface ButtonProps {
    text: string;
    onClick?: () => void;
}
declare const Button: React.FC<ButtonProps>;

export { Button, TranslateProvider, TranslateText, useAutoTranslate, useTranslator };
export type { ButtonProps, TranslateProviderProps };
