pub struct ApprovalStatement {
pub type_: String,
pub timestamp: String,
pub approver: String,
pub subject: SubjectRef,
pub description: Option<String>,
pub expires_at: Option<String>,
pub delegatable: bool,
pub nonce: String,
pub scope: Option<ApprovalScope>,
pub policy_ref: Option<String>,
pub meta: Option<Value>,
}Expand description
Records that an approver authorised an intent or action.
The nonce field is the cornerstone of approval security: the consuming
ActionStatement must echo the same nonce in its approval_nonce field.
This cryptographically binds each approval to exactly one action (or
max_actions actions when set), preventing approval reuse.
Fields§
§type_: String§timestamp: String§approver: StringDID-style approver URI. e.g. “human://alice”
subject: SubjectRef§description: Option<String>§expires_at: Option<String>ISO 8601 expiry timestamp. None means no expiry.
delegatable: boolWhether the receiving actor may re-delegate this approval.
nonce: StringRandom token. The consuming ActionStatement must set its
approval_nonce field to this value. Generated by the SDK if
not provided by the caller.
scope: Option<ApprovalScope>§policy_ref: Option<String>§meta: Option<Value>Implementations§
Trait Implementations§
Source§impl Clone for ApprovalStatement
impl Clone for ApprovalStatement
Source§fn clone(&self) -> ApprovalStatement
fn clone(&self) -> ApprovalStatement
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for ApprovalStatement
impl Debug for ApprovalStatement
Source§impl<'de> Deserialize<'de> for ApprovalStatement
impl<'de> Deserialize<'de> for ApprovalStatement
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl Freeze for ApprovalStatement
impl RefUnwindSafe for ApprovalStatement
impl Send for ApprovalStatement
impl Sync for ApprovalStatement
impl Unpin for ApprovalStatement
impl UnsafeUnpin for ApprovalStatement
impl UnwindSafe for ApprovalStatement
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more