export interface MediaResource { media_type: "image"; detailed_description: string; generation_prompt: string; resource_url?: string; is_generated: boolean; technical_specifications?: string; } export interface Pattern { name: string; description: string; visual_representation: MediaResource; pattern_type: string; recommended_usage: string[]; usage_restrictions?: string[]; scalability_notes?: string; } export interface IconographyStyle { style_name: string; description: string; visual_characteristics: string; example_icons: MediaResource[]; construction_guidelines: string; sizing_specifications?: string; } export interface IllustrationStyle { style_name: string; description: string; artistic_characteristics: string; example_illustrations: MediaResource[]; subject_matter_guidelines: string; technical_approach?: string; } export interface Shape { name: string; description: string; visual_representation: MediaResource; geometric_properties: string; symbolic_meaning?: string; usage_applications: string[]; combination_rules?: string; } export interface Texture { name: string; description: string; visual_representation: MediaResource; texture_characteristics: string; recommended_applications: string[]; digital_adaptation_notes?: string; } export interface GraphicComposition { name: string; description: string; visual_example: MediaResource; composition_principles: string; element_relationships: string; layout_guidelines: string; responsive_behavior?: string; } export interface GraphicElements { patterns?: Pattern[]; iconography?: IconographyStyle; illustrations?: IllustrationStyle[]; shapes?: Shape[]; textures?: Texture[]; graphic_compositions?: GraphicComposition[]; overall_style_notes?: string; usage_hierarchy?: string; consistency_guidelines?: string; }