import { default as React } from 'react'; import { IAppearanceConfig } from '../../types/checkout.types'; import { BusinessEntityType, CustomerType } from '../../types/customer.types'; /** * Props for ZenskarContextManager component */ type ZenskarContextManagerProps = { /** Is Test Mode */ isTestMode?: boolean; /** Organization ID from Zenskar dashboard */ organisationId: string; /** Customer ID for the current user */ customerId?: CustomerType; /** Business Entity */ businessEntityId?: BusinessEntityType; /** Optional theme configuration */ theme?: IAppearanceConfig | null; /** Child components that will have access to Zenskar context */ children: React.ReactNode; }; /** * Internal component that manages customer data fetching and context provision * This component sits inside the provider chain so it can use hooks like useGetCustomer * * Responsibilities: * - Fetch customer data and extract business entity ID * - Manage elements registry * - Provide enhanced context to child components * - Handle loading and error states gracefully without blocking app rendering * - Support degraded mode when API calls fail * * @param props - Component props * @param props.organisationId - Organization ID from Zenskar dashboard * @param props.customerId - Customer ID for the current user * @param props.businessEntityId - Business Entity ID * @param props.theme - Optional theme configuration * @param props.children - Child components that will have access to Zenskar context * @param props.isTestMode - Is Test Mode * @returns JSX element with context provider (never blocks rendering) * * @internal */ export declare const ZenskarContextManager: ({ organisationId, customerId, businessEntityId, theme, children, isTestMode, }: ZenskarContextManagerProps) => React.JSX.Element; export {};