export { createClient, resolveBaseUrl } from "./runtime/client"; export type { ApiClient, AuthHeaderResolver, CreateClientOptions, QueryParams, PathParams, } from "./runtime/client"; export { ApiError, isApiError } from "./runtime/client"; // Re-export API helpers export * from "./response-helpers"; // Import createClient for internal use import { createClient } from "./runtime/client"; export const apiClient = createClient(); // Query keys for React Query - matching the expected structure export const queryKeys = { auth: { me: () => ["auth", "me"] as const, session: () => ["auth", "session"] as const, }, billing: { invoices: (params?: Record) => ["billing", "invoices", params] as const, invoice: (id: string) => ["billing", "invoice", id] as const, paymentMethods: () => ["billing", "payment-methods"] as const, }, subscriptions: { all: () => ["subscriptions"] as const, list: (params?: Record) => ["subscriptions", "list", params] as const, active: () => ["subscriptions", "active"] as const, stats: () => ["subscriptions", "stats"] as const, detail: (id: string) => ["subscriptions", "detail", id] as const, invoices: (id: number, params?: Record) => ["subscriptions", "invoices", id, params] as const, }, dashboard: { summary: () => ["dashboard", "summary"] as const, }, catalog: { products: () => ["catalog", "products"] as const, internet: { combined: () => ["catalog", "internet", "combined"] as const, }, sim: { combined: () => ["catalog", "sim", "combined"] as const, }, vpn: { combined: () => ["catalog", "vpn", "combined"] as const, }, }, orders: { list: () => ["orders", "list"] as const, detail: (id: string | number) => ["orders", "detail", String(id)] as const, }, } as const;