/** * Philosophy domain actions - represents philosophical arguments and positions */ import { Action } from "../base/action"; /** * Types of philosophical actions */ export type PhilosophyActionType = "propose_argument" | "support_position" | "refute_argument" | "synthesize" | "ask_clarification" | "concede_point" | "reach_consensus"; /** * Philosophical stance on the question */ export type PhilosophicalStance = "strongly_agree" | "agree" | "neutral" | "disagree" | "strongly_disagree" | "synthesis" | "unclear"; /** * Action in a philosophical discussion */ export interface PhilosophyActionData { type: PhilosophyActionType; agentId: string; content: string; stance: PhilosophicalStance; targetArgument?: string; confidence: number; reasoning: string; evidence?: string[]; } /** * Philosophy action implementation */ export declare class PhilosophyAction implements Action { readonly id: string; readonly type: string; readonly description: string; readonly data: PhilosophyActionData; constructor(data: PhilosophyActionData); clone(): PhilosophyAction; serialize(): string; getHashKey(): string; equals(other: Action): boolean; isValid(): boolean; getCost(): number; getMetadata(): Record; toString(): string; /** * Get the weight/importance of this action */ getWeight(): number; /** * Check if this action moves toward consensus */ isConsensusBuilding(): boolean; /** * Check if this action creates disagreement */ isArgumentative(): boolean; /** * Get the semantic similarity to another action (simplified) */ getSemanticSimilarity(other: PhilosophyAction): number; } /** * Utility functions for creating philosophy actions */ export declare class PhilosophyActionFactory { static createArgument(agentId: string, content: string, stance: PhilosophicalStance, reasoning: string, confidence?: number): PhilosophyAction; static createSupport(agentId: string, content: string, targetArgument: string, reasoning: string, confidence?: number): PhilosophyAction; static createRefutation(agentId: string, content: string, targetArgument: string, reasoning: string, confidence?: number): PhilosophyAction; static createSynthesis(agentId: string, content: string, reasoning: string, confidence?: number): PhilosophyAction; static createConsensus(agentId: string, content: string, reasoning: string, confidence?: number): PhilosophyAction; } //# sourceMappingURL=philosophy-action.d.ts.map