import { createContext, useContext, type ReactNode } from "react"; import type { NanobotClient } from "@/lib/nanobot-client"; import type { WebUIIngressLimits } from "@/lib/types"; interface ClientContextValue { client: NanobotClient; token: string; modelName: string | null; ingressLimits: WebUIIngressLimits | null; } const ClientContext = createContext(null); export function ClientProvider({ client, token, modelName = null, ingressLimits = null, children, }: { client: NanobotClient; token: string; modelName?: string | null; ingressLimits?: WebUIIngressLimits | null; children: ReactNode; }) { return ( {children} ); } export function useClient(): ClientContextValue { const ctx = useContext(ClientContext); if (!ctx) { throw new Error("useClient must be used within a ClientProvider"); } return ctx; }