@tachui/primitives
Version:
Basic UI components for tachUI framework
91 lines • 2.98 kB
TypeScript
/**
* Primitive Components Validation
*
* Component validation for primitive components (Text, Button, Image, Toggle, Layout).
* Co-located with the components they validate for better maintainability.
*
* Moved from @tachui/core for proper architectural separation.
*/
/**
* Enhanced validation error class for primitives
*/
export declare class TachUIValidationError extends Error {
context: {
component: string;
property?: string;
suggestion?: string;
documentation?: string;
example?: {
wrong: string;
correct: string;
};
package?: string;
};
constructor(message: string, context: {
component: string;
property?: string;
suggestion?: string;
documentation?: string;
example?: {
wrong: string;
correct: string;
};
package?: string;
});
getFormattedMessage(): string;
}
/**
* Validation configuration for primitives
*/
interface ValidationConfig {
enabled: boolean;
errorLevel: 'off' | 'warn' | 'error';
}
declare function isValidationEnabled(): boolean;
/**
* Primitive component validation rules
*/
export declare const PrimitiveComponentValidation: {
validateText(args: unknown[]): void;
validateButton(args: unknown[]): void;
validateImage(args: unknown[]): void;
validateToggle(args: unknown[]): void;
validatePicker(args: unknown[]): void;
validateStack(componentType: string, args: unknown[]): void;
validateLink(args: unknown[]): void;
validateBasicForm(args: unknown[]): void;
validateBasicInput(args: unknown[]): void;
};
/**
* Component validation wrapper
*/
export declare function withComponentValidation<T extends (...args: any[]) => any>(component: T, _componentName: string, validator: (args: unknown[]) => void): T;
/**
* Configure validation for primitives
*/
export declare function configurePrimitivesValidation(config: Partial<ValidationConfig>): void;
/**
* Get current validation configuration
*/
export declare function getPrimitivesValidationConfig(): ValidationConfig;
/**
* Validation utilities for primitives
*/
export declare const PrimitivesValidationUtils: {
validateText: (args: unknown[]) => void;
validateButton: (args: unknown[]) => void;
validateImage: (args: unknown[]) => void;
validateToggle: (args: unknown[]) => void;
validatePicker: (args: unknown[]) => void;
validateStack: (componentType: string, args: unknown[]) => void;
validateLink: (args: unknown[]) => void;
validateBasicForm: (args: unknown[]) => void;
validateBasicInput: (args: unknown[]) => void;
configure: typeof configurePrimitivesValidation;
getConfig: typeof getPrimitivesValidationConfig;
isValidationEnabled: typeof isValidationEnabled;
withComponentValidation: typeof withComponentValidation;
test: () => void;
};
export {};
//# sourceMappingURL=validation.d.ts.map