/**
 * TypeScript/Express Backend Generator
 * Generates Express API with TypeScript from workflow definitions
 */
import { BackendGenerator, GeneratorContext, GenerationResult, GeneratedFile } from '../types';
export declare class TypeScriptExpressGenerator implements BackendGenerator {
    id: string;
    name: string;
    description: string;
    language: string;
    framework: string;
    generate(context: GeneratorContext): GenerationResult;
    /**
     * Generate backend from extended workflow schema
     * Creates full CRUD API with Prisma, auth middleware, and role-based access control
     */
    private generateFromExtendedWorkflow;
    private getBackendComponents;
    private getDatabaseComponents;
    private generateEndpointFiles;
    private generateRouteHandler;
    private generateImplementationSteps;
    private generateEndpointTypes;
    private generateRoutesIndex;
    private generateDatabaseClient;
    private generateMiddleware;
    private generateServerFile;
    private generatePackageJson;
    private generateTsConfig;
    private generateEnvExample;
    private capitalize;
    private toCamelCase;
    private mapTypeToTs;
    private endpointNeedsBcrypt;
    private endpointNeedsJwt;
    private topologicalSort;
    private parseTemplateValue;
    private generateFilterString;
    /**
     * Generate SQL filter with proper parameter detection (params vs body vs query)
     */
    private generateFilterWithParams;
    private generateJwtPayload;
    private generateInsertData;
    private generateResponseData;
    /**
     * Parse template value with awareness of step types (findMany returns array)
     */
    private parseTemplateValueWithSteps;
    /**
     * Convert camelCase/PascalCase to kebab-case
     */
    private toKebabCase;
    /**
     * Generate full CRUD routes for a model
     */
    private generateModelCrudRoutes;
    /**
     * Generate route file with CRUD operations for a model
     */
    private generateModelRouteFile;
    /**
     * Generate custom endpoint from API definition
     */
    private generateCustomEndpoint;
    /**
     * Generate routes index that imports all model routes
     */
    private generateRoutesIndexFromModels;
    /**
     * Generate Prisma client wrapper
     */
    private generatePrismaClient;
    /**
     * Generate Prisma schema file from workflow models using the reusable builder
     */
    private generatePrismaSchema;
    /**
     * Generate enhanced middleware with role-based auth
     */
    private generateEnhancedMiddleware;
    /**
     * Generate validation middleware
     */
    private generateValidationMiddleware;
    /**
     * Generate server file for extended workflow
     */
    private generateServerFileFromExtended;
    /**
     * Generate package.json with Prisma dependencies
     */
    private generatePackageJsonWithPrisma;
    /**
     * Generate .env.example for extended workflow
     */
    private generateEnvExampleExtended;
    /**
     * Get required fields from endpoint request schema
     */
    private getRequiredFieldsFromEndpoint;
    /**
     * Determine which types will be generated for an endpoint
     * Only import types that actually exist
     */
    private getGeneratedTypes;
    /**
     * Generate Drizzle client wrapper
     */
    private generateDrizzleClient;
    /**
     * Generate Drizzle schema file from workflow models using the reusable builder
     */
    private generateDrizzleSchema;
    /**
     * Generate an API endpoint
     * Implements the recommended BackendGenerator.generateEndpoint method
     */
    generateEndpoint(endpoint: any, context: GeneratorContext): GeneratedFile[];
}
//# sourceMappingURL=typescript-express-generator.d.ts.map