cascrow-signer 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (52) hide show
  1. package/CHANGELOG.md +28 -0
  2. package/LICENSE +21 -0
  3. package/MIGRATION.md +35 -0
  4. package/README.md +130 -0
  5. package/SECURITY.md +71 -0
  6. package/dist/acceptance.d.ts +70 -0
  7. package/dist/acceptance.js +169 -0
  8. package/dist/actions.d.ts +60 -0
  9. package/dist/actions.js +319 -0
  10. package/dist/api.d.ts +83 -0
  11. package/dist/api.js +105 -0
  12. package/dist/book.d.ts +26 -0
  13. package/dist/book.js +62 -0
  14. package/dist/calldata.d.ts +62 -0
  15. package/dist/calldata.js +121 -0
  16. package/dist/chain.d.ts +59 -0
  17. package/dist/chain.js +233 -0
  18. package/dist/checks.d.ts +101 -0
  19. package/dist/checks.js +236 -0
  20. package/dist/cli.d.ts +2 -0
  21. package/dist/cli.js +163 -0
  22. package/dist/context.d.ts +47 -0
  23. package/dist/context.js +50 -0
  24. package/dist/errors.d.ts +11 -0
  25. package/dist/errors.js +17 -0
  26. package/dist/files.d.ts +13 -0
  27. package/dist/files.js +78 -0
  28. package/dist/generated/milestone-escrow-v3.deployments.json +15 -0
  29. package/dist/generated/milestone-escrow-v3.json +1179 -0
  30. package/dist/generated/v3-actions.d.ts +49 -0
  31. package/dist/generated/v3-actions.js +102 -0
  32. package/dist/generated/v3-proof-manifest.d.ts +19 -0
  33. package/dist/generated/v3-proof-manifest.js +79 -0
  34. package/dist/journal.d.ts +41 -0
  35. package/dist/journal.js +186 -0
  36. package/dist/keystore.d.ts +30 -0
  37. package/dist/keystore.js +119 -0
  38. package/dist/link.d.ts +17 -0
  39. package/dist/link.js +65 -0
  40. package/dist/mcp.d.ts +10 -0
  41. package/dist/mcp.js +81 -0
  42. package/dist/network.d.ts +53 -0
  43. package/dist/network.js +122 -0
  44. package/dist/policy.d.ts +31 -0
  45. package/dist/policy.js +92 -0
  46. package/dist/remote.d.ts +31 -0
  47. package/dist/remote.js +104 -0
  48. package/dist/tools.d.ts +20 -0
  49. package/dist/tools.js +112 -0
  50. package/dist/watch.d.ts +35 -0
  51. package/dist/watch.js +129 -0
  52. package/package.json +64 -0
@@ -0,0 +1,1179 @@
1
+ {
2
+ "$comment": "Generated from evm/artifacts (MilestoneEscrowV3). Do not edit by hand: evm/test/MilestoneEscrowV3.abi-parity.test.ts fails when this file and the compiled contract disagree. Regenerate with: npm --prefix evm run export-v3-abi",
3
+ "contractName": "MilestoneEscrowV3",
4
+ "eip712": {
5
+ "name": "Milestone Commitment",
6
+ "version": "1",
7
+ "primaryType": "PayeeAcceptance",
8
+ "types": {
9
+ "PayeeAcceptance": [
10
+ {
11
+ "name": "escrowId",
12
+ "type": "bytes32"
13
+ },
14
+ {
15
+ "name": "payee",
16
+ "type": "address"
17
+ },
18
+ {
19
+ "name": "token",
20
+ "type": "address"
21
+ },
22
+ {
23
+ "name": "amount",
24
+ "type": "uint256"
25
+ },
26
+ {
27
+ "name": "deadline",
28
+ "type": "uint64"
29
+ },
30
+ {
31
+ "name": "reviewPeriod",
32
+ "type": "uint32"
33
+ },
34
+ {
35
+ "name": "arbiter",
36
+ "type": "address"
37
+ },
38
+ {
39
+ "name": "arbitrationPeriod",
40
+ "type": "uint32"
41
+ },
42
+ {
43
+ "name": "acceptBy",
44
+ "type": "uint64"
45
+ }
46
+ ]
47
+ }
48
+ },
49
+ "constants": {
50
+ "MIN_REVIEW": 3600,
51
+ "MAX_REVIEW": 7776000,
52
+ "MIN_ARB": 259200,
53
+ "MAX_ARB": 15552000,
54
+ "MAX_DEADLINE_DURATION": 157766400,
55
+ "MAX_CLAIMS": 3
56
+ },
57
+ "phases": [
58
+ "None",
59
+ "Open",
60
+ "ClaimPending",
61
+ "Claimable",
62
+ "InArbitration",
63
+ "Objected",
64
+ "Refundable",
65
+ "Released",
66
+ "Refunded"
67
+ ],
68
+ "abi": [
69
+ {
70
+ "inputs": [],
71
+ "stateMutability": "nonpayable",
72
+ "type": "constructor"
73
+ },
74
+ {
75
+ "inputs": [],
76
+ "name": "AcceptanceExpired",
77
+ "type": "error"
78
+ },
79
+ {
80
+ "inputs": [],
81
+ "name": "ClaimLimitReached",
82
+ "type": "error"
83
+ },
84
+ {
85
+ "inputs": [],
86
+ "name": "ClaimLive",
87
+ "type": "error"
88
+ },
89
+ {
90
+ "inputs": [],
91
+ "name": "Disputed",
92
+ "type": "error"
93
+ },
94
+ {
95
+ "inputs": [],
96
+ "name": "InsufficientGas",
97
+ "type": "error"
98
+ },
99
+ {
100
+ "inputs": [],
101
+ "name": "InvalidPayeeSignature",
102
+ "type": "error"
103
+ },
104
+ {
105
+ "inputs": [],
106
+ "name": "InvalidTerms",
107
+ "type": "error"
108
+ },
109
+ {
110
+ "inputs": [],
111
+ "name": "NoLiveClaim",
112
+ "type": "error"
113
+ },
114
+ {
115
+ "inputs": [],
116
+ "name": "NotArbiter",
117
+ "type": "error"
118
+ },
119
+ {
120
+ "inputs": [],
121
+ "name": "NotFunded",
122
+ "type": "error"
123
+ },
124
+ {
125
+ "inputs": [],
126
+ "name": "NotObjected",
127
+ "type": "error"
128
+ },
129
+ {
130
+ "inputs": [],
131
+ "name": "NotPayee",
132
+ "type": "error"
133
+ },
134
+ {
135
+ "inputs": [],
136
+ "name": "NotPayer",
137
+ "type": "error"
138
+ },
139
+ {
140
+ "inputs": [],
141
+ "name": "NothingToWithdraw",
142
+ "type": "error"
143
+ },
144
+ {
145
+ "inputs": [],
146
+ "name": "ReentrancyGuardReentrantCall",
147
+ "type": "error"
148
+ },
149
+ {
150
+ "inputs": [
151
+ {
152
+ "internalType": "address",
153
+ "name": "token",
154
+ "type": "address"
155
+ }
156
+ ],
157
+ "name": "SafeERC20FailedOperation",
158
+ "type": "error"
159
+ },
160
+ {
161
+ "inputs": [],
162
+ "name": "SlotTaken",
163
+ "type": "error"
164
+ },
165
+ {
166
+ "inputs": [],
167
+ "name": "TokenDeliveredDifferentAmount",
168
+ "type": "error"
169
+ },
170
+ {
171
+ "inputs": [],
172
+ "name": "TooEarly",
173
+ "type": "error"
174
+ },
175
+ {
176
+ "inputs": [],
177
+ "name": "TooLate",
178
+ "type": "error"
179
+ },
180
+ {
181
+ "inputs": [],
182
+ "name": "WithdrawFailed",
183
+ "type": "error"
184
+ },
185
+ {
186
+ "inputs": [],
187
+ "name": "WrongValue",
188
+ "type": "error"
189
+ },
190
+ {
191
+ "anonymous": false,
192
+ "inputs": [
193
+ {
194
+ "indexed": true,
195
+ "internalType": "bytes32",
196
+ "name": "escrowId",
197
+ "type": "bytes32"
198
+ },
199
+ {
200
+ "indexed": true,
201
+ "internalType": "bytes32",
202
+ "name": "proofHash",
203
+ "type": "bytes32"
204
+ },
205
+ {
206
+ "indexed": false,
207
+ "internalType": "uint8",
208
+ "name": "claimIndex",
209
+ "type": "uint8"
210
+ },
211
+ {
212
+ "indexed": false,
213
+ "internalType": "uint64",
214
+ "name": "claimedAt",
215
+ "type": "uint64"
216
+ },
217
+ {
218
+ "indexed": false,
219
+ "internalType": "uint64",
220
+ "name": "objectionDeadline",
221
+ "type": "uint64"
222
+ }
223
+ ],
224
+ "name": "ClaimSubmitted",
225
+ "type": "event"
226
+ },
227
+ {
228
+ "anonymous": false,
229
+ "inputs": [
230
+ {
231
+ "indexed": true,
232
+ "internalType": "bytes32",
233
+ "name": "escrowId",
234
+ "type": "bytes32"
235
+ },
236
+ {
237
+ "indexed": true,
238
+ "internalType": "address",
239
+ "name": "to",
240
+ "type": "address"
241
+ },
242
+ {
243
+ "indexed": true,
244
+ "internalType": "address",
245
+ "name": "token",
246
+ "type": "address"
247
+ },
248
+ {
249
+ "indexed": false,
250
+ "internalType": "uint256",
251
+ "name": "amount",
252
+ "type": "uint256"
253
+ }
254
+ ],
255
+ "name": "Credited",
256
+ "type": "event"
257
+ },
258
+ {
259
+ "anonymous": false,
260
+ "inputs": [
261
+ {
262
+ "indexed": true,
263
+ "internalType": "bytes32",
264
+ "name": "escrowId",
265
+ "type": "bytes32"
266
+ },
267
+ {
268
+ "indexed": false,
269
+ "internalType": "uint64",
270
+ "name": "oldDeadline",
271
+ "type": "uint64"
272
+ },
273
+ {
274
+ "indexed": false,
275
+ "internalType": "uint64",
276
+ "name": "newDeadline",
277
+ "type": "uint64"
278
+ }
279
+ ],
280
+ "name": "DeadlineExtended",
281
+ "type": "event"
282
+ },
283
+ {
284
+ "anonymous": false,
285
+ "inputs": [
286
+ {
287
+ "indexed": false,
288
+ "internalType": "bytes32",
289
+ "name": "escrowId",
290
+ "type": "bytes32"
291
+ },
292
+ {
293
+ "indexed": true,
294
+ "internalType": "bytes32",
295
+ "name": "ref",
296
+ "type": "bytes32"
297
+ },
298
+ {
299
+ "indexed": true,
300
+ "internalType": "address",
301
+ "name": "payer",
302
+ "type": "address"
303
+ },
304
+ {
305
+ "indexed": true,
306
+ "internalType": "address",
307
+ "name": "payee",
308
+ "type": "address"
309
+ },
310
+ {
311
+ "indexed": false,
312
+ "internalType": "bytes32",
313
+ "name": "salt",
314
+ "type": "bytes32"
315
+ },
316
+ {
317
+ "indexed": false,
318
+ "internalType": "address",
319
+ "name": "token",
320
+ "type": "address"
321
+ },
322
+ {
323
+ "indexed": false,
324
+ "internalType": "uint256",
325
+ "name": "amount",
326
+ "type": "uint256"
327
+ },
328
+ {
329
+ "indexed": false,
330
+ "internalType": "uint64",
331
+ "name": "deadline",
332
+ "type": "uint64"
333
+ },
334
+ {
335
+ "indexed": false,
336
+ "internalType": "uint32",
337
+ "name": "reviewPeriod",
338
+ "type": "uint32"
339
+ },
340
+ {
341
+ "indexed": false,
342
+ "internalType": "address",
343
+ "name": "arbiter",
344
+ "type": "address"
345
+ },
346
+ {
347
+ "indexed": false,
348
+ "internalType": "uint32",
349
+ "name": "arbitrationPeriod",
350
+ "type": "uint32"
351
+ }
352
+ ],
353
+ "name": "Funded",
354
+ "type": "event"
355
+ },
356
+ {
357
+ "anonymous": false,
358
+ "inputs": [
359
+ {
360
+ "indexed": true,
361
+ "internalType": "bytes32",
362
+ "name": "escrowId",
363
+ "type": "bytes32"
364
+ },
365
+ {
366
+ "indexed": false,
367
+ "internalType": "bytes32",
368
+ "name": "reasonHash",
369
+ "type": "bytes32"
370
+ },
371
+ {
372
+ "indexed": false,
373
+ "internalType": "uint8",
374
+ "name": "claimIndex",
375
+ "type": "uint8"
376
+ },
377
+ {
378
+ "indexed": false,
379
+ "internalType": "uint64",
380
+ "name": "objectedAt",
381
+ "type": "uint64"
382
+ }
383
+ ],
384
+ "name": "Objected",
385
+ "type": "event"
386
+ },
387
+ {
388
+ "anonymous": false,
389
+ "inputs": [
390
+ {
391
+ "indexed": true,
392
+ "internalType": "bytes32",
393
+ "name": "escrowId",
394
+ "type": "bytes32"
395
+ },
396
+ {
397
+ "indexed": true,
398
+ "internalType": "address",
399
+ "name": "to",
400
+ "type": "address"
401
+ },
402
+ {
403
+ "indexed": true,
404
+ "internalType": "address",
405
+ "name": "token",
406
+ "type": "address"
407
+ },
408
+ {
409
+ "indexed": false,
410
+ "internalType": "uint256",
411
+ "name": "amount",
412
+ "type": "uint256"
413
+ }
414
+ ],
415
+ "name": "Paid",
416
+ "type": "event"
417
+ },
418
+ {
419
+ "anonymous": false,
420
+ "inputs": [
421
+ {
422
+ "indexed": true,
423
+ "internalType": "bytes32",
424
+ "name": "escrowId",
425
+ "type": "bytes32"
426
+ },
427
+ {
428
+ "indexed": true,
429
+ "internalType": "address",
430
+ "name": "payer",
431
+ "type": "address"
432
+ },
433
+ {
434
+ "indexed": true,
435
+ "internalType": "address",
436
+ "name": "caller",
437
+ "type": "address"
438
+ },
439
+ {
440
+ "indexed": false,
441
+ "internalType": "enum MilestoneEscrowV3.RefundKind",
442
+ "name": "kind",
443
+ "type": "uint8"
444
+ },
445
+ {
446
+ "indexed": false,
447
+ "internalType": "address",
448
+ "name": "token",
449
+ "type": "address"
450
+ },
451
+ {
452
+ "indexed": false,
453
+ "internalType": "uint256",
454
+ "name": "amount",
455
+ "type": "uint256"
456
+ }
457
+ ],
458
+ "name": "Refunded",
459
+ "type": "event"
460
+ },
461
+ {
462
+ "anonymous": false,
463
+ "inputs": [
464
+ {
465
+ "indexed": true,
466
+ "internalType": "bytes32",
467
+ "name": "escrowId",
468
+ "type": "bytes32"
469
+ },
470
+ {
471
+ "indexed": true,
472
+ "internalType": "address",
473
+ "name": "payee",
474
+ "type": "address"
475
+ },
476
+ {
477
+ "indexed": true,
478
+ "internalType": "address",
479
+ "name": "caller",
480
+ "type": "address"
481
+ },
482
+ {
483
+ "indexed": false,
484
+ "internalType": "enum MilestoneEscrowV3.ReleaseKind",
485
+ "name": "kind",
486
+ "type": "uint8"
487
+ },
488
+ {
489
+ "indexed": false,
490
+ "internalType": "address",
491
+ "name": "token",
492
+ "type": "address"
493
+ },
494
+ {
495
+ "indexed": false,
496
+ "internalType": "uint256",
497
+ "name": "amount",
498
+ "type": "uint256"
499
+ }
500
+ ],
501
+ "name": "Released",
502
+ "type": "event"
503
+ },
504
+ {
505
+ "anonymous": false,
506
+ "inputs": [
507
+ {
508
+ "indexed": true,
509
+ "internalType": "address",
510
+ "name": "account",
511
+ "type": "address"
512
+ },
513
+ {
514
+ "indexed": true,
515
+ "internalType": "address",
516
+ "name": "token",
517
+ "type": "address"
518
+ },
519
+ {
520
+ "indexed": false,
521
+ "internalType": "uint256",
522
+ "name": "amount",
523
+ "type": "uint256"
524
+ },
525
+ {
526
+ "indexed": false,
527
+ "internalType": "address",
528
+ "name": "caller",
529
+ "type": "address"
530
+ }
531
+ ],
532
+ "name": "Withdrawn",
533
+ "type": "event"
534
+ },
535
+ {
536
+ "inputs": [],
537
+ "name": "MAX_ARB",
538
+ "outputs": [
539
+ {
540
+ "internalType": "uint32",
541
+ "name": "",
542
+ "type": "uint32"
543
+ }
544
+ ],
545
+ "stateMutability": "view",
546
+ "type": "function"
547
+ },
548
+ {
549
+ "inputs": [],
550
+ "name": "MAX_CLAIMS",
551
+ "outputs": [
552
+ {
553
+ "internalType": "uint8",
554
+ "name": "",
555
+ "type": "uint8"
556
+ }
557
+ ],
558
+ "stateMutability": "view",
559
+ "type": "function"
560
+ },
561
+ {
562
+ "inputs": [],
563
+ "name": "MAX_DEADLINE_DURATION",
564
+ "outputs": [
565
+ {
566
+ "internalType": "uint256",
567
+ "name": "",
568
+ "type": "uint256"
569
+ }
570
+ ],
571
+ "stateMutability": "view",
572
+ "type": "function"
573
+ },
574
+ {
575
+ "inputs": [],
576
+ "name": "MAX_REVIEW",
577
+ "outputs": [
578
+ {
579
+ "internalType": "uint32",
580
+ "name": "",
581
+ "type": "uint32"
582
+ }
583
+ ],
584
+ "stateMutability": "view",
585
+ "type": "function"
586
+ },
587
+ {
588
+ "inputs": [],
589
+ "name": "MIN_ARB",
590
+ "outputs": [
591
+ {
592
+ "internalType": "uint32",
593
+ "name": "",
594
+ "type": "uint32"
595
+ }
596
+ ],
597
+ "stateMutability": "view",
598
+ "type": "function"
599
+ },
600
+ {
601
+ "inputs": [],
602
+ "name": "MIN_REVIEW",
603
+ "outputs": [
604
+ {
605
+ "internalType": "uint32",
606
+ "name": "",
607
+ "type": "uint32"
608
+ }
609
+ ],
610
+ "stateMutability": "view",
611
+ "type": "function"
612
+ },
613
+ {
614
+ "inputs": [],
615
+ "name": "NATIVE_ERC20_ALIAS",
616
+ "outputs": [
617
+ {
618
+ "internalType": "address",
619
+ "name": "",
620
+ "type": "address"
621
+ }
622
+ ],
623
+ "stateMutability": "view",
624
+ "type": "function"
625
+ },
626
+ {
627
+ "inputs": [],
628
+ "name": "PAYEE_ACCEPTANCE_TYPEHASH",
629
+ "outputs": [
630
+ {
631
+ "internalType": "bytes32",
632
+ "name": "",
633
+ "type": "bytes32"
634
+ }
635
+ ],
636
+ "stateMutability": "view",
637
+ "type": "function"
638
+ },
639
+ {
640
+ "inputs": [],
641
+ "name": "PUSH_GAS",
642
+ "outputs": [
643
+ {
644
+ "internalType": "uint256",
645
+ "name": "",
646
+ "type": "uint256"
647
+ }
648
+ ],
649
+ "stateMutability": "view",
650
+ "type": "function"
651
+ },
652
+ {
653
+ "inputs": [
654
+ {
655
+ "internalType": "address",
656
+ "name": "payer",
657
+ "type": "address"
658
+ },
659
+ {
660
+ "internalType": "bytes32",
661
+ "name": "ref",
662
+ "type": "bytes32"
663
+ },
664
+ {
665
+ "internalType": "bytes32",
666
+ "name": "salt",
667
+ "type": "bytes32"
668
+ },
669
+ {
670
+ "components": [
671
+ {
672
+ "internalType": "address",
673
+ "name": "payee",
674
+ "type": "address"
675
+ },
676
+ {
677
+ "internalType": "address",
678
+ "name": "token",
679
+ "type": "address"
680
+ },
681
+ {
682
+ "internalType": "uint256",
683
+ "name": "amount",
684
+ "type": "uint256"
685
+ },
686
+ {
687
+ "internalType": "uint64",
688
+ "name": "deadline",
689
+ "type": "uint64"
690
+ },
691
+ {
692
+ "internalType": "uint32",
693
+ "name": "reviewPeriod",
694
+ "type": "uint32"
695
+ },
696
+ {
697
+ "internalType": "address",
698
+ "name": "arbiter",
699
+ "type": "address"
700
+ },
701
+ {
702
+ "internalType": "uint32",
703
+ "name": "arbitrationPeriod",
704
+ "type": "uint32"
705
+ },
706
+ {
707
+ "internalType": "uint64",
708
+ "name": "acceptBy",
709
+ "type": "uint64"
710
+ }
711
+ ],
712
+ "internalType": "struct MilestoneEscrowV3.Terms",
713
+ "name": "t",
714
+ "type": "tuple"
715
+ }
716
+ ],
717
+ "name": "acceptanceDigest",
718
+ "outputs": [
719
+ {
720
+ "internalType": "bytes32",
721
+ "name": "",
722
+ "type": "bytes32"
723
+ }
724
+ ],
725
+ "stateMutability": "view",
726
+ "type": "function"
727
+ },
728
+ {
729
+ "inputs": [
730
+ {
731
+ "internalType": "bytes32",
732
+ "name": "id",
733
+ "type": "bytes32"
734
+ }
735
+ ],
736
+ "name": "claim",
737
+ "outputs": [],
738
+ "stateMutability": "nonpayable",
739
+ "type": "function"
740
+ },
741
+ {
742
+ "inputs": [
743
+ {
744
+ "internalType": "bytes32",
745
+ "name": "id",
746
+ "type": "bytes32"
747
+ }
748
+ ],
749
+ "name": "claimableAt",
750
+ "outputs": [
751
+ {
752
+ "internalType": "uint256",
753
+ "name": "",
754
+ "type": "uint256"
755
+ }
756
+ ],
757
+ "stateMutability": "view",
758
+ "type": "function"
759
+ },
760
+ {
761
+ "inputs": [
762
+ {
763
+ "internalType": "address",
764
+ "name": "",
765
+ "type": "address"
766
+ },
767
+ {
768
+ "internalType": "address",
769
+ "name": "",
770
+ "type": "address"
771
+ }
772
+ ],
773
+ "name": "credit",
774
+ "outputs": [
775
+ {
776
+ "internalType": "uint256",
777
+ "name": "",
778
+ "type": "uint256"
779
+ }
780
+ ],
781
+ "stateMutability": "view",
782
+ "type": "function"
783
+ },
784
+ {
785
+ "inputs": [],
786
+ "name": "domainSeparator",
787
+ "outputs": [
788
+ {
789
+ "internalType": "bytes32",
790
+ "name": "",
791
+ "type": "bytes32"
792
+ }
793
+ ],
794
+ "stateMutability": "view",
795
+ "type": "function"
796
+ },
797
+ {
798
+ "inputs": [
799
+ {
800
+ "internalType": "address",
801
+ "name": "payer",
802
+ "type": "address"
803
+ },
804
+ {
805
+ "internalType": "bytes32",
806
+ "name": "ref",
807
+ "type": "bytes32"
808
+ },
809
+ {
810
+ "internalType": "bytes32",
811
+ "name": "salt",
812
+ "type": "bytes32"
813
+ }
814
+ ],
815
+ "name": "escrowIdFor",
816
+ "outputs": [
817
+ {
818
+ "internalType": "bytes32",
819
+ "name": "",
820
+ "type": "bytes32"
821
+ }
822
+ ],
823
+ "stateMutability": "pure",
824
+ "type": "function"
825
+ },
826
+ {
827
+ "inputs": [
828
+ {
829
+ "internalType": "bytes32",
830
+ "name": "id",
831
+ "type": "bytes32"
832
+ },
833
+ {
834
+ "internalType": "uint64",
835
+ "name": "newDeadline",
836
+ "type": "uint64"
837
+ }
838
+ ],
839
+ "name": "extendDeadline",
840
+ "outputs": [],
841
+ "stateMutability": "nonpayable",
842
+ "type": "function"
843
+ },
844
+ {
845
+ "inputs": [
846
+ {
847
+ "internalType": "bytes32",
848
+ "name": "ref",
849
+ "type": "bytes32"
850
+ },
851
+ {
852
+ "internalType": "bytes32",
853
+ "name": "salt",
854
+ "type": "bytes32"
855
+ },
856
+ {
857
+ "components": [
858
+ {
859
+ "internalType": "address",
860
+ "name": "payee",
861
+ "type": "address"
862
+ },
863
+ {
864
+ "internalType": "address",
865
+ "name": "token",
866
+ "type": "address"
867
+ },
868
+ {
869
+ "internalType": "uint256",
870
+ "name": "amount",
871
+ "type": "uint256"
872
+ },
873
+ {
874
+ "internalType": "uint64",
875
+ "name": "deadline",
876
+ "type": "uint64"
877
+ },
878
+ {
879
+ "internalType": "uint32",
880
+ "name": "reviewPeriod",
881
+ "type": "uint32"
882
+ },
883
+ {
884
+ "internalType": "address",
885
+ "name": "arbiter",
886
+ "type": "address"
887
+ },
888
+ {
889
+ "internalType": "uint32",
890
+ "name": "arbitrationPeriod",
891
+ "type": "uint32"
892
+ },
893
+ {
894
+ "internalType": "uint64",
895
+ "name": "acceptBy",
896
+ "type": "uint64"
897
+ }
898
+ ],
899
+ "internalType": "struct MilestoneEscrowV3.Terms",
900
+ "name": "t",
901
+ "type": "tuple"
902
+ },
903
+ {
904
+ "internalType": "bytes",
905
+ "name": "payeeSig",
906
+ "type": "bytes"
907
+ }
908
+ ],
909
+ "name": "fund",
910
+ "outputs": [
911
+ {
912
+ "internalType": "bytes32",
913
+ "name": "escrowId",
914
+ "type": "bytes32"
915
+ }
916
+ ],
917
+ "stateMutability": "payable",
918
+ "type": "function"
919
+ },
920
+ {
921
+ "inputs": [
922
+ {
923
+ "internalType": "bytes32",
924
+ "name": "id",
925
+ "type": "bytes32"
926
+ }
927
+ ],
928
+ "name": "getEscrow",
929
+ "outputs": [
930
+ {
931
+ "components": [
932
+ {
933
+ "internalType": "address",
934
+ "name": "payer",
935
+ "type": "address"
936
+ },
937
+ {
938
+ "internalType": "uint64",
939
+ "name": "deadline",
940
+ "type": "uint64"
941
+ },
942
+ {
943
+ "internalType": "uint32",
944
+ "name": "reviewPeriod",
945
+ "type": "uint32"
946
+ },
947
+ {
948
+ "internalType": "address",
949
+ "name": "payee",
950
+ "type": "address"
951
+ },
952
+ {
953
+ "internalType": "uint64",
954
+ "name": "claimedAt",
955
+ "type": "uint64"
956
+ },
957
+ {
958
+ "internalType": "uint8",
959
+ "name": "claimCount",
960
+ "type": "uint8"
961
+ },
962
+ {
963
+ "internalType": "bool",
964
+ "name": "objected",
965
+ "type": "bool"
966
+ },
967
+ {
968
+ "internalType": "enum MilestoneEscrowV3.Status",
969
+ "name": "status",
970
+ "type": "uint8"
971
+ },
972
+ {
973
+ "internalType": "address",
974
+ "name": "arbiter",
975
+ "type": "address"
976
+ },
977
+ {
978
+ "internalType": "uint64",
979
+ "name": "objectedAt",
980
+ "type": "uint64"
981
+ },
982
+ {
983
+ "internalType": "uint32",
984
+ "name": "arbitrationPeriod",
985
+ "type": "uint32"
986
+ },
987
+ {
988
+ "internalType": "address",
989
+ "name": "token",
990
+ "type": "address"
991
+ },
992
+ {
993
+ "internalType": "uint256",
994
+ "name": "amount",
995
+ "type": "uint256"
996
+ }
997
+ ],
998
+ "internalType": "struct MilestoneEscrowV3.Escrow",
999
+ "name": "",
1000
+ "type": "tuple"
1001
+ }
1002
+ ],
1003
+ "stateMutability": "view",
1004
+ "type": "function"
1005
+ },
1006
+ {
1007
+ "inputs": [
1008
+ {
1009
+ "internalType": "bytes32",
1010
+ "name": "id",
1011
+ "type": "bytes32"
1012
+ },
1013
+ {
1014
+ "internalType": "bytes32",
1015
+ "name": "reasonHash",
1016
+ "type": "bytes32"
1017
+ }
1018
+ ],
1019
+ "name": "object",
1020
+ "outputs": [],
1021
+ "stateMutability": "nonpayable",
1022
+ "type": "function"
1023
+ },
1024
+ {
1025
+ "inputs": [
1026
+ {
1027
+ "internalType": "bytes32",
1028
+ "name": "id",
1029
+ "type": "bytes32"
1030
+ }
1031
+ ],
1032
+ "name": "phase",
1033
+ "outputs": [
1034
+ {
1035
+ "internalType": "enum MilestoneEscrowV3.Phase",
1036
+ "name": "",
1037
+ "type": "uint8"
1038
+ }
1039
+ ],
1040
+ "stateMutability": "view",
1041
+ "type": "function"
1042
+ },
1043
+ {
1044
+ "inputs": [
1045
+ {
1046
+ "internalType": "bytes32",
1047
+ "name": "id",
1048
+ "type": "bytes32"
1049
+ }
1050
+ ],
1051
+ "name": "refund",
1052
+ "outputs": [],
1053
+ "stateMutability": "nonpayable",
1054
+ "type": "function"
1055
+ },
1056
+ {
1057
+ "inputs": [
1058
+ {
1059
+ "internalType": "bytes32",
1060
+ "name": "id",
1061
+ "type": "bytes32"
1062
+ }
1063
+ ],
1064
+ "name": "refundableAt",
1065
+ "outputs": [
1066
+ {
1067
+ "internalType": "uint256",
1068
+ "name": "",
1069
+ "type": "uint256"
1070
+ }
1071
+ ],
1072
+ "stateMutability": "view",
1073
+ "type": "function"
1074
+ },
1075
+ {
1076
+ "inputs": [
1077
+ {
1078
+ "internalType": "bytes32",
1079
+ "name": "id",
1080
+ "type": "bytes32"
1081
+ }
1082
+ ],
1083
+ "name": "release",
1084
+ "outputs": [],
1085
+ "stateMutability": "nonpayable",
1086
+ "type": "function"
1087
+ },
1088
+ {
1089
+ "inputs": [
1090
+ {
1091
+ "internalType": "bytes32",
1092
+ "name": "id",
1093
+ "type": "bytes32"
1094
+ },
1095
+ {
1096
+ "internalType": "bool",
1097
+ "name": "toPayee",
1098
+ "type": "bool"
1099
+ }
1100
+ ],
1101
+ "name": "resolve",
1102
+ "outputs": [],
1103
+ "stateMutability": "nonpayable",
1104
+ "type": "function"
1105
+ },
1106
+ {
1107
+ "inputs": [
1108
+ {
1109
+ "internalType": "bytes32",
1110
+ "name": "id",
1111
+ "type": "bytes32"
1112
+ }
1113
+ ],
1114
+ "name": "returnFunds",
1115
+ "outputs": [],
1116
+ "stateMutability": "nonpayable",
1117
+ "type": "function"
1118
+ },
1119
+ {
1120
+ "inputs": [
1121
+ {
1122
+ "internalType": "bytes32",
1123
+ "name": "id",
1124
+ "type": "bytes32"
1125
+ },
1126
+ {
1127
+ "internalType": "bytes32",
1128
+ "name": "proofHash",
1129
+ "type": "bytes32"
1130
+ }
1131
+ ],
1132
+ "name": "submitClaim",
1133
+ "outputs": [],
1134
+ "stateMutability": "nonpayable",
1135
+ "type": "function"
1136
+ },
1137
+ {
1138
+ "inputs": [
1139
+ {
1140
+ "internalType": "address",
1141
+ "name": "",
1142
+ "type": "address"
1143
+ }
1144
+ ],
1145
+ "name": "totalLocked",
1146
+ "outputs": [
1147
+ {
1148
+ "internalType": "uint256",
1149
+ "name": "",
1150
+ "type": "uint256"
1151
+ }
1152
+ ],
1153
+ "stateMutability": "view",
1154
+ "type": "function"
1155
+ },
1156
+ {
1157
+ "inputs": [
1158
+ {
1159
+ "internalType": "address",
1160
+ "name": "account",
1161
+ "type": "address"
1162
+ },
1163
+ {
1164
+ "internalType": "address",
1165
+ "name": "token",
1166
+ "type": "address"
1167
+ }
1168
+ ],
1169
+ "name": "withdraw",
1170
+ "outputs": [],
1171
+ "stateMutability": "nonpayable",
1172
+ "type": "function"
1173
+ },
1174
+ {
1175
+ "stateMutability": "payable",
1176
+ "type": "receive"
1177
+ }
1178
+ ]
1179
+ }