Files
tycho-protocol-sdk/substreams/ethereum-balancer/substreams.yaml
0xMochan 9f82671082 feat: lots of refactoring (file splitting
- `lib.rs` split into multiple files with `modules.rs` being the main entrypoint for substreams
- contract changes are tracked similiarly to ambient (generalized to use a store of tracked contracts)
- static attributes were pruned of the dynamic ones
2024-01-29 11:12:27 -05:00

64 lines
1.5 KiB
YAML

specVersion: v0.1.0
package:
name: "substreams_balancer"
version: v0.1.0
protobuf:
files:
- tycho/evm/v1/vm.proto
- tycho/evm/v1/common.proto
importPaths:
- ../../proto/tycho/evm/v1/
- ./proto
binaries:
default:
type: wasm/rust-v1
file: target/wasm32-unknown-unknown/release/substreams_balancer.wasm
modules:
- name: map_pools_created
kind: map
initialBlock: 12369300
inputs:
- source: sf.ethereum.type.v2.Block
output:
type: proto:tycho.evm.v1.GroupedTransactionProtocolComponents
- name: store_pools_created
kind: store
initialBlock: 12369300
updatePolicy: add
valueType: int64
inputs:
- map: map_pools_created
- name: map_balance_deltas
kind: map
initialBlock: 12369300 # An arbitrary block that should change based on your requirements
inputs:
- source: sf.ethereum.type.v2.Block
output:
type: proto:tycho.evm.v1.BalanceDeltas
- name: store_balance_changes
kind: store
initialBlock: 12369300
updatePolicy: add
valueType: bigint
inputs:
- map: map_balance_deltas
- name: map_changes
kind: map
initialBlock: 12369300
inputs:
- source: sf.ethereum.type.v2.Block
- map: map_pools_created
- map: map_balance_deltas
- store: store_pools_created
- store: store_balance_changes
mode: deltas # This is the key property that simplifies `BalanceChange` handling
output:
type: proto:tycho.evm.v1.BlockContractChanges