import { AutoBeAnalyzeHistory, AutoBeAssistantMessageHistory } from "@autobe/interface";
import { ILlmSchema } from "@samchon/openapi";
import { AutoBeContext } from "../../context/AutoBeContext";
import { IAutoBeApplicationProps } from "../../context/IAutoBeApplicationProps";
import { IFile } from "./AutoBeAnalyzeFileSystem";
/** @todo Kakasoo */
export declare const orchestrateAnalyze: <Model extends ILlmSchema.Model>(ctx: AutoBeContext<Model>) => (props: IAutoBeApplicationProps) => Promise<AutoBeAssistantMessageHistory | AutoBeAnalyzeHistory>;
export interface IDeterminingInput {
    /**
     * Prefix for file names and all prisma schema files, table, interface, and
     * variable names. For example, if you were to create a bulletin board
     * service, the prefix would be bbs. At this time, the name of the document
     * would be, for example, 00_bbs_table_of_contents, and bbs would have to be
     * attached to the name of all documents. This value would then be passed to
     * other agents as well, in the form of bbs_article, bbs_article_snapshot, and
     * bbs_comments in the table name. Interfaces will likewise be used in
     * interfaces and tests because they originate from the name of prisma scheme.
     * Do not use prefixes that are related to the technology stack (e.g., ts_,
     * api_, react_) or unnatural prefixes that typically wouldn’t appear in table
     * names or domain models (e.g., zz_, my_, dev_).
     *
     * @title Prefix
     */
    prefix: string;
    /**
     * File name must be English. and it must contains the numbering and prefix.
     *
     * @title file names and reason to create.
     */
    files: Array<Pick<IFile, "filename" | "reason">>;
}
