import BaseDataBridgeCommand from './base.js'; /** * TEACHING NOTE: This is the CORE of DataBridge! * * What is DMMF? Data Model Meta Format * - Prisma's internal representation of your database * - It's like a JSON map of all your tables, columns, relationships * - We read this to know what code to generate * * What is ts-morph? * - Library for manipulating TypeScript code * - Instead of writing strings like "export class Product {}" * - We use ts-morph API: addClass(), addProperty(), etc. * - Safer and easier than string templates! */ export default class Generate extends BaseDataBridgeCommand { static hidden: boolean; static description: string; static examples: string[]; static flags: { 'skip-prompts': import("@oclif/core/interfaces").BooleanFlag; frameworks: import("@oclif/core/interfaces").OptionFlag; update: import("@oclif/core/interfaces").BooleanFlag; trpc: import("@oclif/core/interfaces").BooleanFlag; grpc: import("@oclif/core/interfaces").BooleanFlag; verbose: import("@oclif/core/interfaces").BooleanFlag; }; run(): Promise; /** * Parse custom queries and schemas from user config files and validate */ private parseCustomConfigs; /** * Resolve which frontend frameworks to generate SDKs for */ private resolveFrameworks; /** * Prompt user to select frontend frameworks for SDK generation (multi-select) */ private promptFrontendFrameworks; /** * Check if Prisma schema has changed since last generation */ private hasSchemaChanged; /** * Save schema hash to track changes */ private saveSchemaHash; /** * TEACHING NOTE: Get Prisma DMMF * This reads your schema.prisma and converts it to a JavaScript object * with all the information about your models, fields, types, etc. * * Note: getDMMF only parses the schema, it doesn't connect to the database. * Prisma 7: URL is configured via prisma.config.ts, not in schema file. */ private getPrismaDMMF; /** * Generate Frontend SDK based on selected framework * * TEACHING NOTE: Each framework now has its own generator class under * generator/sdk/. This keeps generate.ts focused on orchestration. */ private generateFrontendSdk; /** * Generate OpenAPI 3.0 specification */ private generateOpenAPISpec; /** * Run prisma generate to create Prisma Client */ private runPrismaGenerate; } //# sourceMappingURL=generate.d.ts.map