import { ASL } from "../types/asl";
export interface GenerationStats {
    pages: number;
    components: number;
    actions: number;
}
export interface SchemaStats {
    entities: number;
    fields: number;
    relations: number;
}
/**
 * ScaffoldEngine - Deterministic full-stack generation from ASL
 *
 * Generates a complete Next.js 15 application including:
 * - InstantDB schema
 * - TypeScript types
 * - Auth pages and components
 * - RBAC guards and middleware
 * - CRUD pages and server actions
 * - shadCN UI components (inferred)
 */
export declare class ScaffoldEngine {
    private componentInference;
    private templateEngine;
    private componentRegistry;
    private spinner;
    constructor();
    /**
     * Main scaffold orchestrator
     * Generates a complete Next.js application from ASL specification
     */
    scaffold(asl: ASL): Promise<void>;
    /**
     * Step 1: Bootstrap Next.js project using create-next-app
     */
    private bootstrapNextJS;
    /**
     * Step 2: Install InstantDB SDK
     */
    private installInstantDB;
    /**
     * Step 3: Install shadCN UI and inferred components
     */
    private installShadCN;
    /**
     * Generate a project ID from name
     */
    private generateProjectId;
    /**
     * Step 4: Generate InstantDB schema from ASL entities
     */
    private generateSchema;
    /**
     * Map ASL field types to InstantDB types
     */
    private mapFieldType;
    /**
     * Step 5: Generate TypeScript types from entities
     */
    private generateTypes;
    /**
     * Map ASL types to TypeScript types
     */
    private mapToTSType;
    /**
     * Step 6: Generate auth system (pages, guards, middleware)
     */
    private generateAuth;
    /**
     * Step 7: Generate pages and components for each entity
     */
    private generatePagesAndComponents;
    /**
     * Generate CRUD pages and components for an entity
     */
    private generateEntityCRUD;
    /**
     * Generate a custom page from ASL
     */
    private generatePage;
    /**
     * Step 8: Initialize Living Brain (.mycontext directory)
     */
    private initializeBrain;
}
//# sourceMappingURL=ScaffoldEngine.d.ts.map