import axiosInstance from '@/configs/axios.config';
import { API_ENDPOINTS } from '@/constants';
import type { ApiResponse, CheckoutSessionPayload, CheckoutSessionResponse, Transaction } from '@/types';

export const paymentService = {
  createCheckoutSession: async (
    payload: CheckoutSessionPayload,
  ): Promise<ApiResponse<CheckoutSessionResponse>> => {
    const response = await axiosInstance.post<ApiResponse<CheckoutSessionResponse>>(
      API_ENDPOINTS.CHECKOUT_SESSION,
      payload,
    );
    return response.data;
  },

  getTransactions: async (): Promise<ApiResponse<Transaction[]>> => {
    const response = await axiosInstance.get<ApiResponse<Transaction[]>>(
      API_ENDPOINTS.TRANSACTIONS,
    );
    return response.data;
  },
};
