/** @jsx createElement */ import type { ChatLoaderContext, ChatMessageBase } from './types'; import type { ComponentProps, Renderer } from '../../types'; export type ChatMessageLoaderTranslations = { /** * Text to display in the loader */ loaderText?: string; }; export type ChatMessageLoaderProps = ComponentProps<'article'> & { /** * Translations for loader component texts */ translations?: Partial; /** * Whether the loader renders inside a message rather than as its own row. * Inline loaders drop the message chrome the host already provides. */ inline?: boolean; }; /** * The loader reads the turn context, so it takes `ChatLoaderContext` rather than * the plain `ChatComponentContext` every other overridable component gets. */ export type ChatMessageLoaderPropsWithContext = ChatMessageLoaderProps & { context: ChatLoaderContext; }; export declare function createChatMessageLoaderComponent({ createElement, }: Pick): (userProps: ChatMessageLoaderPropsWithContext) => JSX.Element;