import { type AdapterConfig } from '../utils/prisma-adapters.js'; import type { DataBridgeConfig } from '../types/config.js'; /** * Logger interface expected by PluginGenerator. */ export interface PluginGeneratorLogger { log: (msg: string) => void; warn: (msg: string) => void; } /** * TEACHING NOTE: PluginGenerator — extracted from generate.ts * * Responsible for generating Fastify plugin files: * - plugins/prisma.ts — PrismaClient decorator with Prisma 7 driver adapters * - plugins/swagger.ts — @fastify/swagger + swagger-ui integration */ export declare class PluginGenerator { private logger; constructor(logger: PluginGeneratorLogger); /** * Generate Prisma plugin for Fastify with Prisma 7 driver adapters. * Uses the modular adapter configuration system for maintainability. */ generatePrismaPlugin(config: DataBridgeConfig): Promise; /** * Generate Prisma plugin using adapter configuration. * This is the clean, maintainable approach. */ generatePluginWithAdapter(adapterConfig: AdapterConfig, connectionString: string): string; /** * Fallback plugin generator for unsupported databases */ generateFallbackPlugin(): string; /** * Generate Swagger UI plugin for Fastify */ generateSwaggerPlugin(config: DataBridgeConfig): Promise; } //# sourceMappingURL=plugin-generator.d.ts.map