/** * Agent Decision * * A first-class decision made by an agent with full provenance. * Decisions are audit/provenance explanations, not hidden chain-of-thought. */ /** * An action the agent could take */ export interface AgentAction { /** Unique action ID */ actionId: string; /** Reference to the capability to invoke */ capabilityRef: string; /** Input parameters for the capability */ inputs?: Record; /** Expected outcomes */ expectedOutcome?: string; /** Confidence level (0-100) */ confidence?: number; /** Why this action was selected */ reasoning?: string; } /** * A decision made by an agent */ export interface AgentDecision { /** Unique decision ID */ decisionId: string; /** Reference to the observing agent */ agentRef: { name: string; version: number; }; /** Execution ID that made this decision */ executionId: string; /** Observation that prompted this decision */ observationId: string; /** The agent's intent */ intent: string; /** The action the agent decided to take */ selectedAction: AgentAction; /** Alternative actions considered */ alternatives?: AgentAction[]; /** Structured reasoning for the decision */ reason: { /** Why this action was selected */ primary: string; /** Constraints that were considered */ constraints?: string[]; /** State that influenced the decision */ stateFactors?: string[]; /** Capabilities that were available */ availableCapabilities?: string[]; /** Policy considerations */ policyFactors?: string[]; }; /** Confidence in this decision (0-100) */ confidence: number; /** Whether this decision required human approval */ requiresApproval?: boolean; /** Approval status if required */ approvalStatus?: 'pending' | 'approved' | 'rejected' | 'cancelled'; /** Approval timestamp if applicable */ approvedAt?: number; /** Approver identity if applicable */ approvedBy?: string; /** Timestamp when decision was made */ decidedAt: number; /** Metadata */ metadata?: Record; } /** * Generate a unique decision ID */ export declare function generateDecisionId(): string; /** * Generate a unique action ID */ export declare function generateActionId(): string; //# sourceMappingURL=agent-decision.d.ts.map