import * as React from 'react'; type CacheProfile = "seconds" | "minutes" | "hours" | "days" | "weeks" | "max" | "default"; interface JsonApiConfig { /** * The base URL for API requests (e.g., https://api.example.com) */ apiUrl: string; /** * Custom token getter function. If not provided, will use default cookie-based token retrieval. */ tokenGetter?: () => Promise; /** * Custom language getter function. If not provided, will use browser locale or next-intl. */ languageGetter?: () => Promise; /** * Default headers to include in all requests */ defaultHeaders?: Record; /** * Global error handler for failed requests (client-side only) */ onError?: (status: number, message: string) => void; /** * Cache configuration */ cacheConfig?: { defaultProfile: CacheProfile; }; /** * Function to bootstrap the data class registry. * Will be called automatically when needed. */ bootstrapper?: () => void; } declare const JsonApiContext: React.Context; declare function useJsonApiConfig(): JsonApiConfig; declare function useJsonApiConfigOptional(): JsonApiConfig | null; export { type CacheProfile as C, type JsonApiConfig as J, JsonApiContext as a, useJsonApiConfigOptional as b, useJsonApiConfig as u };