use async_trait::async_trait;
use wx_rust_common::error::WxErrorException;
use crate::bean::WxOpenQueryAuthAndIcpResult;
use crate::bean::WxOpenSubmitAuthAndIcpParam;
use crate::bean::WxOpenSubmitAuthAndIcpResult;
#[async_trait]
pub trait WxOpenMaAuthAndIcpService: Send + Sync {
async fn query_auth_and_icp(
&self,
procedure_id: &str,
) -> Result<WxOpenQueryAuthAndIcpResult, WxErrorException>;
async fn submit_auth_and_icp(
&self,
param: &WxOpenSubmitAuthAndIcpParam,
) -> Result<WxOpenSubmitAuthAndIcpResult, WxErrorException>;
}