import { RequestCasing, ResponseCasing } from './common/constants/http.constant'; import { StorageName } from './common/constants/storage.constant'; export interface IModuleOptions { /** * Names of `runtimeConfig.public` keys holding each endpoint URL. * Default reads `cmsUrl`, `reportUrl`, `poolTradingUrl`. */ endpoints?: Record; clientId?: string; /** * OAuth scope requested by the central-login flow * (`/api/cms/oauth/start`). Default 'read'. */ oauthScope?: string; /** Storage backend name. Default 'cookie'. */ storage?: StorageName; /** Use fake data until the backend is ready. Default false. */ mock?: boolean; timeout?: number; retry?: number; /** Response casing to request from the backend (`x-response-casing`). Default camel. */ responseCasing?: ResponseCasing; /** Request casing declared to the backend (`x-request-casing`). Default camel. */ requestCasing?: RequestCasing; /** * Topics to subscribe to automatically after the WS connection opens. * Server-side permissions still apply (FEAT-010 ยง5.4). * * Defaults to `[]` (consumer-driven via `useWsStore().subscribe([...])`). */ wsTopics?: string[]; /** * Auto-open the WebSocket on app mount (client-only). Default `true`. * Set `false` for consumers that prefer explicit `useWsStore().open()`. */ wsAutoOpen?: boolean; } /** * Nuxt module: registers a plugin that builds the CMS SDK from runtime * config and provides it as `$cms` / `useNuxtApp().$cms`. Also attaches the * SDK to the auth Pinia store and installs persistence. * * Consumer config: * ```ts * export default defineNuxtConfig({ * modules: ['@eaera-com/cms-sdk/nuxt'], * runtimeConfig: { public: { cmsUrl: 'https://...', clientId: 'web' } }, * cmsSdk: { storage: 'cookie', mock: true }, * }) * ``` */ declare const _default: import('@nuxt/schema').NuxtModule; export default _default; //# sourceMappingURL=nuxt.d.ts.map