Realm

gno.land/r/samcrew/escrow_v3

Rendered output

Escrow Contracts

Milestone-based escrow for freelance services on Gno.

No contracts yet.

Query (read-only)

non-crossing functions · no tx, no wallet needed
IsPaused() → bool
RealmAddress() → string
TotalLiabilities() → int64

Call functions (state-changing)

signs a tx via Adena
CancelContract(contractId string)
ClaimDisputeTimeout(contractId string, milestoneIdx int)
ClaimRefund(contractId string, milestoneIdx int)
CompleteMilestone(contractId string, milestoneIdx int)
CreateContract(freelancer string, title string, description string, milestones string)
FundMilestone(contractId string, milestoneIdx int)
Pause()
RaiseDispute(contractId string, milestoneIdx int)
ReleaseFunds(contractId string, milestoneIdx int)
ResolveDispute(contractId string, milestoneIdx int, refundClient bool)
Unpause()

All exported functions (15)

show raw signatures
NameParamsReturns
Pause [{"Name": "cur", "Type": "interface {.seal func(); Address func() .uverse.address; IsCode func() bool; IsCurrent func() bool; IsEphemeral func() bool; IsUser func() bool; IsUserCall func() bool; IsUserRun func() bool; PkgPath func() string; Previous func() .uverse.realm; String func() string; Sub func(string) .uverse.realm; Subpath func() string}", "Value": ""}]
Unpause [{"Name": "cur", "Type": "interface {.seal func(); Address func() .uverse.address; IsCode func() bool; IsCurrent func() bool; IsEphemeral func() bool; IsUser func() bool; IsUserCall func() bool; IsUserRun func() bool; PkgPath func() string; Previous func() .uverse.realm; String func() string; Sub func(string) .uverse.realm; Subpath func() string}", "Value": ""}]
IsPaused [{"Name": ".res.0", "Type": "bool", "Value": ""}]
CreateContract [{"Name": "cur", "Type": "interface {.seal func(); Address func() .uverse.address; IsCode func() bool; IsCurrent func() bool; IsEphemeral func() bool; IsUser func() bool; IsUserCall func() bool; IsUserRun func() bool; PkgPath func() string; Previous func() .uverse.realm; String func() string; Sub func(string) .uverse.realm; Subpath func() string}", "Value": ""}, {"Name": "freelancer", "Type": "string", "Value": ""}, {"Name": "title", "Type": "string", "Value": ""}, {"Name": "description", "Type": "string", "Value": ""}, {"Name": "milestones", "Type": "string", "Value": ""}] [{"Name": ".res.0", "Type": "string", "Value": ""}]
FundMilestone [{"Name": "cur", "Type": "interface {.seal func(); Address func() .uverse.address; IsCode func() bool; IsCurrent func() bool; IsEphemeral func() bool; IsUser func() bool; IsUserCall func() bool; IsUserRun func() bool; PkgPath func() string; Previous func() .uverse.realm; String func() string; Sub func(string) .uverse.realm; Subpath func() string}", "Value": ""}, {"Name": "contractId", "Type": "string", "Value": ""}, {"Name": "milestoneIdx", "Type": "int", "Value": ""}]
CompleteMilestone [{"Name": "cur", "Type": "interface {.seal func(); Address func() .uverse.address; IsCode func() bool; IsCurrent func() bool; IsEphemeral func() bool; IsUser func() bool; IsUserCall func() bool; IsUserRun func() bool; PkgPath func() string; Previous func() .uverse.realm; String func() string; Sub func(string) .uverse.realm; Subpath func() string}", "Value": ""}, {"Name": "contractId", "Type": "string", "Value": ""}, {"Name": "milestoneIdx", "Type": "int", "Value": ""}]
ReleaseFunds [{"Name": "cur", "Type": "interface {.seal func(); Address func() .uverse.address; IsCode func() bool; IsCurrent func() bool; IsEphemeral func() bool; IsUser func() bool; IsUserCall func() bool; IsUserRun func() bool; PkgPath func() string; Previous func() .uverse.realm; String func() string; Sub func(string) .uverse.realm; Subpath func() string}", "Value": ""}, {"Name": "contractId", "Type": "string", "Value": ""}, {"Name": "milestoneIdx", "Type": "int", "Value": ""}]
RaiseDispute [{"Name": "cur", "Type": "interface {.seal func(); Address func() .uverse.address; IsCode func() bool; IsCurrent func() bool; IsEphemeral func() bool; IsUser func() bool; IsUserCall func() bool; IsUserRun func() bool; PkgPath func() string; Previous func() .uverse.realm; String func() string; Sub func(string) .uverse.realm; Subpath func() string}", "Value": ""}, {"Name": "contractId", "Type": "string", "Value": ""}, {"Name": "milestoneIdx", "Type": "int", "Value": ""}]
ResolveDispute [{"Name": "cur", "Type": "interface {.seal func(); Address func() .uverse.address; IsCode func() bool; IsCurrent func() bool; IsEphemeral func() bool; IsUser func() bool; IsUserCall func() bool; IsUserRun func() bool; PkgPath func() string; Previous func() .uverse.realm; String func() string; Sub func(string) .uverse.realm; Subpath func() string}", "Value": ""}, {"Name": "contractId", "Type": "string", "Value": ""}, {"Name": "milestoneIdx", "Type": "int", "Value": ""}, {"Name": "refundClient", "Type": "bool", "Value": ""}]
CancelContract [{"Name": "cur", "Type": "interface {.seal func(); Address func() .uverse.address; IsCode func() bool; IsCurrent func() bool; IsEphemeral func() bool; IsUser func() bool; IsUserCall func() bool; IsUserRun func() bool; PkgPath func() string; Previous func() .uverse.realm; String func() string; Sub func(string) .uverse.realm; Subpath func() string}", "Value": ""}, {"Name": "contractId", "Type": "string", "Value": ""}]
ClaimRefund [{"Name": "cur", "Type": "interface {.seal func(); Address func() .uverse.address; IsCode func() bool; IsCurrent func() bool; IsEphemeral func() bool; IsUser func() bool; IsUserCall func() bool; IsUserRun func() bool; PkgPath func() string; Previous func() .uverse.realm; String func() string; Sub func(string) .uverse.realm; Subpath func() string}", "Value": ""}, {"Name": "contractId", "Type": "string", "Value": ""}, {"Name": "milestoneIdx", "Type": "int", "Value": ""}]
ClaimDisputeTimeout [{"Name": "cur", "Type": "interface {.seal func(); Address func() .uverse.address; IsCode func() bool; IsCurrent func() bool; IsEphemeral func() bool; IsUser func() bool; IsUserCall func() bool; IsUserRun func() bool; PkgPath func() string; Previous func() .uverse.realm; String func() string; Sub func(string) .uverse.realm; Subpath func() string}", "Value": ""}, {"Name": "contractId", "Type": "string", "Value": ""}, {"Name": "milestoneIdx", "Type": "int", "Value": ""}]
Render [{"Name": "path", "Type": "string", "Value": ""}] [{"Name": ".res.0", "Type": "string", "Value": ""}]
TotalLiabilities [{"Name": ".res.0", "Type": "int64", "Value": ""}]
RealmAddress [{"Name": ".res.0", "Type": "string", "Value": ""}]

Files

Storage

{
  "raw": "storage: 27738, deposit: 2773800"
}