@youwen/ai-design-system
Version:
Enterprise AI-driven design system with comprehensive design tokens
107 lines (106 loc) • 2.82 kB
TypeScript
/**
* Layer 2: Layout & Design Rules Validation
* 设计规则验证 - 4槽位系统、14种布局、设计约束、主题一致性
*/
import { ValidationLayer, LayerValidationResult } from '../validation-pipeline';
export declare const WIDGET_LAYOUT_SYSTEM: {
container: {
width: number;
height: number;
padding: number;
};
slot: {
width: number;
height: number;
};
positions: {
leftTop: {
x: number;
y: number;
};
rightTop: {
x: number;
y: number;
};
leftBottom: {
x: number;
y: number;
};
rightBottom: {
x: number;
y: number;
};
};
validLayouts: string[];
componentLayoutMap: {
ThreeElementLayout: string[];
TwoLinesBigMedium: string[];
TwoLinesMediumSmall: string[];
TwoLinesSmallMini: string[];
OneLineMediumSmall: string[];
OneLineSmallMini: string[];
SingleElement: string[];
ModuleList: string[];
ModuleDivider: string[];
ControlButton: string[];
GraphPlaceholder: string[];
GraphDefault: string[];
WidgetCard: string[];
WidgetGeneral: string[];
};
};
export declare const DESIGN_CONSTRAINTS: {
typography: {
big: {
fontSize: number;
lineHeight: number;
};
medium: {
fontSize: number;
lineHeight: number;
};
small: {
fontSize: number;
lineHeight: number;
};
mini: {
fontSize: number;
lineHeight: number;
};
};
spacing: {
containerPadding: number;
textGap: number;
edgeOffset: number;
slotGap: number;
};
contrast: {
normalText: number;
largeText: number;
uiComponents: number;
};
themes: {
supported: string[];
modes: string[];
requiredTokens: string[];
};
};
export declare class Layer2LayoutDesignValidator implements ValidationLayer {
layerNumber: 2;
name: string;
description: string;
maxExecutionTime: number;
validate(input: any, context?: any): Promise<LayerValidationResult>;
private validate4SlotSystem;
private validateSlotConfiguration;
private validateSpacingConstraints;
private validateLayoutCombination;
private validateDesignConstraints;
private validateTypographyConstraints;
private validateColorContrast;
private validateSizeConstraints;
private validateThemeConsistency;
private validateComponentCompatibility;
private calculateLayerScore;
}
export declare const layer2Validator: Layer2LayoutDesignValidator;