use super::super::*;
use serde::{Deserialize, Serialize};
use std::time::Duration;
pub struct ConsciousResponse {
pub base_response: AssembledContext,
pub consciousness_metadata: ConsciousnessMetadata,
pub enhanced_insights: Vec<ConsciousInsight>,
}
#[derive(Debug, Clone)]
pub struct ConsciousnessMetadata {
pub awareness_level: f64,
pub attention_focus: Vec<String>,
pub emotional_resonance: f64,
pub metacognitive_confidence: f64,
pub memory_integration_score: f64,
}
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct ConsciousInsight {
pub insight_type: InsightType,
pub content: String,
pub confidence: f64,
pub implications: Vec<String>,
}
#[derive(Debug, Clone, Serialize, Deserialize)]
pub enum InsightType {
PatternRecognition,
EmotionalResonance,
MemoryIntegration,
ContextualUnderstanding,
StrategicPlanning,
}
pub struct AdvancedConsciousResponse {
pub base_response: AssembledContext,
pub consciousness_metadata: AdvancedConsciousnessMetadata,
pub enhanced_insights: Vec<AdvancedConsciousInsight>,
pub consciousness_stream_context: Vec<ConsciousnessExperience>,
}
#[derive(Debug, Clone)]
pub struct AdvancedConsciousnessMetadata {
pub awareness_level: f64,
pub neural_activation: NeuralActivation,
pub attention_allocation: AttentionAllocation,
pub memory_integration: MemoryIntegrationResult,
pub emotional_response: EmotionalResponse,
pub metacognitive_result: MetacognitiveResult,
pub processing_time: Duration,
pub consciousness_health_score: f64,
}
#[derive(Debug, Clone)]
pub struct AdvancedConsciousInsight {
pub insight_type: AdvancedInsightType,
pub content: String,
pub confidence: f64,
pub implications: Vec<String>,
pub supporting_evidence: Vec<String>,
pub consciousness_correlation: f64,
}
#[derive(Debug, Clone, Serialize, Deserialize)]
pub enum AdvancedInsightType {
NeuralPattern,
MemoryIntegration,
AttentionFocus,
StreamCoherence,
EmotionalResonance,
MetacognitiveAssessment,
}