/**
 * A single entry in the EU AI Act Article 12 audit trail.
 * Every Planu tool invocation produces one entry.
 * Entries are chained via SHA-256 hashes to detect tampering.
 */
export interface AuditTrailEntry {
    /** Unique identifier for this entry. */
    id: string;
    /** ISO-8601 timestamp of the tool invocation. */
    timestamp: string;
    /** Name of the MCP tool that was called. */
    toolName: string;
    /** Sanitized summary of tool arguments (max 200 chars, secrets redacted). */
    inputSummary: string;
    /** Whether the tool call succeeded or produced an error. */
    outputType: 'success' | 'error';
    /** Wall-clock duration of the tool call in milliseconds. */
    durationMs: number;
    /** Spec ID extracted from args if present. */
    specId?: string;
    /** Project path extracted from args if present. */
    projectPath?: string;
    /** SHA-256 hex of the previous entry's hash (empty string for the first entry). */
    prevHash: string;
    /** SHA-256 hex of this entry's canonical content (id|timestamp|toolName|…|prevHash). */
    hash: string;
}
/** Input for the export_audit_trail tool. */
export interface AuditTrailExportInput {
    /** Absolute path to the project root (used to filter entries). */
    projectPath: string;
    /** ISO-8601 start date (inclusive). */
    fromDate?: string;
    /** ISO-8601 end date (inclusive). */
    toDate?: string;
    /** Filter by spec ID. */
    specId?: string;
    /** Output format: raw JSON, W3C PROV-O JSON-LD, or CSV. */
    format?: 'json' | 'json-ld' | 'csv';
    /** Maximum number of entries to return. */
    limit?: number;
}
/** Filters for querying the global audit trail JSONL store. */
export interface AuditReadFilters {
    fromDate?: string;
    toDate?: string;
    specId?: string;
    projectPath?: string;
    limit?: number;
}
/** Result returned by the export_audit_trail tool. */
export interface AuditTrailExportResult {
    /** Filtered entries matching the query. */
    entries: AuditTrailEntry[];
    /** Total matching entries (before limit). */
    totalCount: number;
    /** Effective output format used. */
    format: string;
    /** ISO-8601 timestamp of when the export was generated. */
    exportedAt: string;
    /** True if every entry's hash and prevHash chain is valid. */
    integrityValid: boolean;
}
//# sourceMappingURL=audit.d.ts.map