{"version":3,"file":"ApiClientContext.mjs","sources":["../../../src/lib/contexts/ApiClientContext.ts"],"sourcesContent":["/**\n * @file API Client Context\n * @description Context for API client management (Fast Refresh compliant).\n */\n\nimport { createContext } from 'react';\n\n/**\n * HTTP method\n */\nexport type HttpMethod = 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE';\n\n/**\n * Request options\n */\nexport interface RequestOptions {\n  headers?: Record<string, string>;\n  params?: Record<string, string | number | boolean>;\n  body?: unknown;\n  timeout?: number;\n  retries?: number;\n}\n\n/**\n * API client context value\n */\nexport interface ApiClientContextValue {\n  baseURL: string;\n  request: <T>(method: HttpMethod, url: string, options?: RequestOptions) => Promise<T>;\n  get: <T>(url: string, options?: RequestOptions) => Promise<T>;\n  post: <T>(url: string, body?: unknown, options?: RequestOptions) => Promise<T>;\n  put: <T>(url: string, body?: unknown, options?: RequestOptions) => Promise<T>;\n  patch: <T>(url: string, body?: unknown, options?: RequestOptions) => Promise<T>;\n  delete: <T>(url: string, options?: RequestOptions) => Promise<T>;\n  setHeader: (key: string, value: string) => void;\n  removeHeader: (key: string) => void;\n}\n\n/**\n * API client context - extracted for Fast Refresh compliance\n */\nexport const ApiClientContext = createContext<ApiClientContextValue | null>(null);\n\nApiClientContext.displayName = 'ApiClientContext';\n"],"names":["ApiClientContext","createContext"],"mappings":";AAyCO,MAAMA,IAAmBC,EAA4C,IAAI;AAEhFD,EAAiB,cAAc;"}