export interface Component { id: string; name: string; category: ComponentCategory; description: string; version: string; sourcePath?: string | undefined; docUrl?: string | undefined; properties: Property[]; methods: Method[]; events: Event[]; examples: Example[]; variations: Variation[]; dependencies: string[]; cssClasses: CSSClass[]; createdAt: Date; updatedAt: Date; } export interface Property { id: string; name: string; type: PropertyType; defaultValue?: string | undefined; description: string; required: boolean; possibleValues?: string[] | undefined; } export interface Method { id: string; name: string; parameters: Parameter[]; returnType?: string; description: string; usage: string; } export interface Event { id: string; name: string; description: string; parameters: Parameter[]; usage: string; } export interface Parameter { name: string; type: string; description: string; required: boolean; defaultValue?: string; } export interface Example { id: string; title: string; description: string; html: string; css?: string; javascript?: string; preview?: string; tags: string[]; } export interface Variation { id: string; name: string; description: string; cssClass: string; example: string; properties?: Record; } export interface CSSClass { name: string; description: string; usage: string; modifiers?: string[]; } export declare enum ComponentCategory { ELEMENTS = "elements", COLLECTIONS = "collections", VIEWS = "views", MODULES = "modules", BEHAVIORS = "behaviors" } export declare enum PropertyType { STRING = "string", NUMBER = "number", BOOLEAN = "boolean", ARRAY = "array", OBJECT = "object", FUNCTION = "function", CSS_CLASS = "css-class", URL = "url", COLOR = "color" } //# sourceMappingURL=component.d.ts.map