import { ConversationStreamItemKey, ConversationStreamKey, ConversationStreamLoadResult, ConversationStreamProps } from './src/types'; import { default as TxConversationStream } from './src/TxConversationStream.vue'; declare const ConversationStream: ((__VLS_props: NonNullable>["props"], __VLS_ctx?: { slots: Readonly<{ item?: (props: { item: T; index: number; }) => any; empty?: () => any; 'top-loading'?: () => any; 'top-error'?: (props: { retry: () => void; }) => any; 'top-done'?: () => any; 'scroll-to-bottom'?: (props: { streaming: boolean; }) => any; }> & { item?: (props: { item: T; index: number; }) => any; empty?: () => any; 'top-loading'?: () => any; 'top-error'?: (props: { retry: () => void; }) => any; 'top-done'?: () => any; 'scroll-to-bottom'?: (props: { streaming: boolean; }) => any; }; attrs: any; emit: ((evt: "load-error", error: unknown) => void) & ((evt: "at-bottom-change", atBottom: boolean) => void); }, __VLS_expose?: NonNullable>["expose"], __VLS_setup?: Promise<{ props: { readonly "onLoad-error"?: ((error: unknown) => any) | undefined; readonly "onAt-bottom-change"?: ((atBottom: boolean) => any) | undefined; items: T[]; itemKey: ConversationStreamItemKey; estimatedItemHeight?: number | undefined; overscan?: number | undefined; loadOlder?: (() => Promise) | undefined; hasMoreInitial?: boolean | undefined; streaming?: boolean | undefined; } & import('vue').PublicProps; expose(exposed: import('vue').ShallowUnwrapRef<{ scrollToBottom: (behavior?: ScrollBehavior) => void; scrollToIndex: (index: number) => void; tweenToBottom: (duration?: number) => Promise; atBottom: import('vue').ComputedRef; }>): void; attrs: any; slots: Readonly<{ item?: (props: { item: T; index: number; }) => any; empty?: () => any; 'top-loading'?: () => any; 'top-error'?: (props: { retry: () => void; }) => any; 'top-done'?: () => any; 'scroll-to-bottom'?: (props: { streaming: boolean; }) => any; }> & { item?: (props: { item: T; index: number; }) => any; empty?: () => any; 'top-loading'?: () => any; 'top-error'?: (props: { retry: () => void; }) => any; 'top-done'?: () => any; 'scroll-to-bottom'?: (props: { streaming: boolean; }) => any; }; emit: ((evt: "load-error", error: unknown) => void) & ((evt: "at-bottom-change", atBottom: boolean) => void); }>) => import('vue').VNode & { __ctx?: Awaited; }) & import('vue').Plugin; export { ConversationStream, TxConversationStream }; export { createPositionCache } from './src/use-position-cache'; export type { PositionCache } from './src/use-position-cache'; export { useStickToBottom } from './src/use-stick-to-bottom'; export type { StickToBottomOptions } from './src/use-stick-to-bottom'; export type { ConversationStreamItemKey, ConversationStreamKey, ConversationStreamLoadResult, ConversationStreamProps, }; /** * Hand-written because `TxConversationStream` is a generic SFC * (`