import { UnreadCount } from '../../types/UserNotificationList';
import { createApi,fetchBaseQuery } from '@reduxjs/toolkit/query/react'

const baseURL = process.env.NEXT_PUBLIC_API_URL

export const getUserNotificationCount = createApi({
  reducerPath: "getUserNotificationCount",
  baseQuery: fetchBaseQuery({
    baseUrl: baseURL,
    prepareHeaders: (headers, { getState }) => {
      const token = (getState() as any)?.auth?.token;
      if (token) {
        headers.set("Authorization", `Bearer ${token}`);
      }
      return headers;
    },
  }),
  
  endpoints: (builder) => ({
    getUserNotificationCount: builder.query<UnreadCount, { token: string }>({
      query: ({ token }) => ({
        url: "user_read_count",
        method: "POST",
        headers: {
          "Content-Type": "application/json",
          Authorization: `Bearer ${token}`,
        },
        body: JSON.stringify({ token }), // Correct format
      }),
    }),
  }),
});

export const { useGetUserNotificationCountQuery } = getUserNotificationCount;
