aura-glass
Version:
A comprehensive glassmorphism design system for React applications with 142+ production-ready components
125 lines • 3.94 kB
TypeScript
/**
* AuraGlass Auto Composer
* On-demand generative UI layouts using LLMs + design tokens
* Part of Next-Wave Systems (10/10) - Generative Design Systems
*/
import React from "react";
interface UIPrompt {
description: string;
purpose: string;
constraints?: string[];
style?: "minimal" | "standard" | "detailed" | "experimental";
components?: string[];
interactions?: string[];
}
interface GeneratedLayout {
id: string;
prompt: UIPrompt;
jsx: string;
css: string;
tokens: DesignTokens;
confidence: number;
iterations: number;
timestamp: number;
}
interface DesignTokens {
colors: Record<string, string>;
spacing: Record<string, string>;
typography: Record<string, any>;
shadows: Record<string, string>;
borders: Record<string, string>;
animations: Record<string, any>;
}
interface ComposerConfig {
model: "claude" | "gpt" | "local";
temperature: number;
maxTokens: number;
designSystem: "material" | "fluid" | "glass" | "custom";
accessibility: boolean;
responsive: boolean;
}
declare class AILayoutGenerator {
private config;
private designTokens;
private templateLibrary;
constructor(config: ComposerConfig);
private initializeDesignTokens;
private loadTemplateLibrary;
generateLayout(prompt: UIPrompt): Promise<GeneratedLayout>;
private generateJSXFromPrompt;
private generateDashboardLayout;
private generateFormLayout;
private generateCardLayout;
private generateListLayout;
private generateGenericLayout;
private generateCSSFromPrompt;
}
declare class LayoutOptimizer {
private population;
private fitnessScores;
private generationCount;
constructor();
optimizeLayout(baseLayout: GeneratedLayout, userFeedback: number[]): Promise<GeneratedLayout>;
private createInitialPopulation;
private createVariant;
private calculateFitnessScores;
private evolvePopulation;
private selection;
private crossover;
private combineLayouts;
private mutation;
private getBestLayout;
}
export declare function GlassAutoComposerProvider({ children, config, }: {
children: React.ReactNode;
config?: Partial<ComposerConfig>;
}): import("react/jsx-runtime").JSX.Element;
export declare function useAutoComposer(): {
generator: AILayoutGenerator | null;
optimizer: LayoutOptimizer | null;
generateLayout: (prompt: UIPrompt) => Promise<GeneratedLayout>;
optimizeLayout: (layout: GeneratedLayout, feedback: number[]) => Promise<GeneratedLayout>;
currentLayouts: GeneratedLayout[];
};
export declare function GlassAutoComposerInterface({ className, }: {
className?: string;
}): import("react/jsx-runtime").JSX.Element;
export declare function GlassGeneratedLayoutRenderer({ layout, data, className, }: {
layout: GeneratedLayout;
data?: Record<string, any>;
className?: string;
}): import("react/jsx-runtime").JSX.Element;
export declare function useLayoutGenerator(): {
generateFromDescription: (description: string) => Promise<GeneratedLayout>;
currentLayouts: GeneratedLayout[];
hasLayouts: boolean;
};
export declare const autoComposerPresets: {
creative: {
temperature: number;
style: string;
iterations: number;
};
balanced: {
temperature: number;
style: string;
iterations: number;
};
conservative: {
temperature: number;
style: string;
iterations: number;
};
accessibility: {
temperature: number;
style: string;
accessibility: boolean;
iterations: number;
};
};
export declare function GlassAutoComposer({ children, className, ...props }: {
children?: React.ReactNode;
className?: string;
} & React.HTMLAttributes<HTMLDivElement>): import("react/jsx-runtime").JSX.Element;
export {};
//# sourceMappingURL=GlassAutoComposer.d.ts.map