UNPKG

@aibtc/types

Version:

TypeScript types for AIBTC

104 lines (103 loc) 7.7 kB
// define known traits for each network const mainnetTraits = { // External traits BASE_SIP009: "SP2PABAF9FTAJYNFZH93XENAJ8FVY99RRM50D2JG9.nft-trait.nft-trait", BASE_SIP010: "SP3FBR2AGK5H9QBDH3EEN6DF8EK8JY7RX8QJ5SVTE.sip-010-trait-ft-standard.sip-010-trait", FAKTORY_SIP010: "SP3XXMS38VTAWTVPE5682XSBFXPTH7XCPEBTX8AN2.faktory-trait-v1.sip-010-trait", BITFLOW_POOL: "SM1793C4R5PZ4NS4VQ4WMP7SKKYVH8JZEWSZ9HCCR.xyk-pool-trait-v-1-2.xyk-pool-trait", BITFLOW_SIP010: "SM1793C4R5PZ4NS4VQ4WMP7SKKYVH8JZEWSZ9HCCR.sip-010-trait-ft-standard-v-1-1.sip-010-trait", // DAO traits DAO_BASE: "SP29CK9990DQGE9RGTT1VEQTTYH8KY4E3JE5XP4EC.aibtc-dao-v3.aibtc-base-dao", DAO_PROPOSAL: "SP29CK9990DQGE9RGTT1VEQTTYH8KY4E3JE5XP4EC.aibtc-dao-traits.proposal", DAO_EXTENSION: "SP29CK9990DQGE9RGTT1VEQTTYH8KY4E3JE5XP4EC.aibtc-dao-traits.extension", DAO_ACTION: "SP29CK9990DQGE9RGTT1VEQTTYH8KY4E3JE5XP4EC.aibtc-dao-traits.action", DAO_ACTION_PROPOSAL_VOTING: "SP29CK9990DQGE9RGTT1VEQTTYH8KY4E3JE5XP4EC.aibtc-dao-traits.action-proposal-voting", DAO_CHARTER: "SP29CK9990DQGE9RGTT1VEQTTYH8KY4E3JE5XP4EC.aibtc-dao-traits.charter", DAO_EPOCH: "SP29CK9990DQGE9RGTT1VEQTTYH8KY4E3JE5XP4EC.aibtc-dao-traits.epoch", DAO_MESSAGING: "SP29CK9990DQGE9RGTT1VEQTTYH8KY4E3JE5XP4EC.aibtc-dao-traits.messaging", DAO_REWARDS_ACCOUNT: "SP29CK9990DQGE9RGTT1VEQTTYH8KY4E3JE5XP4EC.aibtc-dao-traits.rewards-account", DAO_TOKEN: "SP29CK9990DQGE9RGTT1VEQTTYH8KY4E3JE5XP4EC.aibtc-dao-traits.token", DAO_TOKEN_DEX: "SP29CK9990DQGE9RGTT1VEQTTYH8KY4E3JE5XP4EC.aibtc-dao-traits.faktory-dex", DAO_TOKEN_OWNER: "SP29CK9990DQGE9RGTT1VEQTTYH8KY4E3JE5XP4EC.aibtc-dao-traits.token-owner", DAO_TOKEN_POOL: "SP29CK9990DQGE9RGTT1VEQTTYH8KY4E3JE5XP4EC.aibtc-dao-traits.bitflow-pool", DAO_TREASURY: "SP29CK9990DQGE9RGTT1VEQTTYH8KY4E3JE5XP4EC.aibtc-dao-traits.treasury", DAO_USERS: "SP29CK9990DQGE9RGTT1VEQTTYH8KY4E3JE5XP4EC.aibtc-dao-traits.users", // Agent traits AGENT_ACCOUNT: "SP29CK9990DQGE9RGTT1VEQTTYH8KY4E3JE5XP4EC.aibtc-agent-account-traits.aibtc-account", AGENT_FAKTORY_DEX_APPROVAL: "SP29CK9990DQGE9RGTT1VEQTTYH8KY4E3JE5XP4EC.aibtc-agent-account-traits.faktory-dex-approval", AGENT_ACCOUNT_PROPOSALS: "SP29CK9990DQGE9RGTT1VEQTTYH8KY4E3JE5XP4EC.aibtc-agent-account-traits.aibtc-proposals", AGENT_FAKTORY_BUY_SELL: "SP29CK9990DQGE9RGTT1VEQTTYH8KY4E3JE5XP4EC.aibtc-agent-account-traits.faktory-buy-sell", }; const testnetTraits = { // External traits BASE_SIP009: "STTWD9SPRQVD3P733V89SV0P8RZRZNQADG034F0A.nft-trait.nft-trait", BASE_SIP010: "STTWD9SPRQVD3P733V89SV0P8RZRZNQADG034F0A.sip-010-trait-ft-standard.sip-010-trait", FAKTORY_SIP010: "STTWD9SPRQVD3P733V89SV0P8RZRZNQADG034F0A.faktory-trait-v1.sip-010-trait", BITFLOW_POOL: "STTWD9SPRQVD3P733V89SV0P8RZRZNQADG034F0A.xyk-pool-trait-v-1-2.xyk-pool-trait", BITFLOW_SIP010: "STTWD9SPRQVD3P733V89SV0P8RZRZNQADG034F0A.sip-010-trait-ft-standard.sip-010-trait", // DAO traits DAO_BASE: "ST3DD7MASYJADCFXN3745R11RVM4PCXCPVRS3V27K.aibtc-base-dao-trait.aibtc-base-dao", DAO_PROPOSAL: "ST3DD7MASYJADCFXN3745R11RVM4PCXCPVRS3V27K.aibtc-dao-traits.proposal", DAO_EXTENSION: "ST3DD7MASYJADCFXN3745R11RVM4PCXCPVRS3V27K.aibtc-dao-traits.extension", DAO_ACTION: "ST3DD7MASYJADCFXN3745R11RVM4PCXCPVRS3V27K.aibtc-dao-traits.action", DAO_ACTION_PROPOSAL_VOTING: "ST3DD7MASYJADCFXN3745R11RVM4PCXCPVRS3V27K.aibtc-dao-traits.action-proposal-voting", DAO_CHARTER: "ST3DD7MASYJADCFXN3745R11RVM4PCXCPVRS3V27K.aibtc-dao-traits.dao-charter", DAO_EPOCH: "ST3DD7MASYJADCFXN3745R11RVM4PCXCPVRS3V27K.aibtc-dao-traits.dao-epoch", DAO_MESSAGING: "ST3DD7MASYJADCFXN3745R11RVM4PCXCPVRS3V27K.aibtc-dao-traits.messaging", DAO_REWARDS_ACCOUNT: "ST3DD7MASYJADCFXN3745R11RVM4PCXCPVRS3V27K.aibtc-dao-traits.rewards-account", DAO_TOKEN: "ST3DD7MASYJADCFXN3745R11RVM4PCXCPVRS3V27K.aibtc-dao-traits.token", DAO_TOKEN_DEX: "ST3DD7MASYJADCFXN3745R11RVM4PCXCPVRS3V27K.aibtc-dao-traits.faktory-dex", DAO_TOKEN_OWNER: "ST3DD7MASYJADCFXN3745R11RVM4PCXCPVRS3V27K.aibtc-dao-traits.token-owner", DAO_TOKEN_POOL: "ST3DD7MASYJADCFXN3745R11RVM4PCXCPVRS3V27K.aibtc-dao-traits.bitflow-pool", DAO_TREASURY: "ST3DD7MASYJADCFXN3745R11RVM4PCXCPVRS3V27K.aibtc-dao-traits.treasury", DAO_USERS: "ST3DD7MASYJADCFXN3745R11RVM4PCXCPVRS3V27K.aibtc-dao-traits.dao-users", // Agent traits AGENT_ACCOUNT: "ST3DD7MASYJADCFXN3745R11RVM4PCXCPVRS3V27K.aibtc-agent-account-traits.aibtc-account", AGENT_FAKTORY_DEX_APPROVAL: "ST3DD7MASYJADCFXN3745R11RVM4PCXCPVRS3V27K.aibtc-agent-account-traits.faktory-dex-approval", AGENT_ACCOUNT_PROPOSALS: "ST3DD7MASYJADCFXN3745R11RVM4PCXCPVRS3V27K.aibtc-agent-account-traits.aibtc-proposals", AGENT_FAKTORY_BUY_SELL: "ST3DD7MASYJADCFXN3745R11RVM4PCXCPVRS3V27K.aibtc-agent-account-traits.faktory-buy-sell", }; const devnetTraits = { // External traits BASE_SIP009: "ST1PQHQKV0RJXZFY1DGX8MNSNYVE3VGZJSRTPGZGM.nft-trait.nft-trait", BASE_SIP010: "ST1PQHQKV0RJXZFY1DGX8MNSNYVE3VGZJSRTPGZGM.sip-010-trait-ft-standard.sip-010-trait", FAKTORY_SIP010: "ST1PQHQKV0RJXZFY1DGX8MNSNYVE3VGZJSRTPGZGM.faktory-trait-v1.sip-010-trait", BITFLOW_POOL: "ST1PQHQKV0RJXZFY1DGX8MNSNYVE3VGZJSRTPGZGM.xyk-pool-trait-v-1-2.xyk-pool-trait", BITFLOW_SIP010: "ST1PQHQKV0RJXZFY1DGX8MNSNYVE3VGZJSRTPGZGM.sip-010-trait-ft-standard.sip-010-trait", // DAO traits DAO_BASE: "ST1PQHQKV0RJXZFY1DGX8MNSNYVE3VGZJSRTPGZGM.aibtc-dao-v3.aibtc-base-dao", DAO_PROPOSAL: "ST1PQHQKV0RJXZFY1DGX8MNSNYVE3VGZJSRTPGZGM.aibtc-dao-traits.proposal", DAO_EXTENSION: "ST1PQHQKV0RJXZFY1DGX8MNSNYVE3VGZJSRTPGZGM.aibtc-dao-traits.extension", DAO_ACTION: "ST1PQHQKV0RJXZFY1DGX8MNSNYVE3VGZJSRTPGZGM.aibtc-dao-traits.action", DAO_ACTION_PROPOSAL_VOTING: "ST1PQHQKV0RJXZFY1DGX8MNSNYVE3VGZJSRTPGZGM.aibtc-dao-traits.action-proposal-voting", DAO_CHARTER: "ST1PQHQKV0RJXZFY1DGX8MNSNYVE3VGZJSRTPGZGM.aibtc-dao-traits.charter", DAO_EPOCH: "ST1PQHQKV0RJXZFY1DGX8MNSNYVE3VGZJSRTPGZGM.aibtc-dao-traits.epoch", DAO_MESSAGING: "ST1PQHQKV0RJXZFY1DGX8MNSNYVE3VGZJSRTPGZGM.aibtc-dao-traits.messaging", DAO_REWARDS_ACCOUNT: "ST1PQHQKV0RJXZFY1DGX8MNSNYVE3VGZJSRTPGZGM.aibtc-dao-traits.rewards-account", DAO_TOKEN: "ST1PQHQKV0RJXZFY1DGX8MNSNYVE3VGZJSRTPGZGM.aibtc-dao-traits.token", DAO_TOKEN_DEX: "ST1PQHQKV0RJXZFY1DGX8MNSNYVE3VGZJSRTPGZGM.aibtc-dao-traits.faktory-dex", DAO_TOKEN_OWNER: "ST1PQHQKV0RJXZFY1DGX8MNSNYVE3VGZJSRTPGZGM.aibtc-dao-traits.token-owner", DAO_TOKEN_POOL: "ST1PQHQKV0RJXZFY1DGX8MNSNYVE3VGZJSRTPGZGM.aibtc-dao-traits.bitflow-pool", DAO_TREASURY: "ST1PQHQKV0RJXZFY1DGX8MNSNYVE3VGZJSRTPGZGM.aibtc-dao-traits.treasury", DAO_USERS: "ST1PQHQKV0RJXZFY1DGX8MNSNYVE3VGZJSRTPGZGM.aibtc-dao-traits.users", // Agent traits AGENT_ACCOUNT: "ST1PQHQKV0RJXZFY1DGX8MNSNYVE3VGZJSRTPGZGM.aibtc-agent-account-traits.aibtc-account", AGENT_FAKTORY_DEX_APPROVAL: "ST1PQHQKV0RJXZFY1DGX8MNSNYVE3VGZJSRTPGZGM.aibtc-agent-account-traits.faktory-dex-approval", AGENT_ACCOUNT_PROPOSALS: "ST1PQHQKV0RJXZFY1DGX8MNSNYVE3VGZJSRTPGZGM.aibtc-agent-account-traits.aibtc-proposals", AGENT_FAKTORY_BUY_SELL: "ST1PQHQKV0RJXZFY1DGX8MNSNYVE3VGZJSRTPGZGM.aibtc-agent-account-traits.faktory-buy-sell", }; // combine the traits for each network const TRAITS = { mainnet: mainnetTraits, testnet: testnetTraits, devnet: devnetTraits, mocknet: devnetTraits, }; // helper to get known traits for a network export function getKnownTraits(network) { return TRAITS[network]; } // helper to get a specific trait reference export function getTraitReference(network, trait) { return TRAITS[network][trait]; }