@dfinity/nns 8.3.2 → 8.4.0-next-2025-04-15
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.
- package/README.md +67 -46
- package/dist/candid/genesis_token.did +1 -1
- package/dist/candid/governance.certified.idl.js +25 -32
- package/dist/candid/governance.d.ts +15 -18
- package/dist/candid/governance.did +27 -26
- package/dist/candid/governance.idl.js +25 -32
- package/dist/candid/governance_test.certified.idl.js +25 -32
- package/dist/candid/governance_test.d.ts +15 -18
- package/dist/candid/governance_test.did +26 -27
- package/dist/candid/governance_test.idl.js +25 -32
- package/dist/candid/sns_wasm.certified.idl.js +0 -4
- package/dist/candid/sns_wasm.d.ts +0 -4
- package/dist/candid/sns_wasm.did +1 -6
- package/dist/candid/sns_wasm.idl.js +0 -4
- package/dist/cjs/index.cjs.js +1 -1
- package/dist/cjs/index.cjs.js.map +3 -3
- package/dist/esm/chunk-GQ6HQ3NJ.js +2 -0
- package/dist/esm/chunk-GQ6HQ3NJ.js.map +7 -0
- package/dist/esm/chunk-ZA4DZTQU.js +19 -0
- package/dist/esm/chunk-ZA4DZTQU.js.map +7 -0
- package/dist/esm/governance.canister.js +1 -1
- package/dist/esm/index.js +1 -1
- package/dist/esm/index.js.map +3 -3
- package/dist/esm/sns_wasm.canister.js +1 -1
- package/dist/types/canisters/governance/request.converters.d.ts +4 -0
- package/dist/types/governance.canister.d.ts +15 -0
- package/dist/types/types/governance_converters.d.ts +13 -0
- package/package.json +7 -7
- package/dist/esm/chunk-4KESFT3P.js +0 -2
- package/dist/esm/chunk-4KESFT3P.js.map +0 -7
- package/dist/esm/chunk-SHZMGWWU.js +0 -19
- package/dist/esm/chunk-SHZMGWWU.js.map +0 -7
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
// Generated from IC repo commit
|
|
1
|
+
// Generated from IC repo commit 148ccc9 (2025-04-04 tags: rosetta-icrc-release-1.2.0) 'rs/nns/governance/canister/governance.did' by import-candid
|
|
2
2
|
type AccountIdentifier = record {
|
|
3
3
|
hash : blob;
|
|
4
4
|
};
|
|
@@ -124,6 +124,20 @@ type RefreshVotingPowerResponse = record {
|
|
|
124
124
|
// minimal until we discover there is a "real need". YAGNI.
|
|
125
125
|
};
|
|
126
126
|
|
|
127
|
+
type DisburseMaturity = record {
|
|
128
|
+
percentage_to_disburse : nat32;
|
|
129
|
+
to_account : opt Account;
|
|
130
|
+
};
|
|
131
|
+
|
|
132
|
+
type Account = record {
|
|
133
|
+
owner: opt principal;
|
|
134
|
+
subaccount: opt blob;
|
|
135
|
+
};
|
|
136
|
+
|
|
137
|
+
type DisburseMaturityResponse = record {
|
|
138
|
+
amount_disbursed_e8s : opt nat64;
|
|
139
|
+
};
|
|
140
|
+
|
|
127
141
|
// KEEP THIS IN SYNC WITH ManageNeuronCommandRequest!
|
|
128
142
|
type Command = variant {
|
|
129
143
|
Spawn : Spawn;
|
|
@@ -139,6 +153,7 @@ type Command = variant {
|
|
|
139
153
|
MergeMaturity : MergeMaturity;
|
|
140
154
|
Disburse : Disburse;
|
|
141
155
|
RefreshVotingPower : RefreshVotingPower;
|
|
156
|
+
DisburseMaturity : DisburseMaturity;
|
|
142
157
|
|
|
143
158
|
// KEEP THIS IN SYNC WITH ManageNeuronCommandRequest!
|
|
144
159
|
};
|
|
@@ -158,6 +173,7 @@ type Command_1 = variant {
|
|
|
158
173
|
MergeMaturity : MergeMaturityResponse;
|
|
159
174
|
Disburse : DisburseResponse;
|
|
160
175
|
RefreshVotingPower : RefreshVotingPowerResponse;
|
|
176
|
+
DisburseMaturity : DisburseMaturityResponse;
|
|
161
177
|
};
|
|
162
178
|
|
|
163
179
|
type Command_2 = variant {
|
|
@@ -266,14 +282,6 @@ type Followees = record {
|
|
|
266
282
|
followees : vec NeuronId;
|
|
267
283
|
};
|
|
268
284
|
|
|
269
|
-
type Followers = record {
|
|
270
|
-
followers : vec NeuronId;
|
|
271
|
-
};
|
|
272
|
-
|
|
273
|
-
type FollowersMap = record {
|
|
274
|
-
followers_map : vec record { nat64; Followers };
|
|
275
|
-
};
|
|
276
|
-
|
|
277
285
|
type GetNeuronsFundAuditInfoRequest = record {
|
|
278
286
|
nns_proposal_id : opt ProposalId;
|
|
279
287
|
};
|
|
@@ -302,8 +310,6 @@ type Governance = record {
|
|
|
302
310
|
latest_reward_event : opt RewardEvent;
|
|
303
311
|
to_claim_transfers : vec NeuronStakeTransfer;
|
|
304
312
|
short_voting_period_seconds : nat64;
|
|
305
|
-
topic_followee_index : vec record { int32; FollowersMap };
|
|
306
|
-
migrations : opt Migrations;
|
|
307
313
|
proposals : vec record { nat64; ProposalData };
|
|
308
314
|
xdr_conversion_rate : opt XdrConversionRate;
|
|
309
315
|
in_flight_commands : vec record { nat64; NeuronInFlightCommand };
|
|
@@ -541,6 +547,7 @@ type ManageNeuronCommandRequest = variant {
|
|
|
541
547
|
MergeMaturity : MergeMaturity;
|
|
542
548
|
Disburse : Disburse;
|
|
543
549
|
RefreshVotingPower : RefreshVotingPower;
|
|
550
|
+
DisburseMaturity : DisburseMaturity;
|
|
544
551
|
|
|
545
552
|
// KEEP THIS IN SYNC WITH COMMAND!
|
|
546
553
|
};
|
|
@@ -584,17 +591,6 @@ type MergeResponse = record {
|
|
|
584
591
|
source_neuron_info : opt NeuronInfo;
|
|
585
592
|
};
|
|
586
593
|
|
|
587
|
-
type Migration = record {
|
|
588
|
-
status : opt int32;
|
|
589
|
-
failure_reason : opt text;
|
|
590
|
-
progress : opt Progress;
|
|
591
|
-
};
|
|
592
|
-
|
|
593
|
-
type Migrations = record {
|
|
594
|
-
neuron_indexes_migration : opt Migration;
|
|
595
|
-
copy_inactive_neurons_to_stable_memory_migration : opt Migration;
|
|
596
|
-
};
|
|
597
|
-
|
|
598
594
|
type MonthlyNodeProviderRewards = record {
|
|
599
595
|
minimum_xdr_permyriad_per_icp : opt nat64;
|
|
600
596
|
registry_version : opt nat64;
|
|
@@ -645,6 +641,15 @@ type VotingPowerEconomics = record {
|
|
|
645
641
|
//
|
|
646
642
|
// Initially, set to 1/12 years.
|
|
647
643
|
clear_following_after_seconds : opt nat64;
|
|
644
|
+
|
|
645
|
+
// The minimum dissolve delay a neuron must have in order to be eligible to vote.
|
|
646
|
+
//
|
|
647
|
+
// Neurons with a dissolve delay lower than this threshold will not have
|
|
648
|
+
// voting power, even if they are otherwise active.
|
|
649
|
+
//
|
|
650
|
+
// This value is an essential part of the staking mechanism, promoting
|
|
651
|
+
// long-term alignment with the network's governance.
|
|
652
|
+
neuron_minimum_dissolve_delay_to_vote_seconds : opt nat64;
|
|
648
653
|
};
|
|
649
654
|
|
|
650
655
|
type Neuron = record {
|
|
@@ -949,10 +954,6 @@ type Principals = record {
|
|
|
949
954
|
principals : vec principal;
|
|
950
955
|
};
|
|
951
956
|
|
|
952
|
-
type Progress = variant {
|
|
953
|
-
LastNeuronId : NeuronId;
|
|
954
|
-
};
|
|
955
|
-
|
|
956
957
|
type Proposal = record {
|
|
957
958
|
url : text;
|
|
958
959
|
title : opt text;
|
|
@@ -22,6 +22,14 @@ export const idlFactory = ({ IDL }) => {
|
|
|
22
22
|
'topic' : IDL.Int32,
|
|
23
23
|
'followees' : IDL.Vec(NeuronId),
|
|
24
24
|
});
|
|
25
|
+
const Account = IDL.Record({
|
|
26
|
+
'owner' : IDL.Opt(IDL.Principal),
|
|
27
|
+
'subaccount' : IDL.Opt(IDL.Vec(IDL.Nat8)),
|
|
28
|
+
});
|
|
29
|
+
const DisburseMaturity = IDL.Record({
|
|
30
|
+
'to_account' : IDL.Opt(Account),
|
|
31
|
+
'percentage_to_disburse' : IDL.Nat32,
|
|
32
|
+
});
|
|
25
33
|
const RefreshVotingPower = IDL.Record({});
|
|
26
34
|
const ClaimOrRefreshNeuronFromAccount = IDL.Record({
|
|
27
35
|
'controller' : IDL.Opt(IDL.Principal),
|
|
@@ -87,6 +95,7 @@ export const idlFactory = ({ IDL }) => {
|
|
|
87
95
|
'Spawn' : Spawn,
|
|
88
96
|
'Split' : Split,
|
|
89
97
|
'Follow' : Follow,
|
|
98
|
+
'DisburseMaturity' : DisburseMaturity,
|
|
90
99
|
'RefreshVotingPower' : RefreshVotingPower,
|
|
91
100
|
'ClaimOrRefresh' : ClaimOrRefresh,
|
|
92
101
|
'Configure' : Configure,
|
|
@@ -279,6 +288,7 @@ export const idlFactory = ({ IDL }) => {
|
|
|
279
288
|
});
|
|
280
289
|
const VotingPowerEconomics = IDL.Record({
|
|
281
290
|
'start_reducing_voting_power_after_seconds' : IDL.Opt(IDL.Nat64),
|
|
291
|
+
'neuron_minimum_dissolve_delay_to_vote_seconds' : IDL.Opt(IDL.Nat64),
|
|
282
292
|
'clear_following_after_seconds' : IDL.Opt(IDL.Nat64),
|
|
283
293
|
});
|
|
284
294
|
const Decimal = IDL.Record({ 'human_readable' : IDL.Opt(IDL.Text) });
|
|
@@ -477,20 +487,6 @@ export const idlFactory = ({ IDL }) => {
|
|
|
477
487
|
'transfer_timestamp' : IDL.Nat64,
|
|
478
488
|
'block_height' : IDL.Nat64,
|
|
479
489
|
});
|
|
480
|
-
const Followers = IDL.Record({ 'followers' : IDL.Vec(NeuronId) });
|
|
481
|
-
const FollowersMap = IDL.Record({
|
|
482
|
-
'followers_map' : IDL.Vec(IDL.Tuple(IDL.Nat64, Followers)),
|
|
483
|
-
});
|
|
484
|
-
const Progress = IDL.Variant({ 'LastNeuronId' : NeuronId });
|
|
485
|
-
const Migration = IDL.Record({
|
|
486
|
-
'status' : IDL.Opt(IDL.Int32),
|
|
487
|
-
'failure_reason' : IDL.Opt(IDL.Text),
|
|
488
|
-
'progress' : IDL.Opt(Progress),
|
|
489
|
-
});
|
|
490
|
-
const Migrations = IDL.Record({
|
|
491
|
-
'neuron_indexes_migration' : IDL.Opt(Migration),
|
|
492
|
-
'copy_inactive_neurons_to_stable_memory_migration' : IDL.Opt(Migration),
|
|
493
|
-
});
|
|
494
490
|
const GovernanceError = IDL.Record({
|
|
495
491
|
'error_message' : IDL.Text,
|
|
496
492
|
'error_type' : IDL.Int32,
|
|
@@ -660,8 +656,6 @@ export const idlFactory = ({ IDL }) => {
|
|
|
660
656
|
'latest_reward_event' : IDL.Opt(RewardEvent),
|
|
661
657
|
'to_claim_transfers' : IDL.Vec(NeuronStakeTransfer),
|
|
662
658
|
'short_voting_period_seconds' : IDL.Nat64,
|
|
663
|
-
'topic_followee_index' : IDL.Vec(IDL.Tuple(IDL.Int32, FollowersMap)),
|
|
664
|
-
'migrations' : IDL.Opt(Migrations),
|
|
665
659
|
'proposals' : IDL.Vec(IDL.Tuple(IDL.Nat64, ProposalData)),
|
|
666
660
|
'xdr_conversion_rate' : IDL.Opt(XdrConversionRate),
|
|
667
661
|
'in_flight_commands' : IDL.Vec(IDL.Tuple(IDL.Nat64, NeuronInFlightCommand)),
|
|
@@ -817,6 +811,7 @@ export const idlFactory = ({ IDL }) => {
|
|
|
817
811
|
'Spawn' : Spawn,
|
|
818
812
|
'Split' : Split,
|
|
819
813
|
'Follow' : Follow,
|
|
814
|
+
'DisburseMaturity' : DisburseMaturity,
|
|
820
815
|
'RefreshVotingPower' : RefreshVotingPower,
|
|
821
816
|
'ClaimOrRefresh' : ClaimOrRefresh,
|
|
822
817
|
'Configure' : Configure,
|
|
@@ -836,6 +831,9 @@ export const idlFactory = ({ IDL }) => {
|
|
|
836
831
|
})
|
|
837
832
|
);
|
|
838
833
|
const SpawnResponse = IDL.Record({ 'created_neuron_id' : IDL.Opt(NeuronId) });
|
|
834
|
+
const DisburseMaturityResponse = IDL.Record({
|
|
835
|
+
'amount_disbursed_e8s' : IDL.Opt(IDL.Nat64),
|
|
836
|
+
});
|
|
839
837
|
const RefreshVotingPowerResponse = IDL.Record({});
|
|
840
838
|
const ClaimOrRefreshResponse = IDL.Record({
|
|
841
839
|
'refreshed_neuron_id' : IDL.Opt(NeuronId),
|
|
@@ -864,6 +862,7 @@ export const idlFactory = ({ IDL }) => {
|
|
|
864
862
|
'Spawn' : SpawnResponse,
|
|
865
863
|
'Split' : SpawnResponse,
|
|
866
864
|
'Follow' : IDL.Record({}),
|
|
865
|
+
'DisburseMaturity' : DisburseMaturityResponse,
|
|
867
866
|
'RefreshVotingPower' : RefreshVotingPowerResponse,
|
|
868
867
|
'ClaimOrRefresh' : ClaimOrRefreshResponse,
|
|
869
868
|
'Configure' : IDL.Record({}),
|
|
@@ -1037,6 +1036,14 @@ export const init = ({ IDL }) => {
|
|
|
1037
1036
|
'topic' : IDL.Int32,
|
|
1038
1037
|
'followees' : IDL.Vec(NeuronId),
|
|
1039
1038
|
});
|
|
1039
|
+
const Account = IDL.Record({
|
|
1040
|
+
'owner' : IDL.Opt(IDL.Principal),
|
|
1041
|
+
'subaccount' : IDL.Opt(IDL.Vec(IDL.Nat8)),
|
|
1042
|
+
});
|
|
1043
|
+
const DisburseMaturity = IDL.Record({
|
|
1044
|
+
'to_account' : IDL.Opt(Account),
|
|
1045
|
+
'percentage_to_disburse' : IDL.Nat32,
|
|
1046
|
+
});
|
|
1040
1047
|
const RefreshVotingPower = IDL.Record({});
|
|
1041
1048
|
const ClaimOrRefreshNeuronFromAccount = IDL.Record({
|
|
1042
1049
|
'controller' : IDL.Opt(IDL.Principal),
|
|
@@ -1102,6 +1109,7 @@ export const init = ({ IDL }) => {
|
|
|
1102
1109
|
'Spawn' : Spawn,
|
|
1103
1110
|
'Split' : Split,
|
|
1104
1111
|
'Follow' : Follow,
|
|
1112
|
+
'DisburseMaturity' : DisburseMaturity,
|
|
1105
1113
|
'RefreshVotingPower' : RefreshVotingPower,
|
|
1106
1114
|
'ClaimOrRefresh' : ClaimOrRefresh,
|
|
1107
1115
|
'Configure' : Configure,
|
|
@@ -1294,6 +1302,7 @@ export const init = ({ IDL }) => {
|
|
|
1294
1302
|
});
|
|
1295
1303
|
const VotingPowerEconomics = IDL.Record({
|
|
1296
1304
|
'start_reducing_voting_power_after_seconds' : IDL.Opt(IDL.Nat64),
|
|
1305
|
+
'neuron_minimum_dissolve_delay_to_vote_seconds' : IDL.Opt(IDL.Nat64),
|
|
1297
1306
|
'clear_following_after_seconds' : IDL.Opt(IDL.Nat64),
|
|
1298
1307
|
});
|
|
1299
1308
|
const Decimal = IDL.Record({ 'human_readable' : IDL.Opt(IDL.Text) });
|
|
@@ -1492,20 +1501,6 @@ export const init = ({ IDL }) => {
|
|
|
1492
1501
|
'transfer_timestamp' : IDL.Nat64,
|
|
1493
1502
|
'block_height' : IDL.Nat64,
|
|
1494
1503
|
});
|
|
1495
|
-
const Followers = IDL.Record({ 'followers' : IDL.Vec(NeuronId) });
|
|
1496
|
-
const FollowersMap = IDL.Record({
|
|
1497
|
-
'followers_map' : IDL.Vec(IDL.Tuple(IDL.Nat64, Followers)),
|
|
1498
|
-
});
|
|
1499
|
-
const Progress = IDL.Variant({ 'LastNeuronId' : NeuronId });
|
|
1500
|
-
const Migration = IDL.Record({
|
|
1501
|
-
'status' : IDL.Opt(IDL.Int32),
|
|
1502
|
-
'failure_reason' : IDL.Opt(IDL.Text),
|
|
1503
|
-
'progress' : IDL.Opt(Progress),
|
|
1504
|
-
});
|
|
1505
|
-
const Migrations = IDL.Record({
|
|
1506
|
-
'neuron_indexes_migration' : IDL.Opt(Migration),
|
|
1507
|
-
'copy_inactive_neurons_to_stable_memory_migration' : IDL.Opt(Migration),
|
|
1508
|
-
});
|
|
1509
1504
|
const GovernanceError = IDL.Record({
|
|
1510
1505
|
'error_message' : IDL.Text,
|
|
1511
1506
|
'error_type' : IDL.Int32,
|
|
@@ -1675,8 +1670,6 @@ export const init = ({ IDL }) => {
|
|
|
1675
1670
|
'latest_reward_event' : IDL.Opt(RewardEvent),
|
|
1676
1671
|
'to_claim_transfers' : IDL.Vec(NeuronStakeTransfer),
|
|
1677
1672
|
'short_voting_period_seconds' : IDL.Nat64,
|
|
1678
|
-
'topic_followee_index' : IDL.Vec(IDL.Tuple(IDL.Int32, FollowersMap)),
|
|
1679
|
-
'migrations' : IDL.Opt(Migrations),
|
|
1680
1673
|
'proposals' : IDL.Vec(IDL.Tuple(IDL.Nat64, ProposalData)),
|
|
1681
1674
|
'xdr_conversion_rate' : IDL.Opt(XdrConversionRate),
|
|
1682
1675
|
'in_flight_commands' : IDL.Vec(IDL.Tuple(IDL.Nat64, NeuronInFlightCommand)),
|
|
@@ -22,6 +22,14 @@ export const idlFactory = ({ IDL }) => {
|
|
|
22
22
|
'topic' : IDL.Int32,
|
|
23
23
|
'followees' : IDL.Vec(NeuronId),
|
|
24
24
|
});
|
|
25
|
+
const Account = IDL.Record({
|
|
26
|
+
'owner' : IDL.Opt(IDL.Principal),
|
|
27
|
+
'subaccount' : IDL.Opt(IDL.Vec(IDL.Nat8)),
|
|
28
|
+
});
|
|
29
|
+
const DisburseMaturity = IDL.Record({
|
|
30
|
+
'to_account' : IDL.Opt(Account),
|
|
31
|
+
'percentage_to_disburse' : IDL.Nat32,
|
|
32
|
+
});
|
|
25
33
|
const RefreshVotingPower = IDL.Record({});
|
|
26
34
|
const ClaimOrRefreshNeuronFromAccount = IDL.Record({
|
|
27
35
|
'controller' : IDL.Opt(IDL.Principal),
|
|
@@ -87,6 +95,7 @@ export const idlFactory = ({ IDL }) => {
|
|
|
87
95
|
'Spawn' : Spawn,
|
|
88
96
|
'Split' : Split,
|
|
89
97
|
'Follow' : Follow,
|
|
98
|
+
'DisburseMaturity' : DisburseMaturity,
|
|
90
99
|
'RefreshVotingPower' : RefreshVotingPower,
|
|
91
100
|
'ClaimOrRefresh' : ClaimOrRefresh,
|
|
92
101
|
'Configure' : Configure,
|
|
@@ -279,6 +288,7 @@ export const idlFactory = ({ IDL }) => {
|
|
|
279
288
|
});
|
|
280
289
|
const VotingPowerEconomics = IDL.Record({
|
|
281
290
|
'start_reducing_voting_power_after_seconds' : IDL.Opt(IDL.Nat64),
|
|
291
|
+
'neuron_minimum_dissolve_delay_to_vote_seconds' : IDL.Opt(IDL.Nat64),
|
|
282
292
|
'clear_following_after_seconds' : IDL.Opt(IDL.Nat64),
|
|
283
293
|
});
|
|
284
294
|
const Decimal = IDL.Record({ 'human_readable' : IDL.Opt(IDL.Text) });
|
|
@@ -477,20 +487,6 @@ export const idlFactory = ({ IDL }) => {
|
|
|
477
487
|
'transfer_timestamp' : IDL.Nat64,
|
|
478
488
|
'block_height' : IDL.Nat64,
|
|
479
489
|
});
|
|
480
|
-
const Followers = IDL.Record({ 'followers' : IDL.Vec(NeuronId) });
|
|
481
|
-
const FollowersMap = IDL.Record({
|
|
482
|
-
'followers_map' : IDL.Vec(IDL.Tuple(IDL.Nat64, Followers)),
|
|
483
|
-
});
|
|
484
|
-
const Progress = IDL.Variant({ 'LastNeuronId' : NeuronId });
|
|
485
|
-
const Migration = IDL.Record({
|
|
486
|
-
'status' : IDL.Opt(IDL.Int32),
|
|
487
|
-
'failure_reason' : IDL.Opt(IDL.Text),
|
|
488
|
-
'progress' : IDL.Opt(Progress),
|
|
489
|
-
});
|
|
490
|
-
const Migrations = IDL.Record({
|
|
491
|
-
'neuron_indexes_migration' : IDL.Opt(Migration),
|
|
492
|
-
'copy_inactive_neurons_to_stable_memory_migration' : IDL.Opt(Migration),
|
|
493
|
-
});
|
|
494
490
|
const GovernanceError = IDL.Record({
|
|
495
491
|
'error_message' : IDL.Text,
|
|
496
492
|
'error_type' : IDL.Int32,
|
|
@@ -660,8 +656,6 @@ export const idlFactory = ({ IDL }) => {
|
|
|
660
656
|
'latest_reward_event' : IDL.Opt(RewardEvent),
|
|
661
657
|
'to_claim_transfers' : IDL.Vec(NeuronStakeTransfer),
|
|
662
658
|
'short_voting_period_seconds' : IDL.Nat64,
|
|
663
|
-
'topic_followee_index' : IDL.Vec(IDL.Tuple(IDL.Int32, FollowersMap)),
|
|
664
|
-
'migrations' : IDL.Opt(Migrations),
|
|
665
659
|
'proposals' : IDL.Vec(IDL.Tuple(IDL.Nat64, ProposalData)),
|
|
666
660
|
'xdr_conversion_rate' : IDL.Opt(XdrConversionRate),
|
|
667
661
|
'in_flight_commands' : IDL.Vec(IDL.Tuple(IDL.Nat64, NeuronInFlightCommand)),
|
|
@@ -817,6 +811,7 @@ export const idlFactory = ({ IDL }) => {
|
|
|
817
811
|
'Spawn' : Spawn,
|
|
818
812
|
'Split' : Split,
|
|
819
813
|
'Follow' : Follow,
|
|
814
|
+
'DisburseMaturity' : DisburseMaturity,
|
|
820
815
|
'RefreshVotingPower' : RefreshVotingPower,
|
|
821
816
|
'ClaimOrRefresh' : ClaimOrRefresh,
|
|
822
817
|
'Configure' : Configure,
|
|
@@ -836,6 +831,9 @@ export const idlFactory = ({ IDL }) => {
|
|
|
836
831
|
})
|
|
837
832
|
);
|
|
838
833
|
const SpawnResponse = IDL.Record({ 'created_neuron_id' : IDL.Opt(NeuronId) });
|
|
834
|
+
const DisburseMaturityResponse = IDL.Record({
|
|
835
|
+
'amount_disbursed_e8s' : IDL.Opt(IDL.Nat64),
|
|
836
|
+
});
|
|
839
837
|
const RefreshVotingPowerResponse = IDL.Record({});
|
|
840
838
|
const ClaimOrRefreshResponse = IDL.Record({
|
|
841
839
|
'refreshed_neuron_id' : IDL.Opt(NeuronId),
|
|
@@ -864,6 +862,7 @@ export const idlFactory = ({ IDL }) => {
|
|
|
864
862
|
'Spawn' : SpawnResponse,
|
|
865
863
|
'Split' : SpawnResponse,
|
|
866
864
|
'Follow' : IDL.Record({}),
|
|
865
|
+
'DisburseMaturity' : DisburseMaturityResponse,
|
|
867
866
|
'RefreshVotingPower' : RefreshVotingPowerResponse,
|
|
868
867
|
'ClaimOrRefresh' : ClaimOrRefreshResponse,
|
|
869
868
|
'Configure' : IDL.Record({}),
|
|
@@ -1022,6 +1021,14 @@ export const init = ({ IDL }) => {
|
|
|
1022
1021
|
'topic' : IDL.Int32,
|
|
1023
1022
|
'followees' : IDL.Vec(NeuronId),
|
|
1024
1023
|
});
|
|
1024
|
+
const Account = IDL.Record({
|
|
1025
|
+
'owner' : IDL.Opt(IDL.Principal),
|
|
1026
|
+
'subaccount' : IDL.Opt(IDL.Vec(IDL.Nat8)),
|
|
1027
|
+
});
|
|
1028
|
+
const DisburseMaturity = IDL.Record({
|
|
1029
|
+
'to_account' : IDL.Opt(Account),
|
|
1030
|
+
'percentage_to_disburse' : IDL.Nat32,
|
|
1031
|
+
});
|
|
1025
1032
|
const RefreshVotingPower = IDL.Record({});
|
|
1026
1033
|
const ClaimOrRefreshNeuronFromAccount = IDL.Record({
|
|
1027
1034
|
'controller' : IDL.Opt(IDL.Principal),
|
|
@@ -1087,6 +1094,7 @@ export const init = ({ IDL }) => {
|
|
|
1087
1094
|
'Spawn' : Spawn,
|
|
1088
1095
|
'Split' : Split,
|
|
1089
1096
|
'Follow' : Follow,
|
|
1097
|
+
'DisburseMaturity' : DisburseMaturity,
|
|
1090
1098
|
'RefreshVotingPower' : RefreshVotingPower,
|
|
1091
1099
|
'ClaimOrRefresh' : ClaimOrRefresh,
|
|
1092
1100
|
'Configure' : Configure,
|
|
@@ -1279,6 +1287,7 @@ export const init = ({ IDL }) => {
|
|
|
1279
1287
|
});
|
|
1280
1288
|
const VotingPowerEconomics = IDL.Record({
|
|
1281
1289
|
'start_reducing_voting_power_after_seconds' : IDL.Opt(IDL.Nat64),
|
|
1290
|
+
'neuron_minimum_dissolve_delay_to_vote_seconds' : IDL.Opt(IDL.Nat64),
|
|
1282
1291
|
'clear_following_after_seconds' : IDL.Opt(IDL.Nat64),
|
|
1283
1292
|
});
|
|
1284
1293
|
const Decimal = IDL.Record({ 'human_readable' : IDL.Opt(IDL.Text) });
|
|
@@ -1477,20 +1486,6 @@ export const init = ({ IDL }) => {
|
|
|
1477
1486
|
'transfer_timestamp' : IDL.Nat64,
|
|
1478
1487
|
'block_height' : IDL.Nat64,
|
|
1479
1488
|
});
|
|
1480
|
-
const Followers = IDL.Record({ 'followers' : IDL.Vec(NeuronId) });
|
|
1481
|
-
const FollowersMap = IDL.Record({
|
|
1482
|
-
'followers_map' : IDL.Vec(IDL.Tuple(IDL.Nat64, Followers)),
|
|
1483
|
-
});
|
|
1484
|
-
const Progress = IDL.Variant({ 'LastNeuronId' : NeuronId });
|
|
1485
|
-
const Migration = IDL.Record({
|
|
1486
|
-
'status' : IDL.Opt(IDL.Int32),
|
|
1487
|
-
'failure_reason' : IDL.Opt(IDL.Text),
|
|
1488
|
-
'progress' : IDL.Opt(Progress),
|
|
1489
|
-
});
|
|
1490
|
-
const Migrations = IDL.Record({
|
|
1491
|
-
'neuron_indexes_migration' : IDL.Opt(Migration),
|
|
1492
|
-
'copy_inactive_neurons_to_stable_memory_migration' : IDL.Opt(Migration),
|
|
1493
|
-
});
|
|
1494
1489
|
const GovernanceError = IDL.Record({
|
|
1495
1490
|
'error_message' : IDL.Text,
|
|
1496
1491
|
'error_type' : IDL.Int32,
|
|
@@ -1660,8 +1655,6 @@ export const init = ({ IDL }) => {
|
|
|
1660
1655
|
'latest_reward_event' : IDL.Opt(RewardEvent),
|
|
1661
1656
|
'to_claim_transfers' : IDL.Vec(NeuronStakeTransfer),
|
|
1662
1657
|
'short_voting_period_seconds' : IDL.Nat64,
|
|
1663
|
-
'topic_followee_index' : IDL.Vec(IDL.Tuple(IDL.Int32, FollowersMap)),
|
|
1664
|
-
'migrations' : IDL.Opt(Migrations),
|
|
1665
1658
|
'proposals' : IDL.Vec(IDL.Tuple(IDL.Nat64, ProposalData)),
|
|
1666
1659
|
'xdr_conversion_rate' : IDL.Opt(XdrConversionRate),
|
|
1667
1660
|
'in_flight_commands' : IDL.Vec(IDL.Tuple(IDL.Nat64, NeuronInFlightCommand)),
|
|
@@ -2,6 +2,10 @@ import type { ActorMethod } from "@dfinity/agent";
|
|
|
2
2
|
import type { IDL } from "@dfinity/candid";
|
|
3
3
|
import type { Principal } from "@dfinity/principal";
|
|
4
4
|
|
|
5
|
+
export interface Account {
|
|
6
|
+
owner: [] | [Principal];
|
|
7
|
+
subaccount: [] | [Uint8Array | number[]];
|
|
8
|
+
}
|
|
5
9
|
export interface AccountIdentifier {
|
|
6
10
|
hash: Uint8Array | number[];
|
|
7
11
|
}
|
|
@@ -92,6 +96,7 @@ export type Command =
|
|
|
92
96
|
| { Spawn: Spawn }
|
|
93
97
|
| { Split: Split }
|
|
94
98
|
| { Follow: Follow }
|
|
99
|
+
| { DisburseMaturity: DisburseMaturity }
|
|
95
100
|
| { RefreshVotingPower: RefreshVotingPower }
|
|
96
101
|
| { ClaimOrRefresh: ClaimOrRefresh }
|
|
97
102
|
| { Configure: Configure }
|
|
@@ -107,6 +112,7 @@ export type Command_1 =
|
|
|
107
112
|
| { Spawn: SpawnResponse }
|
|
108
113
|
| { Split: SpawnResponse }
|
|
109
114
|
| { Follow: {} }
|
|
115
|
+
| { DisburseMaturity: DisburseMaturityResponse }
|
|
110
116
|
| { RefreshVotingPower: RefreshVotingPowerResponse }
|
|
111
117
|
| { ClaimOrRefresh: ClaimOrRefreshResponse }
|
|
112
118
|
| { Configure: {} }
|
|
@@ -175,6 +181,13 @@ export interface Disburse {
|
|
|
175
181
|
to_account: [] | [AccountIdentifier];
|
|
176
182
|
amount: [] | [Amount];
|
|
177
183
|
}
|
|
184
|
+
export interface DisburseMaturity {
|
|
185
|
+
to_account: [] | [Account];
|
|
186
|
+
percentage_to_disburse: number;
|
|
187
|
+
}
|
|
188
|
+
export interface DisburseMaturityResponse {
|
|
189
|
+
amount_disbursed_e8s: [] | [bigint];
|
|
190
|
+
}
|
|
178
191
|
export interface DisburseResponse {
|
|
179
192
|
transfer_block_height: bigint;
|
|
180
193
|
}
|
|
@@ -202,12 +215,6 @@ export interface Follow {
|
|
|
202
215
|
export interface Followees {
|
|
203
216
|
followees: Array<NeuronId>;
|
|
204
217
|
}
|
|
205
|
-
export interface Followers {
|
|
206
|
-
followers: Array<NeuronId>;
|
|
207
|
-
}
|
|
208
|
-
export interface FollowersMap {
|
|
209
|
-
followers_map: Array<[bigint, Followers]>;
|
|
210
|
-
}
|
|
211
218
|
export interface GetNeuronsFundAuditInfoRequest {
|
|
212
219
|
nns_proposal_id: [] | [ProposalId];
|
|
213
220
|
}
|
|
@@ -233,8 +240,6 @@ export interface Governance {
|
|
|
233
240
|
latest_reward_event: [] | [RewardEvent];
|
|
234
241
|
to_claim_transfers: Array<NeuronStakeTransfer>;
|
|
235
242
|
short_voting_period_seconds: bigint;
|
|
236
|
-
topic_followee_index: Array<[number, FollowersMap]>;
|
|
237
|
-
migrations: [] | [Migrations];
|
|
238
243
|
proposals: Array<[bigint, ProposalData]>;
|
|
239
244
|
xdr_conversion_rate: [] | [XdrConversionRate];
|
|
240
245
|
in_flight_commands: Array<[bigint, NeuronInFlightCommand]>;
|
|
@@ -410,6 +415,7 @@ export type ManageNeuronCommandRequest =
|
|
|
410
415
|
| { Spawn: Spawn }
|
|
411
416
|
| { Split: Split }
|
|
412
417
|
| { Follow: Follow }
|
|
418
|
+
| { DisburseMaturity: DisburseMaturity }
|
|
413
419
|
| { RefreshVotingPower: RefreshVotingPower }
|
|
414
420
|
| { ClaimOrRefresh: ClaimOrRefresh }
|
|
415
421
|
| { Configure: Configure }
|
|
@@ -444,15 +450,6 @@ export interface MergeResponse {
|
|
|
444
450
|
target_neuron_info: [] | [NeuronInfo];
|
|
445
451
|
source_neuron_info: [] | [NeuronInfo];
|
|
446
452
|
}
|
|
447
|
-
export interface Migration {
|
|
448
|
-
status: [] | [number];
|
|
449
|
-
failure_reason: [] | [string];
|
|
450
|
-
progress: [] | [Progress];
|
|
451
|
-
}
|
|
452
|
-
export interface Migrations {
|
|
453
|
-
neuron_indexes_migration: [] | [Migration];
|
|
454
|
-
copy_inactive_neurons_to_stable_memory_migration: [] | [Migration];
|
|
455
|
-
}
|
|
456
453
|
export interface MonthlyNodeProviderRewards {
|
|
457
454
|
minimum_xdr_permyriad_per_icp: [] | [bigint];
|
|
458
455
|
registry_version: [] | [bigint];
|
|
@@ -674,7 +671,6 @@ export interface Percentage {
|
|
|
674
671
|
export interface Principals {
|
|
675
672
|
principals: Array<Principal>;
|
|
676
673
|
}
|
|
677
|
-
export type Progress = { LastNeuronId: NeuronId };
|
|
678
674
|
export interface Proposal {
|
|
679
675
|
url: string;
|
|
680
676
|
title: [] | [string];
|
|
@@ -907,6 +903,7 @@ export interface UpdateNodeProvider {
|
|
|
907
903
|
}
|
|
908
904
|
export interface VotingPowerEconomics {
|
|
909
905
|
start_reducing_voting_power_after_seconds: [] | [bigint];
|
|
906
|
+
neuron_minimum_dissolve_delay_to_vote_seconds: [] | [bigint];
|
|
910
907
|
clear_following_after_seconds: [] | [bigint];
|
|
911
908
|
}
|
|
912
909
|
export interface VotingRewardParameters {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
// Generated from IC repo commit
|
|
1
|
+
// Generated from IC repo commit 148ccc9 (2025-04-04 tags: rosetta-icrc-release-1.2.0) 'rs/nns/governance/canister/governance_test.did' by import-candid
|
|
2
2
|
type AccountIdentifier = record {
|
|
3
3
|
hash : blob;
|
|
4
4
|
};
|
|
@@ -124,6 +124,20 @@ type RefreshVotingPowerResponse = record {
|
|
|
124
124
|
// minimal until we discover there is a "real need". YAGNI.
|
|
125
125
|
};
|
|
126
126
|
|
|
127
|
+
type DisburseMaturity = record {
|
|
128
|
+
percentage_to_disburse : nat32;
|
|
129
|
+
to_account : opt Account;
|
|
130
|
+
};
|
|
131
|
+
|
|
132
|
+
type Account = record {
|
|
133
|
+
owner: opt principal;
|
|
134
|
+
subaccount: opt blob;
|
|
135
|
+
};
|
|
136
|
+
|
|
137
|
+
type DisburseMaturityResponse = record {
|
|
138
|
+
amount_disbursed_e8s : opt nat64;
|
|
139
|
+
};
|
|
140
|
+
|
|
127
141
|
type Command = variant {
|
|
128
142
|
Spawn : Spawn;
|
|
129
143
|
Split : Split;
|
|
@@ -138,6 +152,7 @@ type Command = variant {
|
|
|
138
152
|
MergeMaturity : MergeMaturity;
|
|
139
153
|
Disburse : Disburse;
|
|
140
154
|
RefreshVotingPower : RefreshVotingPower;
|
|
155
|
+
DisburseMaturity : DisburseMaturity;
|
|
141
156
|
};
|
|
142
157
|
|
|
143
158
|
type Command_1 = variant {
|
|
@@ -155,6 +170,7 @@ type Command_1 = variant {
|
|
|
155
170
|
MergeMaturity : MergeMaturityResponse;
|
|
156
171
|
Disburse : DisburseResponse;
|
|
157
172
|
RefreshVotingPower : RefreshVotingPowerResponse;
|
|
173
|
+
DisburseMaturity : DisburseMaturityResponse;
|
|
158
174
|
};
|
|
159
175
|
|
|
160
176
|
type Command_2 = variant {
|
|
@@ -263,16 +279,6 @@ type Followees = record {
|
|
|
263
279
|
followees : vec NeuronId;
|
|
264
280
|
};
|
|
265
281
|
|
|
266
|
-
type Followers = record {
|
|
267
|
-
followers : vec NeuronId;
|
|
268
|
-
};
|
|
269
|
-
|
|
270
|
-
type FollowersMap = record {
|
|
271
|
-
followers_map : vec record {
|
|
272
|
-
nat64;
|
|
273
|
-
Followers;
|
|
274
|
-
} };
|
|
275
|
-
|
|
276
282
|
type GetNeuronsFundAuditInfoRequest = record {
|
|
277
283
|
nns_proposal_id : opt ProposalId;
|
|
278
284
|
};
|
|
@@ -301,8 +307,6 @@ type Governance = record {
|
|
|
301
307
|
latest_reward_event : opt RewardEvent;
|
|
302
308
|
to_claim_transfers : vec NeuronStakeTransfer;
|
|
303
309
|
short_voting_period_seconds : nat64;
|
|
304
|
-
topic_followee_index : vec record { int32; FollowersMap };
|
|
305
|
-
migrations : opt Migrations;
|
|
306
310
|
proposals : vec record { nat64; ProposalData };
|
|
307
311
|
xdr_conversion_rate : opt XdrConversionRate;
|
|
308
312
|
in_flight_commands : vec record { nat64; NeuronInFlightCommand };
|
|
@@ -518,6 +522,7 @@ type ManageNeuronCommandRequest = variant {
|
|
|
518
522
|
MergeMaturity : MergeMaturity;
|
|
519
523
|
Disburse : Disburse;
|
|
520
524
|
RefreshVotingPower : RefreshVotingPower;
|
|
525
|
+
DisburseMaturity : DisburseMaturity;
|
|
521
526
|
};
|
|
522
527
|
|
|
523
528
|
type ManageNeuronRequest = record {
|
|
@@ -550,16 +555,6 @@ type MergeResponse = record {
|
|
|
550
555
|
source_neuron_info : opt NeuronInfo;
|
|
551
556
|
};
|
|
552
557
|
|
|
553
|
-
type Migration = record {
|
|
554
|
-
status : opt int32;
|
|
555
|
-
failure_reason : opt text;
|
|
556
|
-
progress : opt Progress;
|
|
557
|
-
};
|
|
558
|
-
|
|
559
|
-
type Migrations = record {
|
|
560
|
-
neuron_indexes_migration : opt Migration;
|
|
561
|
-
copy_inactive_neurons_to_stable_memory_migration : opt Migration;
|
|
562
|
-
};
|
|
563
558
|
|
|
564
559
|
type MonthlyNodeProviderRewards = record {
|
|
565
560
|
minimum_xdr_permyriad_per_icp : opt nat64;
|
|
@@ -611,6 +606,14 @@ type VotingPowerEconomics = record {
|
|
|
611
606
|
//
|
|
612
607
|
// Initially, set to 1/12 years.
|
|
613
608
|
clear_following_after_seconds : opt nat64;
|
|
609
|
+
// The minimum dissolve delay a neuron must have in order to be eligible to vote.
|
|
610
|
+
//
|
|
611
|
+
// Neurons with a dissolve delay lower than this threshold will not have
|
|
612
|
+
// voting power, even if they are otherwise active.
|
|
613
|
+
//
|
|
614
|
+
// This value is an essential part of the staking mechanism, promoting
|
|
615
|
+
// long-term alignment with the network's governance.
|
|
616
|
+
neuron_minimum_dissolve_delay_to_vote_seconds : opt nat64;
|
|
614
617
|
};
|
|
615
618
|
|
|
616
619
|
type Neuron = record {
|
|
@@ -838,10 +841,6 @@ type Principals = record {
|
|
|
838
841
|
principals : vec principal;
|
|
839
842
|
};
|
|
840
843
|
|
|
841
|
-
type Progress = variant {
|
|
842
|
-
LastNeuronId : NeuronId;
|
|
843
|
-
};
|
|
844
|
-
|
|
845
844
|
type Proposal = record {
|
|
846
845
|
url : text;
|
|
847
846
|
title : opt text;
|