import { createAsyncThunk } from '@reduxjs/toolkit'; import { getProductsApi, GetProductsResponse } from '@api'; export const getAllProductsThunk = createAsyncThunk< GetProductsResponse, void, { rejectValue: string } >('home/getAllProducts', async (_, { rejectWithValue }) => { try { const response = await getProductsApi(); return response; } catch (error: any) { return rejectWithValue( error.response?.data?.message || 'Failed to fetch products', ); } });