pub trait AccountListenerProxyInterface: Send + Sync {
type OnInitializeResponseFut: Future<Output = Result<(), Error>> + Send;
type OnAccountAddedResponseFut: Future<Output = Result<(), Error>> + Send;
type OnAccountRemovedResponseFut: Future<Output = Result<(), Error>> + Send;
type OnAuthStateChangedResponseFut: Future<Output = Result<(), Error>> + Send;
// Required methods
fn on_initialize(
&self,
account_states: &mut dyn ExactSizeIterator<Item = &mut AccountAuthState>
) -> Self::OnInitializeResponseFut;
fn on_account_added(
&self,
account_state: &mut AccountAuthState
) -> Self::OnAccountAddedResponseFut;
fn on_account_removed(
&self,
account_id: u64
) -> Self::OnAccountRemovedResponseFut;
fn on_auth_state_changed(
&self,
account_auth_state: &mut AccountAuthState
) -> Self::OnAuthStateChangedResponseFut;
}