'use client'

import React, { createContext, useContext, useState, ReactNode } from 'react';
import { ReactElement } from 'react';

// Типы для контекста с contentModal
interface ModalContextType {
    contentModal: ReactElement | null;  // Заменим content на contentModal
    setContentModal: (content: ReactElement | null) => void;  // Заменим setContent на setContentModal
}

// Создание контекста с дефолтными значениями
const ModalContext = createContext<ModalContextType | undefined>(undefined);

// Провайдер контекста
export const ModalProvider = ({ children }: { children: ReactNode }) => {
    const [contentModal, setContentModal] = useState<ReactElement | null>(null);  // Заменим content на contentModal

    return (
        <ModalContext.Provider value={{ contentModal, setContentModal }}>
            {children}
        </ModalContext.Provider>
    );
};

// Хук для использования контекста
export const useModalContext = (): ModalContextType => {
    const context = useContext(ModalContext);
    if (!context) {
        throw new Error('useModalContext must be used within a ModalProvider');
    }
    return context;
};
