import { CommandOptions } from "../types";
interface GenerateComponentsOptions extends CommandOptions {
    group?: string;
    all?: boolean;
    coreOnly?: boolean;
    output?: string;
    template?: string;
    local?: boolean;
    withTests?: boolean;
    updatePreview?: boolean;
    finalCanvas?: boolean;
    openPreview?: boolean;
    check?: boolean;
    completeArchitecture?: boolean;
    serverActions?: boolean;
    routes?: boolean;
    selfDocumenting?: boolean;
    architectureType?: "nextjs-app-router" | "nextjs-pages" | "react-spa";
    temperature?: number;
    maxTokens?: number;
}
export declare class GenerateComponentsCommand {
    private fs;
    private hostedApi;
    private architectureEngine;
    private contextLoader;
    private triggerLogger;
    private contextArtifacts;
    private stackConfig;
    private toKebabCase;
    private hasLocalAIKeys;
    private loadStackConfig;
    private updateComponentListAfterGeneration;
    private printNextStepsAfterComponents;
    private getComponentBaseName;
    private getComponentExportName;
    execute(target: string, options: GenerateComponentsOptions): Promise<void>;
    private loadContextArtifacts;
    private findComponentPlan;
    private generateAllComponents;
    private generateCoreComponents;
    private generateComponentVariant;
    private addVariantSpecificCode;
    private generateCoreIndexFiles;
    private openPreview;
    private runPostGenerationChecks;
    private generateComponentGroup;
    /**
     * Scan generated TSX files for imports from '@/components/ui/*' and ensure those shadcn primitives are installed.
     */
    private scanAndInstallShadcnFromComponents;
    /**
     * Apply brand tokens to globals.css (:root variables) if branding exists.
     */
    private applyBrandTokens;
    private generateComponent;
    /**
     * Ensure shadcn/ui is initialized and required components are installed
     */
    private ensureShadcnComponentsInstalled;
    private ensureFormDeps;
    private inferShadcnForComponent;
    private detectPackageManager;
    /**
     * Ensure Jest + RTL scaffold exists in the project
     */
    private ensureTestsScaffold;
    private generateComponentTest;
    private storeComponent;
    private generateGroupIndex;
    private generatePreviewPage;
    private updatePreviewRegistry;
    /**
     * Build preview-props.ts by parsing component prop interfaces and .mycontext/02-types.ts
     * Generates sample values for primitives and known interfaces; skips unknowns.
     */
    private buildPreviewProps;
    private generateSampleValue;
    private ensurePreviewRoute;
    /**
     * Generate complete architecture with actions, routes, and self-documentation
     */
    private generateCompleteArchitecture;
    /**
     * Convert component list to EnhancedComponent format
     */
    private convertToEnhancedComponent;
    private buildEnhancedComponent;
    /**
     * Generate component with architecture awareness
     */
    private generateComponentWithArchitecture;
    /**
     * Generate server actions files
     */
    private generateServerActions;
    /**
     * Generate server action file content
     */
    private generateServerActionFile;
    /**
     * Generate Next.js routes
     */
    private generateRoutes;
    /**
     * Generate page content for route
     */
    private generatePageContent;
    /**
     * Generate layout content for route
     */
    private generateLayoutContent;
    /**
     * Detect app directory location
     */
    private detectAppDirectory;
    /**
     * Convert hierarchical component structure to flat groups format for backward compatibility
     */
    private convertHierarchicalToFlat;
    /**
     * Recursively flatten components from hierarchical structure
     */
    private flattenComponents;
    /**
     * Add JSDoc metadata to component code for Studio display
     */
    private addComponentMetadata;
}
export {};
//# sourceMappingURL=generate-components.d.ts.map