specVersion: v0.1.0
package:
  name: "ethereum_ambient"
  version: v0.6.1

protobuf:
  files:
    - tycho/evm/v1/common.proto
    - ambient.proto
  importPaths:
    - ./proto
    - ../../proto

binaries:
  default:
    type: wasm/rust-v1
    file: ../target/wasm32-unknown-unknown/release/ethereum_ambient.wasm

modules:
  - name: map_pool_changes
    kind: map
    initialBlock: 17361664
    inputs:
      - source: sf.ethereum.type.v2.Block
    output:
      type: proto:tycho.ambient.v1.BlockPoolChanges
  - name: store_pools
    kind: store
    initialBlock: 17361664
    updatePolicy: set
    valueType: proto:tycho.evm.v1.ProtocolComponent
    inputs:
      - map: map_pool_changes
  - name: store_pool_balances
    kind: store
    initialBlock: 17361664
    updatePolicy: add
    valueType: bigint
    inputs:
      - map: map_pool_changes
  - name: map_changes
    kind: map
    initialBlock: 17361664
    inputs:
      - source: sf.ethereum.type.v2.Block
      - map: map_pool_changes
      - store: store_pool_balances
        mode: deltas
      - store: store_pools
    output:
      type: proto:tycho.evm.v1.BlockChanges
