const API_BASE = import.meta.env.VITE_API_URL || '/api' async function request(endpoint: string, options?: RequestInit): Promise { const response = await fetch(`${API_BASE}${endpoint}`, { headers: { 'Content-Type': 'application/json' }, ...options, }) if (!response.ok) { throw new Error(`API error: ${response.status} ${response.statusText}`) } return response.json() } export const api = { getCameras: () => request<[]>('/cameras'), getCameraStatus: (id: string) => request<[]>(`/cameras/${id}/status`), getSystemHealth: () => request<[]>('/system/health'), toggleRecording: (cameraId: string) => request<[]>(`/cameras/${cameraId}/recording`, { method: 'POST' }), }