export interface SearchEnhancedResponse { strategy_used: string; query: string; total_results: { facts: number; entities: number; episodes: number; communities: number; }; facts: FactResult[]; entities: EntityResult[]; episodes: EpisodeResult[]; communities: CommunityResult[]; } export interface FactResult { uuid: string; fact: string; source_node_uuid: string; target_node_uuid: string; created_at: string; valid_at: string | null; invalid_at: string | null; } export interface EntityResult { uuid: string; name: string; summary: string; labels: string[]; group_id: string; created_at: string; } export interface EpisodeResult { uuid: string; name: string; content: string; created_at: string; group_id: string; } export interface CommunityResult { uuid: string; name: string; summary: string; created_at: string | null; } export interface SearchEnhancedRequest { oracle_dids: string[]; query: string; strategy?: SearchStrategy; max_facts?: number; max_entities?: number; max_episodes?: number; max_communities?: number; knowledge_level?: KnowledgeLevel; center_node_uuid?: string | null; search_filters?: SearchFilters | null; } export type SearchStrategy = 'balanced' | 'diverse' | 'precise' | 'contextual' | 'recent_memory' | 'facts_only' | 'entities_only' | 'topics_only'; export type KnowledgeLevel = 'both' | 'user' | 'oracle'; export interface SearchFilters { node_labels?: EntityType[] | null; edge_types?: EdgeType[] | null; valid_at?: DateFilter[][] | null; invalid_at?: DateFilter[][] | null; created_at?: DateFilter[][] | null; expired_at?: DateFilter[][] | null; } export interface DateFilter { date: string | null; comparison_operator: ComparisonOperator; } export type ComparisonOperator = '=' | '<>' | '>' | '<' | '>=' | '<=' | 'IS NULL' | 'IS NOT NULL'; export type EntityType = 'Person' | 'Trait' | 'Value' | 'Identity' | 'Attribute' | 'Emotion' | 'Stress' | 'CopingStrategy' | 'Job' | 'Project' | 'Skill' | 'Tool' | 'Organization' | 'Goal' | 'Milestone' | 'Habit' | 'Routine' | 'Pattern' | 'Interest' | 'Hobby' | 'Content' | 'Preference' | 'Product' | 'Expertise' | 'LearningGoal' | 'Resource' | 'Location' | 'Experience' | 'Event' | 'Group' | 'Pet' | 'CommunicationStyle' | 'Language' | 'Task' | 'Belief' | 'Cause' | 'Procedure'; export type EdgeType = 'Knows' | 'WorksWith' | 'Causes' | 'Enables' | 'Blocks' | 'PartOf' | 'BelongsTo' | 'Practices' | 'Uses' | 'Pursuing' | 'Requires' | 'Achieved' | 'EmployedAt' | 'WorksOn' | 'Manages' | 'LivesAt' | 'VisitedLocation' | 'LocatedIn' | 'Prefers' | 'Likes' | 'Dislikes' | 'InterestedIn' | 'ExpertiseIn' | 'Studying' | 'LearnedFrom' | 'Triggers' | 'Motivates' | 'ManagesVia' | 'Influences' | 'Supports' | 'MemberOf' | 'Owns' | 'CurrentlyIs' | 'WasPreviously' | 'AlignedWith' | 'ConflictsWith' | 'RelatesTo'; export interface SearchHeaders { Authorization: string; 'x-oracle-did': string; 'x-room-id': string; 'Content-Type': 'application/json'; } export interface UserContextData { identity?: SearchEnhancedResponse; work?: SearchEnhancedResponse; goals?: SearchEnhancedResponse; interests?: SearchEnhancedResponse; relationships?: SearchEnhancedResponse; recent?: SearchEnhancedResponse; } export interface SearchEnhancedBatchRequest { queries: SearchEnhancedRequest[]; } export interface SearchEnhancedBatchErrorSlot { error: { status_code: number; detail: string; }; query: string; strategy_used: string; } export type SearchEnhancedBatchSlot = SearchEnhancedResponse | SearchEnhancedBatchErrorSlot; export interface SearchEnhancedBatchResponse { results: SearchEnhancedBatchSlot[]; } export declare function isBatchErrorSlot(slot: SearchEnhancedBatchSlot): slot is SearchEnhancedBatchErrorSlot; //# sourceMappingURL=types.d.ts.map