1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
use boot_core::{BootEnvironment, Contract};

use abstract_os::ibc_client::*;

pub use abstract_os::ibc_client::{
    ExecuteMsgFns as IbcClientExecFns, QueryMsgFns as IbcClientQueryFns,
};
use boot_core::prelude::boot_contract;

#[boot_contract(InstantiateMsg, ExecuteMsg, QueryMsg, MigrateMsg)]
pub struct IbcClient<Chain>;

impl<Chain: BootEnvironment> IbcClient<Chain> {
    pub fn new(name: &str, chain: Chain) -> Self {
        let mut contract = Contract::new(name, chain);
        contract = contract.with_wasm_path("ibc_client");
        Self(contract)
    }
}