@autobe/agent
Version:
AI backend server code generator
64 lines (55 loc) • 2.74 kB
text/typescript
import { AutoBeInterfaceSchemaDesign } 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 IAutoBeInterfaceSchemaComplementApplication {
/** Process task or retrieve preliminary data. */
process(props: IAutoBeInterfaceSchemaComplementApplication.IProps): void;
}
export namespace IAutoBeInterfaceSchemaComplementApplication {
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 a missing schema definition referenced by $ref in
* components.schemas.
*/
export interface IWrite {
/** Type discriminator for write submission. */
type: "write";
/** Analysis of the missing type's purpose and reference context. */
analysis: string;
/** Rationale for the schema design decisions. */
rationale: string;
/**
* Schema design: database mapping, specification, description, and JSON
* Schema.
*/
design: AutoBeInterfaceSchemaDesign;
}
}