sonr/pkl/sonr.orm/UCAN.pkl

34 lines
1.1 KiB
Plaintext

@go.Package { name = "github.com/onsonr/sonr/crypto/ucan/attns" }
module sonr.orm.UCAN
import "package://pkg.pkl-lang.org/pkl-go/pkl.golang@0.5.0#/go.pkl"
// Capability hierarchy for smart account operations
// ----------------------------------------------
// OWNER
// └─ OPERATOR
// └─ AUTHENTICATE
// └─ AUTHORIZE
// └─ DELEGATE
// ├─ EXECUTE
// └─ INVOKE
// ├─ PROPOSE
// └─ SIGN
// └─ VOTE
// └─ SET_POLICY
// └─ SET_THRESHOLD
// └─ RECOVER
// └─ SOCIAL
// └─ VAULT
typealias Capability = "CAP_OWNER"|"CAP_OPERATOR"|"CAP_OBSERVER"|"CAP_AUTHENTICATE"|"CAP_AUTHORIZE"|"CAP_DELEGATE"|"CAP_INVOKE"|"CAP_EXECUTE"|"CAP_PROPOSE"|"CAP_SIGN"|"CAP_SET_POLICY"|"CAP_SET_THRESHOLD"|"CAP_RECOVER"|"CAP_SOCIAL"|"CAP_VOTE" | "CAP_RESOLVER" | "CAP_PRODUCER"
typealias ResourceType = "RES_ACCOUNT"|"RES_TRANSACTION"|"RES_POLICY"|"RES_RECOVERY"|"RES_VAULT" | "RES_IPFS" | "RES_IPNS" | "RES_KEYSHARE"
typealias PolicyType = "POLICY_THRESHOLD"|"POLICY_TIMELOCK"|"POLICY_WHITELIST" | "POLICY_KEYGEN"