import type { SeamHttp } from '@seamapi/http/connect'; import { type SeamQueryProviderPropsWithClient, type SeamQueryProviderPropsWithClientSessionToken, type SeamQueryProviderPropsWithPublishableKey } from '@seamapi/react-query'; import type { QueryClient } from '@tanstack/react-query'; import { type PropsWithChildren } from 'react'; import { type TelemetryClient } from '../../lib/telemetry/index.js'; declare global { var seam: SeamProviderProps | undefined; var seamQueryClient: QueryClient | undefined; var seamTelemetryClient: TelemetryClient | undefined; } export interface SeamContext { } export type SeamProviderProps = SeamProviderPropsWithClient | SeamProviderPropsWithPublishableKey | SeamProviderPropsWithClientSessionToken; export interface SeamProviderPropsWithClient extends SeamQueryProviderPropsWithClient, SeamProviderBaseProps { } export interface SeamProviderPropsWithPublishableKey extends SeamProviderBaseProps, SeamQueryProviderPropsWithPublishableKey { publishableKey: string; userIdentifierKey?: string; } export interface SeamProviderPropsWithClientSessionToken extends SeamProviderBaseProps, SeamQueryProviderPropsWithClientSessionToken { clientSessionToken: string; } interface SeamProviderBaseProps extends PropsWithChildren { disableTelemetry?: boolean | undefined; disableCssInjection?: boolean | undefined; disableFontInjection?: boolean | undefined; unminifiyCss?: boolean | undefined; queryClient?: QueryClient | undefined; telemetryClient?: TelemetryClient | undefined; onSessionUpdate?: (client: SeamHttp) => void; } export declare const seamComponentsClassName = "seam-components"; export declare function SeamProvider({ children, disableTelemetry, disableCssInjection, disableFontInjection, unminifiyCss, telemetryClient, queryClient, ...props }: SeamProviderProps): JSX.Element; export {};