- 1. Introduction
- 2. Valence Programs
- 2.1. Domains
- 2.2. Accounts
- 2.2.1. Base Accounts
- 2.2.2. Storage Accounts
- 2.2.3. Interchain Accounts
- 2.3. Libraries and Functions
- 2.4. Programs and Authorizations
- 2.5. Middleware
- 3. Valence zk-Coprocessor
- 3.1. Sparse Merkle Trees
- 4. Authorization & Processors
- 4.1. Assumptions
- 4.2. Authorization Contract
- 4.2.1. Instantiation
- 4.2.2. Owner Actions
- 4.2.3. User Actions
- 4.3. Processor Contract
- 4.3.1. Processor
- 4.3.2. Lite Processor
- 4.3.3. Execution Environment Differences
- 4.4. Callbacks
- 4.5. Connectors
- 4.6. Encoding
- 5. Libraries
- 5.1. CosmWasm
- 5.1.1. Astroport LPer
- 5.1.2. Astroport Withdrawer
- 5.1.3. Forwarder
- 5.1.4. Generic IBC Transfer
- 5.1.5. Neutron IBC Transfer
- 5.1.6. Osmosis CL LPer
- 5.1.7. Osmosis CL Withdrawer
- 5.1.8. Osmosis GAMM LPer
- 5.1.9. Osmosis GAMM Withdrawer
- 5.1.10. Reverse Splitter
- 5.1.11. Splitter
- 5.1.12. Neutron Interchain Querier
- 5.1.13. Drop Liquid Staker
- 5.1.14. Drop Liquid Unstaker
- 5.1.15. ICA CCTP Transfer
- 5.1.16. ICA IBC Transfer
- 5.2. EVM
- 5.2.1. Forwarder
- 5.2.2. CCTP Transfer
- 5.2.3. Stargate Transfer
- 5.2.4. Standard Bridge Transfer
- 5.2.5. IBC Eureka Transfer
- 5.2.6. AAVE Position Manager
- 5.2.7. PancakeSwap V3 Position Manager
- 5.2.8. Balancer V2 Swap
- 6. Middleware
- 6.1. Broker
- 6.2. Type Registry
- 6.3. Valence Types
- 6.4. Valence Asserter
- 7. Program manager
- 7.1. How to
- 7.2. Manager Config
- 7.3. Program Config
- 7.4. Program Config Update
- 7.5. Program Config Migrate
- 7.6. Build Program Config
- 7.7. Library Account Type
- 8. Examples
- 8.1. Token Swap
- 8.2. Crosschain Vaults
- 8.2.1. Vault Strategist
- 9. Testing
- 9.1. Initial Testing Set Up
- 9.2. Example without Program Manager
- 9.3. Example with Program Manager
- 10. Security
- 11. Deployment
- 11.1. Local Deployment