// GENERATED CODE! DO NOT MODIFY BY HAND!

// This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
import type { ExecPolicyAmendment } from "./ExecPolicyAmendment";
import type { NetworkApprovalContext } from "./NetworkApprovalContext";
import type { NetworkPolicyAmendment } from "./NetworkPolicyAmendment";
import type { ParsedCommand } from "./ParsedCommand";

export type ExecApprovalRequestEvent = { 
/**
 * Identifier for the associated command execution item.
 */
call_id: string, 
/**
 * Identifier for this specific approval callback.
 *
 * When absent, the approval is for the command item itself (`call_id`).
 * This is present for subcommand approvals (via execve intercept).
 */
approval_id?: string, 
/**
 * Turn ID that this command belongs to.
 * Uses `#[serde(default)]` for backwards compatibility.
 */
turn_id: string, 
/**
 * The command to be executed.
 */
command: Array<string>, 
/**
 * The command's working directory.
 */
cwd: string, 
/**
 * Optional human-readable reason for the approval (e.g. retry without sandbox).
 */
reason: string | null, 
/**
 * Optional network context for a blocked request that can be approved.
 */
network_approval_context?: NetworkApprovalContext, 
/**
 * Proposed execpolicy amendment that can be applied to allow future runs.
 */
proposed_execpolicy_amendment?: ExecPolicyAmendment, 
/**
 * Proposed network policy amendments (for example allow/deny this host in future).
 */
proposed_network_policy_amendments?: Array<NetworkPolicyAmendment>, parsed_cmd: Array<ParsedCommand>, };
