import { UiChatStatus } from '../state/useAgentStore';
import { ComposerFormApi } from '../components/ChatWindow/Composer/types';

export interface UseChatSendControllerOptions {
    initialSystemPrompt?: string | ((contextKey: string) => string | undefined);
    composerFormRef: React.MutableRefObject<ComposerFormApi>;
    multiUser?: boolean;
    participantIds?: string[];
}
export declare const useChatSendController: ({ initialSystemPrompt, composerFormRef, multiUser, participantIds }: UseChatSendControllerOptions) => {
    pendingKey: string;
    queuedMessages: import('../state/useAgentStore').QueuedComposerMessage[];
    activeChatStatus: UiChatStatus;
    activeChatId: string | undefined;
    removeQueuedMessage: (chatKey: string, id: string) => void;
    handleSubmit: (content: string) => Promise<void>;
    handleStop: () => void;
    handleQueuedClick: (id: string) => Promise<void>;
};
//# sourceMappingURL=useChatSendController.d.ts.map