-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathschema.json
More file actions
65 lines (65 loc) · 2.56 KB
/
schema.json
File metadata and controls
65 lines (65 loc) · 2.56 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
{
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "Uniswap v4 Hook",
"type": "object",
"required": ["hook", "flags", "properties"],
"additionalProperties": false,
"properties": {
"hook": {
"type": "object",
"required": ["address", "chain", "chainId", "name", "verifiedSource"],
"additionalProperties": false,
"properties": {
"address": { "type": "string", "pattern": "^0x[a-fA-F0-9]{40}$" },
"chain": { "type": "string" },
"chainId": { "type": "integer" },
"name": { "type": "string" },
"description": { "type": "string", "default": "" },
"deployer": { "type": "string", "pattern": "^(0x[a-fA-F0-9]{40})?$", "default": "" },
"verifiedSource": { "type": "boolean" },
"auditUrl": { "type": "string", "default": "" }
}
},
"flags": {
"type": "object",
"required": [
"beforeInitialize", "afterInitialize",
"beforeAddLiquidity", "afterAddLiquidity",
"beforeRemoveLiquidity", "afterRemoveLiquidity",
"beforeSwap", "afterSwap",
"beforeDonate", "afterDonate",
"beforeSwapReturnsDelta", "afterSwapReturnsDelta",
"afterAddLiquidityReturnsDelta", "afterRemoveLiquidityReturnsDelta"
],
"additionalProperties": false,
"properties": {
"beforeInitialize": { "type": "boolean" },
"afterInitialize": { "type": "boolean" },
"beforeAddLiquidity": { "type": "boolean" },
"afterAddLiquidity": { "type": "boolean" },
"beforeRemoveLiquidity": { "type": "boolean" },
"afterRemoveLiquidity": { "type": "boolean" },
"beforeSwap": { "type": "boolean" },
"afterSwap": { "type": "boolean" },
"beforeDonate": { "type": "boolean" },
"afterDonate": { "type": "boolean" },
"beforeSwapReturnsDelta": { "type": "boolean" },
"afterSwapReturnsDelta": { "type": "boolean" },
"afterAddLiquidityReturnsDelta": { "type": "boolean" },
"afterRemoveLiquidityReturnsDelta": { "type": "boolean" }
}
},
"properties": {
"type": "object",
"required": ["dynamicFee", "upgradeable", "requiresCustomSwapData", "vanillaSwap", "swapAccess"],
"additionalProperties": false,
"properties": {
"dynamicFee": { "type": "boolean" },
"upgradeable": { "type": "boolean" },
"requiresCustomSwapData": { "type": "boolean" },
"vanillaSwap": { "type": "boolean" },
"swapAccess": { "type": "string", "enum": ["none", "temporal", "allowlist", "governance", "other"] }
}
}
}
}