import { type Placement } from '@floating-ui/react'; import { type ComponentPropsWithoutRef, type ReactNode, type Ref } from 'react'; type ModelId = string; type AIContextUsage = { inputTokens?: number; outputTokens?: number; reasoningTokens?: number; cachedInputTokens?: number; totalTokens?: number; }; type AIContextValue = { usedTokens: number; maxTokens: number; usage?: AIContextUsage; modelId?: ModelId; }; type AIContextProps = AIContextValue & { children?: ReactNode; open?: boolean; onOpenChange?: (open: boolean) => void; openDelay?: number; closeDelay?: number; placement?: Placement; offsetValue?: number; }; type AIContextTriggerProps = Omit, 'ref'> & { asChild?: boolean; ref?: Ref; }; type AIContextContentProps = ComponentPropsWithoutRef<'div'> & { ref?: Ref; }; type AIContextContentHeaderProps = ComponentPropsWithoutRef<'div'> & { ref?: Ref; }; type AIContextContentBodyProps = ComponentPropsWithoutRef<'div'> & { ref?: Ref; }; type AIContextContentFooterProps = ComponentPropsWithoutRef<'div'> & { ref?: Ref; }; type AIContextUsageComponentProps = ComponentPropsWithoutRef<'div'> & { ref?: Ref; }; declare const AIContext: ({ usedTokens, maxTokens, usage, modelId, children, open: controlledOpen, onOpenChange: controlledOnOpenChange, openDelay, closeDelay, placement, offsetValue, }: AIContextProps) => import("react/jsx-runtime").JSX.Element; declare const AIContextTrigger: ({ asChild, children, className, ref, type, "aria-label": ariaLabel, ...props }: AIContextTriggerProps) => import("react/jsx-runtime").JSX.Element; declare const AIContextContent: ({ children, className, ref, style, ...props }: AIContextContentProps) => import("react/jsx-runtime").JSX.Element | null; declare const AIContextContentHeader: ({ children, className, ref, ...props }: AIContextContentHeaderProps) => import("react/jsx-runtime").JSX.Element; declare const AIContextContentBody: ({ children, className, ref, ...props }: AIContextContentBodyProps) => import("react/jsx-runtime").JSX.Element; declare const AIContextContentFooter: ({ children, className, ref, ...props }: AIContextContentFooterProps) => import("react/jsx-runtime").JSX.Element; declare const AIContextInputUsage: ({ className, children, ref, ...props }: AIContextUsageComponentProps) => string | number | bigint | true | Iterable | Promise> | Iterable | null | undefined> | import("react/jsx-runtime").JSX.Element | null; declare const AIContextOutputUsage: ({ className, children, ref, ...props }: AIContextUsageComponentProps) => string | number | bigint | true | Iterable | Promise> | Iterable | null | undefined> | import("react/jsx-runtime").JSX.Element | null; declare const AIContextReasoningUsage: ({ className, children, ref, ...props }: AIContextUsageComponentProps) => string | number | bigint | true | Iterable | Promise> | Iterable | null | undefined> | import("react/jsx-runtime").JSX.Element | null; declare const AIContextCacheUsage: ({ className, children, ref, ...props }: AIContextUsageComponentProps) => string | number | bigint | true | Iterable | Promise> | Iterable | null | undefined> | import("react/jsx-runtime").JSX.Element | null; export { AIContext, AIContextCacheUsage, AIContextContent, AIContextContentBody, AIContextContentFooter, AIContextContentHeader, AIContextInputUsage, AIContextOutputUsage, AIContextReasoningUsage, AIContextTrigger, }; export type { AIContextContentBodyProps, AIContextContentFooterProps, AIContextContentHeaderProps, AIContextContentProps, AIContextProps, AIContextTriggerProps, AIContextUsage, AIContextUsageComponentProps, AIContextValue, };