use crate Box;
use crate::;
use Debug;
/// Defines the interface for incoming message flow authorization.
///
/// # Examples
///
/// ```
/// # use ockam_core::{Result, async_trait};
/// # use ockam_core::{IncomingAccessControl, RelayMessage};
/// #[derive(Debug)]
/// pub struct IdentityIdAccessControl;
///
/// #[async_trait]
/// impl IncomingAccessControl for IdentityIdAccessControl {
/// async fn is_authorized(&self, relay_msg: &RelayMessage) -> Result<bool> {
/// // ...
/// // some authorization logic that returns one of:
/// // ockam_core::allow()
/// // ockam_core::deny()
/// // ...
/// # ockam_core::deny()
/// }
/// }
/// ```
///
/// Defines the interface for outgoing message flow authorization.
///
/// # Examples
///
/// ```
/// # use ockam_core::{Result, async_trait};
/// # use ockam_core::{OutgoingAccessControl, RelayMessage};
/// #[derive(Debug)]
/// pub struct LocalAccessControl;
///
/// #[async_trait]
/// impl OutgoingAccessControl for LocalAccessControl {
/// async fn is_authorized(&self, relay_msg: &RelayMessage) -> Result<bool> {
/// // ...
/// // some authorization logic that returns one of:
/// // ockam_core::allow()
/// // ockam_core::deny()
/// // ...
/// # ockam_core::deny()
/// }
/// }
/// ```
///
pub use *;
pub use *;
pub use *;
pub use *;
pub use *;
pub use *;
pub use *;