UNPKG

@autobe/agent

Version:

AI backend server code generator

61 lines (51 loc) 2.74 kB
import { AutoBeOpenApi } from "@autobe/interface"; import { IAutoBePreliminaryComplete } from "../../common/structures/IAutoBePreliminaryComplete"; import { IAutoBePreliminaryGetAnalysisSections } from "../../common/structures/IAutoBePreliminaryGetAnalysisSections"; import { IAutoBePreliminaryGetDatabaseSchemas } from "../../common/structures/IAutoBePreliminaryGetDatabaseSchemas"; import { IAutoBePreliminaryGetInterfaceOperations } from "../../common/structures/IAutoBePreliminaryGetInterfaceOperations"; import { IAutoBePreliminaryGetInterfaceSchemas } from "../../common/structures/IAutoBePreliminaryGetInterfaceSchemas"; import { IAutoBePreliminaryGetPreviousAnalysisSections } from "../../common/structures/IAutoBePreliminaryGetPreviousAnalysisSections"; import { IAutoBePreliminaryGetPreviousDatabaseSchemas } from "../../common/structures/IAutoBePreliminaryGetPreviousDatabaseSchemas"; import { IAutoBePreliminaryGetPreviousInterfaceOperations } from "../../common/structures/IAutoBePreliminaryGetPreviousInterfaceOperations"; import { IAutoBePreliminaryGetPreviousInterfaceSchemas } from "../../common/structures/IAutoBePreliminaryGetPreviousInterfaceSchemas"; export interface IAutoBeInterfacePrerequisiteApplication { /** Process task or retrieve preliminary data. */ process(props: IAutoBeInterfacePrerequisiteApplication.IProps): void; } export namespace IAutoBeInterfacePrerequisiteApplication { export interface IProps { /** * Reasoning: what's missing (preliminary), what you're submitting (write), * or why you're finalizing (complete). */ thinking: string; /** * Action to perform. Exhausted preliminary types are removed from the * union. */ request: | IWrite | IAutoBePreliminaryComplete | IAutoBePreliminaryGetAnalysisSections | IAutoBePreliminaryGetDatabaseSchemas | IAutoBePreliminaryGetInterfaceOperations | IAutoBePreliminaryGetInterfaceSchemas | IAutoBePreliminaryGetPreviousAnalysisSections | IAutoBePreliminaryGetPreviousDatabaseSchemas | IAutoBePreliminaryGetPreviousInterfaceOperations | IAutoBePreliminaryGetPreviousInterfaceSchemas; } /** Submit API operation prerequisites. */ export interface IWrite { /** Type discriminator for write submission. */ type: "write"; /** Analysis of the operation's resource dependencies. */ analysis: string; /** Rationale for the prerequisite chain decisions. */ rationale: string; /** The API endpoint (method + path) being analyzed. */ endpoint: AutoBeOpenApi.IEndpoint; /** Required prerequisite operations that must execute before this operation. */ prerequisites: AutoBeOpenApi.IPrerequisite[]; } }