1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
//! # Registry
//!
//! `abstract_os` contains all contract names supported by Abstract OS.
//!
//! ## Description
//! These fixed names can be used to provide name-addressable searches for complex logic.

pub const MANAGER: &str = "abstract:manager";
pub const VERSION_CONTROL: &str = "abstract:version_control";
pub const OS_FACTORY: &str = "abstract:os_factory";
pub const MODULE_FACTORY: &str = "abstract:module_factory";
pub const PROXY: &str = "abstract:proxy";
pub const MEMORY: &str = "abstract:memory";
pub const ETF: &str = "abstract:etf";
pub const SUBSCRIPTION: &str = "abstract:subscription";
pub const EXCHANGE: &str = "abstract:dex";
pub const TENDERMINT_STAKING: &str = "abstract:tendermint_staking";
pub const CW20_VESTING: &str = "abstract:cw20_vesting";

/// Useful when deploying version control
#[allow(unused)]
pub static NATIVE_CONTRACTS: &[&str] =
    &[MEMORY, MODULE_FACTORY, OS_FACTORY, VERSION_CONTROL, "cw20"];
pub static API_CONTRACTS: &[&str] = &[EXCHANGE, TENDERMINT_STAKING];