forked from eoscanada/eos-go
-
Notifications
You must be signed in to change notification settings - Fork 0
/
deleteauth.go
32 lines (28 loc) · 952 Bytes
/
deleteauth.go
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
package system
import "github.com/eoscochain/eos-go"
// NewDeleteAuth creates an action from the `eosio.system` contract
// called `deleteauth`.
//
// You cannot delete the `owner` or `active` permissions. Also, if a
// permission is still linked through a previous `updatelink` action,
// you will need to `unlinkauth` first.
func NewDeleteAuth(account eos.AccountName, permission eos.PermissionName) *eos.Action {
a := &eos.Action{
Account: AN("eosio"),
Name: ActN("deleteauth"),
Authorization: []eos.PermissionLevel{
{Actor: account, Permission: eos.PermissionName("active")},
},
ActionData: eos.NewActionData(DeleteAuth{
Account: account,
Permission: permission,
}),
}
return a
}
// DeleteAuth represents the native `deleteauth` action, reachable
// through the `eosio.system` contract.
type DeleteAuth struct {
Account eos.AccountName `json:"account"`
Permission eos.PermissionName `json:"permission"`
}