import { createAuthClient } from 'better-auth/react'; import * as api from './api'; const apiBaseUrl = api.apiBaseUrl; export const authClient = createAuthClient({ baseURL: apiBaseUrl, fetchOptions: { credentials: 'include', }, }); export class ApiClientError extends Error { status?: number; details?: unknown; causeError?: unknown; constructor( message: string, options?: { status?: number; details?: unknown; causeError?: unknown } ) { super(message); this.name = 'ApiClientError'; this.status = options?.status; this.details = options?.details; this.causeError = options?.causeError; } } export const apiClient = { onboarding: api.onboarding, plans: api.plans, user: api.user, complexes: api.complexes, sports: api.sports, courts: api.courts, publicBookings: { getAvailability: api.getAvailability, create: api.createPublic, getConfirmation: api.getConfirmation, }, adminBookings: { listByComplex: api.listByComplex, create: api.createAdmin, updateStatus: api.updateStatus, }, }; export type { ErrorHandlers } from './api'; export { configureApiClient } from './api'; export function setApiAccessToken(_token: string | null) { // accessToken = token; } export type ApiClient = typeof apiClient;