import React, { ReactNode } from 'react'; import { SnackbarProviderProps } from 'notistack'; import type { InitializeI18nOptions } from '../utilities/i18n/initializeI18n'; export interface UdpDevToolsOptions { /** Show the React Query DevTools panel. Defaults to false. */ query?: boolean; } export interface UdpAppProviderProps { children: ReactNode; /** * Props forwarded to the SnackbarProvider from notistack. */ snackbarProps?: SnackbarProviderProps; /** * Props forwarded to the AuthProviderWrapper. */ authProps?: { doNotWaitForTenant?: boolean; }; /** * Optional configuration overrides for the shared i18n instance. */ i18nOptions?: InitializeI18nOptions; /** * Enable developer tools for debugging. All options default to false. */ devTools?: UdpDevToolsOptions; /** * Opt in to app-level AI: mounts the AI access provider. A page then builds * an `AiCapability` (prompt, live context, tools, proposal, the models it * runs on) and mounts `UdpAiAssistant` for it where the chat belongs. * Nothing about models is decided here. * * No assistant UI is mounted for you; nothing appears until a page puts a * surface on screen. * * Connection details are not props: the gateway URL comes from * `ConfigService.UDP_AI_GATEWAY_BASE` and the product header from * `UNITY_PRODUCT_ID`. With no gateway URL configured this is a no-op. * Entitlement is not a prop either: the gateway is asked once per tenant * (`GET /v1/models`) and AI surfaces render only when it allows this * tenant/product — the app declares that it ships AI, the server decides * who gets it. * * Omitted (the default) means no AI code runs at all. */ ai?: boolean; } /** * Bundles the core UDP providers (theme, snackbar, auth) and ensures the shared * i18n instance is initialised exactly once. Intended to be rendered beneath a * react-router so the auth provider has access to history. */ export declare const UdpAppProvider: React.FC; //# sourceMappingURL=UdpAppProvider.d.ts.map