import type { AIAttachment, RAGAnswerWorkflowState } from "@absolutejs/ai";
export declare const createRAGAnswerWorkflow: (path: string, conversationId?: string) => {
    state: RAGAnswerWorkflowState;
    latestAssistantMessage: import("@absolutejs/ai").AIMessage | undefined;
    retrieval: import("@absolutejs/ai").RAGRetrievedState | null;
    sources: import("@absolutejs/ai").RAGSource[];
    sourceGroups: import("@absolutejs/ai").RAGSourceGroup[];
    sourceSummaries: import("@absolutejs/ai").RAGSourceSummary[];
    citations: import("@absolutejs/ai").RAGCitation[];
    citationReferenceMap: import("@absolutejs/ai").RAGCitationReferenceMap;
    groundingReferences: import("@absolutejs/ai").RAGGroundingReference[];
    groundedAnswer: import("@absolutejs/ai").RAGGroundedAnswer;
    stage: import("@absolutejs/ai").RAGStreamStage;
    isRunning: boolean;
    isRetrieving: boolean;
    isRetrieved: boolean;
    isAnswerStreaming: boolean;
    isComplete: boolean;
    isError: boolean;
    hasSources: boolean;
    hasRetrieved: boolean;
    query: (content: string, attachments?: AIAttachment[]) => void;
    branch: (messageId: string, content: string) => void;
    cancel: () => void;
    destroy: () => void;
    send: (content: string, attachments?: AIAttachment[]) => void;
    subscribe: (callback: () => void) => () => void;
    error: string | null;
    isStreaming: boolean;
    messages: import("@absolutejs/ai").AIMessage[];
};
export type RAGAnswerWorkflow = ReturnType<typeof createRAGAnswerWorkflow>;
