pub enum Permission {
Show 26 variants
ReadBlockchain,
ReadUTXO,
SubscribeEvents,
SendTransactions,
ReadChainState,
ReadMempool,
ReadNetwork,
NetworkAccess,
ReadLightning,
ReadPayment,
ReadStorage,
WriteStorage,
ManageStorage,
ReadFilesystem,
WriteFilesystem,
ManageFilesystem,
RegisterRpcEndpoint,
ManageTimers,
ReportMetrics,
ReadMetrics,
DiscoverModules,
PublishEvents,
CallModule,
RegisterModuleApi,
SubmitBlock,
QueueInboundBlock,
}Expand description
Permission types that modules can request
Variants§
ReadBlockchain
Read blockchain data (blocks, headers, transactions)
ReadUTXO
Query UTXO set (read-only)
SubscribeEvents
Subscribe to node events
SendTransactions
Send transactions to mempool (future: may be restricted)
ReadChainState
Query chain state (height, tip, etc.)
ReadMempool
Read mempool data (transactions, size, fee estimates)
ReadNetwork
Read network data (peers, stats)
NetworkAccess
Send network packets (mesh packets, etc.)
ReadLightning
Read Lightning network data
ReadPayment
Read payment data
ReadStorage
Read from module storage
WriteStorage
Write to module storage
ManageStorage
Manage storage (create/delete trees, manage quotas)
ReadFilesystem
Read files from module data directory
WriteFilesystem
Write files to module data directory
ManageFilesystem
Manage filesystem (create/delete directories, manage quotas)
RegisterRpcEndpoint
Register RPC endpoints
ManageTimers
Manage timers and scheduled tasks
ReportMetrics
Report metrics
ReadMetrics
Read metrics
DiscoverModules
Discover other modules
PublishEvents
Publish events to other modules
CallModule
Call other modules’ APIs
RegisterModuleApi
Register module API for other modules to call
SubmitBlock
Submit blocks (mining)
QueueInboundBlock
Queue inbound block bytes (BlockReceived / auxiliary transport path)
Trait Implementations§
Source§impl Clone for Permission
impl Clone for Permission
Source§fn clone(&self) -> Permission
fn clone(&self) -> Permission
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for Permission
impl Debug for Permission
Source§impl Hash for Permission
impl Hash for Permission
Source§impl PartialEq for Permission
impl PartialEq for Permission
Source§fn eq(&self, other: &Permission) -> bool
fn eq(&self, other: &Permission) -> bool
self and other values to be equal, and is used by ==.impl Eq for Permission
impl StructuralPartialEq for Permission
Auto Trait Implementations§
impl Freeze for Permission
impl RefUnwindSafe for Permission
impl Send for Permission
impl Sync for Permission
impl Unpin for Permission
impl UnsafeUnpin for Permission
impl UnwindSafe for Permission
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more