types
Version:
sha256:3ed336b
chain interface
chain-key:string
evm-tx-hash:list<u8>
cosmos-tx-hash:string
cosmos-address:record {
bech32-addr: string
prefix-len: u32
}cosmos-event:record {
ty: string
attributes: list<tuple<string, string>>
}cosmos-chain-config:record {
chain-id: string
rpc-endpoint: option<string>
grpc-endpoint: option<string>
grpc-web-endpoint: option<string>
gas-price: f32
gas-denom: string
bech32-prefix: string
}evm-address:record {
raw-bytes: list<u8>
}evm-event-log-data:record {
topics: list<list<u8>>
data: list<u8>
}evm-event-log:record {
data: evm-event-log-data
tx-hash: evm-tx-hash
block-number: u64
log-index: u64
block-hash: list<u8>
block-timestamp: option<u64>
tx-index: u64
}evm-chain-config:record {
chain-id: string
ws-endpoints: list<string>
http-endpoint: option<string>
}core interface
digest:string
timestamp:record {
nanos: u64
}duration:record {
secs: u64
}u128:record {
value: tuple<u64, u64>
}log-level:variant {
error
warn
info
debug
trace
}events interface
Imported Types
wavs:types/chain.{chain-key}
wavs:types/chain.{evm-address}
wavs:types/chain.{evm-event-log}
wavs:types/chain.{cosmos-address}
wavs:types/chain.{cosmos-event}
wavs:types/core.{timestamp}
event-id:list<u8>
trigger-data-cosmos-contract-event:record {
contract-address: cosmos-address
chain: chain-key
event: cosmos-event
event-index: u64
block-height: u64
}trigger-data-cron:record {
trigger-time: timestamp
}trigger-data-atproto-event:record {
sequence: s64
timestamp: s64
repo: string
collection: string
rkey: string
action: string
cid: option<string>
record-data: option<string>
rev: option<string>
op-index: option<u32>
}trigger-data-hypercore-append:record {
feed-key: string
index: u64
data: list<u8>
}trigger-data:variant {
evm-contract-event(trigger-data-evm-contract-event)
cosmos-contract-event(trigger-data-cosmos-contract-event)
block-interval(trigger-data-block-interval)
cron(trigger-data-cron)
atproto-event(trigger-data-atproto-event)
hypercore-append(trigger-data-hypercore-append)
raw(list<u8>)
}service interface
Imported Types
wavs:types/core.{digest}
wavs:types/core.{timestamp}
wavs:types/chain.{chain-key}
wavs:types/chain.{evm-address}
wavs:types/chain.{cosmos-address}
service-id:string
workflow-id:string
package-ref:string
semver-version:string
service-status:variant {
active
paused
}registry:record {
digest: digest
domain: option<string>
version: option<semver-version>
pkg: package-ref
}allowed-host-permission:variant {
all
only(list<string>)
none
}permissions:record {
allowed-http-hosts: allowed-host-permission
file-system: bool
raw-sockets: bool
dns-resolution: bool
}component:record {
source: component-source
permissions: permissions
fuel-limit: option<u64>
time-limit-seconds: option<u64>
config: list<tuple<string, string>>
env-keys: list<string>
}trigger-block-interval:record {
chain: chain-key
n-blocks: u32
start-block: option<u64>
end-block: option<u64>
}trigger-atproto-event:record {
collection: string
repo-did: option<string>
action: option<string>
}trigger-hypercore-append:record {
feed-key: string
}trigger:variant {
evm-contract-event(trigger-evm-contract-event)
cosmos-contract-event(trigger-cosmos-contract-event)
block-interval(trigger-block-interval)
cron(trigger-cron)
atproto-event(trigger-atproto-event)
hypercore-append(trigger-hypercore-append)
manual
}signature-algorithm:variant {
secp256k1
}signature-prefix:variant {
eip191
}service:record {
name: string
workflows: list<tuple<workflow-id, workflow>>
status: service-status
manager: service-manager
}