@dfinity/sns 2.0.0 → 2.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.
@@ -0,0 +1,2 @@
1
+ import{a as u}from"./chunk-4INNMFYU.js";import{assertPercentageNumber as dt,Canister as wt,createServices as bt,fromNullable as f,toNullable as z}from"@dfinity/utils";var Ke=({IDL:e})=>{let o=e.Record({validator_canister_id:e.Opt(e.Principal),target_canister_id:e.Opt(e.Principal),validator_method_name:e.Opt(e.Text),target_method_name:e.Opt(e.Text)}),t=e.Variant({NativeNervousSystemFunction:e.Record({}),GenericNervousSystemFunction:o}),s=e.Record({id:e.Nat64,name:e.Text,description:e.Opt(e.Text),function_type:e.Opt(t)}),i=e.Record({not_dissolving_neurons_e8s_buckets:e.Vec(e.Tuple(e.Nat64,e.Float64)),garbage_collectable_neurons_count:e.Nat64,neurons_with_invalid_stake_count:e.Nat64,not_dissolving_neurons_count_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),neurons_with_less_than_6_months_dissolve_delay_count:e.Nat64,dissolved_neurons_count:e.Nat64,total_staked_e8s:e.Nat64,total_supply_governance_tokens:e.Nat64,not_dissolving_neurons_count:e.Nat64,dissolved_neurons_e8s:e.Nat64,neurons_with_less_than_6_months_dissolve_delay_e8s:e.Nat64,dissolving_neurons_count_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),dissolving_neurons_count:e.Nat64,dissolving_neurons_e8s_buckets:e.Vec(e.Tuple(e.Nat64,e.Float64)),timestamp_seconds:e.Nat64}),a=e.Record({current_basis_points:e.Opt(e.Int32),updated_at_timestamp_seconds:e.Opt(e.Nat64)}),r=e.Record({id:e.Vec(e.Nat8)}),c=e.Record({followees:e.Vec(r)}),d=e.Record({followees:e.Vec(e.Tuple(e.Nat64,c))}),p=e.Record({permissions:e.Vec(e.Int32)}),j=e.Record({final_reward_rate_basis_points:e.Opt(e.Nat64),initial_reward_rate_basis_points:e.Opt(e.Nat64),reward_rate_transition_duration_seconds:e.Opt(e.Nat64),round_duration_seconds:e.Opt(e.Nat64)}),N=e.Record({default_followees:e.Opt(d),max_dissolve_delay_seconds:e.Opt(e.Nat64),max_dissolve_delay_bonus_percentage:e.Opt(e.Nat64),max_followees_per_function:e.Opt(e.Nat64),neuron_claimer_permissions:e.Opt(p),neuron_minimum_stake_e8s:e.Opt(e.Nat64),max_neuron_age_for_age_bonus:e.Opt(e.Nat64),initial_voting_period_seconds:e.Opt(e.Nat64),neuron_minimum_dissolve_delay_to_vote_seconds:e.Opt(e.Nat64),reject_cost_e8s:e.Opt(e.Nat64),max_proposals_to_keep_per_action:e.Opt(e.Nat32),wait_for_quiet_deadline_increase_seconds:e.Opt(e.Nat64),max_number_of_neurons:e.Opt(e.Nat64),transaction_fee_e8s:e.Opt(e.Nat64),max_number_of_proposals_with_ballots:e.Opt(e.Nat64),max_age_bonus_percentage:e.Opt(e.Nat64),neuron_grantable_permissions:e.Opt(p),voting_rewards_parameters:e.Opt(j),maturity_modulation_disabled:e.Opt(e.Bool),max_number_of_principals_per_neuron:e.Opt(e.Nat64)}),g=e.Record({archive_wasm_hash:e.Vec(e.Nat8),root_wasm_hash:e.Vec(e.Nat8),swap_wasm_hash:e.Vec(e.Nat8),ledger_wasm_hash:e.Vec(e.Nat8),governance_wasm_hash:e.Vec(e.Nat8),index_wasm_hash:e.Vec(e.Nat8)}),_=e.Record({id:e.Nat64}),P=e.Record({rounds_since_last_distribution:e.Opt(e.Nat64),actual_timestamp_seconds:e.Nat64,end_timestamp_seconds:e.Opt(e.Nat64),total_available_e8s_equivalent:e.Opt(e.Nat64),distributed_e8s_equivalent:e.Nat64,round:e.Nat64,settled_proposals:e.Vec(_)}),w=e.Record({mark_failed_at_seconds:e.Nat64,checking_upgrade_lock:e.Nat64,proposal_id:e.Nat64,target_version:e.Opt(g)}),l=e.Record({error_message:e.Text,error_type:e.Int32}),Q=e.Record({vote:e.Int32,cast_timestamp_seconds:e.Nat64,voting_power:e.Nat64}),b=e.Record({basis_points:e.Opt(e.Nat64)}),W=e.Record({no:e.Nat64,yes:e.Nat64,total:e.Nat64,timestamp_seconds:e.Nat64}),$=e.Record({canister_ids:e.Vec(e.Principal)}),V=e.Record({subaccount:e.Vec(e.Nat8)}),J=e.Record({from_treasury:e.Int32,to_principal:e.Opt(e.Principal),to_subaccount:e.Opt(V),memo:e.Opt(e.Nat64),amount_e8s:e.Nat64}),X=e.Record({new_canister_wasm:e.Vec(e.Nat8),mode:e.Opt(e.Int32),canister_id:e.Opt(e.Principal),canister_upgrade_arg:e.Opt(e.Vec(e.Nat8))}),H=e.Record({canister_ids:e.Vec(e.Principal),new_controllers:e.Vec(e.Principal)}),M=e.Record({url:e.Opt(e.Text),logo:e.Opt(e.Text),name:e.Opt(e.Text),description:e.Opt(e.Text)}),K=e.Record({function_id:e.Nat64,payload:e.Vec(e.Nat8)}),Y=e.Record({motion_text:e.Text}),Z=e.Variant({ManageNervousSystemParameters:N,AddGenericNervousSystemFunction:s,RemoveGenericNervousSystemFunction:e.Nat64,UpgradeSnsToNextVersion:e.Record({}),RegisterDappCanisters:$,TransferSnsTreasuryFunds:J,UpgradeSnsControlledCanister:X,DeregisterDappCanisters:H,Unspecified:e.Record({}),ManageSnsMetadata:M,ExecuteGenericNervousSystemFunction:K,Motion:Y}),R=e.Record({url:e.Text,title:e.Text,action:e.Opt(Z),summary:e.Text}),D=e.Record({current_deadline_timestamp_seconds:e.Nat64}),y=e.Record({id:e.Opt(_),payload_text_rendering:e.Opt(e.Text),action:e.Nat64,failure_reason:e.Opt(l),ballots:e.Vec(e.Tuple(e.Text,Q)),minimum_yes_proportion_of_total:e.Opt(b),reward_event_round:e.Nat64,failed_timestamp_seconds:e.Nat64,reward_event_end_timestamp_seconds:e.Opt(e.Nat64),proposal_creation_timestamp_seconds:e.Nat64,initial_voting_period_seconds:e.Nat64,reject_cost_e8s:e.Nat64,latest_tally:e.Opt(W),wait_for_quiet_deadline_increase_seconds:e.Nat64,decided_timestamp_seconds:e.Nat64,proposal:e.Opt(R),proposer:e.Opt(r),wait_for_quiet_state:e.Opt(D),minimum_yes_proportion_of_exercised:e.Opt(b),is_eligible_for_rewards:e.Bool,executed_timestamp_seconds:e.Nat64}),T=e.Record({memo:e.Nat64,amount_e8s:e.Nat64}),h=e.Record({function_id:e.Nat64,followees:e.Vec(r)}),m=e.Record({owner:e.Opt(e.Principal),subaccount:e.Opt(V)}),x=e.Record({to_account:e.Opt(m),percentage_to_disburse:e.Nat32}),I=e.Record({requested_setting_for_auto_stake_maturity:e.Bool}),L=e.Record({additional_dissolve_delay_seconds:e.Nat32}),ee=e.Record({dissolve_timestamp_seconds:e.Nat64}),te=e.Variant({ChangeAutoStakeMaturity:I,StopDissolving:e.Record({}),StartDissolving:e.Record({}),IncreaseDissolveDelay:L,SetDissolveTimestamp:ee}),F=e.Record({operation:e.Opt(te)}),C=e.Record({vote:e.Int32,proposal:e.Opt(_)}),se=e.Record({amount_to_be_disbursed_e8s:e.Nat64,to_account:e.Opt(m)}),oe=e.Record({controller:e.Opt(e.Principal),memo:e.Nat64}),ne=e.Variant({MemoAndController:oe,NeuronId:e.Record({})}),k=e.Record({by:e.Opt(ne)}),q=e.Record({permissions_to_remove:e.Opt(p),principal_id:e.Opt(e.Principal)}),G=e.Record({permissions_to_add:e.Opt(p),principal_id:e.Opt(e.Principal)}),A=e.Record({percentage_to_merge:e.Nat32}),re=e.Record({e8s:e.Nat64}),E=e.Record({to_account:e.Opt(m),amount:e.Opt(re)}),ae=e.Variant({Split:T,Follow:h,DisburseMaturity:x,Configure:F,RegisterVote:C,SyncCommand:e.Record({}),MakeProposal:R,FinalizeDisburseMaturity:se,ClaimOrRefreshNeuron:k,RemoveNeuronPermissions:q,AddNeuronPermissions:G,MergeMaturity:A,Disburse:E}),ie=e.Record({command:e.Opt(ae),timestamp:e.Nat64}),ce=e.Record({principal:e.Opt(e.Principal),permission_type:e.Vec(e.Int32)}),_e=e.Variant({DissolveDelaySeconds:e.Nat64,WhenDissolvedTimestampSeconds:e.Nat64}),ue=e.Record({timestamp_of_disbursement_seconds:e.Nat64,amount_e8s:e.Nat64,account_to_disburse_to:e.Opt(m)}),O=e.Record({id:e.Opt(r),staked_maturity_e8s_equivalent:e.Opt(e.Nat64),permissions:e.Vec(ce),maturity_e8s_equivalent:e.Nat64,cached_neuron_stake_e8s:e.Nat64,created_timestamp_seconds:e.Nat64,source_nns_neuron_id:e.Opt(e.Nat64),auto_stake_maturity:e.Opt(e.Bool),aging_since_timestamp_seconds:e.Nat64,dissolve_state:e.Opt(_e),voting_power_percentage_multiplier:e.Nat64,vesting_period_seconds:e.Opt(e.Nat64),disburse_maturity_in_progress:e.Vec(ue),followees:e.Vec(e.Tuple(e.Nat64,c)),neuron_fees_e8s:e.Nat64}),lt=e.Record({root_canister_id:e.Opt(e.Principal),id_to_nervous_system_functions:e.Vec(e.Tuple(e.Nat64,s)),metrics:e.Opt(i),maturity_modulation:e.Opt(a),mode:e.Int32,parameters:e.Opt(N),is_finalizing_disburse_maturity:e.Opt(e.Bool),deployed_version:e.Opt(g),sns_initialization_parameters:e.Text,latest_reward_event:e.Opt(P),pending_version:e.Opt(w),swap_canister_id:e.Opt(e.Principal),ledger_canister_id:e.Opt(e.Principal),proposals:e.Vec(e.Tuple(e.Nat64,y)),in_flight_commands:e.Vec(e.Tuple(e.Text,ie)),sns_metadata:e.Opt(M),neurons:e.Vec(e.Tuple(e.Text,O)),genesis_timestamp_seconds:e.Nat64}),de=e.Record({controller:e.Opt(e.Principal),dissolve_delay_seconds:e.Opt(e.Nat64),source_nns_neuron_id:e.Opt(e.Nat64),stake_e8s:e.Opt(e.Nat64),followees:e.Vec(r),hotkey:e.Opt(e.Principal),neuron_id:e.Opt(r)}),pe=e.Record({neuron_parameters:e.Vec(de)}),le=e.Record({id:e.Opt(r),status:e.Int32}),me=e.Record({swap_neurons:e.Vec(le)}),Ne=e.Variant({Ok:me,Err:e.Int32}),ge=e.Record({claim_swap_neurons_result:e.Opt(Ne)}),Re=e.Record({maturity_modulation:e.Opt(a)}),ye=e.Record({url:e.Opt(e.Text),logo:e.Opt(e.Text),name:e.Opt(e.Text),description:e.Opt(e.Text)}),Oe=e.Record({mode:e.Opt(e.Int32)}),ve=e.Record({neuron_id:e.Opt(r)}),Se=e.Variant({Error:l,Neuron:O}),fe=e.Record({result:e.Opt(Se)}),U=e.Record({proposal_id:e.Opt(_)}),Pe=e.Variant({Error:l,Proposal:y}),we=e.Record({result:e.Opt(Pe)}),be=e.Variant({stopped:e.Null,stopping:e.Null,running:e.Null}),Ve=e.Record({freezing_threshold:e.Nat,controllers:e.Vec(e.Principal),memory_allocation:e.Nat,compute_allocation:e.Nat}),Me=e.Record({status:be,memory_size:e.Nat,cycles:e.Nat,settings:Ve,idle_cycles_burned_per_day:e.Nat,module_hash:e.Opt(e.Vec(e.Nat8))}),Te=e.Record({deployed_version:e.Opt(g),pending_version:e.Opt(w)}),he=e.Record({sns_initialization_parameters:e.Text}),xe=e.Record({reserved_ids:e.Vec(e.Nat64),functions:e.Vec(s)}),Fe=e.Record({of_principal:e.Opt(e.Principal),limit:e.Nat32,start_page_at:e.Opt(r)}),Ce=e.Record({neurons:e.Vec(O)}),ke=e.Record({include_reward_status:e.Vec(e.Int32),before_proposal:e.Opt(_),limit:e.Nat32,exclude_type:e.Vec(e.Nat64),include_status:e.Vec(e.Int32)}),qe=e.Record({proposals:e.Vec(y)}),Ge=e.Record({percentage_to_stake:e.Opt(e.Nat32)}),Ae=e.Variant({Split:T,Follow:h,DisburseMaturity:x,ClaimOrRefresh:k,Configure:F,RegisterVote:C,MakeProposal:R,StakeMaturity:Ge,RemoveNeuronPermissions:q,AddNeuronPermissions:G,MergeMaturity:A,Disburse:E}),Ee=e.Record({subaccount:e.Vec(e.Nat8),command:e.Opt(Ae)}),Ue=e.Record({created_neuron_id:e.Opt(r)}),Be=e.Record({amount_disbursed_e8s:e.Nat64,amount_deducted_e8s:e.Opt(e.Nat64)}),ze=e.Record({refreshed_neuron_id:e.Opt(r)}),je=e.Record({maturity_e8s:e.Nat64,staked_maturity_e8s:e.Nat64}),Qe=e.Record({merged_maturity_e8s:e.Nat64,new_stake_e8s:e.Nat64}),We=e.Record({transfer_block_height:e.Nat64}),$e=e.Variant({Error:l,Split:Ue,Follow:e.Record({}),DisburseMaturity:Be,ClaimOrRefresh:ze,Configure:e.Record({}),RegisterVote:e.Record({}),MakeProposal:U,RemoveNeuronPermission:e.Record({}),StakeMaturity:je,MergeMaturity:Qe,Disburse:We,AddNeuronPermission:e.Record({})}),Je=e.Record({command:e.Opt($e)}),Xe=e.Record({mode:e.Int32});return e.Service({claim_swap_neurons:e.Func([pe],[ge],[]),fail_stuck_upgrade_in_progress:e.Func([e.Record({})],[e.Record({})],[]),get_build_metadata:e.Func([],[e.Text],[]),get_latest_reward_event:e.Func([],[P],[]),get_maturity_modulation:e.Func([e.Record({})],[Re],[]),get_metadata:e.Func([e.Record({})],[ye],[]),get_mode:e.Func([e.Record({})],[Oe],[]),get_nervous_system_parameters:e.Func([e.Null],[N],[]),get_neuron:e.Func([ve],[fe],[]),get_proposal:e.Func([U],[we],[]),get_root_canister_status:e.Func([e.Null],[Me],[]),get_running_sns_version:e.Func([e.Record({})],[Te],[]),get_sns_initialization_parameters:e.Func([e.Record({})],[he],[]),list_nervous_system_functions:e.Func([],[xe],[]),list_neurons:e.Func([Fe],[Ce],[]),list_proposals:e.Func([ke],[qe],[]),manage_neuron:e.Func([Ee],[Je],[]),set_mode:e.Func([Xe],[e.Record({})],[])})};var Ye=({IDL:e})=>{let o=e.Record({validator_canister_id:e.Opt(e.Principal),target_canister_id:e.Opt(e.Principal),validator_method_name:e.Opt(e.Text),target_method_name:e.Opt(e.Text)}),t=e.Variant({NativeNervousSystemFunction:e.Record({}),GenericNervousSystemFunction:o}),s=e.Record({id:e.Nat64,name:e.Text,description:e.Opt(e.Text),function_type:e.Opt(t)}),i=e.Record({not_dissolving_neurons_e8s_buckets:e.Vec(e.Tuple(e.Nat64,e.Float64)),garbage_collectable_neurons_count:e.Nat64,neurons_with_invalid_stake_count:e.Nat64,not_dissolving_neurons_count_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),neurons_with_less_than_6_months_dissolve_delay_count:e.Nat64,dissolved_neurons_count:e.Nat64,total_staked_e8s:e.Nat64,total_supply_governance_tokens:e.Nat64,not_dissolving_neurons_count:e.Nat64,dissolved_neurons_e8s:e.Nat64,neurons_with_less_than_6_months_dissolve_delay_e8s:e.Nat64,dissolving_neurons_count_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),dissolving_neurons_count:e.Nat64,dissolving_neurons_e8s_buckets:e.Vec(e.Tuple(e.Nat64,e.Float64)),timestamp_seconds:e.Nat64}),a=e.Record({current_basis_points:e.Opt(e.Int32),updated_at_timestamp_seconds:e.Opt(e.Nat64)}),r=e.Record({id:e.Vec(e.Nat8)}),c=e.Record({followees:e.Vec(r)}),d=e.Record({followees:e.Vec(e.Tuple(e.Nat64,c))}),p=e.Record({permissions:e.Vec(e.Int32)}),j=e.Record({final_reward_rate_basis_points:e.Opt(e.Nat64),initial_reward_rate_basis_points:e.Opt(e.Nat64),reward_rate_transition_duration_seconds:e.Opt(e.Nat64),round_duration_seconds:e.Opt(e.Nat64)}),N=e.Record({default_followees:e.Opt(d),max_dissolve_delay_seconds:e.Opt(e.Nat64),max_dissolve_delay_bonus_percentage:e.Opt(e.Nat64),max_followees_per_function:e.Opt(e.Nat64),neuron_claimer_permissions:e.Opt(p),neuron_minimum_stake_e8s:e.Opt(e.Nat64),max_neuron_age_for_age_bonus:e.Opt(e.Nat64),initial_voting_period_seconds:e.Opt(e.Nat64),neuron_minimum_dissolve_delay_to_vote_seconds:e.Opt(e.Nat64),reject_cost_e8s:e.Opt(e.Nat64),max_proposals_to_keep_per_action:e.Opt(e.Nat32),wait_for_quiet_deadline_increase_seconds:e.Opt(e.Nat64),max_number_of_neurons:e.Opt(e.Nat64),transaction_fee_e8s:e.Opt(e.Nat64),max_number_of_proposals_with_ballots:e.Opt(e.Nat64),max_age_bonus_percentage:e.Opt(e.Nat64),neuron_grantable_permissions:e.Opt(p),voting_rewards_parameters:e.Opt(j),maturity_modulation_disabled:e.Opt(e.Bool),max_number_of_principals_per_neuron:e.Opt(e.Nat64)}),g=e.Record({archive_wasm_hash:e.Vec(e.Nat8),root_wasm_hash:e.Vec(e.Nat8),swap_wasm_hash:e.Vec(e.Nat8),ledger_wasm_hash:e.Vec(e.Nat8),governance_wasm_hash:e.Vec(e.Nat8),index_wasm_hash:e.Vec(e.Nat8)}),_=e.Record({id:e.Nat64}),P=e.Record({rounds_since_last_distribution:e.Opt(e.Nat64),actual_timestamp_seconds:e.Nat64,end_timestamp_seconds:e.Opt(e.Nat64),total_available_e8s_equivalent:e.Opt(e.Nat64),distributed_e8s_equivalent:e.Nat64,round:e.Nat64,settled_proposals:e.Vec(_)}),w=e.Record({mark_failed_at_seconds:e.Nat64,checking_upgrade_lock:e.Nat64,proposal_id:e.Nat64,target_version:e.Opt(g)}),l=e.Record({error_message:e.Text,error_type:e.Int32}),Q=e.Record({vote:e.Int32,cast_timestamp_seconds:e.Nat64,voting_power:e.Nat64}),b=e.Record({basis_points:e.Opt(e.Nat64)}),W=e.Record({no:e.Nat64,yes:e.Nat64,total:e.Nat64,timestamp_seconds:e.Nat64}),$=e.Record({canister_ids:e.Vec(e.Principal)}),V=e.Record({subaccount:e.Vec(e.Nat8)}),J=e.Record({from_treasury:e.Int32,to_principal:e.Opt(e.Principal),to_subaccount:e.Opt(V),memo:e.Opt(e.Nat64),amount_e8s:e.Nat64}),X=e.Record({new_canister_wasm:e.Vec(e.Nat8),mode:e.Opt(e.Int32),canister_id:e.Opt(e.Principal),canister_upgrade_arg:e.Opt(e.Vec(e.Nat8))}),H=e.Record({canister_ids:e.Vec(e.Principal),new_controllers:e.Vec(e.Principal)}),M=e.Record({url:e.Opt(e.Text),logo:e.Opt(e.Text),name:e.Opt(e.Text),description:e.Opt(e.Text)}),K=e.Record({function_id:e.Nat64,payload:e.Vec(e.Nat8)}),Y=e.Record({motion_text:e.Text}),Z=e.Variant({ManageNervousSystemParameters:N,AddGenericNervousSystemFunction:s,RemoveGenericNervousSystemFunction:e.Nat64,UpgradeSnsToNextVersion:e.Record({}),RegisterDappCanisters:$,TransferSnsTreasuryFunds:J,UpgradeSnsControlledCanister:X,DeregisterDappCanisters:H,Unspecified:e.Record({}),ManageSnsMetadata:M,ExecuteGenericNervousSystemFunction:K,Motion:Y}),R=e.Record({url:e.Text,title:e.Text,action:e.Opt(Z),summary:e.Text}),D=e.Record({current_deadline_timestamp_seconds:e.Nat64}),y=e.Record({id:e.Opt(_),payload_text_rendering:e.Opt(e.Text),action:e.Nat64,failure_reason:e.Opt(l),ballots:e.Vec(e.Tuple(e.Text,Q)),minimum_yes_proportion_of_total:e.Opt(b),reward_event_round:e.Nat64,failed_timestamp_seconds:e.Nat64,reward_event_end_timestamp_seconds:e.Opt(e.Nat64),proposal_creation_timestamp_seconds:e.Nat64,initial_voting_period_seconds:e.Nat64,reject_cost_e8s:e.Nat64,latest_tally:e.Opt(W),wait_for_quiet_deadline_increase_seconds:e.Nat64,decided_timestamp_seconds:e.Nat64,proposal:e.Opt(R),proposer:e.Opt(r),wait_for_quiet_state:e.Opt(D),minimum_yes_proportion_of_exercised:e.Opt(b),is_eligible_for_rewards:e.Bool,executed_timestamp_seconds:e.Nat64}),T=e.Record({memo:e.Nat64,amount_e8s:e.Nat64}),h=e.Record({function_id:e.Nat64,followees:e.Vec(r)}),m=e.Record({owner:e.Opt(e.Principal),subaccount:e.Opt(V)}),x=e.Record({to_account:e.Opt(m),percentage_to_disburse:e.Nat32}),I=e.Record({requested_setting_for_auto_stake_maturity:e.Bool}),L=e.Record({additional_dissolve_delay_seconds:e.Nat32}),ee=e.Record({dissolve_timestamp_seconds:e.Nat64}),te=e.Variant({ChangeAutoStakeMaturity:I,StopDissolving:e.Record({}),StartDissolving:e.Record({}),IncreaseDissolveDelay:L,SetDissolveTimestamp:ee}),F=e.Record({operation:e.Opt(te)}),C=e.Record({vote:e.Int32,proposal:e.Opt(_)}),se=e.Record({amount_to_be_disbursed_e8s:e.Nat64,to_account:e.Opt(m)}),oe=e.Record({controller:e.Opt(e.Principal),memo:e.Nat64}),ne=e.Variant({MemoAndController:oe,NeuronId:e.Record({})}),k=e.Record({by:e.Opt(ne)}),q=e.Record({permissions_to_remove:e.Opt(p),principal_id:e.Opt(e.Principal)}),G=e.Record({permissions_to_add:e.Opt(p),principal_id:e.Opt(e.Principal)}),A=e.Record({percentage_to_merge:e.Nat32}),re=e.Record({e8s:e.Nat64}),E=e.Record({to_account:e.Opt(m),amount:e.Opt(re)}),ae=e.Variant({Split:T,Follow:h,DisburseMaturity:x,Configure:F,RegisterVote:C,SyncCommand:e.Record({}),MakeProposal:R,FinalizeDisburseMaturity:se,ClaimOrRefreshNeuron:k,RemoveNeuronPermissions:q,AddNeuronPermissions:G,MergeMaturity:A,Disburse:E}),ie=e.Record({command:e.Opt(ae),timestamp:e.Nat64}),ce=e.Record({principal:e.Opt(e.Principal),permission_type:e.Vec(e.Int32)}),_e=e.Variant({DissolveDelaySeconds:e.Nat64,WhenDissolvedTimestampSeconds:e.Nat64}),ue=e.Record({timestamp_of_disbursement_seconds:e.Nat64,amount_e8s:e.Nat64,account_to_disburse_to:e.Opt(m)}),O=e.Record({id:e.Opt(r),staked_maturity_e8s_equivalent:e.Opt(e.Nat64),permissions:e.Vec(ce),maturity_e8s_equivalent:e.Nat64,cached_neuron_stake_e8s:e.Nat64,created_timestamp_seconds:e.Nat64,source_nns_neuron_id:e.Opt(e.Nat64),auto_stake_maturity:e.Opt(e.Bool),aging_since_timestamp_seconds:e.Nat64,dissolve_state:e.Opt(_e),voting_power_percentage_multiplier:e.Nat64,vesting_period_seconds:e.Opt(e.Nat64),disburse_maturity_in_progress:e.Vec(ue),followees:e.Vec(e.Tuple(e.Nat64,c)),neuron_fees_e8s:e.Nat64}),lt=e.Record({root_canister_id:e.Opt(e.Principal),id_to_nervous_system_functions:e.Vec(e.Tuple(e.Nat64,s)),metrics:e.Opt(i),maturity_modulation:e.Opt(a),mode:e.Int32,parameters:e.Opt(N),is_finalizing_disburse_maturity:e.Opt(e.Bool),deployed_version:e.Opt(g),sns_initialization_parameters:e.Text,latest_reward_event:e.Opt(P),pending_version:e.Opt(w),swap_canister_id:e.Opt(e.Principal),ledger_canister_id:e.Opt(e.Principal),proposals:e.Vec(e.Tuple(e.Nat64,y)),in_flight_commands:e.Vec(e.Tuple(e.Text,ie)),sns_metadata:e.Opt(M),neurons:e.Vec(e.Tuple(e.Text,O)),genesis_timestamp_seconds:e.Nat64}),de=e.Record({controller:e.Opt(e.Principal),dissolve_delay_seconds:e.Opt(e.Nat64),source_nns_neuron_id:e.Opt(e.Nat64),stake_e8s:e.Opt(e.Nat64),followees:e.Vec(r),hotkey:e.Opt(e.Principal),neuron_id:e.Opt(r)}),pe=e.Record({neuron_parameters:e.Vec(de)}),le=e.Record({id:e.Opt(r),status:e.Int32}),me=e.Record({swap_neurons:e.Vec(le)}),Ne=e.Variant({Ok:me,Err:e.Int32}),ge=e.Record({claim_swap_neurons_result:e.Opt(Ne)}),Re=e.Record({maturity_modulation:e.Opt(a)}),ye=e.Record({url:e.Opt(e.Text),logo:e.Opt(e.Text),name:e.Opt(e.Text),description:e.Opt(e.Text)}),Oe=e.Record({mode:e.Opt(e.Int32)}),ve=e.Record({neuron_id:e.Opt(r)}),Se=e.Variant({Error:l,Neuron:O}),fe=e.Record({result:e.Opt(Se)}),U=e.Record({proposal_id:e.Opt(_)}),Pe=e.Variant({Error:l,Proposal:y}),we=e.Record({result:e.Opt(Pe)}),be=e.Variant({stopped:e.Null,stopping:e.Null,running:e.Null}),Ve=e.Record({freezing_threshold:e.Nat,controllers:e.Vec(e.Principal),memory_allocation:e.Nat,compute_allocation:e.Nat}),Me=e.Record({status:be,memory_size:e.Nat,cycles:e.Nat,settings:Ve,idle_cycles_burned_per_day:e.Nat,module_hash:e.Opt(e.Vec(e.Nat8))}),Te=e.Record({deployed_version:e.Opt(g),pending_version:e.Opt(w)}),he=e.Record({sns_initialization_parameters:e.Text}),xe=e.Record({reserved_ids:e.Vec(e.Nat64),functions:e.Vec(s)}),Fe=e.Record({of_principal:e.Opt(e.Principal),limit:e.Nat32,start_page_at:e.Opt(r)}),Ce=e.Record({neurons:e.Vec(O)}),ke=e.Record({include_reward_status:e.Vec(e.Int32),before_proposal:e.Opt(_),limit:e.Nat32,exclude_type:e.Vec(e.Nat64),include_status:e.Vec(e.Int32)}),qe=e.Record({proposals:e.Vec(y)}),Ge=e.Record({percentage_to_stake:e.Opt(e.Nat32)}),Ae=e.Variant({Split:T,Follow:h,DisburseMaturity:x,ClaimOrRefresh:k,Configure:F,RegisterVote:C,MakeProposal:R,StakeMaturity:Ge,RemoveNeuronPermissions:q,AddNeuronPermissions:G,MergeMaturity:A,Disburse:E}),Ee=e.Record({subaccount:e.Vec(e.Nat8),command:e.Opt(Ae)}),Ue=e.Record({created_neuron_id:e.Opt(r)}),Be=e.Record({amount_disbursed_e8s:e.Nat64,amount_deducted_e8s:e.Opt(e.Nat64)}),ze=e.Record({refreshed_neuron_id:e.Opt(r)}),je=e.Record({maturity_e8s:e.Nat64,staked_maturity_e8s:e.Nat64}),Qe=e.Record({merged_maturity_e8s:e.Nat64,new_stake_e8s:e.Nat64}),We=e.Record({transfer_block_height:e.Nat64}),$e=e.Variant({Error:l,Split:Ue,Follow:e.Record({}),DisburseMaturity:Be,ClaimOrRefresh:ze,Configure:e.Record({}),RegisterVote:e.Record({}),MakeProposal:U,RemoveNeuronPermission:e.Record({}),StakeMaturity:je,MergeMaturity:Qe,Disburse:We,AddNeuronPermission:e.Record({})}),Je=e.Record({command:e.Opt($e)}),Xe=e.Record({mode:e.Int32});return e.Service({claim_swap_neurons:e.Func([pe],[ge],[]),fail_stuck_upgrade_in_progress:e.Func([e.Record({})],[e.Record({})],[]),get_build_metadata:e.Func([],[e.Text],["query"]),get_latest_reward_event:e.Func([],[P],["query"]),get_maturity_modulation:e.Func([e.Record({})],[Re],[]),get_metadata:e.Func([e.Record({})],[ye],["query"]),get_mode:e.Func([e.Record({})],[Oe],["query"]),get_nervous_system_parameters:e.Func([e.Null],[N],["query"]),get_neuron:e.Func([ve],[fe],["query"]),get_proposal:e.Func([U],[we],["query"]),get_root_canister_status:e.Func([e.Null],[Me],[]),get_running_sns_version:e.Func([e.Record({})],[Te],["query"]),get_sns_initialization_parameters:e.Func([e.Record({})],[he],["query"]),list_nervous_system_functions:e.Func([],[xe],["query"]),list_neurons:e.Func([Fe],[Ce],["query"]),list_proposals:e.Func([ke],[qe],["query"]),manage_neuron:e.Func([Ee],[Je],[]),set_mode:e.Func([Xe],[e.Record({})],[])})};import{fromNullable as n,toNullable as v}from"@dfinity/utils";var S=({neuronId:{id:e},command:o})=>({subaccount:e,command:[o]}),B=({neuronId:e,operation:o})=>S({neuronId:e,command:{Configure:{operation:[o]}}}),Ze=({owner:e,subaccount:o})=>({owner:v(e),subaccount:o===void 0?[]:v({subaccount:o})}),De=({neuronId:e,permissions:o,principal:t})=>S({neuronId:e,command:{AddNeuronPermissions:{permissions_to_add:[{permissions:Int32Array.from(o)}],principal_id:[t]}}}),Ie=({neuronId:e,permissions:o,principal:t})=>S({neuronId:e,command:{RemoveNeuronPermissions:{permissions_to_remove:[{permissions:Int32Array.from(o)}],principal_id:[t]}}}),Le=({neuronId:e,memo:o,amount:t})=>S({neuronId:e,command:{Split:{memo:o,amount_e8s:t}}}),et=({neuronId:e,amount:o,toAccount:t})=>S({neuronId:e,command:{Disburse:{to_account:t===void 0?[]:v(Ze(t)),amount:o===void 0?[]:[{e8s:o}]}}}),tt=e=>B({neuronId:e,operation:{StartDissolving:{}}}),st=e=>B({neuronId:e,operation:{StopDissolving:{}}}),ot=({neuronId:e,percentageToStake:o})=>S({neuronId:e,command:{StakeMaturity:{percentage_to_stake:v(o)}}}),nt=({neuronId:e,percentageToDisburse:o,toAccount:t})=>S({neuronId:e,command:{DisburseMaturity:{to_account:t===void 0?[]:v(Ze(t)),percentage_to_disburse:o}}}),rt=({neuronId:e,autoStake:o})=>B({neuronId:e,operation:{ChangeAutoStakeMaturity:{requested_setting_for_auto_stake_maturity:o}}}),at=({neuronId:e,dissolveTimestampSeconds:o})=>B({neuronId:e,operation:{SetDissolveTimestamp:{dissolve_timestamp_seconds:o}}}),it=({neuronId:e,additionalDissolveDelaySeconds:o})=>B({neuronId:e,operation:{IncreaseDissolveDelay:{additional_dissolve_delay_seconds:o}}}),ct=({neuronId:e,functionId:o,followees:t})=>({subaccount:e.id,command:[{Follow:{function_id:o,followees:t}}]}),_t=({neuronId:e,proposalId:o,vote:t})=>({subaccount:e.id,command:[{RegisterVote:{vote:t,proposal:[o]}}]}),He=({subaccount:e,memo:o,controller:t})=>({subaccount:e,command:[{ClaimOrRefresh:{by:[o===void 0?{NeuronId:{}}:{MemoAndController:{memo:o,controller:v(t)}}]}}]}),ut=({excludeType:e,beforeProposal:o,includeRewardStatus:t,includeStatus:s,limit:i})=>({exclude_type:BigUint64Array.from(e??[]),before_proposal:v(o),include_reward_status:Int32Array.from(t??[]),include_status:Int32Array.from(s??[]),limit:i??10}),xt=e=>{if("ManageNervousSystemParameters"in e)return{ManageNervousSystemParameters:ft(e.ManageNervousSystemParameters)};if("AddGenericNervousSystemFunction"in e)return{AddGenericNervousSystemFunction:vt(e.AddGenericNervousSystemFunction)};if("RemoveGenericNervousSystemFunction"in e)return{RemoveGenericNervousSystemFunction:e.RemoveGenericNervousSystemFunction};if("UpgradeSnsToNextVersion"in e)return{UpgradeSnsToNextVersion:e.UpgradeSnsToNextVersion};if("RegisterDappCanisters"in e)return{RegisterDappCanisters:e.RegisterDappCanisters};if("TransferSnsTreasuryFunds"in e)return{TransferSnsTreasuryFunds:Rt(e.TransferSnsTreasuryFunds)};if("UpgradeSnsControlledCanister"in e)return{UpgradeSnsControlledCanister:gt(e.UpgradeSnsControlledCanister)};if("DeregisterDappCanisters"in e)return{DeregisterDappCanisters:e.DeregisterDappCanisters};if("Unspecified"in e)return{Unspecified:e.Unspecified};if("ManageSnsMetadata"in e)return{ManageSnsMetadata:Nt(e.ManageSnsMetadata)};if("ExecuteGenericNervousSystemFunction"in e)return{ExecuteGenericNervousSystemFunction:e.ExecuteGenericNervousSystemFunction};if("Motion"in e)return{Motion:e.Motion};throw new Error(`Unknown action type ${JSON.stringify(e)}`)},Nt=e=>({url:n(e.url),logo:n(e.logo),name:n(e.name),description:n(e.description)}),gt=e=>({new_canister_wasm:e.new_canister_wasm,canister_id:n(e.canister_id),canister_upgrade_arg:n(e.canister_upgrade_arg),mode:n(e.mode)}),Rt=e=>({from_treasury:e.from_treasury,to_principal:n(e.to_principal),to_subaccount:n(e.to_subaccount),memo:n(e.memo),amount_e8s:e.amount_e8s}),yt=e=>({validator_canister_id:n(e.validator_canister_id),target_canister_id:n(e.target_canister_id),validator_method_name:n(e.validator_method_name),target_method_name:n(e.target_method_name)}),Ot=e=>{if(e!==void 0){if("NativeNervousSystemFunction"in e)return{NativeNervousSystemFunction:e.NativeNervousSystemFunction};if("GenericNervousSystemFunction"in e)return{GenericNervousSystemFunction:yt(e.GenericNervousSystemFunction)};throw new Error(`Unknown FunctionType ${JSON.stringify(e)}`)}},vt=e=>({id:e.id,name:e.name,description:n(e.description),function_type:Ot(n(e.function_type))}),St=e=>e&&{final_reward_rate_basis_points:n(e.final_reward_rate_basis_points),initial_reward_rate_basis_points:n(e.initial_reward_rate_basis_points),reward_rate_transition_duration_seconds:n(e.reward_rate_transition_duration_seconds),round_duration_seconds:n(e.round_duration_seconds)},ft=e=>({default_followees:n(e.default_followees),max_dissolve_delay_seconds:n(e.max_dissolve_delay_seconds),max_dissolve_delay_bonus_percentage:n(e.max_dissolve_delay_bonus_percentage),max_followees_per_function:n(e.max_followees_per_function),neuron_claimer_permissions:n(e.neuron_claimer_permissions),neuron_minimum_stake_e8s:n(e.neuron_minimum_stake_e8s),max_neuron_age_for_age_bonus:n(e.max_neuron_age_for_age_bonus),initial_voting_period_seconds:n(e.initial_voting_period_seconds),neuron_minimum_dissolve_delay_to_vote_seconds:n(e.neuron_minimum_dissolve_delay_to_vote_seconds),reject_cost_e8s:n(e.reject_cost_e8s),max_proposals_to_keep_per_action:n(e.max_proposals_to_keep_per_action),wait_for_quiet_deadline_increase_seconds:n(e.wait_for_quiet_deadline_increase_seconds),max_number_of_neurons:n(e.max_number_of_neurons),transaction_fee_e8s:n(e.transaction_fee_e8s),max_number_of_proposals_with_ballots:n(e.max_number_of_proposals_with_ballots),max_age_bonus_percentage:n(e.max_age_bonus_percentage),neuron_grantable_permissions:n(e.neuron_grantable_permissions),voting_rewards_parameters:St(n(e.voting_rewards_parameters)),max_number_of_principals_per_neuron:n(e.max_number_of_principals_per_neuron)});var pt=class e extends wt{constructor(){super(...arguments);this.listNeurons=async t=>{let{principal:s,limit:i,beforeNeuronId:a}=t,{neurons:r}=await this.caller(t).list_neurons({of_principal:z(s),limit:i??100,start_page_at:z(a)});return r};this.listProposals=async t=>{let{certified:s}=t,{proposals:i}=await this.caller({certified:s}).list_proposals(ut(t));return i};this.getProposal=async t=>{let{proposalId:s}=t,{result:i}=await this.caller(t).get_proposal({proposal_id:z(s)}),a=f(i);if(a===void 0||"Error"in a)throw new u(a?.Error.error_message??"Response type not supported");return a.Proposal};this.listNervousSystemFunctions=async t=>this.caller(t).list_nervous_system_functions();this.metadata=t=>this.caller(t).get_metadata({});this.nervousSystemParameters=t=>this.caller(t).get_nervous_system_parameters(null);this.getNeuron=async t=>{let{neuronId:s}=t,{result:i}=await this.caller(t).get_neuron({neuron_id:z(s)}),a=f(i);if(a===void 0||"Error"in a)throw new u(a?.Error.error_message??"Response type not supported");return a.Neuron};this.queryNeuron=async t=>{try{return await this.getNeuron(t)}catch(s){if(s instanceof Error&&s.message.includes("No neuron for given NeuronId"))return;throw s}};this.manageNeuron=async t=>{let s=await this.caller({certified:!0}).manage_neuron(t);return this.assertManageNeuronError(s),s};this.addNeuronPermissions=async t=>{let s=De(t);await this.manageNeuron(s)};this.removeNeuronPermissions=async t=>{let s=Ie(t);await this.manageNeuron(s)};this.splitNeuron=async t=>{let s=Le(t),{command:i}=await this.manageNeuron(s),a=f(i),r=c=>`Split neuron failed (${c})`;if(a===void 0)throw new u(r("no response"));if("Split"in a){let c=a.Split,d=f(c.created_neuron_id);if(d!==void 0)return d;throw new u(r("no id"))}throw new u(r("unknown"))};this.disburse=async t=>{let s=et(t);await this.manageNeuron(s)};this.startDissolving=async t=>{let s=tt(t);await this.manageNeuron(s)};this.stopDissolving=async t=>{let s=st(t);await this.manageNeuron(s)};this.stakeMaturity=async({neuronId:t,percentageToStake:s})=>{dt(s??100);let i=ot({neuronId:t,percentageToStake:s});await this.manageNeuron(i)};this.disburseMaturity=async t=>{dt(t.percentageToDisburse);let s=nt(t);await this.manageNeuron(s)};this.autoStakeMaturity=async t=>{let s=rt(t);await this.manageNeuron(s)};this.setDissolveTimestamp=async t=>{let s=at(t);await this.manageNeuron(s)};this.increaseDissolveDelay=async t=>{let s=it(t);await this.manageNeuron(s)};this.setTopicFollowees=async t=>{let s=ct(t);await this.manageNeuron(s)};this.registerVote=async t=>{let s=_t(t);await this.manageNeuron(s)};this.refreshNeuron=async t=>{let s=He({subaccount:t.id});await this.manageNeuron(s)};this.claimNeuron=async({memo:t,controller:s,subaccount:i})=>{let a=He({subaccount:i,memo:t,controller:s}),{command:r}=await this.manageNeuron(a),c=f(r);if(c===void 0)throw new u("Claim neuron failed");if("ClaimOrRefresh"in c){let d=f(c.ClaimOrRefresh.refreshed_neuron_id);if(d===void 0)throw new u("Claim neuron failed");return d}throw new u("Claim neuron failed")};this.assertManageNeuronError=({command:t})=>{let s=t[0];if(s!==void 0&&"Error"in s)throw new u(s.Error.error_message)}}static create(t){let{service:s,certifiedService:i,canisterId:a}=bt({options:t,idlFactory:Ye,certifiedIdlFactory:Ke});return new e(a,s,i)}};export{xt as a,pt as b};
2
+ //# sourceMappingURL=chunk-ONZVK7WV.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/governance.canister.ts", "../../candid/sns_governance.certified.idl.js", "../../candid/sns_governance.idl.js", "../../src/converters/governance.converters.ts"],
4
+ "sourcesContent": ["import type { Principal } from \"@dfinity/principal\";\nimport type { QueryParams } from \"@dfinity/utils\";\nimport {\n assertPercentageNumber,\n Canister,\n createServices,\n fromNullable,\n toNullable,\n} from \"@dfinity/utils\";\nimport type {\n GetMetadataResponse,\n ListNervousSystemFunctionsResponse,\n ManageNeuron,\n ManageNeuronResponse,\n NervousSystemParameters,\n Neuron,\n NeuronId,\n ProposalData,\n _SERVICE as SnsGovernanceService,\n SplitResponse,\n} from \"../candid/sns_governance\";\nimport { idlFactory as certifiedIdlFactory } from \"../candid/sns_governance.certified.idl\";\nimport { idlFactory } from \"../candid/sns_governance.idl\";\nimport { MAX_LIST_NEURONS_RESULTS } from \"./constants/governance.constants\";\nimport {\n toAddPermissionsRequest,\n toAutoStakeMaturityNeuronRequest,\n toClaimOrRefreshRequest,\n toDisburseMaturityRequest,\n toDisburseNeuronRequest,\n toFollowRequest,\n toIncreaseDissolveDelayRequest,\n toListProposalRequest,\n toRegisterVoteRequest,\n toRemovePermissionsRequest,\n toSetDissolveTimestampRequest,\n toSplitNeuronRequest,\n toStakeMaturityRequest,\n toStartDissolvingNeuronRequest,\n toStopDissolvingNeuronRequest,\n} from \"./converters/governance.converters\";\nimport { SnsGovernanceError } from \"./errors/governance.errors\";\nimport type { SnsCanisterOptions } from \"./types/canister.options\";\nimport type {\n SnsClaimNeuronParams,\n SnsDisburseNeuronParams,\n SnsGetNeuronParams,\n SnsGetProposalParams,\n SnsIncreaseDissolveDelayParams,\n SnsListNeuronsParams,\n SnsListProposalsParams,\n SnsNeuronAutoStakeMaturityParams,\n SnsNeuronDisburseMaturityParams,\n SnsNeuronPermissionsParams,\n SnsNeuronStakeMaturityParams,\n SnsRegisterVoteParams,\n SnsSetDissolveTimestampParams,\n SnsSetTopicFollowees,\n SnsSplitNeuronParams,\n} from \"./types/governance.params\";\n\nexport class SnsGovernanceCanister extends Canister<SnsGovernanceService> {\n /**\n * Instantiate a canister to interact with the governance of a Sns project.\n *\n * @param {SnsCanisterOptions} options Miscellaneous options to initialize the canister. Its ID being the only mandatory parammeter.\n */\n static create(options: SnsCanisterOptions<SnsGovernanceService>) {\n const { service, certifiedService, canisterId } =\n createServices<SnsGovernanceService>({\n options,\n idlFactory,\n certifiedIdlFactory,\n });\n\n return new SnsGovernanceCanister(canisterId, service, certifiedService);\n }\n\n /**\n * List the neurons of the Sns\n */\n listNeurons = async (params: SnsListNeuronsParams): Promise<Neuron[]> => {\n const { principal, limit, beforeNeuronId } = params;\n\n const { neurons } = await this.caller(params).list_neurons({\n of_principal: toNullable<Principal>(principal),\n limit: limit ?? MAX_LIST_NEURONS_RESULTS,\n start_page_at: toNullable<NeuronId>(beforeNeuronId),\n });\n return neurons;\n };\n\n /**\n * List the proposals of the Sns\n */\n listProposals = async (\n params: SnsListProposalsParams,\n ): Promise<ProposalData[]> => {\n const { certified } = params;\n\n const { proposals } = await this.caller({ certified }).list_proposals(\n toListProposalRequest(params),\n );\n return proposals;\n };\n\n /**\n * Get the proposal of the Sns\n */\n getProposal = async (params: SnsGetProposalParams): Promise<ProposalData> => {\n const { proposalId } = params;\n\n const { result } = await this.caller(params).get_proposal({\n proposal_id: toNullable(proposalId),\n });\n const data = fromNullable(result);\n if (data === undefined || \"Error\" in data) {\n throw new SnsGovernanceError(\n data?.Error.error_message ?? \"Response type not supported\",\n );\n }\n return data.Proposal;\n };\n\n /**\n * List Nervous System Functions\n * Neurons can follow other neurons in specific Nervous System Functions.\n */\n listNervousSystemFunctions = async (\n params: QueryParams,\n ): Promise<ListNervousSystemFunctionsResponse> =>\n this.caller(params).list_nervous_system_functions();\n\n /**\n * Get the Sns metadata (title, description, etc.)\n */\n metadata = (params: QueryParams): Promise<GetMetadataResponse> =>\n this.caller(params).get_metadata({});\n\n /**\n * Get the Sns nervous system parameters (default followees, max dissolve delay, max number of neurons, etc.)\n */\n nervousSystemParameters = (\n params: QueryParams,\n ): Promise<NervousSystemParameters> =>\n this.caller(params).get_nervous_system_parameters(null);\n\n /**\n * Get the neuron of the Sns\n */\n getNeuron = async (params: SnsGetNeuronParams): Promise<Neuron> => {\n const { neuronId } = params;\n\n const { result } = await this.caller(params).get_neuron({\n neuron_id: toNullable(neuronId),\n });\n const data = fromNullable(result);\n if (data === undefined || \"Error\" in data) {\n throw new SnsGovernanceError(\n data?.Error.error_message ?? \"Response type not supported\",\n );\n }\n return data.Neuron;\n };\n\n /**\n * Same as `getNeuron` but returns undefined instead of raising error when not found.\n */\n queryNeuron = async (\n params: SnsGetNeuronParams,\n ): Promise<Neuron | undefined> => {\n try {\n return await this.getNeuron(params);\n } catch (error: unknown) {\n // Source: https://github.com/dfinity/ic/blob/master/rs/sns/governance/src/governance.rs#L914\n if (\n error instanceof Error &&\n error.message.includes(\"No neuron for given NeuronId\")\n ) {\n return undefined;\n }\n throw error;\n }\n };\n\n /**\n * Manage neuron. For advanced users.\n */\n manageNeuron = async (\n request: ManageNeuron,\n ): Promise<ManageNeuronResponse> => {\n const response = await this.caller({ certified: true }).manage_neuron(\n request,\n );\n this.assertManageNeuronError(response);\n return response;\n };\n\n /**\n * Add permissions to a neuron for a specific principal\n */\n addNeuronPermissions = async (\n params: SnsNeuronPermissionsParams,\n ): Promise<void> => {\n const request: ManageNeuron = toAddPermissionsRequest(params);\n await this.manageNeuron(request);\n };\n\n /**\n * Remove permissions to a neuron for a specific principal\n */\n removeNeuronPermissions = async (\n params: SnsNeuronPermissionsParams,\n ): Promise<void> => {\n const request: ManageNeuron = toRemovePermissionsRequest(params);\n await this.manageNeuron(request);\n };\n\n /**\n * Split neuron\n */\n public splitNeuron = async (\n params: SnsSplitNeuronParams,\n ): Promise<NeuronId | undefined> => {\n const request: ManageNeuron = toSplitNeuronRequest(params);\n const { command } = await this.manageNeuron(request);\n const response = fromNullable(command);\n const errorMessage = (details: string) =>\n `Split neuron failed (${details})`;\n\n // Validate response\n if (response === undefined) {\n throw new SnsGovernanceError(errorMessage(\"no response\"));\n }\n\n if (\"Split\" in response) {\n const split = response.Split as SplitResponse;\n const neuronId = fromNullable(split.created_neuron_id) as NeuronId;\n\n if (neuronId !== undefined) {\n return neuronId;\n }\n\n throw new SnsGovernanceError(errorMessage(\"no id\"));\n }\n\n throw new SnsGovernanceError(errorMessage(\"unknown\"));\n };\n\n /**\n * Disburse neuron on Account\n */\n disburse = async (params: SnsDisburseNeuronParams): Promise<void> => {\n const request: ManageNeuron = toDisburseNeuronRequest(params);\n await this.manageNeuron(request);\n };\n\n /**\n * Start dissolving process of a neuron\n */\n startDissolving = async (neuronId: NeuronId): Promise<void> => {\n const request: ManageNeuron = toStartDissolvingNeuronRequest(neuronId);\n await this.manageNeuron(request);\n };\n\n /**\n * Stop dissolving process of a neuron\n */\n stopDissolving = async (neuronId: NeuronId): Promise<void> => {\n const request: ManageNeuron = toStopDissolvingNeuronRequest(neuronId);\n await this.manageNeuron(request);\n };\n\n /**\n * Stake the maturity of a neuron.\n *\n * @param {neuronId: NeuronId; percentageToStake: number;} params\n * @param {NeuronId} neuronId The id of the neuron for which to stake the maturity\n * @param {number} percentageToStake Optional. Percentage of the current maturity to stake. If not provided, all of the neuron's current maturity will be staked.\n */\n stakeMaturity = async ({\n neuronId,\n percentageToStake,\n }: SnsNeuronStakeMaturityParams): Promise<void> => {\n assertPercentageNumber(percentageToStake ?? 100);\n\n const request: ManageNeuron = toStakeMaturityRequest({\n neuronId,\n percentageToStake,\n });\n await this.manageNeuron(request);\n };\n\n /**\n * Disburse the maturity of a neuron.\n *\n * @param {neuronId: NeuronId; toAccount?: IcrcAccount; percentageToDisburse: number; } params\n * @param {IcrcAccount} toAccount. Account to disburse maturity.\n * @param {NeuronId} neuronId The id of the neuron for which to disburse the maturity\n * @param {number} percentageToDisburse What percentage of the available maturity to disburse.\n */\n disburseMaturity = async (\n params: SnsNeuronDisburseMaturityParams,\n ): Promise<void> => {\n assertPercentageNumber(params.percentageToDisburse);\n\n const request: ManageNeuron = toDisburseMaturityRequest(params);\n await this.manageNeuron(request);\n };\n\n /**\n * Changes auto-stake maturity for a Neuron.\n *\n * @param {neuronId: NeuronId; autoStake: boolean;} params\n * @param {NeuronId} neuronId The id of the neuron for which to request a change of the auto stake feature\n * @param {number} autoStake `true` to enable the auto-stake maturity for this neuron, `false` to turn it off\n */\n autoStakeMaturity = async (\n params: SnsNeuronAutoStakeMaturityParams,\n ): Promise<void> => {\n const request: ManageNeuron = toAutoStakeMaturityNeuronRequest(params);\n await this.manageNeuron(request);\n };\n\n /**\n * Increase dissolve delay of a neuron\n */\n setDissolveTimestamp = async (\n params: SnsSetDissolveTimestampParams,\n ): Promise<void> => {\n const request: ManageNeuron = toSetDissolveTimestampRequest(params);\n await this.manageNeuron(request);\n };\n\n /**\n * Increase dissolve delay of a neuron\n */\n increaseDissolveDelay = async (\n params: SnsIncreaseDissolveDelayParams,\n ): Promise<void> => {\n const request: ManageNeuron = toIncreaseDissolveDelayRequest(params);\n await this.manageNeuron(request);\n };\n\n /**\n * Sets followees of a neuron for a specific Nervous System Function (topic)\n */\n setTopicFollowees = async (params: SnsSetTopicFollowees): Promise<void> => {\n const request: ManageNeuron = toFollowRequest(params);\n await this.manageNeuron(request);\n };\n\n /**\n * Registers vote for a proposal from the neuron passed.\n */\n registerVote = async (params: SnsRegisterVoteParams): Promise<void> => {\n const request: ManageNeuron = toRegisterVoteRequest(params);\n await this.manageNeuron(request);\n };\n\n /**\n * Refresh neuron\n */\n refreshNeuron = async (neuronId: NeuronId): Promise<void> => {\n const request: ManageNeuron = toClaimOrRefreshRequest({\n subaccount: neuronId.id,\n });\n await this.manageNeuron(request);\n };\n\n /**\n * Claim neuron\n */\n claimNeuron = async ({\n memo,\n controller,\n subaccount,\n }: SnsClaimNeuronParams): Promise<NeuronId> => {\n const request: ManageNeuron = toClaimOrRefreshRequest({\n subaccount,\n memo,\n controller,\n });\n const { command } = await this.manageNeuron(request);\n const response = fromNullable(command);\n // Edge case. This should not happen\n if (response === undefined) {\n throw new SnsGovernanceError(\"Claim neuron failed\");\n }\n if (\"ClaimOrRefresh\" in response) {\n const neuronId = fromNullable(\n response.ClaimOrRefresh.refreshed_neuron_id,\n );\n // This might happen.\n if (neuronId === undefined) {\n throw new SnsGovernanceError(\"Claim neuron failed\");\n }\n return neuronId;\n }\n // Edge case. manage_neuron for ClaimOrRefresh returns only ClaimOrRefresh response.\n throw new SnsGovernanceError(\"Claim neuron failed\");\n };\n\n /**\n *\n * @param response ManageNeuronResponse\n * @throws SnsGovernanceError\n */\n private assertManageNeuronError = ({\n command,\n }: ManageNeuronResponse): void => {\n // TODO: use upcoming fromDefinedNullable\n const firstCommand = command[0];\n if (firstCommand !== undefined && \"Error\" in firstCommand) {\n throw new SnsGovernanceError(firstCommand.Error.error_message);\n }\n };\n}\n", "/* Do not edit. Compiled with ./scripts/compile-idl-js from packages/sns/candid/sns_governance.did */\nexport const idlFactory = ({ IDL }) => {\n const GenericNervousSystemFunction = IDL.Record({\n 'validator_canister_id' : IDL.Opt(IDL.Principal),\n 'target_canister_id' : IDL.Opt(IDL.Principal),\n 'validator_method_name' : IDL.Opt(IDL.Text),\n 'target_method_name' : IDL.Opt(IDL.Text),\n });\n const FunctionType = IDL.Variant({\n 'NativeNervousSystemFunction' : IDL.Record({}),\n 'GenericNervousSystemFunction' : GenericNervousSystemFunction,\n });\n const NervousSystemFunction = IDL.Record({\n 'id' : IDL.Nat64,\n 'name' : IDL.Text,\n 'description' : IDL.Opt(IDL.Text),\n 'function_type' : IDL.Opt(FunctionType),\n });\n const GovernanceCachedMetrics = IDL.Record({\n 'not_dissolving_neurons_e8s_buckets' : IDL.Vec(\n IDL.Tuple(IDL.Nat64, IDL.Float64)\n ),\n 'garbage_collectable_neurons_count' : IDL.Nat64,\n 'neurons_with_invalid_stake_count' : IDL.Nat64,\n 'not_dissolving_neurons_count_buckets' : IDL.Vec(\n IDL.Tuple(IDL.Nat64, IDL.Nat64)\n ),\n 'neurons_with_less_than_6_months_dissolve_delay_count' : IDL.Nat64,\n 'dissolved_neurons_count' : IDL.Nat64,\n 'total_staked_e8s' : IDL.Nat64,\n 'total_supply_governance_tokens' : IDL.Nat64,\n 'not_dissolving_neurons_count' : IDL.Nat64,\n 'dissolved_neurons_e8s' : IDL.Nat64,\n 'neurons_with_less_than_6_months_dissolve_delay_e8s' : IDL.Nat64,\n 'dissolving_neurons_count_buckets' : IDL.Vec(\n IDL.Tuple(IDL.Nat64, IDL.Nat64)\n ),\n 'dissolving_neurons_count' : IDL.Nat64,\n 'dissolving_neurons_e8s_buckets' : IDL.Vec(\n IDL.Tuple(IDL.Nat64, IDL.Float64)\n ),\n 'timestamp_seconds' : IDL.Nat64,\n });\n const MaturityModulation = IDL.Record({\n 'current_basis_points' : IDL.Opt(IDL.Int32),\n 'updated_at_timestamp_seconds' : IDL.Opt(IDL.Nat64),\n });\n const NeuronId = IDL.Record({ 'id' : IDL.Vec(IDL.Nat8) });\n const Followees = IDL.Record({ 'followees' : IDL.Vec(NeuronId) });\n const DefaultFollowees = IDL.Record({\n 'followees' : IDL.Vec(IDL.Tuple(IDL.Nat64, Followees)),\n });\n const NeuronPermissionList = IDL.Record({\n 'permissions' : IDL.Vec(IDL.Int32),\n });\n const VotingRewardsParameters = IDL.Record({\n 'final_reward_rate_basis_points' : IDL.Opt(IDL.Nat64),\n 'initial_reward_rate_basis_points' : IDL.Opt(IDL.Nat64),\n 'reward_rate_transition_duration_seconds' : IDL.Opt(IDL.Nat64),\n 'round_duration_seconds' : IDL.Opt(IDL.Nat64),\n });\n const NervousSystemParameters = IDL.Record({\n 'default_followees' : IDL.Opt(DefaultFollowees),\n 'max_dissolve_delay_seconds' : IDL.Opt(IDL.Nat64),\n 'max_dissolve_delay_bonus_percentage' : IDL.Opt(IDL.Nat64),\n 'max_followees_per_function' : IDL.Opt(IDL.Nat64),\n 'neuron_claimer_permissions' : IDL.Opt(NeuronPermissionList),\n 'neuron_minimum_stake_e8s' : IDL.Opt(IDL.Nat64),\n 'max_neuron_age_for_age_bonus' : IDL.Opt(IDL.Nat64),\n 'initial_voting_period_seconds' : IDL.Opt(IDL.Nat64),\n 'neuron_minimum_dissolve_delay_to_vote_seconds' : IDL.Opt(IDL.Nat64),\n 'reject_cost_e8s' : IDL.Opt(IDL.Nat64),\n 'max_proposals_to_keep_per_action' : IDL.Opt(IDL.Nat32),\n 'wait_for_quiet_deadline_increase_seconds' : IDL.Opt(IDL.Nat64),\n 'max_number_of_neurons' : IDL.Opt(IDL.Nat64),\n 'transaction_fee_e8s' : IDL.Opt(IDL.Nat64),\n 'max_number_of_proposals_with_ballots' : IDL.Opt(IDL.Nat64),\n 'max_age_bonus_percentage' : IDL.Opt(IDL.Nat64),\n 'neuron_grantable_permissions' : IDL.Opt(NeuronPermissionList),\n 'voting_rewards_parameters' : IDL.Opt(VotingRewardsParameters),\n 'maturity_modulation_disabled' : IDL.Opt(IDL.Bool),\n 'max_number_of_principals_per_neuron' : IDL.Opt(IDL.Nat64),\n });\n const Version = IDL.Record({\n 'archive_wasm_hash' : IDL.Vec(IDL.Nat8),\n 'root_wasm_hash' : IDL.Vec(IDL.Nat8),\n 'swap_wasm_hash' : IDL.Vec(IDL.Nat8),\n 'ledger_wasm_hash' : IDL.Vec(IDL.Nat8),\n 'governance_wasm_hash' : IDL.Vec(IDL.Nat8),\n 'index_wasm_hash' : IDL.Vec(IDL.Nat8),\n });\n const ProposalId = IDL.Record({ 'id' : IDL.Nat64 });\n const RewardEvent = IDL.Record({\n 'rounds_since_last_distribution' : IDL.Opt(IDL.Nat64),\n 'actual_timestamp_seconds' : IDL.Nat64,\n 'end_timestamp_seconds' : IDL.Opt(IDL.Nat64),\n 'total_available_e8s_equivalent' : IDL.Opt(IDL.Nat64),\n 'distributed_e8s_equivalent' : IDL.Nat64,\n 'round' : IDL.Nat64,\n 'settled_proposals' : IDL.Vec(ProposalId),\n });\n const UpgradeInProgress = IDL.Record({\n 'mark_failed_at_seconds' : IDL.Nat64,\n 'checking_upgrade_lock' : IDL.Nat64,\n 'proposal_id' : IDL.Nat64,\n 'target_version' : IDL.Opt(Version),\n });\n const GovernanceError = IDL.Record({\n 'error_message' : IDL.Text,\n 'error_type' : IDL.Int32,\n });\n const Ballot = IDL.Record({\n 'vote' : IDL.Int32,\n 'cast_timestamp_seconds' : IDL.Nat64,\n 'voting_power' : IDL.Nat64,\n });\n const Percentage = IDL.Record({ 'basis_points' : IDL.Opt(IDL.Nat64) });\n const Tally = IDL.Record({\n 'no' : IDL.Nat64,\n 'yes' : IDL.Nat64,\n 'total' : IDL.Nat64,\n 'timestamp_seconds' : IDL.Nat64,\n });\n const RegisterDappCanisters = IDL.Record({\n 'canister_ids' : IDL.Vec(IDL.Principal),\n });\n const Subaccount = IDL.Record({ 'subaccount' : IDL.Vec(IDL.Nat8) });\n const TransferSnsTreasuryFunds = IDL.Record({\n 'from_treasury' : IDL.Int32,\n 'to_principal' : IDL.Opt(IDL.Principal),\n 'to_subaccount' : IDL.Opt(Subaccount),\n 'memo' : IDL.Opt(IDL.Nat64),\n 'amount_e8s' : IDL.Nat64,\n });\n const UpgradeSnsControlledCanister = IDL.Record({\n 'new_canister_wasm' : IDL.Vec(IDL.Nat8),\n 'mode' : IDL.Opt(IDL.Int32),\n 'canister_id' : IDL.Opt(IDL.Principal),\n 'canister_upgrade_arg' : IDL.Opt(IDL.Vec(IDL.Nat8)),\n });\n const DeregisterDappCanisters = IDL.Record({\n 'canister_ids' : IDL.Vec(IDL.Principal),\n 'new_controllers' : IDL.Vec(IDL.Principal),\n });\n const ManageSnsMetadata = IDL.Record({\n 'url' : IDL.Opt(IDL.Text),\n 'logo' : IDL.Opt(IDL.Text),\n 'name' : IDL.Opt(IDL.Text),\n 'description' : IDL.Opt(IDL.Text),\n });\n const ExecuteGenericNervousSystemFunction = IDL.Record({\n 'function_id' : IDL.Nat64,\n 'payload' : IDL.Vec(IDL.Nat8),\n });\n const Motion = IDL.Record({ 'motion_text' : IDL.Text });\n const Action = IDL.Variant({\n 'ManageNervousSystemParameters' : NervousSystemParameters,\n 'AddGenericNervousSystemFunction' : NervousSystemFunction,\n 'RemoveGenericNervousSystemFunction' : IDL.Nat64,\n 'UpgradeSnsToNextVersion' : IDL.Record({}),\n 'RegisterDappCanisters' : RegisterDappCanisters,\n 'TransferSnsTreasuryFunds' : TransferSnsTreasuryFunds,\n 'UpgradeSnsControlledCanister' : UpgradeSnsControlledCanister,\n 'DeregisterDappCanisters' : DeregisterDappCanisters,\n 'Unspecified' : IDL.Record({}),\n 'ManageSnsMetadata' : ManageSnsMetadata,\n 'ExecuteGenericNervousSystemFunction' : ExecuteGenericNervousSystemFunction,\n 'Motion' : Motion,\n });\n const Proposal = IDL.Record({\n 'url' : IDL.Text,\n 'title' : IDL.Text,\n 'action' : IDL.Opt(Action),\n 'summary' : IDL.Text,\n });\n const WaitForQuietState = IDL.Record({\n 'current_deadline_timestamp_seconds' : IDL.Nat64,\n });\n const ProposalData = IDL.Record({\n 'id' : IDL.Opt(ProposalId),\n 'payload_text_rendering' : IDL.Opt(IDL.Text),\n 'action' : IDL.Nat64,\n 'failure_reason' : IDL.Opt(GovernanceError),\n 'ballots' : IDL.Vec(IDL.Tuple(IDL.Text, Ballot)),\n 'minimum_yes_proportion_of_total' : IDL.Opt(Percentage),\n 'reward_event_round' : IDL.Nat64,\n 'failed_timestamp_seconds' : IDL.Nat64,\n 'reward_event_end_timestamp_seconds' : IDL.Opt(IDL.Nat64),\n 'proposal_creation_timestamp_seconds' : IDL.Nat64,\n 'initial_voting_period_seconds' : IDL.Nat64,\n 'reject_cost_e8s' : IDL.Nat64,\n 'latest_tally' : IDL.Opt(Tally),\n 'wait_for_quiet_deadline_increase_seconds' : IDL.Nat64,\n 'decided_timestamp_seconds' : IDL.Nat64,\n 'proposal' : IDL.Opt(Proposal),\n 'proposer' : IDL.Opt(NeuronId),\n 'wait_for_quiet_state' : IDL.Opt(WaitForQuietState),\n 'minimum_yes_proportion_of_exercised' : IDL.Opt(Percentage),\n 'is_eligible_for_rewards' : IDL.Bool,\n 'executed_timestamp_seconds' : IDL.Nat64,\n });\n const Split = IDL.Record({ 'memo' : IDL.Nat64, 'amount_e8s' : IDL.Nat64 });\n const Follow = IDL.Record({\n 'function_id' : IDL.Nat64,\n 'followees' : IDL.Vec(NeuronId),\n });\n const Account = IDL.Record({\n 'owner' : IDL.Opt(IDL.Principal),\n 'subaccount' : IDL.Opt(Subaccount),\n });\n const DisburseMaturity = IDL.Record({\n 'to_account' : IDL.Opt(Account),\n 'percentage_to_disburse' : IDL.Nat32,\n });\n const ChangeAutoStakeMaturity = IDL.Record({\n 'requested_setting_for_auto_stake_maturity' : IDL.Bool,\n });\n const IncreaseDissolveDelay = IDL.Record({\n 'additional_dissolve_delay_seconds' : IDL.Nat32,\n });\n const SetDissolveTimestamp = IDL.Record({\n 'dissolve_timestamp_seconds' : IDL.Nat64,\n });\n const Operation = IDL.Variant({\n 'ChangeAutoStakeMaturity' : ChangeAutoStakeMaturity,\n 'StopDissolving' : IDL.Record({}),\n 'StartDissolving' : IDL.Record({}),\n 'IncreaseDissolveDelay' : IncreaseDissolveDelay,\n 'SetDissolveTimestamp' : SetDissolveTimestamp,\n });\n const Configure = IDL.Record({ 'operation' : IDL.Opt(Operation) });\n const RegisterVote = IDL.Record({\n 'vote' : IDL.Int32,\n 'proposal' : IDL.Opt(ProposalId),\n });\n const FinalizeDisburseMaturity = IDL.Record({\n 'amount_to_be_disbursed_e8s' : IDL.Nat64,\n 'to_account' : IDL.Opt(Account),\n });\n const MemoAndController = IDL.Record({\n 'controller' : IDL.Opt(IDL.Principal),\n 'memo' : IDL.Nat64,\n });\n const By = IDL.Variant({\n 'MemoAndController' : MemoAndController,\n 'NeuronId' : IDL.Record({}),\n });\n const ClaimOrRefresh = IDL.Record({ 'by' : IDL.Opt(By) });\n const RemoveNeuronPermissions = IDL.Record({\n 'permissions_to_remove' : IDL.Opt(NeuronPermissionList),\n 'principal_id' : IDL.Opt(IDL.Principal),\n });\n const AddNeuronPermissions = IDL.Record({\n 'permissions_to_add' : IDL.Opt(NeuronPermissionList),\n 'principal_id' : IDL.Opt(IDL.Principal),\n });\n const MergeMaturity = IDL.Record({ 'percentage_to_merge' : IDL.Nat32 });\n const Amount = IDL.Record({ 'e8s' : IDL.Nat64 });\n const Disburse = IDL.Record({\n 'to_account' : IDL.Opt(Account),\n 'amount' : IDL.Opt(Amount),\n });\n const Command_2 = IDL.Variant({\n 'Split' : Split,\n 'Follow' : Follow,\n 'DisburseMaturity' : DisburseMaturity,\n 'Configure' : Configure,\n 'RegisterVote' : RegisterVote,\n 'SyncCommand' : IDL.Record({}),\n 'MakeProposal' : Proposal,\n 'FinalizeDisburseMaturity' : FinalizeDisburseMaturity,\n 'ClaimOrRefreshNeuron' : ClaimOrRefresh,\n 'RemoveNeuronPermissions' : RemoveNeuronPermissions,\n 'AddNeuronPermissions' : AddNeuronPermissions,\n 'MergeMaturity' : MergeMaturity,\n 'Disburse' : Disburse,\n });\n const NeuronInFlightCommand = IDL.Record({\n 'command' : IDL.Opt(Command_2),\n 'timestamp' : IDL.Nat64,\n });\n const NeuronPermission = IDL.Record({\n 'principal' : IDL.Opt(IDL.Principal),\n 'permission_type' : IDL.Vec(IDL.Int32),\n });\n const DissolveState = IDL.Variant({\n 'DissolveDelaySeconds' : IDL.Nat64,\n 'WhenDissolvedTimestampSeconds' : IDL.Nat64,\n });\n const DisburseMaturityInProgress = IDL.Record({\n 'timestamp_of_disbursement_seconds' : IDL.Nat64,\n 'amount_e8s' : IDL.Nat64,\n 'account_to_disburse_to' : IDL.Opt(Account),\n });\n const Neuron = IDL.Record({\n 'id' : IDL.Opt(NeuronId),\n 'staked_maturity_e8s_equivalent' : IDL.Opt(IDL.Nat64),\n 'permissions' : IDL.Vec(NeuronPermission),\n 'maturity_e8s_equivalent' : IDL.Nat64,\n 'cached_neuron_stake_e8s' : IDL.Nat64,\n 'created_timestamp_seconds' : IDL.Nat64,\n 'source_nns_neuron_id' : IDL.Opt(IDL.Nat64),\n 'auto_stake_maturity' : IDL.Opt(IDL.Bool),\n 'aging_since_timestamp_seconds' : IDL.Nat64,\n 'dissolve_state' : IDL.Opt(DissolveState),\n 'voting_power_percentage_multiplier' : IDL.Nat64,\n 'vesting_period_seconds' : IDL.Opt(IDL.Nat64),\n 'disburse_maturity_in_progress' : IDL.Vec(DisburseMaturityInProgress),\n 'followees' : IDL.Vec(IDL.Tuple(IDL.Nat64, Followees)),\n 'neuron_fees_e8s' : IDL.Nat64,\n });\n const Governance = IDL.Record({\n 'root_canister_id' : IDL.Opt(IDL.Principal),\n 'id_to_nervous_system_functions' : IDL.Vec(\n IDL.Tuple(IDL.Nat64, NervousSystemFunction)\n ),\n 'metrics' : IDL.Opt(GovernanceCachedMetrics),\n 'maturity_modulation' : IDL.Opt(MaturityModulation),\n 'mode' : IDL.Int32,\n 'parameters' : IDL.Opt(NervousSystemParameters),\n 'is_finalizing_disburse_maturity' : IDL.Opt(IDL.Bool),\n 'deployed_version' : IDL.Opt(Version),\n 'sns_initialization_parameters' : IDL.Text,\n 'latest_reward_event' : IDL.Opt(RewardEvent),\n 'pending_version' : IDL.Opt(UpgradeInProgress),\n 'swap_canister_id' : IDL.Opt(IDL.Principal),\n 'ledger_canister_id' : IDL.Opt(IDL.Principal),\n 'proposals' : IDL.Vec(IDL.Tuple(IDL.Nat64, ProposalData)),\n 'in_flight_commands' : IDL.Vec(IDL.Tuple(IDL.Text, NeuronInFlightCommand)),\n 'sns_metadata' : IDL.Opt(ManageSnsMetadata),\n 'neurons' : IDL.Vec(IDL.Tuple(IDL.Text, Neuron)),\n 'genesis_timestamp_seconds' : IDL.Nat64,\n });\n const NeuronParameters = IDL.Record({\n 'controller' : IDL.Opt(IDL.Principal),\n 'dissolve_delay_seconds' : IDL.Opt(IDL.Nat64),\n 'source_nns_neuron_id' : IDL.Opt(IDL.Nat64),\n 'stake_e8s' : IDL.Opt(IDL.Nat64),\n 'followees' : IDL.Vec(NeuronId),\n 'hotkey' : IDL.Opt(IDL.Principal),\n 'neuron_id' : IDL.Opt(NeuronId),\n });\n const ClaimSwapNeuronsRequest = IDL.Record({\n 'neuron_parameters' : IDL.Vec(NeuronParameters),\n });\n const SwapNeuron = IDL.Record({\n 'id' : IDL.Opt(NeuronId),\n 'status' : IDL.Int32,\n });\n const ClaimedSwapNeurons = IDL.Record({\n 'swap_neurons' : IDL.Vec(SwapNeuron),\n });\n const ClaimSwapNeuronsResult = IDL.Variant({\n 'Ok' : ClaimedSwapNeurons,\n 'Err' : IDL.Int32,\n });\n const ClaimSwapNeuronsResponse = IDL.Record({\n 'claim_swap_neurons_result' : IDL.Opt(ClaimSwapNeuronsResult),\n });\n const GetMaturityModulationResponse = IDL.Record({\n 'maturity_modulation' : IDL.Opt(MaturityModulation),\n });\n const GetMetadataResponse = IDL.Record({\n 'url' : IDL.Opt(IDL.Text),\n 'logo' : IDL.Opt(IDL.Text),\n 'name' : IDL.Opt(IDL.Text),\n 'description' : IDL.Opt(IDL.Text),\n });\n const GetModeResponse = IDL.Record({ 'mode' : IDL.Opt(IDL.Int32) });\n const GetNeuron = IDL.Record({ 'neuron_id' : IDL.Opt(NeuronId) });\n const Result = IDL.Variant({ 'Error' : GovernanceError, 'Neuron' : Neuron });\n const GetNeuronResponse = IDL.Record({ 'result' : IDL.Opt(Result) });\n const GetProposal = IDL.Record({ 'proposal_id' : IDL.Opt(ProposalId) });\n const Result_1 = IDL.Variant({\n 'Error' : GovernanceError,\n 'Proposal' : ProposalData,\n });\n const GetProposalResponse = IDL.Record({ 'result' : IDL.Opt(Result_1) });\n const CanisterStatusType = IDL.Variant({\n 'stopped' : IDL.Null,\n 'stopping' : IDL.Null,\n 'running' : IDL.Null,\n });\n const DefiniteCanisterSettingsArgs = IDL.Record({\n 'freezing_threshold' : IDL.Nat,\n 'controllers' : IDL.Vec(IDL.Principal),\n 'memory_allocation' : IDL.Nat,\n 'compute_allocation' : IDL.Nat,\n });\n const CanisterStatusResultV2 = IDL.Record({\n 'status' : CanisterStatusType,\n 'memory_size' : IDL.Nat,\n 'cycles' : IDL.Nat,\n 'settings' : DefiniteCanisterSettingsArgs,\n 'idle_cycles_burned_per_day' : IDL.Nat,\n 'module_hash' : IDL.Opt(IDL.Vec(IDL.Nat8)),\n });\n const GetRunningSnsVersionResponse = IDL.Record({\n 'deployed_version' : IDL.Opt(Version),\n 'pending_version' : IDL.Opt(UpgradeInProgress),\n });\n const GetSnsInitializationParametersResponse = IDL.Record({\n 'sns_initialization_parameters' : IDL.Text,\n });\n const ListNervousSystemFunctionsResponse = IDL.Record({\n 'reserved_ids' : IDL.Vec(IDL.Nat64),\n 'functions' : IDL.Vec(NervousSystemFunction),\n });\n const ListNeurons = IDL.Record({\n 'of_principal' : IDL.Opt(IDL.Principal),\n 'limit' : IDL.Nat32,\n 'start_page_at' : IDL.Opt(NeuronId),\n });\n const ListNeuronsResponse = IDL.Record({ 'neurons' : IDL.Vec(Neuron) });\n const ListProposals = IDL.Record({\n 'include_reward_status' : IDL.Vec(IDL.Int32),\n 'before_proposal' : IDL.Opt(ProposalId),\n 'limit' : IDL.Nat32,\n 'exclude_type' : IDL.Vec(IDL.Nat64),\n 'include_status' : IDL.Vec(IDL.Int32),\n });\n const ListProposalsResponse = IDL.Record({\n 'proposals' : IDL.Vec(ProposalData),\n });\n const StakeMaturity = IDL.Record({\n 'percentage_to_stake' : IDL.Opt(IDL.Nat32),\n });\n const Command = IDL.Variant({\n 'Split' : Split,\n 'Follow' : Follow,\n 'DisburseMaturity' : DisburseMaturity,\n 'ClaimOrRefresh' : ClaimOrRefresh,\n 'Configure' : Configure,\n 'RegisterVote' : RegisterVote,\n 'MakeProposal' : Proposal,\n 'StakeMaturity' : StakeMaturity,\n 'RemoveNeuronPermissions' : RemoveNeuronPermissions,\n 'AddNeuronPermissions' : AddNeuronPermissions,\n 'MergeMaturity' : MergeMaturity,\n 'Disburse' : Disburse,\n });\n const ManageNeuron = IDL.Record({\n 'subaccount' : IDL.Vec(IDL.Nat8),\n 'command' : IDL.Opt(Command),\n });\n const SplitResponse = IDL.Record({ 'created_neuron_id' : IDL.Opt(NeuronId) });\n const DisburseMaturityResponse = IDL.Record({\n 'amount_disbursed_e8s' : IDL.Nat64,\n 'amount_deducted_e8s' : IDL.Opt(IDL.Nat64),\n });\n const ClaimOrRefreshResponse = IDL.Record({\n 'refreshed_neuron_id' : IDL.Opt(NeuronId),\n });\n const StakeMaturityResponse = IDL.Record({\n 'maturity_e8s' : IDL.Nat64,\n 'staked_maturity_e8s' : IDL.Nat64,\n });\n const MergeMaturityResponse = IDL.Record({\n 'merged_maturity_e8s' : IDL.Nat64,\n 'new_stake_e8s' : IDL.Nat64,\n });\n const DisburseResponse = IDL.Record({ 'transfer_block_height' : IDL.Nat64 });\n const Command_1 = IDL.Variant({\n 'Error' : GovernanceError,\n 'Split' : SplitResponse,\n 'Follow' : IDL.Record({}),\n 'DisburseMaturity' : DisburseMaturityResponse,\n 'ClaimOrRefresh' : ClaimOrRefreshResponse,\n 'Configure' : IDL.Record({}),\n 'RegisterVote' : IDL.Record({}),\n 'MakeProposal' : GetProposal,\n 'RemoveNeuronPermission' : IDL.Record({}),\n 'StakeMaturity' : StakeMaturityResponse,\n 'MergeMaturity' : MergeMaturityResponse,\n 'Disburse' : DisburseResponse,\n 'AddNeuronPermission' : IDL.Record({}),\n });\n const ManageNeuronResponse = IDL.Record({ 'command' : IDL.Opt(Command_1) });\n const SetMode = IDL.Record({ 'mode' : IDL.Int32 });\n return IDL.Service({\n 'claim_swap_neurons' : IDL.Func(\n [ClaimSwapNeuronsRequest],\n [ClaimSwapNeuronsResponse],\n [],\n ),\n 'fail_stuck_upgrade_in_progress' : IDL.Func(\n [IDL.Record({})],\n [IDL.Record({})],\n [],\n ),\n 'get_build_metadata' : IDL.Func([], [IDL.Text], []),\n 'get_latest_reward_event' : IDL.Func([], [RewardEvent], []),\n 'get_maturity_modulation' : IDL.Func(\n [IDL.Record({})],\n [GetMaturityModulationResponse],\n [],\n ),\n 'get_metadata' : IDL.Func([IDL.Record({})], [GetMetadataResponse], []),\n 'get_mode' : IDL.Func([IDL.Record({})], [GetModeResponse], []),\n 'get_nervous_system_parameters' : IDL.Func(\n [IDL.Null],\n [NervousSystemParameters],\n [],\n ),\n 'get_neuron' : IDL.Func([GetNeuron], [GetNeuronResponse], []),\n 'get_proposal' : IDL.Func([GetProposal], [GetProposalResponse], []),\n 'get_root_canister_status' : IDL.Func(\n [IDL.Null],\n [CanisterStatusResultV2],\n [],\n ),\n 'get_running_sns_version' : IDL.Func(\n [IDL.Record({})],\n [GetRunningSnsVersionResponse],\n [],\n ),\n 'get_sns_initialization_parameters' : IDL.Func(\n [IDL.Record({})],\n [GetSnsInitializationParametersResponse],\n [],\n ),\n 'list_nervous_system_functions' : IDL.Func(\n [],\n [ListNervousSystemFunctionsResponse],\n [],\n ),\n 'list_neurons' : IDL.Func([ListNeurons], [ListNeuronsResponse], []),\n 'list_proposals' : IDL.Func([ListProposals], [ListProposalsResponse], []),\n 'manage_neuron' : IDL.Func([ManageNeuron], [ManageNeuronResponse], []),\n 'set_mode' : IDL.Func([SetMode], [IDL.Record({})], []),\n });\n};\nexport const init = ({ IDL }) => {\n const GenericNervousSystemFunction = IDL.Record({\n 'validator_canister_id' : IDL.Opt(IDL.Principal),\n 'target_canister_id' : IDL.Opt(IDL.Principal),\n 'validator_method_name' : IDL.Opt(IDL.Text),\n 'target_method_name' : IDL.Opt(IDL.Text),\n });\n const FunctionType = IDL.Variant({\n 'NativeNervousSystemFunction' : IDL.Record({}),\n 'GenericNervousSystemFunction' : GenericNervousSystemFunction,\n });\n const NervousSystemFunction = IDL.Record({\n 'id' : IDL.Nat64,\n 'name' : IDL.Text,\n 'description' : IDL.Opt(IDL.Text),\n 'function_type' : IDL.Opt(FunctionType),\n });\n const GovernanceCachedMetrics = IDL.Record({\n 'not_dissolving_neurons_e8s_buckets' : IDL.Vec(\n IDL.Tuple(IDL.Nat64, IDL.Float64)\n ),\n 'garbage_collectable_neurons_count' : IDL.Nat64,\n 'neurons_with_invalid_stake_count' : IDL.Nat64,\n 'not_dissolving_neurons_count_buckets' : IDL.Vec(\n IDL.Tuple(IDL.Nat64, IDL.Nat64)\n ),\n 'neurons_with_less_than_6_months_dissolve_delay_count' : IDL.Nat64,\n 'dissolved_neurons_count' : IDL.Nat64,\n 'total_staked_e8s' : IDL.Nat64,\n 'total_supply_governance_tokens' : IDL.Nat64,\n 'not_dissolving_neurons_count' : IDL.Nat64,\n 'dissolved_neurons_e8s' : IDL.Nat64,\n 'neurons_with_less_than_6_months_dissolve_delay_e8s' : IDL.Nat64,\n 'dissolving_neurons_count_buckets' : IDL.Vec(\n IDL.Tuple(IDL.Nat64, IDL.Nat64)\n ),\n 'dissolving_neurons_count' : IDL.Nat64,\n 'dissolving_neurons_e8s_buckets' : IDL.Vec(\n IDL.Tuple(IDL.Nat64, IDL.Float64)\n ),\n 'timestamp_seconds' : IDL.Nat64,\n });\n const MaturityModulation = IDL.Record({\n 'current_basis_points' : IDL.Opt(IDL.Int32),\n 'updated_at_timestamp_seconds' : IDL.Opt(IDL.Nat64),\n });\n const NeuronId = IDL.Record({ 'id' : IDL.Vec(IDL.Nat8) });\n const Followees = IDL.Record({ 'followees' : IDL.Vec(NeuronId) });\n const DefaultFollowees = IDL.Record({\n 'followees' : IDL.Vec(IDL.Tuple(IDL.Nat64, Followees)),\n });\n const NeuronPermissionList = IDL.Record({\n 'permissions' : IDL.Vec(IDL.Int32),\n });\n const VotingRewardsParameters = IDL.Record({\n 'final_reward_rate_basis_points' : IDL.Opt(IDL.Nat64),\n 'initial_reward_rate_basis_points' : IDL.Opt(IDL.Nat64),\n 'reward_rate_transition_duration_seconds' : IDL.Opt(IDL.Nat64),\n 'round_duration_seconds' : IDL.Opt(IDL.Nat64),\n });\n const NervousSystemParameters = IDL.Record({\n 'default_followees' : IDL.Opt(DefaultFollowees),\n 'max_dissolve_delay_seconds' : IDL.Opt(IDL.Nat64),\n 'max_dissolve_delay_bonus_percentage' : IDL.Opt(IDL.Nat64),\n 'max_followees_per_function' : IDL.Opt(IDL.Nat64),\n 'neuron_claimer_permissions' : IDL.Opt(NeuronPermissionList),\n 'neuron_minimum_stake_e8s' : IDL.Opt(IDL.Nat64),\n 'max_neuron_age_for_age_bonus' : IDL.Opt(IDL.Nat64),\n 'initial_voting_period_seconds' : IDL.Opt(IDL.Nat64),\n 'neuron_minimum_dissolve_delay_to_vote_seconds' : IDL.Opt(IDL.Nat64),\n 'reject_cost_e8s' : IDL.Opt(IDL.Nat64),\n 'max_proposals_to_keep_per_action' : IDL.Opt(IDL.Nat32),\n 'wait_for_quiet_deadline_increase_seconds' : IDL.Opt(IDL.Nat64),\n 'max_number_of_neurons' : IDL.Opt(IDL.Nat64),\n 'transaction_fee_e8s' : IDL.Opt(IDL.Nat64),\n 'max_number_of_proposals_with_ballots' : IDL.Opt(IDL.Nat64),\n 'max_age_bonus_percentage' : IDL.Opt(IDL.Nat64),\n 'neuron_grantable_permissions' : IDL.Opt(NeuronPermissionList),\n 'voting_rewards_parameters' : IDL.Opt(VotingRewardsParameters),\n 'maturity_modulation_disabled' : IDL.Opt(IDL.Bool),\n 'max_number_of_principals_per_neuron' : IDL.Opt(IDL.Nat64),\n });\n const Version = IDL.Record({\n 'archive_wasm_hash' : IDL.Vec(IDL.Nat8),\n 'root_wasm_hash' : IDL.Vec(IDL.Nat8),\n 'swap_wasm_hash' : IDL.Vec(IDL.Nat8),\n 'ledger_wasm_hash' : IDL.Vec(IDL.Nat8),\n 'governance_wasm_hash' : IDL.Vec(IDL.Nat8),\n 'index_wasm_hash' : IDL.Vec(IDL.Nat8),\n });\n const ProposalId = IDL.Record({ 'id' : IDL.Nat64 });\n const RewardEvent = IDL.Record({\n 'rounds_since_last_distribution' : IDL.Opt(IDL.Nat64),\n 'actual_timestamp_seconds' : IDL.Nat64,\n 'end_timestamp_seconds' : IDL.Opt(IDL.Nat64),\n 'total_available_e8s_equivalent' : IDL.Opt(IDL.Nat64),\n 'distributed_e8s_equivalent' : IDL.Nat64,\n 'round' : IDL.Nat64,\n 'settled_proposals' : IDL.Vec(ProposalId),\n });\n const UpgradeInProgress = IDL.Record({\n 'mark_failed_at_seconds' : IDL.Nat64,\n 'checking_upgrade_lock' : IDL.Nat64,\n 'proposal_id' : IDL.Nat64,\n 'target_version' : IDL.Opt(Version),\n });\n const GovernanceError = IDL.Record({\n 'error_message' : IDL.Text,\n 'error_type' : IDL.Int32,\n });\n const Ballot = IDL.Record({\n 'vote' : IDL.Int32,\n 'cast_timestamp_seconds' : IDL.Nat64,\n 'voting_power' : IDL.Nat64,\n });\n const Percentage = IDL.Record({ 'basis_points' : IDL.Opt(IDL.Nat64) });\n const Tally = IDL.Record({\n 'no' : IDL.Nat64,\n 'yes' : IDL.Nat64,\n 'total' : IDL.Nat64,\n 'timestamp_seconds' : IDL.Nat64,\n });\n const RegisterDappCanisters = IDL.Record({\n 'canister_ids' : IDL.Vec(IDL.Principal),\n });\n const Subaccount = IDL.Record({ 'subaccount' : IDL.Vec(IDL.Nat8) });\n const TransferSnsTreasuryFunds = IDL.Record({\n 'from_treasury' : IDL.Int32,\n 'to_principal' : IDL.Opt(IDL.Principal),\n 'to_subaccount' : IDL.Opt(Subaccount),\n 'memo' : IDL.Opt(IDL.Nat64),\n 'amount_e8s' : IDL.Nat64,\n });\n const UpgradeSnsControlledCanister = IDL.Record({\n 'new_canister_wasm' : IDL.Vec(IDL.Nat8),\n 'mode' : IDL.Opt(IDL.Int32),\n 'canister_id' : IDL.Opt(IDL.Principal),\n 'canister_upgrade_arg' : IDL.Opt(IDL.Vec(IDL.Nat8)),\n });\n const DeregisterDappCanisters = IDL.Record({\n 'canister_ids' : IDL.Vec(IDL.Principal),\n 'new_controllers' : IDL.Vec(IDL.Principal),\n });\n const ManageSnsMetadata = IDL.Record({\n 'url' : IDL.Opt(IDL.Text),\n 'logo' : IDL.Opt(IDL.Text),\n 'name' : IDL.Opt(IDL.Text),\n 'description' : IDL.Opt(IDL.Text),\n });\n const ExecuteGenericNervousSystemFunction = IDL.Record({\n 'function_id' : IDL.Nat64,\n 'payload' : IDL.Vec(IDL.Nat8),\n });\n const Motion = IDL.Record({ 'motion_text' : IDL.Text });\n const Action = IDL.Variant({\n 'ManageNervousSystemParameters' : NervousSystemParameters,\n 'AddGenericNervousSystemFunction' : NervousSystemFunction,\n 'RemoveGenericNervousSystemFunction' : IDL.Nat64,\n 'UpgradeSnsToNextVersion' : IDL.Record({}),\n 'RegisterDappCanisters' : RegisterDappCanisters,\n 'TransferSnsTreasuryFunds' : TransferSnsTreasuryFunds,\n 'UpgradeSnsControlledCanister' : UpgradeSnsControlledCanister,\n 'DeregisterDappCanisters' : DeregisterDappCanisters,\n 'Unspecified' : IDL.Record({}),\n 'ManageSnsMetadata' : ManageSnsMetadata,\n 'ExecuteGenericNervousSystemFunction' : ExecuteGenericNervousSystemFunction,\n 'Motion' : Motion,\n });\n const Proposal = IDL.Record({\n 'url' : IDL.Text,\n 'title' : IDL.Text,\n 'action' : IDL.Opt(Action),\n 'summary' : IDL.Text,\n });\n const WaitForQuietState = IDL.Record({\n 'current_deadline_timestamp_seconds' : IDL.Nat64,\n });\n const ProposalData = IDL.Record({\n 'id' : IDL.Opt(ProposalId),\n 'payload_text_rendering' : IDL.Opt(IDL.Text),\n 'action' : IDL.Nat64,\n 'failure_reason' : IDL.Opt(GovernanceError),\n 'ballots' : IDL.Vec(IDL.Tuple(IDL.Text, Ballot)),\n 'minimum_yes_proportion_of_total' : IDL.Opt(Percentage),\n 'reward_event_round' : IDL.Nat64,\n 'failed_timestamp_seconds' : IDL.Nat64,\n 'reward_event_end_timestamp_seconds' : IDL.Opt(IDL.Nat64),\n 'proposal_creation_timestamp_seconds' : IDL.Nat64,\n 'initial_voting_period_seconds' : IDL.Nat64,\n 'reject_cost_e8s' : IDL.Nat64,\n 'latest_tally' : IDL.Opt(Tally),\n 'wait_for_quiet_deadline_increase_seconds' : IDL.Nat64,\n 'decided_timestamp_seconds' : IDL.Nat64,\n 'proposal' : IDL.Opt(Proposal),\n 'proposer' : IDL.Opt(NeuronId),\n 'wait_for_quiet_state' : IDL.Opt(WaitForQuietState),\n 'minimum_yes_proportion_of_exercised' : IDL.Opt(Percentage),\n 'is_eligible_for_rewards' : IDL.Bool,\n 'executed_timestamp_seconds' : IDL.Nat64,\n });\n const Split = IDL.Record({ 'memo' : IDL.Nat64, 'amount_e8s' : IDL.Nat64 });\n const Follow = IDL.Record({\n 'function_id' : IDL.Nat64,\n 'followees' : IDL.Vec(NeuronId),\n });\n const Account = IDL.Record({\n 'owner' : IDL.Opt(IDL.Principal),\n 'subaccount' : IDL.Opt(Subaccount),\n });\n const DisburseMaturity = IDL.Record({\n 'to_account' : IDL.Opt(Account),\n 'percentage_to_disburse' : IDL.Nat32,\n });\n const ChangeAutoStakeMaturity = IDL.Record({\n 'requested_setting_for_auto_stake_maturity' : IDL.Bool,\n });\n const IncreaseDissolveDelay = IDL.Record({\n 'additional_dissolve_delay_seconds' : IDL.Nat32,\n });\n const SetDissolveTimestamp = IDL.Record({\n 'dissolve_timestamp_seconds' : IDL.Nat64,\n });\n const Operation = IDL.Variant({\n 'ChangeAutoStakeMaturity' : ChangeAutoStakeMaturity,\n 'StopDissolving' : IDL.Record({}),\n 'StartDissolving' : IDL.Record({}),\n 'IncreaseDissolveDelay' : IncreaseDissolveDelay,\n 'SetDissolveTimestamp' : SetDissolveTimestamp,\n });\n const Configure = IDL.Record({ 'operation' : IDL.Opt(Operation) });\n const RegisterVote = IDL.Record({\n 'vote' : IDL.Int32,\n 'proposal' : IDL.Opt(ProposalId),\n });\n const FinalizeDisburseMaturity = IDL.Record({\n 'amount_to_be_disbursed_e8s' : IDL.Nat64,\n 'to_account' : IDL.Opt(Account),\n });\n const MemoAndController = IDL.Record({\n 'controller' : IDL.Opt(IDL.Principal),\n 'memo' : IDL.Nat64,\n });\n const By = IDL.Variant({\n 'MemoAndController' : MemoAndController,\n 'NeuronId' : IDL.Record({}),\n });\n const ClaimOrRefresh = IDL.Record({ 'by' : IDL.Opt(By) });\n const RemoveNeuronPermissions = IDL.Record({\n 'permissions_to_remove' : IDL.Opt(NeuronPermissionList),\n 'principal_id' : IDL.Opt(IDL.Principal),\n });\n const AddNeuronPermissions = IDL.Record({\n 'permissions_to_add' : IDL.Opt(NeuronPermissionList),\n 'principal_id' : IDL.Opt(IDL.Principal),\n });\n const MergeMaturity = IDL.Record({ 'percentage_to_merge' : IDL.Nat32 });\n const Amount = IDL.Record({ 'e8s' : IDL.Nat64 });\n const Disburse = IDL.Record({\n 'to_account' : IDL.Opt(Account),\n 'amount' : IDL.Opt(Amount),\n });\n const Command_2 = IDL.Variant({\n 'Split' : Split,\n 'Follow' : Follow,\n 'DisburseMaturity' : DisburseMaturity,\n 'Configure' : Configure,\n 'RegisterVote' : RegisterVote,\n 'SyncCommand' : IDL.Record({}),\n 'MakeProposal' : Proposal,\n 'FinalizeDisburseMaturity' : FinalizeDisburseMaturity,\n 'ClaimOrRefreshNeuron' : ClaimOrRefresh,\n 'RemoveNeuronPermissions' : RemoveNeuronPermissions,\n 'AddNeuronPermissions' : AddNeuronPermissions,\n 'MergeMaturity' : MergeMaturity,\n 'Disburse' : Disburse,\n });\n const NeuronInFlightCommand = IDL.Record({\n 'command' : IDL.Opt(Command_2),\n 'timestamp' : IDL.Nat64,\n });\n const NeuronPermission = IDL.Record({\n 'principal' : IDL.Opt(IDL.Principal),\n 'permission_type' : IDL.Vec(IDL.Int32),\n });\n const DissolveState = IDL.Variant({\n 'DissolveDelaySeconds' : IDL.Nat64,\n 'WhenDissolvedTimestampSeconds' : IDL.Nat64,\n });\n const DisburseMaturityInProgress = IDL.Record({\n 'timestamp_of_disbursement_seconds' : IDL.Nat64,\n 'amount_e8s' : IDL.Nat64,\n 'account_to_disburse_to' : IDL.Opt(Account),\n });\n const Neuron = IDL.Record({\n 'id' : IDL.Opt(NeuronId),\n 'staked_maturity_e8s_equivalent' : IDL.Opt(IDL.Nat64),\n 'permissions' : IDL.Vec(NeuronPermission),\n 'maturity_e8s_equivalent' : IDL.Nat64,\n 'cached_neuron_stake_e8s' : IDL.Nat64,\n 'created_timestamp_seconds' : IDL.Nat64,\n 'source_nns_neuron_id' : IDL.Opt(IDL.Nat64),\n 'auto_stake_maturity' : IDL.Opt(IDL.Bool),\n 'aging_since_timestamp_seconds' : IDL.Nat64,\n 'dissolve_state' : IDL.Opt(DissolveState),\n 'voting_power_percentage_multiplier' : IDL.Nat64,\n 'vesting_period_seconds' : IDL.Opt(IDL.Nat64),\n 'disburse_maturity_in_progress' : IDL.Vec(DisburseMaturityInProgress),\n 'followees' : IDL.Vec(IDL.Tuple(IDL.Nat64, Followees)),\n 'neuron_fees_e8s' : IDL.Nat64,\n });\n const Governance = IDL.Record({\n 'root_canister_id' : IDL.Opt(IDL.Principal),\n 'id_to_nervous_system_functions' : IDL.Vec(\n IDL.Tuple(IDL.Nat64, NervousSystemFunction)\n ),\n 'metrics' : IDL.Opt(GovernanceCachedMetrics),\n 'maturity_modulation' : IDL.Opt(MaturityModulation),\n 'mode' : IDL.Int32,\n 'parameters' : IDL.Opt(NervousSystemParameters),\n 'is_finalizing_disburse_maturity' : IDL.Opt(IDL.Bool),\n 'deployed_version' : IDL.Opt(Version),\n 'sns_initialization_parameters' : IDL.Text,\n 'latest_reward_event' : IDL.Opt(RewardEvent),\n 'pending_version' : IDL.Opt(UpgradeInProgress),\n 'swap_canister_id' : IDL.Opt(IDL.Principal),\n 'ledger_canister_id' : IDL.Opt(IDL.Principal),\n 'proposals' : IDL.Vec(IDL.Tuple(IDL.Nat64, ProposalData)),\n 'in_flight_commands' : IDL.Vec(IDL.Tuple(IDL.Text, NeuronInFlightCommand)),\n 'sns_metadata' : IDL.Opt(ManageSnsMetadata),\n 'neurons' : IDL.Vec(IDL.Tuple(IDL.Text, Neuron)),\n 'genesis_timestamp_seconds' : IDL.Nat64,\n });\n return [Governance];\n};\n", "/* Do not edit. Compiled with ./scripts/compile-idl-js from packages/sns/candid/sns_governance.did */\nexport const idlFactory = ({ IDL }) => {\n const GenericNervousSystemFunction = IDL.Record({\n 'validator_canister_id' : IDL.Opt(IDL.Principal),\n 'target_canister_id' : IDL.Opt(IDL.Principal),\n 'validator_method_name' : IDL.Opt(IDL.Text),\n 'target_method_name' : IDL.Opt(IDL.Text),\n });\n const FunctionType = IDL.Variant({\n 'NativeNervousSystemFunction' : IDL.Record({}),\n 'GenericNervousSystemFunction' : GenericNervousSystemFunction,\n });\n const NervousSystemFunction = IDL.Record({\n 'id' : IDL.Nat64,\n 'name' : IDL.Text,\n 'description' : IDL.Opt(IDL.Text),\n 'function_type' : IDL.Opt(FunctionType),\n });\n const GovernanceCachedMetrics = IDL.Record({\n 'not_dissolving_neurons_e8s_buckets' : IDL.Vec(\n IDL.Tuple(IDL.Nat64, IDL.Float64)\n ),\n 'garbage_collectable_neurons_count' : IDL.Nat64,\n 'neurons_with_invalid_stake_count' : IDL.Nat64,\n 'not_dissolving_neurons_count_buckets' : IDL.Vec(\n IDL.Tuple(IDL.Nat64, IDL.Nat64)\n ),\n 'neurons_with_less_than_6_months_dissolve_delay_count' : IDL.Nat64,\n 'dissolved_neurons_count' : IDL.Nat64,\n 'total_staked_e8s' : IDL.Nat64,\n 'total_supply_governance_tokens' : IDL.Nat64,\n 'not_dissolving_neurons_count' : IDL.Nat64,\n 'dissolved_neurons_e8s' : IDL.Nat64,\n 'neurons_with_less_than_6_months_dissolve_delay_e8s' : IDL.Nat64,\n 'dissolving_neurons_count_buckets' : IDL.Vec(\n IDL.Tuple(IDL.Nat64, IDL.Nat64)\n ),\n 'dissolving_neurons_count' : IDL.Nat64,\n 'dissolving_neurons_e8s_buckets' : IDL.Vec(\n IDL.Tuple(IDL.Nat64, IDL.Float64)\n ),\n 'timestamp_seconds' : IDL.Nat64,\n });\n const MaturityModulation = IDL.Record({\n 'current_basis_points' : IDL.Opt(IDL.Int32),\n 'updated_at_timestamp_seconds' : IDL.Opt(IDL.Nat64),\n });\n const NeuronId = IDL.Record({ 'id' : IDL.Vec(IDL.Nat8) });\n const Followees = IDL.Record({ 'followees' : IDL.Vec(NeuronId) });\n const DefaultFollowees = IDL.Record({\n 'followees' : IDL.Vec(IDL.Tuple(IDL.Nat64, Followees)),\n });\n const NeuronPermissionList = IDL.Record({\n 'permissions' : IDL.Vec(IDL.Int32),\n });\n const VotingRewardsParameters = IDL.Record({\n 'final_reward_rate_basis_points' : IDL.Opt(IDL.Nat64),\n 'initial_reward_rate_basis_points' : IDL.Opt(IDL.Nat64),\n 'reward_rate_transition_duration_seconds' : IDL.Opt(IDL.Nat64),\n 'round_duration_seconds' : IDL.Opt(IDL.Nat64),\n });\n const NervousSystemParameters = IDL.Record({\n 'default_followees' : IDL.Opt(DefaultFollowees),\n 'max_dissolve_delay_seconds' : IDL.Opt(IDL.Nat64),\n 'max_dissolve_delay_bonus_percentage' : IDL.Opt(IDL.Nat64),\n 'max_followees_per_function' : IDL.Opt(IDL.Nat64),\n 'neuron_claimer_permissions' : IDL.Opt(NeuronPermissionList),\n 'neuron_minimum_stake_e8s' : IDL.Opt(IDL.Nat64),\n 'max_neuron_age_for_age_bonus' : IDL.Opt(IDL.Nat64),\n 'initial_voting_period_seconds' : IDL.Opt(IDL.Nat64),\n 'neuron_minimum_dissolve_delay_to_vote_seconds' : IDL.Opt(IDL.Nat64),\n 'reject_cost_e8s' : IDL.Opt(IDL.Nat64),\n 'max_proposals_to_keep_per_action' : IDL.Opt(IDL.Nat32),\n 'wait_for_quiet_deadline_increase_seconds' : IDL.Opt(IDL.Nat64),\n 'max_number_of_neurons' : IDL.Opt(IDL.Nat64),\n 'transaction_fee_e8s' : IDL.Opt(IDL.Nat64),\n 'max_number_of_proposals_with_ballots' : IDL.Opt(IDL.Nat64),\n 'max_age_bonus_percentage' : IDL.Opt(IDL.Nat64),\n 'neuron_grantable_permissions' : IDL.Opt(NeuronPermissionList),\n 'voting_rewards_parameters' : IDL.Opt(VotingRewardsParameters),\n 'maturity_modulation_disabled' : IDL.Opt(IDL.Bool),\n 'max_number_of_principals_per_neuron' : IDL.Opt(IDL.Nat64),\n });\n const Version = IDL.Record({\n 'archive_wasm_hash' : IDL.Vec(IDL.Nat8),\n 'root_wasm_hash' : IDL.Vec(IDL.Nat8),\n 'swap_wasm_hash' : IDL.Vec(IDL.Nat8),\n 'ledger_wasm_hash' : IDL.Vec(IDL.Nat8),\n 'governance_wasm_hash' : IDL.Vec(IDL.Nat8),\n 'index_wasm_hash' : IDL.Vec(IDL.Nat8),\n });\n const ProposalId = IDL.Record({ 'id' : IDL.Nat64 });\n const RewardEvent = IDL.Record({\n 'rounds_since_last_distribution' : IDL.Opt(IDL.Nat64),\n 'actual_timestamp_seconds' : IDL.Nat64,\n 'end_timestamp_seconds' : IDL.Opt(IDL.Nat64),\n 'total_available_e8s_equivalent' : IDL.Opt(IDL.Nat64),\n 'distributed_e8s_equivalent' : IDL.Nat64,\n 'round' : IDL.Nat64,\n 'settled_proposals' : IDL.Vec(ProposalId),\n });\n const UpgradeInProgress = IDL.Record({\n 'mark_failed_at_seconds' : IDL.Nat64,\n 'checking_upgrade_lock' : IDL.Nat64,\n 'proposal_id' : IDL.Nat64,\n 'target_version' : IDL.Opt(Version),\n });\n const GovernanceError = IDL.Record({\n 'error_message' : IDL.Text,\n 'error_type' : IDL.Int32,\n });\n const Ballot = IDL.Record({\n 'vote' : IDL.Int32,\n 'cast_timestamp_seconds' : IDL.Nat64,\n 'voting_power' : IDL.Nat64,\n });\n const Percentage = IDL.Record({ 'basis_points' : IDL.Opt(IDL.Nat64) });\n const Tally = IDL.Record({\n 'no' : IDL.Nat64,\n 'yes' : IDL.Nat64,\n 'total' : IDL.Nat64,\n 'timestamp_seconds' : IDL.Nat64,\n });\n const RegisterDappCanisters = IDL.Record({\n 'canister_ids' : IDL.Vec(IDL.Principal),\n });\n const Subaccount = IDL.Record({ 'subaccount' : IDL.Vec(IDL.Nat8) });\n const TransferSnsTreasuryFunds = IDL.Record({\n 'from_treasury' : IDL.Int32,\n 'to_principal' : IDL.Opt(IDL.Principal),\n 'to_subaccount' : IDL.Opt(Subaccount),\n 'memo' : IDL.Opt(IDL.Nat64),\n 'amount_e8s' : IDL.Nat64,\n });\n const UpgradeSnsControlledCanister = IDL.Record({\n 'new_canister_wasm' : IDL.Vec(IDL.Nat8),\n 'mode' : IDL.Opt(IDL.Int32),\n 'canister_id' : IDL.Opt(IDL.Principal),\n 'canister_upgrade_arg' : IDL.Opt(IDL.Vec(IDL.Nat8)),\n });\n const DeregisterDappCanisters = IDL.Record({\n 'canister_ids' : IDL.Vec(IDL.Principal),\n 'new_controllers' : IDL.Vec(IDL.Principal),\n });\n const ManageSnsMetadata = IDL.Record({\n 'url' : IDL.Opt(IDL.Text),\n 'logo' : IDL.Opt(IDL.Text),\n 'name' : IDL.Opt(IDL.Text),\n 'description' : IDL.Opt(IDL.Text),\n });\n const ExecuteGenericNervousSystemFunction = IDL.Record({\n 'function_id' : IDL.Nat64,\n 'payload' : IDL.Vec(IDL.Nat8),\n });\n const Motion = IDL.Record({ 'motion_text' : IDL.Text });\n const Action = IDL.Variant({\n 'ManageNervousSystemParameters' : NervousSystemParameters,\n 'AddGenericNervousSystemFunction' : NervousSystemFunction,\n 'RemoveGenericNervousSystemFunction' : IDL.Nat64,\n 'UpgradeSnsToNextVersion' : IDL.Record({}),\n 'RegisterDappCanisters' : RegisterDappCanisters,\n 'TransferSnsTreasuryFunds' : TransferSnsTreasuryFunds,\n 'UpgradeSnsControlledCanister' : UpgradeSnsControlledCanister,\n 'DeregisterDappCanisters' : DeregisterDappCanisters,\n 'Unspecified' : IDL.Record({}),\n 'ManageSnsMetadata' : ManageSnsMetadata,\n 'ExecuteGenericNervousSystemFunction' : ExecuteGenericNervousSystemFunction,\n 'Motion' : Motion,\n });\n const Proposal = IDL.Record({\n 'url' : IDL.Text,\n 'title' : IDL.Text,\n 'action' : IDL.Opt(Action),\n 'summary' : IDL.Text,\n });\n const WaitForQuietState = IDL.Record({\n 'current_deadline_timestamp_seconds' : IDL.Nat64,\n });\n const ProposalData = IDL.Record({\n 'id' : IDL.Opt(ProposalId),\n 'payload_text_rendering' : IDL.Opt(IDL.Text),\n 'action' : IDL.Nat64,\n 'failure_reason' : IDL.Opt(GovernanceError),\n 'ballots' : IDL.Vec(IDL.Tuple(IDL.Text, Ballot)),\n 'minimum_yes_proportion_of_total' : IDL.Opt(Percentage),\n 'reward_event_round' : IDL.Nat64,\n 'failed_timestamp_seconds' : IDL.Nat64,\n 'reward_event_end_timestamp_seconds' : IDL.Opt(IDL.Nat64),\n 'proposal_creation_timestamp_seconds' : IDL.Nat64,\n 'initial_voting_period_seconds' : IDL.Nat64,\n 'reject_cost_e8s' : IDL.Nat64,\n 'latest_tally' : IDL.Opt(Tally),\n 'wait_for_quiet_deadline_increase_seconds' : IDL.Nat64,\n 'decided_timestamp_seconds' : IDL.Nat64,\n 'proposal' : IDL.Opt(Proposal),\n 'proposer' : IDL.Opt(NeuronId),\n 'wait_for_quiet_state' : IDL.Opt(WaitForQuietState),\n 'minimum_yes_proportion_of_exercised' : IDL.Opt(Percentage),\n 'is_eligible_for_rewards' : IDL.Bool,\n 'executed_timestamp_seconds' : IDL.Nat64,\n });\n const Split = IDL.Record({ 'memo' : IDL.Nat64, 'amount_e8s' : IDL.Nat64 });\n const Follow = IDL.Record({\n 'function_id' : IDL.Nat64,\n 'followees' : IDL.Vec(NeuronId),\n });\n const Account = IDL.Record({\n 'owner' : IDL.Opt(IDL.Principal),\n 'subaccount' : IDL.Opt(Subaccount),\n });\n const DisburseMaturity = IDL.Record({\n 'to_account' : IDL.Opt(Account),\n 'percentage_to_disburse' : IDL.Nat32,\n });\n const ChangeAutoStakeMaturity = IDL.Record({\n 'requested_setting_for_auto_stake_maturity' : IDL.Bool,\n });\n const IncreaseDissolveDelay = IDL.Record({\n 'additional_dissolve_delay_seconds' : IDL.Nat32,\n });\n const SetDissolveTimestamp = IDL.Record({\n 'dissolve_timestamp_seconds' : IDL.Nat64,\n });\n const Operation = IDL.Variant({\n 'ChangeAutoStakeMaturity' : ChangeAutoStakeMaturity,\n 'StopDissolving' : IDL.Record({}),\n 'StartDissolving' : IDL.Record({}),\n 'IncreaseDissolveDelay' : IncreaseDissolveDelay,\n 'SetDissolveTimestamp' : SetDissolveTimestamp,\n });\n const Configure = IDL.Record({ 'operation' : IDL.Opt(Operation) });\n const RegisterVote = IDL.Record({\n 'vote' : IDL.Int32,\n 'proposal' : IDL.Opt(ProposalId),\n });\n const FinalizeDisburseMaturity = IDL.Record({\n 'amount_to_be_disbursed_e8s' : IDL.Nat64,\n 'to_account' : IDL.Opt(Account),\n });\n const MemoAndController = IDL.Record({\n 'controller' : IDL.Opt(IDL.Principal),\n 'memo' : IDL.Nat64,\n });\n const By = IDL.Variant({\n 'MemoAndController' : MemoAndController,\n 'NeuronId' : IDL.Record({}),\n });\n const ClaimOrRefresh = IDL.Record({ 'by' : IDL.Opt(By) });\n const RemoveNeuronPermissions = IDL.Record({\n 'permissions_to_remove' : IDL.Opt(NeuronPermissionList),\n 'principal_id' : IDL.Opt(IDL.Principal),\n });\n const AddNeuronPermissions = IDL.Record({\n 'permissions_to_add' : IDL.Opt(NeuronPermissionList),\n 'principal_id' : IDL.Opt(IDL.Principal),\n });\n const MergeMaturity = IDL.Record({ 'percentage_to_merge' : IDL.Nat32 });\n const Amount = IDL.Record({ 'e8s' : IDL.Nat64 });\n const Disburse = IDL.Record({\n 'to_account' : IDL.Opt(Account),\n 'amount' : IDL.Opt(Amount),\n });\n const Command_2 = IDL.Variant({\n 'Split' : Split,\n 'Follow' : Follow,\n 'DisburseMaturity' : DisburseMaturity,\n 'Configure' : Configure,\n 'RegisterVote' : RegisterVote,\n 'SyncCommand' : IDL.Record({}),\n 'MakeProposal' : Proposal,\n 'FinalizeDisburseMaturity' : FinalizeDisburseMaturity,\n 'ClaimOrRefreshNeuron' : ClaimOrRefresh,\n 'RemoveNeuronPermissions' : RemoveNeuronPermissions,\n 'AddNeuronPermissions' : AddNeuronPermissions,\n 'MergeMaturity' : MergeMaturity,\n 'Disburse' : Disburse,\n });\n const NeuronInFlightCommand = IDL.Record({\n 'command' : IDL.Opt(Command_2),\n 'timestamp' : IDL.Nat64,\n });\n const NeuronPermission = IDL.Record({\n 'principal' : IDL.Opt(IDL.Principal),\n 'permission_type' : IDL.Vec(IDL.Int32),\n });\n const DissolveState = IDL.Variant({\n 'DissolveDelaySeconds' : IDL.Nat64,\n 'WhenDissolvedTimestampSeconds' : IDL.Nat64,\n });\n const DisburseMaturityInProgress = IDL.Record({\n 'timestamp_of_disbursement_seconds' : IDL.Nat64,\n 'amount_e8s' : IDL.Nat64,\n 'account_to_disburse_to' : IDL.Opt(Account),\n });\n const Neuron = IDL.Record({\n 'id' : IDL.Opt(NeuronId),\n 'staked_maturity_e8s_equivalent' : IDL.Opt(IDL.Nat64),\n 'permissions' : IDL.Vec(NeuronPermission),\n 'maturity_e8s_equivalent' : IDL.Nat64,\n 'cached_neuron_stake_e8s' : IDL.Nat64,\n 'created_timestamp_seconds' : IDL.Nat64,\n 'source_nns_neuron_id' : IDL.Opt(IDL.Nat64),\n 'auto_stake_maturity' : IDL.Opt(IDL.Bool),\n 'aging_since_timestamp_seconds' : IDL.Nat64,\n 'dissolve_state' : IDL.Opt(DissolveState),\n 'voting_power_percentage_multiplier' : IDL.Nat64,\n 'vesting_period_seconds' : IDL.Opt(IDL.Nat64),\n 'disburse_maturity_in_progress' : IDL.Vec(DisburseMaturityInProgress),\n 'followees' : IDL.Vec(IDL.Tuple(IDL.Nat64, Followees)),\n 'neuron_fees_e8s' : IDL.Nat64,\n });\n const Governance = IDL.Record({\n 'root_canister_id' : IDL.Opt(IDL.Principal),\n 'id_to_nervous_system_functions' : IDL.Vec(\n IDL.Tuple(IDL.Nat64, NervousSystemFunction)\n ),\n 'metrics' : IDL.Opt(GovernanceCachedMetrics),\n 'maturity_modulation' : IDL.Opt(MaturityModulation),\n 'mode' : IDL.Int32,\n 'parameters' : IDL.Opt(NervousSystemParameters),\n 'is_finalizing_disburse_maturity' : IDL.Opt(IDL.Bool),\n 'deployed_version' : IDL.Opt(Version),\n 'sns_initialization_parameters' : IDL.Text,\n 'latest_reward_event' : IDL.Opt(RewardEvent),\n 'pending_version' : IDL.Opt(UpgradeInProgress),\n 'swap_canister_id' : IDL.Opt(IDL.Principal),\n 'ledger_canister_id' : IDL.Opt(IDL.Principal),\n 'proposals' : IDL.Vec(IDL.Tuple(IDL.Nat64, ProposalData)),\n 'in_flight_commands' : IDL.Vec(IDL.Tuple(IDL.Text, NeuronInFlightCommand)),\n 'sns_metadata' : IDL.Opt(ManageSnsMetadata),\n 'neurons' : IDL.Vec(IDL.Tuple(IDL.Text, Neuron)),\n 'genesis_timestamp_seconds' : IDL.Nat64,\n });\n const NeuronParameters = IDL.Record({\n 'controller' : IDL.Opt(IDL.Principal),\n 'dissolve_delay_seconds' : IDL.Opt(IDL.Nat64),\n 'source_nns_neuron_id' : IDL.Opt(IDL.Nat64),\n 'stake_e8s' : IDL.Opt(IDL.Nat64),\n 'followees' : IDL.Vec(NeuronId),\n 'hotkey' : IDL.Opt(IDL.Principal),\n 'neuron_id' : IDL.Opt(NeuronId),\n });\n const ClaimSwapNeuronsRequest = IDL.Record({\n 'neuron_parameters' : IDL.Vec(NeuronParameters),\n });\n const SwapNeuron = IDL.Record({\n 'id' : IDL.Opt(NeuronId),\n 'status' : IDL.Int32,\n });\n const ClaimedSwapNeurons = IDL.Record({\n 'swap_neurons' : IDL.Vec(SwapNeuron),\n });\n const ClaimSwapNeuronsResult = IDL.Variant({\n 'Ok' : ClaimedSwapNeurons,\n 'Err' : IDL.Int32,\n });\n const ClaimSwapNeuronsResponse = IDL.Record({\n 'claim_swap_neurons_result' : IDL.Opt(ClaimSwapNeuronsResult),\n });\n const GetMaturityModulationResponse = IDL.Record({\n 'maturity_modulation' : IDL.Opt(MaturityModulation),\n });\n const GetMetadataResponse = IDL.Record({\n 'url' : IDL.Opt(IDL.Text),\n 'logo' : IDL.Opt(IDL.Text),\n 'name' : IDL.Opt(IDL.Text),\n 'description' : IDL.Opt(IDL.Text),\n });\n const GetModeResponse = IDL.Record({ 'mode' : IDL.Opt(IDL.Int32) });\n const GetNeuron = IDL.Record({ 'neuron_id' : IDL.Opt(NeuronId) });\n const Result = IDL.Variant({ 'Error' : GovernanceError, 'Neuron' : Neuron });\n const GetNeuronResponse = IDL.Record({ 'result' : IDL.Opt(Result) });\n const GetProposal = IDL.Record({ 'proposal_id' : IDL.Opt(ProposalId) });\n const Result_1 = IDL.Variant({\n 'Error' : GovernanceError,\n 'Proposal' : ProposalData,\n });\n const GetProposalResponse = IDL.Record({ 'result' : IDL.Opt(Result_1) });\n const CanisterStatusType = IDL.Variant({\n 'stopped' : IDL.Null,\n 'stopping' : IDL.Null,\n 'running' : IDL.Null,\n });\n const DefiniteCanisterSettingsArgs = IDL.Record({\n 'freezing_threshold' : IDL.Nat,\n 'controllers' : IDL.Vec(IDL.Principal),\n 'memory_allocation' : IDL.Nat,\n 'compute_allocation' : IDL.Nat,\n });\n const CanisterStatusResultV2 = IDL.Record({\n 'status' : CanisterStatusType,\n 'memory_size' : IDL.Nat,\n 'cycles' : IDL.Nat,\n 'settings' : DefiniteCanisterSettingsArgs,\n 'idle_cycles_burned_per_day' : IDL.Nat,\n 'module_hash' : IDL.Opt(IDL.Vec(IDL.Nat8)),\n });\n const GetRunningSnsVersionResponse = IDL.Record({\n 'deployed_version' : IDL.Opt(Version),\n 'pending_version' : IDL.Opt(UpgradeInProgress),\n });\n const GetSnsInitializationParametersResponse = IDL.Record({\n 'sns_initialization_parameters' : IDL.Text,\n });\n const ListNervousSystemFunctionsResponse = IDL.Record({\n 'reserved_ids' : IDL.Vec(IDL.Nat64),\n 'functions' : IDL.Vec(NervousSystemFunction),\n });\n const ListNeurons = IDL.Record({\n 'of_principal' : IDL.Opt(IDL.Principal),\n 'limit' : IDL.Nat32,\n 'start_page_at' : IDL.Opt(NeuronId),\n });\n const ListNeuronsResponse = IDL.Record({ 'neurons' : IDL.Vec(Neuron) });\n const ListProposals = IDL.Record({\n 'include_reward_status' : IDL.Vec(IDL.Int32),\n 'before_proposal' : IDL.Opt(ProposalId),\n 'limit' : IDL.Nat32,\n 'exclude_type' : IDL.Vec(IDL.Nat64),\n 'include_status' : IDL.Vec(IDL.Int32),\n });\n const ListProposalsResponse = IDL.Record({\n 'proposals' : IDL.Vec(ProposalData),\n });\n const StakeMaturity = IDL.Record({\n 'percentage_to_stake' : IDL.Opt(IDL.Nat32),\n });\n const Command = IDL.Variant({\n 'Split' : Split,\n 'Follow' : Follow,\n 'DisburseMaturity' : DisburseMaturity,\n 'ClaimOrRefresh' : ClaimOrRefresh,\n 'Configure' : Configure,\n 'RegisterVote' : RegisterVote,\n 'MakeProposal' : Proposal,\n 'StakeMaturity' : StakeMaturity,\n 'RemoveNeuronPermissions' : RemoveNeuronPermissions,\n 'AddNeuronPermissions' : AddNeuronPermissions,\n 'MergeMaturity' : MergeMaturity,\n 'Disburse' : Disburse,\n });\n const ManageNeuron = IDL.Record({\n 'subaccount' : IDL.Vec(IDL.Nat8),\n 'command' : IDL.Opt(Command),\n });\n const SplitResponse = IDL.Record({ 'created_neuron_id' : IDL.Opt(NeuronId) });\n const DisburseMaturityResponse = IDL.Record({\n 'amount_disbursed_e8s' : IDL.Nat64,\n 'amount_deducted_e8s' : IDL.Opt(IDL.Nat64),\n });\n const ClaimOrRefreshResponse = IDL.Record({\n 'refreshed_neuron_id' : IDL.Opt(NeuronId),\n });\n const StakeMaturityResponse = IDL.Record({\n 'maturity_e8s' : IDL.Nat64,\n 'staked_maturity_e8s' : IDL.Nat64,\n });\n const MergeMaturityResponse = IDL.Record({\n 'merged_maturity_e8s' : IDL.Nat64,\n 'new_stake_e8s' : IDL.Nat64,\n });\n const DisburseResponse = IDL.Record({ 'transfer_block_height' : IDL.Nat64 });\n const Command_1 = IDL.Variant({\n 'Error' : GovernanceError,\n 'Split' : SplitResponse,\n 'Follow' : IDL.Record({}),\n 'DisburseMaturity' : DisburseMaturityResponse,\n 'ClaimOrRefresh' : ClaimOrRefreshResponse,\n 'Configure' : IDL.Record({}),\n 'RegisterVote' : IDL.Record({}),\n 'MakeProposal' : GetProposal,\n 'RemoveNeuronPermission' : IDL.Record({}),\n 'StakeMaturity' : StakeMaturityResponse,\n 'MergeMaturity' : MergeMaturityResponse,\n 'Disburse' : DisburseResponse,\n 'AddNeuronPermission' : IDL.Record({}),\n });\n const ManageNeuronResponse = IDL.Record({ 'command' : IDL.Opt(Command_1) });\n const SetMode = IDL.Record({ 'mode' : IDL.Int32 });\n return IDL.Service({\n 'claim_swap_neurons' : IDL.Func(\n [ClaimSwapNeuronsRequest],\n [ClaimSwapNeuronsResponse],\n [],\n ),\n 'fail_stuck_upgrade_in_progress' : IDL.Func(\n [IDL.Record({})],\n [IDL.Record({})],\n [],\n ),\n 'get_build_metadata' : IDL.Func([], [IDL.Text], ['query']),\n 'get_latest_reward_event' : IDL.Func([], [RewardEvent], ['query']),\n 'get_maturity_modulation' : IDL.Func(\n [IDL.Record({})],\n [GetMaturityModulationResponse],\n [],\n ),\n 'get_metadata' : IDL.Func(\n [IDL.Record({})],\n [GetMetadataResponse],\n ['query'],\n ),\n 'get_mode' : IDL.Func([IDL.Record({})], [GetModeResponse], ['query']),\n 'get_nervous_system_parameters' : IDL.Func(\n [IDL.Null],\n [NervousSystemParameters],\n ['query'],\n ),\n 'get_neuron' : IDL.Func([GetNeuron], [GetNeuronResponse], ['query']),\n 'get_proposal' : IDL.Func([GetProposal], [GetProposalResponse], ['query']),\n 'get_root_canister_status' : IDL.Func(\n [IDL.Null],\n [CanisterStatusResultV2],\n [],\n ),\n 'get_running_sns_version' : IDL.Func(\n [IDL.Record({})],\n [GetRunningSnsVersionResponse],\n ['query'],\n ),\n 'get_sns_initialization_parameters' : IDL.Func(\n [IDL.Record({})],\n [GetSnsInitializationParametersResponse],\n ['query'],\n ),\n 'list_nervous_system_functions' : IDL.Func(\n [],\n [ListNervousSystemFunctionsResponse],\n ['query'],\n ),\n 'list_neurons' : IDL.Func([ListNeurons], [ListNeuronsResponse], ['query']),\n 'list_proposals' : IDL.Func(\n [ListProposals],\n [ListProposalsResponse],\n ['query'],\n ),\n 'manage_neuron' : IDL.Func([ManageNeuron], [ManageNeuronResponse], []),\n 'set_mode' : IDL.Func([SetMode], [IDL.Record({})], []),\n });\n};\nexport const init = ({ IDL }) => {\n const GenericNervousSystemFunction = IDL.Record({\n 'validator_canister_id' : IDL.Opt(IDL.Principal),\n 'target_canister_id' : IDL.Opt(IDL.Principal),\n 'validator_method_name' : IDL.Opt(IDL.Text),\n 'target_method_name' : IDL.Opt(IDL.Text),\n });\n const FunctionType = IDL.Variant({\n 'NativeNervousSystemFunction' : IDL.Record({}),\n 'GenericNervousSystemFunction' : GenericNervousSystemFunction,\n });\n const NervousSystemFunction = IDL.Record({\n 'id' : IDL.Nat64,\n 'name' : IDL.Text,\n 'description' : IDL.Opt(IDL.Text),\n 'function_type' : IDL.Opt(FunctionType),\n });\n const GovernanceCachedMetrics = IDL.Record({\n 'not_dissolving_neurons_e8s_buckets' : IDL.Vec(\n IDL.Tuple(IDL.Nat64, IDL.Float64)\n ),\n 'garbage_collectable_neurons_count' : IDL.Nat64,\n 'neurons_with_invalid_stake_count' : IDL.Nat64,\n 'not_dissolving_neurons_count_buckets' : IDL.Vec(\n IDL.Tuple(IDL.Nat64, IDL.Nat64)\n ),\n 'neurons_with_less_than_6_months_dissolve_delay_count' : IDL.Nat64,\n 'dissolved_neurons_count' : IDL.Nat64,\n 'total_staked_e8s' : IDL.Nat64,\n 'total_supply_governance_tokens' : IDL.Nat64,\n 'not_dissolving_neurons_count' : IDL.Nat64,\n 'dissolved_neurons_e8s' : IDL.Nat64,\n 'neurons_with_less_than_6_months_dissolve_delay_e8s' : IDL.Nat64,\n 'dissolving_neurons_count_buckets' : IDL.Vec(\n IDL.Tuple(IDL.Nat64, IDL.Nat64)\n ),\n 'dissolving_neurons_count' : IDL.Nat64,\n 'dissolving_neurons_e8s_buckets' : IDL.Vec(\n IDL.Tuple(IDL.Nat64, IDL.Float64)\n ),\n 'timestamp_seconds' : IDL.Nat64,\n });\n const MaturityModulation = IDL.Record({\n 'current_basis_points' : IDL.Opt(IDL.Int32),\n 'updated_at_timestamp_seconds' : IDL.Opt(IDL.Nat64),\n });\n const NeuronId = IDL.Record({ 'id' : IDL.Vec(IDL.Nat8) });\n const Followees = IDL.Record({ 'followees' : IDL.Vec(NeuronId) });\n const DefaultFollowees = IDL.Record({\n 'followees' : IDL.Vec(IDL.Tuple(IDL.Nat64, Followees)),\n });\n const NeuronPermissionList = IDL.Record({\n 'permissions' : IDL.Vec(IDL.Int32),\n });\n const VotingRewardsParameters = IDL.Record({\n 'final_reward_rate_basis_points' : IDL.Opt(IDL.Nat64),\n 'initial_reward_rate_basis_points' : IDL.Opt(IDL.Nat64),\n 'reward_rate_transition_duration_seconds' : IDL.Opt(IDL.Nat64),\n 'round_duration_seconds' : IDL.Opt(IDL.Nat64),\n });\n const NervousSystemParameters = IDL.Record({\n 'default_followees' : IDL.Opt(DefaultFollowees),\n 'max_dissolve_delay_seconds' : IDL.Opt(IDL.Nat64),\n 'max_dissolve_delay_bonus_percentage' : IDL.Opt(IDL.Nat64),\n 'max_followees_per_function' : IDL.Opt(IDL.Nat64),\n 'neuron_claimer_permissions' : IDL.Opt(NeuronPermissionList),\n 'neuron_minimum_stake_e8s' : IDL.Opt(IDL.Nat64),\n 'max_neuron_age_for_age_bonus' : IDL.Opt(IDL.Nat64),\n 'initial_voting_period_seconds' : IDL.Opt(IDL.Nat64),\n 'neuron_minimum_dissolve_delay_to_vote_seconds' : IDL.Opt(IDL.Nat64),\n 'reject_cost_e8s' : IDL.Opt(IDL.Nat64),\n 'max_proposals_to_keep_per_action' : IDL.Opt(IDL.Nat32),\n 'wait_for_quiet_deadline_increase_seconds' : IDL.Opt(IDL.Nat64),\n 'max_number_of_neurons' : IDL.Opt(IDL.Nat64),\n 'transaction_fee_e8s' : IDL.Opt(IDL.Nat64),\n 'max_number_of_proposals_with_ballots' : IDL.Opt(IDL.Nat64),\n 'max_age_bonus_percentage' : IDL.Opt(IDL.Nat64),\n 'neuron_grantable_permissions' : IDL.Opt(NeuronPermissionList),\n 'voting_rewards_parameters' : IDL.Opt(VotingRewardsParameters),\n 'maturity_modulation_disabled' : IDL.Opt(IDL.Bool),\n 'max_number_of_principals_per_neuron' : IDL.Opt(IDL.Nat64),\n });\n const Version = IDL.Record({\n 'archive_wasm_hash' : IDL.Vec(IDL.Nat8),\n 'root_wasm_hash' : IDL.Vec(IDL.Nat8),\n 'swap_wasm_hash' : IDL.Vec(IDL.Nat8),\n 'ledger_wasm_hash' : IDL.Vec(IDL.Nat8),\n 'governance_wasm_hash' : IDL.Vec(IDL.Nat8),\n 'index_wasm_hash' : IDL.Vec(IDL.Nat8),\n });\n const ProposalId = IDL.Record({ 'id' : IDL.Nat64 });\n const RewardEvent = IDL.Record({\n 'rounds_since_last_distribution' : IDL.Opt(IDL.Nat64),\n 'actual_timestamp_seconds' : IDL.Nat64,\n 'end_timestamp_seconds' : IDL.Opt(IDL.Nat64),\n 'total_available_e8s_equivalent' : IDL.Opt(IDL.Nat64),\n 'distributed_e8s_equivalent' : IDL.Nat64,\n 'round' : IDL.Nat64,\n 'settled_proposals' : IDL.Vec(ProposalId),\n });\n const UpgradeInProgress = IDL.Record({\n 'mark_failed_at_seconds' : IDL.Nat64,\n 'checking_upgrade_lock' : IDL.Nat64,\n 'proposal_id' : IDL.Nat64,\n 'target_version' : IDL.Opt(Version),\n });\n const GovernanceError = IDL.Record({\n 'error_message' : IDL.Text,\n 'error_type' : IDL.Int32,\n });\n const Ballot = IDL.Record({\n 'vote' : IDL.Int32,\n 'cast_timestamp_seconds' : IDL.Nat64,\n 'voting_power' : IDL.Nat64,\n });\n const Percentage = IDL.Record({ 'basis_points' : IDL.Opt(IDL.Nat64) });\n const Tally = IDL.Record({\n 'no' : IDL.Nat64,\n 'yes' : IDL.Nat64,\n 'total' : IDL.Nat64,\n 'timestamp_seconds' : IDL.Nat64,\n });\n const RegisterDappCanisters = IDL.Record({\n 'canister_ids' : IDL.Vec(IDL.Principal),\n });\n const Subaccount = IDL.Record({ 'subaccount' : IDL.Vec(IDL.Nat8) });\n const TransferSnsTreasuryFunds = IDL.Record({\n 'from_treasury' : IDL.Int32,\n 'to_principal' : IDL.Opt(IDL.Principal),\n 'to_subaccount' : IDL.Opt(Subaccount),\n 'memo' : IDL.Opt(IDL.Nat64),\n 'amount_e8s' : IDL.Nat64,\n });\n const UpgradeSnsControlledCanister = IDL.Record({\n 'new_canister_wasm' : IDL.Vec(IDL.Nat8),\n 'mode' : IDL.Opt(IDL.Int32),\n 'canister_id' : IDL.Opt(IDL.Principal),\n 'canister_upgrade_arg' : IDL.Opt(IDL.Vec(IDL.Nat8)),\n });\n const DeregisterDappCanisters = IDL.Record({\n 'canister_ids' : IDL.Vec(IDL.Principal),\n 'new_controllers' : IDL.Vec(IDL.Principal),\n });\n const ManageSnsMetadata = IDL.Record({\n 'url' : IDL.Opt(IDL.Text),\n 'logo' : IDL.Opt(IDL.Text),\n 'name' : IDL.Opt(IDL.Text),\n 'description' : IDL.Opt(IDL.Text),\n });\n const ExecuteGenericNervousSystemFunction = IDL.Record({\n 'function_id' : IDL.Nat64,\n 'payload' : IDL.Vec(IDL.Nat8),\n });\n const Motion = IDL.Record({ 'motion_text' : IDL.Text });\n const Action = IDL.Variant({\n 'ManageNervousSystemParameters' : NervousSystemParameters,\n 'AddGenericNervousSystemFunction' : NervousSystemFunction,\n 'RemoveGenericNervousSystemFunction' : IDL.Nat64,\n 'UpgradeSnsToNextVersion' : IDL.Record({}),\n 'RegisterDappCanisters' : RegisterDappCanisters,\n 'TransferSnsTreasuryFunds' : TransferSnsTreasuryFunds,\n 'UpgradeSnsControlledCanister' : UpgradeSnsControlledCanister,\n 'DeregisterDappCanisters' : DeregisterDappCanisters,\n 'Unspecified' : IDL.Record({}),\n 'ManageSnsMetadata' : ManageSnsMetadata,\n 'ExecuteGenericNervousSystemFunction' : ExecuteGenericNervousSystemFunction,\n 'Motion' : Motion,\n });\n const Proposal = IDL.Record({\n 'url' : IDL.Text,\n 'title' : IDL.Text,\n 'action' : IDL.Opt(Action),\n 'summary' : IDL.Text,\n });\n const WaitForQuietState = IDL.Record({\n 'current_deadline_timestamp_seconds' : IDL.Nat64,\n });\n const ProposalData = IDL.Record({\n 'id' : IDL.Opt(ProposalId),\n 'payload_text_rendering' : IDL.Opt(IDL.Text),\n 'action' : IDL.Nat64,\n 'failure_reason' : IDL.Opt(GovernanceError),\n 'ballots' : IDL.Vec(IDL.Tuple(IDL.Text, Ballot)),\n 'minimum_yes_proportion_of_total' : IDL.Opt(Percentage),\n 'reward_event_round' : IDL.Nat64,\n 'failed_timestamp_seconds' : IDL.Nat64,\n 'reward_event_end_timestamp_seconds' : IDL.Opt(IDL.Nat64),\n 'proposal_creation_timestamp_seconds' : IDL.Nat64,\n 'initial_voting_period_seconds' : IDL.Nat64,\n 'reject_cost_e8s' : IDL.Nat64,\n 'latest_tally' : IDL.Opt(Tally),\n 'wait_for_quiet_deadline_increase_seconds' : IDL.Nat64,\n 'decided_timestamp_seconds' : IDL.Nat64,\n 'proposal' : IDL.Opt(Proposal),\n 'proposer' : IDL.Opt(NeuronId),\n 'wait_for_quiet_state' : IDL.Opt(WaitForQuietState),\n 'minimum_yes_proportion_of_exercised' : IDL.Opt(Percentage),\n 'is_eligible_for_rewards' : IDL.Bool,\n 'executed_timestamp_seconds' : IDL.Nat64,\n });\n const Split = IDL.Record({ 'memo' : IDL.Nat64, 'amount_e8s' : IDL.Nat64 });\n const Follow = IDL.Record({\n 'function_id' : IDL.Nat64,\n 'followees' : IDL.Vec(NeuronId),\n });\n const Account = IDL.Record({\n 'owner' : IDL.Opt(IDL.Principal),\n 'subaccount' : IDL.Opt(Subaccount),\n });\n const DisburseMaturity = IDL.Record({\n 'to_account' : IDL.Opt(Account),\n 'percentage_to_disburse' : IDL.Nat32,\n });\n const ChangeAutoStakeMaturity = IDL.Record({\n 'requested_setting_for_auto_stake_maturity' : IDL.Bool,\n });\n const IncreaseDissolveDelay = IDL.Record({\n 'additional_dissolve_delay_seconds' : IDL.Nat32,\n });\n const SetDissolveTimestamp = IDL.Record({\n 'dissolve_timestamp_seconds' : IDL.Nat64,\n });\n const Operation = IDL.Variant({\n 'ChangeAutoStakeMaturity' : ChangeAutoStakeMaturity,\n 'StopDissolving' : IDL.Record({}),\n 'StartDissolving' : IDL.Record({}),\n 'IncreaseDissolveDelay' : IncreaseDissolveDelay,\n 'SetDissolveTimestamp' : SetDissolveTimestamp,\n });\n const Configure = IDL.Record({ 'operation' : IDL.Opt(Operation) });\n const RegisterVote = IDL.Record({\n 'vote' : IDL.Int32,\n 'proposal' : IDL.Opt(ProposalId),\n });\n const FinalizeDisburseMaturity = IDL.Record({\n 'amount_to_be_disbursed_e8s' : IDL.Nat64,\n 'to_account' : IDL.Opt(Account),\n });\n const MemoAndController = IDL.Record({\n 'controller' : IDL.Opt(IDL.Principal),\n 'memo' : IDL.Nat64,\n });\n const By = IDL.Variant({\n 'MemoAndController' : MemoAndController,\n 'NeuronId' : IDL.Record({}),\n });\n const ClaimOrRefresh = IDL.Record({ 'by' : IDL.Opt(By) });\n const RemoveNeuronPermissions = IDL.Record({\n 'permissions_to_remove' : IDL.Opt(NeuronPermissionList),\n 'principal_id' : IDL.Opt(IDL.Principal),\n });\n const AddNeuronPermissions = IDL.Record({\n 'permissions_to_add' : IDL.Opt(NeuronPermissionList),\n 'principal_id' : IDL.Opt(IDL.Principal),\n });\n const MergeMaturity = IDL.Record({ 'percentage_to_merge' : IDL.Nat32 });\n const Amount = IDL.Record({ 'e8s' : IDL.Nat64 });\n const Disburse = IDL.Record({\n 'to_account' : IDL.Opt(Account),\n 'amount' : IDL.Opt(Amount),\n });\n const Command_2 = IDL.Variant({\n 'Split' : Split,\n 'Follow' : Follow,\n 'DisburseMaturity' : DisburseMaturity,\n 'Configure' : Configure,\n 'RegisterVote' : RegisterVote,\n 'SyncCommand' : IDL.Record({}),\n 'MakeProposal' : Proposal,\n 'FinalizeDisburseMaturity' : FinalizeDisburseMaturity,\n 'ClaimOrRefreshNeuron' : ClaimOrRefresh,\n 'RemoveNeuronPermissions' : RemoveNeuronPermissions,\n 'AddNeuronPermissions' : AddNeuronPermissions,\n 'MergeMaturity' : MergeMaturity,\n 'Disburse' : Disburse,\n });\n const NeuronInFlightCommand = IDL.Record({\n 'command' : IDL.Opt(Command_2),\n 'timestamp' : IDL.Nat64,\n });\n const NeuronPermission = IDL.Record({\n 'principal' : IDL.Opt(IDL.Principal),\n 'permission_type' : IDL.Vec(IDL.Int32),\n });\n const DissolveState = IDL.Variant({\n 'DissolveDelaySeconds' : IDL.Nat64,\n 'WhenDissolvedTimestampSeconds' : IDL.Nat64,\n });\n const DisburseMaturityInProgress = IDL.Record({\n 'timestamp_of_disbursement_seconds' : IDL.Nat64,\n 'amount_e8s' : IDL.Nat64,\n 'account_to_disburse_to' : IDL.Opt(Account),\n });\n const Neuron = IDL.Record({\n 'id' : IDL.Opt(NeuronId),\n 'staked_maturity_e8s_equivalent' : IDL.Opt(IDL.Nat64),\n 'permissions' : IDL.Vec(NeuronPermission),\n 'maturity_e8s_equivalent' : IDL.Nat64,\n 'cached_neuron_stake_e8s' : IDL.Nat64,\n 'created_timestamp_seconds' : IDL.Nat64,\n 'source_nns_neuron_id' : IDL.Opt(IDL.Nat64),\n 'auto_stake_maturity' : IDL.Opt(IDL.Bool),\n 'aging_since_timestamp_seconds' : IDL.Nat64,\n 'dissolve_state' : IDL.Opt(DissolveState),\n 'voting_power_percentage_multiplier' : IDL.Nat64,\n 'vesting_period_seconds' : IDL.Opt(IDL.Nat64),\n 'disburse_maturity_in_progress' : IDL.Vec(DisburseMaturityInProgress),\n 'followees' : IDL.Vec(IDL.Tuple(IDL.Nat64, Followees)),\n 'neuron_fees_e8s' : IDL.Nat64,\n });\n const Governance = IDL.Record({\n 'root_canister_id' : IDL.Opt(IDL.Principal),\n 'id_to_nervous_system_functions' : IDL.Vec(\n IDL.Tuple(IDL.Nat64, NervousSystemFunction)\n ),\n 'metrics' : IDL.Opt(GovernanceCachedMetrics),\n 'maturity_modulation' : IDL.Opt(MaturityModulation),\n 'mode' : IDL.Int32,\n 'parameters' : IDL.Opt(NervousSystemParameters),\n 'is_finalizing_disburse_maturity' : IDL.Opt(IDL.Bool),\n 'deployed_version' : IDL.Opt(Version),\n 'sns_initialization_parameters' : IDL.Text,\n 'latest_reward_event' : IDL.Opt(RewardEvent),\n 'pending_version' : IDL.Opt(UpgradeInProgress),\n 'swap_canister_id' : IDL.Opt(IDL.Principal),\n 'ledger_canister_id' : IDL.Opt(IDL.Principal),\n 'proposals' : IDL.Vec(IDL.Tuple(IDL.Nat64, ProposalData)),\n 'in_flight_commands' : IDL.Vec(IDL.Tuple(IDL.Text, NeuronInFlightCommand)),\n 'sns_metadata' : IDL.Opt(ManageSnsMetadata),\n 'neurons' : IDL.Vec(IDL.Tuple(IDL.Text, Neuron)),\n 'genesis_timestamp_seconds' : IDL.Nat64,\n });\n return [Governance];\n};\n", "import type { IcrcAccount } from \"@dfinity/ledger-icrc\";\nimport { fromNullable, toNullable } from \"@dfinity/utils\";\nimport type {\n Account,\n Action as ActionCandid,\n Command,\n FunctionType as FunctionTypeCandid,\n GenericNervousSystemFunction as GenericNervousSystemFunctionCandid,\n ListProposals,\n ManageNeuron,\n ManageSnsMetadata as ManageSnsMetadataCandid,\n NervousSystemFunction as NervousSystemFunctionCandid,\n NervousSystemParameters as NervousSystemParametersCandid,\n NeuronId,\n Operation,\n TransferSnsTreasuryFunds as TransferSnsTreasuryFundsCandid,\n UpgradeSnsControlledCanister as UpgradeSnsControlledCanisterCandid,\n VotingRewardsParameters as VotingRewardsParametersCandid,\n} from \"../../candid/sns_governance\";\nimport { DEFAULT_PROPOSALS_LIMIT } from \"../constants/governance.constants\";\nimport type {\n Action,\n FunctionType,\n GenericNervousSystemFunction,\n ManageSnsMetadata,\n NervousSystemFunction,\n NervousSystemParameters,\n TransferSnsTreasuryFunds,\n UpgradeSnsControlledCanister,\n VotingRewardsParameters,\n} from \"../types/actions\";\nimport type {\n SnsClaimOrRefreshArgs,\n SnsDisburseNeuronParams,\n SnsIncreaseDissolveDelayParams,\n SnsListProposalsParams,\n SnsNeuronAutoStakeMaturityParams,\n SnsNeuronDisburseMaturityParams,\n SnsNeuronPermissionsParams,\n SnsNeuronStakeMaturityParams,\n SnsRegisterVoteParams,\n SnsSetDissolveTimestampParams,\n SnsSetTopicFollowees,\n SnsSplitNeuronParams,\n} from \"../types/governance.params\";\n\n// Helper for building `ManageNeuron` structure\nconst toManageNeuronCommand = ({\n neuronId: { id },\n command,\n}: {\n neuronId: NeuronId;\n command: Command;\n}): ManageNeuron => ({\n subaccount: id,\n command: [command],\n});\n\n// Helper for building `ManageNeuron` structure for type `Operation` commands\nconst toManageNeuronConfigureCommand = ({\n neuronId,\n operation,\n}: {\n neuronId: NeuronId;\n operation: Operation;\n}): ManageNeuron =>\n toManageNeuronCommand({\n neuronId,\n command: {\n Configure: {\n operation: [operation],\n },\n },\n });\n\nexport const toCandidAccount = ({\n owner,\n subaccount,\n}: IcrcAccount): Account => ({\n owner: toNullable(owner),\n subaccount: subaccount === undefined ? [] : toNullable({ subaccount }),\n});\n\nexport const toAddPermissionsRequest = ({\n neuronId,\n permissions,\n principal,\n}: SnsNeuronPermissionsParams): ManageNeuron =>\n toManageNeuronCommand({\n neuronId,\n command: {\n AddNeuronPermissions: {\n permissions_to_add: [{ permissions: Int32Array.from(permissions) }],\n principal_id: [principal],\n },\n },\n });\n\nexport const toRemovePermissionsRequest = ({\n neuronId,\n permissions,\n principal,\n}: SnsNeuronPermissionsParams): ManageNeuron =>\n toManageNeuronCommand({\n neuronId,\n command: {\n RemoveNeuronPermissions: {\n permissions_to_remove: [{ permissions: Int32Array.from(permissions) }],\n principal_id: [principal],\n },\n },\n });\n\nexport const toSplitNeuronRequest = ({\n neuronId,\n memo,\n amount: amount_e8s,\n}: SnsSplitNeuronParams): ManageNeuron =>\n toManageNeuronCommand({\n neuronId,\n command: {\n Split: {\n memo,\n amount_e8s,\n },\n },\n });\n\nexport const toDisburseNeuronRequest = ({\n neuronId,\n amount,\n toAccount,\n}: SnsDisburseNeuronParams): ManageNeuron =>\n toManageNeuronCommand({\n neuronId,\n command: {\n Disburse: {\n // currently there is a main account only support\n to_account:\n toAccount === undefined ? [] : toNullable(toCandidAccount(toAccount)),\n amount:\n amount === undefined\n ? []\n : [\n {\n e8s: amount,\n },\n ],\n },\n },\n });\n\nexport const toStartDissolvingNeuronRequest = (\n neuronId: NeuronId,\n): ManageNeuron =>\n toManageNeuronConfigureCommand({\n neuronId,\n operation: { StartDissolving: {} },\n });\n\nexport const toStopDissolvingNeuronRequest = (\n neuronId: NeuronId,\n): ManageNeuron =>\n toManageNeuronConfigureCommand({\n neuronId,\n operation: { StopDissolving: {} },\n });\n\nexport const toStakeMaturityRequest = ({\n neuronId,\n percentageToStake,\n}: SnsNeuronStakeMaturityParams): ManageNeuron =>\n toManageNeuronCommand({\n neuronId,\n command: {\n StakeMaturity: {\n percentage_to_stake: toNullable(percentageToStake),\n },\n },\n });\n\nexport const toDisburseMaturityRequest = ({\n neuronId,\n percentageToDisburse,\n toAccount,\n}: SnsNeuronDisburseMaturityParams): ManageNeuron =>\n toManageNeuronCommand({\n neuronId,\n command: {\n DisburseMaturity: {\n // currently there is a main account only support\n to_account:\n toAccount === undefined ? [] : toNullable(toCandidAccount(toAccount)),\n percentage_to_disburse: percentageToDisburse,\n },\n },\n });\n\nexport const toAutoStakeMaturityNeuronRequest = ({\n neuronId,\n autoStake: requested_setting_for_auto_stake_maturity,\n}: SnsNeuronAutoStakeMaturityParams): ManageNeuron =>\n toManageNeuronConfigureCommand({\n neuronId,\n operation: {\n ChangeAutoStakeMaturity: {\n requested_setting_for_auto_stake_maturity,\n },\n },\n });\n\nexport const toSetDissolveTimestampRequest = ({\n neuronId,\n dissolveTimestampSeconds,\n}: SnsSetDissolveTimestampParams): ManageNeuron =>\n toManageNeuronConfigureCommand({\n neuronId,\n operation: {\n SetDissolveTimestamp: {\n dissolve_timestamp_seconds: dissolveTimestampSeconds,\n },\n },\n });\n\nexport const toIncreaseDissolveDelayRequest = ({\n neuronId,\n additionalDissolveDelaySeconds,\n}: SnsIncreaseDissolveDelayParams): ManageNeuron =>\n toManageNeuronConfigureCommand({\n neuronId,\n operation: {\n IncreaseDissolveDelay: {\n additional_dissolve_delay_seconds: additionalDissolveDelaySeconds,\n },\n },\n });\n\nexport const toFollowRequest = ({\n neuronId,\n functionId,\n followees,\n}: SnsSetTopicFollowees): ManageNeuron => ({\n subaccount: neuronId.id,\n command: [\n {\n Follow: {\n function_id: functionId,\n followees,\n },\n },\n ],\n});\n\nexport const toRegisterVoteRequest = ({\n neuronId,\n proposalId,\n vote,\n}: SnsRegisterVoteParams): ManageNeuron => ({\n subaccount: neuronId.id,\n command: [\n {\n RegisterVote: {\n vote,\n proposal: [proposalId],\n },\n },\n ],\n});\n\nexport const toClaimOrRefreshRequest = ({\n subaccount,\n memo,\n controller,\n}: SnsClaimOrRefreshArgs): ManageNeuron => ({\n subaccount,\n command: [\n {\n ClaimOrRefresh: {\n by: [\n // If memo is not passed, we consider it a neuronId request because the memo is mandatory for MemoAndController\n memo === undefined\n ? { NeuronId: {} }\n : {\n MemoAndController: { memo, controller: toNullable(controller) },\n },\n ],\n },\n },\n ],\n});\n\nexport const toListProposalRequest = ({\n excludeType,\n beforeProposal,\n includeRewardStatus,\n includeStatus,\n limit,\n}: SnsListProposalsParams): ListProposals => ({\n exclude_type: BigUint64Array.from(excludeType ?? []),\n before_proposal: toNullable(beforeProposal),\n include_reward_status: Int32Array.from(includeRewardStatus ?? []),\n include_status: Int32Array.from(includeStatus ?? []),\n limit: limit ?? DEFAULT_PROPOSALS_LIMIT,\n});\n\nexport const fromCandidAction = (action: ActionCandid): Action => {\n if (\"ManageNervousSystemParameters\" in action) {\n return {\n ManageNervousSystemParameters: convertNervousSystemParams(\n action.ManageNervousSystemParameters,\n ),\n };\n }\n\n if (\"AddGenericNervousSystemFunction\" in action) {\n return {\n AddGenericNervousSystemFunction: convertNervousSystemFunction(\n action.AddGenericNervousSystemFunction,\n ),\n };\n }\n\n if (\"RemoveGenericNervousSystemFunction\" in action) {\n return {\n RemoveGenericNervousSystemFunction:\n action.RemoveGenericNervousSystemFunction,\n };\n }\n\n if (\"UpgradeSnsToNextVersion\" in action) {\n return { UpgradeSnsToNextVersion: action.UpgradeSnsToNextVersion };\n }\n\n if (\"RegisterDappCanisters\" in action) {\n return { RegisterDappCanisters: action.RegisterDappCanisters };\n }\n\n if (\"TransferSnsTreasuryFunds\" in action) {\n return {\n TransferSnsTreasuryFunds: convertTransferSnsTreasuryFunds(\n action.TransferSnsTreasuryFunds,\n ),\n };\n }\n\n if (\"UpgradeSnsControlledCanister\" in action) {\n return {\n UpgradeSnsControlledCanister: convertUpgradeSnsControlledCanister(\n action.UpgradeSnsControlledCanister,\n ),\n };\n }\n\n if (\"DeregisterDappCanisters\" in action) {\n return { DeregisterDappCanisters: action.DeregisterDappCanisters };\n }\n\n if (\"Unspecified\" in action) {\n return { Unspecified: action.Unspecified };\n }\n\n if (\"ManageSnsMetadata\" in action) {\n return {\n ManageSnsMetadata: convertManageSnsMetadata(action.ManageSnsMetadata),\n };\n }\n\n if (\"ExecuteGenericNervousSystemFunction\" in action) {\n return {\n ExecuteGenericNervousSystemFunction:\n action.ExecuteGenericNervousSystemFunction,\n };\n }\n\n if (\"Motion\" in action) {\n return { Motion: action.Motion };\n }\n\n throw new Error(`Unknown action type ${JSON.stringify(action)}`);\n};\n\nconst convertManageSnsMetadata = (\n params: ManageSnsMetadataCandid,\n): ManageSnsMetadata => ({\n url: fromNullable(params.url),\n logo: fromNullable(params.logo),\n name: fromNullable(params.name),\n description: fromNullable(params.description),\n});\n\nconst convertUpgradeSnsControlledCanister = (\n params: UpgradeSnsControlledCanisterCandid,\n): UpgradeSnsControlledCanister => ({\n new_canister_wasm: params.new_canister_wasm,\n canister_id: fromNullable(params.canister_id),\n canister_upgrade_arg: fromNullable(params.canister_upgrade_arg),\n mode: fromNullable(params.mode),\n});\n\nconst convertTransferSnsTreasuryFunds = (\n params: TransferSnsTreasuryFundsCandid,\n): TransferSnsTreasuryFunds => ({\n from_treasury: params.from_treasury,\n to_principal: fromNullable(params.to_principal),\n to_subaccount: fromNullable(params.to_subaccount),\n memo: fromNullable(params.memo),\n amount_e8s: params.amount_e8s,\n});\n\nconst convertGenericNervousSystemFunction = (\n params: GenericNervousSystemFunctionCandid,\n): GenericNervousSystemFunction => ({\n validator_canister_id: fromNullable(params.validator_canister_id),\n target_canister_id: fromNullable(params.target_canister_id),\n validator_method_name: fromNullable(params.validator_method_name),\n target_method_name: fromNullable(params.target_method_name),\n});\n\nconst convertFunctionType = (\n params: FunctionTypeCandid | undefined,\n): FunctionType | undefined => {\n if (params === undefined) {\n return undefined;\n }\n\n if (\"NativeNervousSystemFunction\" in params) {\n return { NativeNervousSystemFunction: params.NativeNervousSystemFunction };\n }\n\n if (\"GenericNervousSystemFunction\" in params) {\n return {\n GenericNervousSystemFunction: convertGenericNervousSystemFunction(\n params.GenericNervousSystemFunction,\n ),\n };\n }\n\n throw new Error(`Unknown FunctionType ${JSON.stringify(params)}`);\n};\n\nconst convertNervousSystemFunction = (\n params: NervousSystemFunctionCandid,\n): NervousSystemFunction => ({\n id: params.id,\n name: params.name,\n description: fromNullable(params.description),\n function_type: convertFunctionType(fromNullable(params.function_type)),\n});\n\nconst convertVotingRewardsParameters = (\n params: VotingRewardsParametersCandid | undefined,\n): VotingRewardsParameters | undefined =>\n params && {\n final_reward_rate_basis_points: fromNullable(\n params.final_reward_rate_basis_points,\n ),\n initial_reward_rate_basis_points: fromNullable(\n params.initial_reward_rate_basis_points,\n ),\n reward_rate_transition_duration_seconds: fromNullable(\n params.reward_rate_transition_duration_seconds,\n ),\n round_duration_seconds: fromNullable(params.round_duration_seconds),\n };\n\nconst convertNervousSystemParams = (\n params: NervousSystemParametersCandid,\n): NervousSystemParameters => ({\n default_followees: fromNullable(params.default_followees),\n max_dissolve_delay_seconds: fromNullable(params.max_dissolve_delay_seconds),\n max_dissolve_delay_bonus_percentage: fromNullable(\n params.max_dissolve_delay_bonus_percentage,\n ),\n max_followees_per_function: fromNullable(params.max_followees_per_function),\n neuron_claimer_permissions: fromNullable(params.neuron_claimer_permissions),\n neuron_minimum_stake_e8s: fromNullable(params.neuron_minimum_stake_e8s),\n max_neuron_age_for_age_bonus: fromNullable(\n params.max_neuron_age_for_age_bonus,\n ),\n initial_voting_period_seconds: fromNullable(\n params.initial_voting_period_seconds,\n ),\n neuron_minimum_dissolve_delay_to_vote_seconds: fromNullable(\n params.neuron_minimum_dissolve_delay_to_vote_seconds,\n ),\n reject_cost_e8s: fromNullable(params.reject_cost_e8s),\n max_proposals_to_keep_per_action: fromNullable(\n params.max_proposals_to_keep_per_action,\n ),\n wait_for_quiet_deadline_increase_seconds: fromNullable(\n params.wait_for_quiet_deadline_increase_seconds,\n ),\n max_number_of_neurons: fromNullable(params.max_number_of_neurons),\n transaction_fee_e8s: fromNullable(params.transaction_fee_e8s),\n max_number_of_proposals_with_ballots: fromNullable(\n params.max_number_of_proposals_with_ballots,\n ),\n max_age_bonus_percentage: fromNullable(params.max_age_bonus_percentage),\n neuron_grantable_permissions: fromNullable(\n params.neuron_grantable_permissions,\n ),\n voting_rewards_parameters: convertVotingRewardsParameters(\n fromNullable(params.voting_rewards_parameters),\n ),\n max_number_of_principals_per_neuron: fromNullable(\n params.max_number_of_principals_per_neuron,\n ),\n});\n"],
5
+ "mappings": "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",
6
+ "names": ["assertPercentageNumber", "Canister", "createServices", "fromNullable", "toNullable", "idlFactory", "IDL", "GenericNervousSystemFunction", "FunctionType", "NervousSystemFunction", "GovernanceCachedMetrics", "MaturityModulation", "NeuronId", "Followees", "DefaultFollowees", "NeuronPermissionList", "VotingRewardsParameters", "NervousSystemParameters", "Version", "ProposalId", "RewardEvent", "UpgradeInProgress", "GovernanceError", "Ballot", "Percentage", "Tally", "RegisterDappCanisters", "Subaccount", "TransferSnsTreasuryFunds", "UpgradeSnsControlledCanister", "DeregisterDappCanisters", "ManageSnsMetadata", "ExecuteGenericNervousSystemFunction", "Motion", "Action", "Proposal", "WaitForQuietState", "ProposalData", "Split", "Follow", "Account", "DisburseMaturity", "ChangeAutoStakeMaturity", "IncreaseDissolveDelay", "SetDissolveTimestamp", "Operation", "Configure", "RegisterVote", "FinalizeDisburseMaturity", "MemoAndController", "By", "ClaimOrRefresh", "RemoveNeuronPermissions", "AddNeuronPermissions", "MergeMaturity", "Amount", "Disburse", "Command_2", "NeuronInFlightCommand", "NeuronPermission", "DissolveState", "DisburseMaturityInProgress", "Neuron", "Governance", "NeuronParameters", "ClaimSwapNeuronsRequest", "SwapNeuron", "ClaimedSwapNeurons", "ClaimSwapNeuronsResult", "ClaimSwapNeuronsResponse", "GetMaturityModulationResponse", "GetMetadataResponse", "GetModeResponse", "GetNeuron", "Result", "GetNeuronResponse", "GetProposal", "Result_1", "GetProposalResponse", "CanisterStatusType", "DefiniteCanisterSettingsArgs", "CanisterStatusResultV2", "GetRunningSnsVersionResponse", "GetSnsInitializationParametersResponse", "ListNervousSystemFunctionsResponse", "ListNeurons", "ListNeuronsResponse", "ListProposals", "ListProposalsResponse", "StakeMaturity", "Command", "ManageNeuron", "SplitResponse", "DisburseMaturityResponse", "ClaimOrRefreshResponse", "StakeMaturityResponse", "MergeMaturityResponse", "DisburseResponse", "Command_1", "ManageNeuronResponse", "SetMode", "idlFactory", "IDL", "GenericNervousSystemFunction", "FunctionType", "NervousSystemFunction", "GovernanceCachedMetrics", "MaturityModulation", "NeuronId", "Followees", "DefaultFollowees", "NeuronPermissionList", "VotingRewardsParameters", "NervousSystemParameters", "Version", "ProposalId", "RewardEvent", "UpgradeInProgress", "GovernanceError", "Ballot", "Percentage", "Tally", "RegisterDappCanisters", "Subaccount", "TransferSnsTreasuryFunds", "UpgradeSnsControlledCanister", "DeregisterDappCanisters", "ManageSnsMetadata", "ExecuteGenericNervousSystemFunction", "Motion", "Action", "Proposal", "WaitForQuietState", "ProposalData", "Split", "Follow", "Account", "DisburseMaturity", "ChangeAutoStakeMaturity", "IncreaseDissolveDelay", "SetDissolveTimestamp", "Operation", "Configure", "RegisterVote", "FinalizeDisburseMaturity", "MemoAndController", "By", "ClaimOrRefresh", "RemoveNeuronPermissions", "AddNeuronPermissions", "MergeMaturity", "Amount", "Disburse", "Command_2", "NeuronInFlightCommand", "NeuronPermission", "DissolveState", "DisburseMaturityInProgress", "Neuron", "Governance", "NeuronParameters", "ClaimSwapNeuronsRequest", "SwapNeuron", "ClaimedSwapNeurons", "ClaimSwapNeuronsResult", "ClaimSwapNeuronsResponse", "GetMaturityModulationResponse", "GetMetadataResponse", "GetModeResponse", "GetNeuron", "Result", "GetNeuronResponse", "GetProposal", "Result_1", "GetProposalResponse", "CanisterStatusType", "DefiniteCanisterSettingsArgs", "CanisterStatusResultV2", "GetRunningSnsVersionResponse", "GetSnsInitializationParametersResponse", "ListNervousSystemFunctionsResponse", "ListNeurons", "ListNeuronsResponse", "ListProposals", "ListProposalsResponse", "StakeMaturity", "Command", "ManageNeuron", "SplitResponse", "DisburseMaturityResponse", "ClaimOrRefreshResponse", "StakeMaturityResponse", "MergeMaturityResponse", "DisburseResponse", "Command_1", "ManageNeuronResponse", "SetMode", "fromNullable", "toNullable", "toManageNeuronCommand", "id", "command", "toManageNeuronConfigureCommand", "neuronId", "operation", "toCandidAccount", "owner", "subaccount", "toNullable", "toAddPermissionsRequest", "permissions", "principal", "toRemovePermissionsRequest", "toSplitNeuronRequest", "memo", "amount_e8s", "toDisburseNeuronRequest", "amount", "toAccount", "toStartDissolvingNeuronRequest", "toStopDissolvingNeuronRequest", "toStakeMaturityRequest", "percentageToStake", "toDisburseMaturityRequest", "percentageToDisburse", "toAutoStakeMaturityNeuronRequest", "requested_setting_for_auto_stake_maturity", "toSetDissolveTimestampRequest", "dissolveTimestampSeconds", "toIncreaseDissolveDelayRequest", "additionalDissolveDelaySeconds", "toFollowRequest", "functionId", "followees", "toRegisterVoteRequest", "proposalId", "vote", "toClaimOrRefreshRequest", "controller", "toListProposalRequest", "excludeType", "beforeProposal", "includeRewardStatus", "includeStatus", "limit", "fromCandidAction", "action", "convertNervousSystemParams", "convertNervousSystemFunction", "convertTransferSnsTreasuryFunds", "convertUpgradeSnsControlledCanister", "convertManageSnsMetadata", "params", "fromNullable", "convertGenericNervousSystemFunction", "convertFunctionType", "convertVotingRewardsParameters", "SnsGovernanceCanister", "_SnsGovernanceCanister", "Canister", "params", "principal", "limit", "beforeNeuronId", "neurons", "toNullable", "certified", "proposals", "toListProposalRequest", "proposalId", "result", "data", "fromNullable", "SnsGovernanceError", "neuronId", "error", "request", "response", "toAddPermissionsRequest", "toRemovePermissionsRequest", "toSplitNeuronRequest", "command", "errorMessage", "details", "split", "toDisburseNeuronRequest", "toStartDissolvingNeuronRequest", "toStopDissolvingNeuronRequest", "percentageToStake", "assertPercentageNumber", "toStakeMaturityRequest", "toDisburseMaturityRequest", "toAutoStakeMaturityNeuronRequest", "toSetDissolveTimestampRequest", "toIncreaseDissolveDelayRequest", "toFollowRequest", "toRegisterVoteRequest", "toClaimOrRefreshRequest", "memo", "controller", "subaccount", "firstCommand", "options", "service", "certifiedService", "canisterId", "createServices", "idlFactory"]
7
+ }
@@ -1,2 +1,2 @@
1
- import{b as c}from"./chunk-UFTKUHIY.js";import{a as d}from"./chunk-Q2SQYFV4.js";import{b as m}from"./chunk-BMI3IY3I.js";import{d as S}from"./chunk-ZF2AGKNK.js";import{IcrcIndexCanister as u,IcrcLedgerCanister as P}from"@dfinity/ledger-icrc";import{assertNonNullish as r,fromNullable as e}from"@dfinity/utils";var W=async({agent:n,rootOptions:f,certified:t=!0})=>{let s=d.create({...f,agent:n}),{ledger:C,swap:I,governance:l,index:y}=await s.listSnsCanisters({certified:t}),i=e(l),o=e(C),a=e(I),p=e(y);return r(i),r(o),r(a),r(p),new m({root:s,governance:c.create({canisterId:i,agent:n}),ledger:P.create({canisterId:o,agent:n}),swap:S.create({canisterId:a,agent:n}),index:u.create({canisterId:p,agent:n}),certified:t})};export{W as a};
2
- //# sourceMappingURL=chunk-SB37NIYA.js.map
1
+ import{b as c}from"./chunk-ONZVK7WV.js";import{a as d}from"./chunk-Q2SQYFV4.js";import{b as m}from"./chunk-BMI3IY3I.js";import{d as S}from"./chunk-ZF2AGKNK.js";import{IcrcIndexCanister as u,IcrcLedgerCanister as P}from"@dfinity/ledger-icrc";import{assertNonNullish as r,fromNullable as e}from"@dfinity/utils";var W=async({agent:n,rootOptions:f,certified:t=!0})=>{let s=d.create({...f,agent:n}),{ledger:C,swap:I,governance:l,index:y}=await s.listSnsCanisters({certified:t}),i=e(l),o=e(C),a=e(I),p=e(y);return r(i),r(o),r(a),r(p),new m({root:s,governance:c.create({canisterId:i,agent:n}),ledger:P.create({canisterId:o,agent:n}),swap:S.create({canisterId:a,agent:n}),index:u.create({canisterId:p,agent:n}),certified:t})};export{W as a};
2
+ //# sourceMappingURL=chunk-V6OGOPZC.js.map
@@ -1,2 +1,2 @@
1
- import{b as a}from"./chunk-UFTKUHIY.js";import"./chunk-4INNMFYU.js";export{a as SnsGovernanceCanister};
1
+ import{b as a}from"./chunk-ONZVK7WV.js";import"./chunk-4INNMFYU.js";export{a as SnsGovernanceCanister};
2
2
  //# sourceMappingURL=governance.canister.js.map
package/dist/esm/index.js CHANGED
@@ -1,2 +1,2 @@
1
- import{a as mt}from"./chunk-SB37NIYA.js";import{a as He,b as Ze}from"./chunk-UFTKUHIY.js";import{a as $e}from"./chunk-Q2SQYFV4.js";import{a as ut,b as lt}from"./chunk-BMI3IY3I.js";import{a as je}from"./chunk-4INNMFYU.js";import{a as ct,b as dt,c as pt,d as Ie}from"./chunk-ZF2AGKNK.js";var De=(s=>(s[s.NEURON_PERMISSION_TYPE_UNSPECIFIED=0]="NEURON_PERMISSION_TYPE_UNSPECIFIED",s[s.NEURON_PERMISSION_TYPE_CONFIGURE_DISSOLVE_STATE=1]="NEURON_PERMISSION_TYPE_CONFIGURE_DISSOLVE_STATE",s[s.NEURON_PERMISSION_TYPE_MANAGE_PRINCIPALS=2]="NEURON_PERMISSION_TYPE_MANAGE_PRINCIPALS",s[s.NEURON_PERMISSION_TYPE_SUBMIT_PROPOSAL=3]="NEURON_PERMISSION_TYPE_SUBMIT_PROPOSAL",s[s.NEURON_PERMISSION_TYPE_VOTE=4]="NEURON_PERMISSION_TYPE_VOTE",s[s.NEURON_PERMISSION_TYPE_DISBURSE=5]="NEURON_PERMISSION_TYPE_DISBURSE",s[s.NEURON_PERMISSION_TYPE_SPLIT=6]="NEURON_PERMISSION_TYPE_SPLIT",s[s.NEURON_PERMISSION_TYPE_MERGE_MATURITY=7]="NEURON_PERMISSION_TYPE_MERGE_MATURITY",s[s.NEURON_PERMISSION_TYPE_DISBURSE_MATURITY=8]="NEURON_PERMISSION_TYPE_DISBURSE_MATURITY",s[s.NEURON_PERMISSION_TYPE_STAKE_MATURITY=9]="NEURON_PERMISSION_TYPE_STAKE_MATURITY",s[s.NEURON_PERMISSION_TYPE_MANAGE_VOTING_PERMISSION=10]="NEURON_PERMISSION_TYPE_MANAGE_VOTING_PERMISSION",s))(De||{}),Le=(a=>(a[a.PROPOSAL_REWARD_STATUS_UNSPECIFIED=0]="PROPOSAL_REWARD_STATUS_UNSPECIFIED",a[a.PROPOSAL_REWARD_STATUS_ACCEPT_VOTES=1]="PROPOSAL_REWARD_STATUS_ACCEPT_VOTES",a[a.PROPOSAL_REWARD_STATUS_READY_TO_SETTLE=2]="PROPOSAL_REWARD_STATUS_READY_TO_SETTLE",a[a.PROPOSAL_REWARD_STATUS_SETTLED=3]="PROPOSAL_REWARD_STATUS_SETTLED",a))(Le||{}),et=(t=>(t[t.PROPOSAL_DECISION_STATUS_UNSPECIFIED=0]="PROPOSAL_DECISION_STATUS_UNSPECIFIED",t[t.PROPOSAL_DECISION_STATUS_OPEN=1]="PROPOSAL_DECISION_STATUS_OPEN",t[t.PROPOSAL_DECISION_STATUS_REJECTED=2]="PROPOSAL_DECISION_STATUS_REJECTED",t[t.PROPOSAL_DECISION_STATUS_ADOPTED=3]="PROPOSAL_DECISION_STATUS_ADOPTED",t[t.PROPOSAL_DECISION_STATUS_EXECUTED=4]="PROPOSAL_DECISION_STATUS_EXECUTED",t[t.PROPOSAL_DECISION_STATUS_FAILED=5]="PROPOSAL_DECISION_STATUS_FAILED",t))(et||{}),tt=(o=>(o[o.Unspecified=0]="Unspecified",o[o.Yes=1]="Yes",o[o.No=2]="No",o))(tt||{});var st=(t=>(t[t.Unspecified=0]="Unspecified",t[t.Pending=1]="Pending",t[t.Open=2]="Open",t[t.Committed=3]="Committed",t[t.Aborted=4]="Aborted",t[t.Adopted=5]="Adopted",t))(st||{}),ot=(o=>(o[o.TYPE_UNSPECIFIED=0]="TYPE_UNSPECIFIED",o[o.TYPE_SALE_NOT_OPEN=1]="TYPE_SALE_NOT_OPEN",o[o.TYPE_SALE_CLOSED=2]="TYPE_SALE_CLOSED",o))(ot||{}),nt=(n=>(n[n.TYPE_UNSPECIFIED=0]="TYPE_UNSPECIFIED",n[n.TYPE_SALE_NOT_OPEN=1]="TYPE_SALE_NOT_OPEN",n[n.TYPE_SALE_CLOSED=2]="TYPE_SALE_CLOSED",n[n.TYPE_TICKET_EXISTS=3]="TYPE_TICKET_EXISTS",n[n.TYPE_INVALID_USER_AMOUNT=4]="TYPE_INVALID_USER_AMOUNT",n[n.TYPE_INVALID_SUBACCOUNT=5]="TYPE_INVALID_SUBACCOUNT",n[n.TYPE_INVALID_PRINCIPAL=6]="TYPE_INVALID_PRINCIPAL",n))(nt||{});import{Canister as at,createServices as rt,fromNullable as it,isNullish as _t,toNullable as Xe}from"@dfinity/utils";var Qe=({IDL:e})=>{let F=e.Record({validator_canister_id:e.Opt(e.Principal),target_canister_id:e.Opt(e.Principal),validator_method_name:e.Opt(e.Text),target_method_name:e.Opt(e.Text)}),u=e.Variant({NativeNervousSystemFunction:e.Record({}),GenericNervousSystemFunction:F}),o=e.Record({id:e.Nat64,name:e.Text,description:e.Opt(e.Text),function_type:e.Opt(u)}),a=e.Record({not_dissolving_neurons_e8s_buckets:e.Vec(e.Tuple(e.Nat64,e.Float64)),garbage_collectable_neurons_count:e.Nat64,neurons_with_invalid_stake_count:e.Nat64,not_dissolving_neurons_count_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),neurons_with_less_than_6_months_dissolve_delay_count:e.Nat64,dissolved_neurons_count:e.Nat64,total_staked_e8s:e.Nat64,total_supply_governance_tokens:e.Nat64,not_dissolving_neurons_count:e.Nat64,dissolved_neurons_e8s:e.Nat64,neurons_with_less_than_6_months_dissolve_delay_e8s:e.Nat64,dissolving_neurons_count_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),dissolving_neurons_count:e.Nat64,dissolving_neurons_e8s_buckets:e.Vec(e.Tuple(e.Nat64,e.Float64)),timestamp_seconds:e.Nat64}),c=e.Record({current_basis_points:e.Opt(e.Int32),updated_at_timestamp_seconds:e.Opt(e.Nat64)}),t=e.Record({id:e.Vec(e.Nat8)}),n=e.Record({followees:e.Vec(t)}),C=e.Record({followees:e.Vec(e.Tuple(e.Nat64,n))}),d=e.Record({permissions:e.Vec(e.Int32)}),A=e.Record({final_reward_rate_basis_points:e.Opt(e.Nat64),initial_reward_rate_basis_points:e.Opt(e.Nat64),reward_rate_transition_duration_seconds:e.Opt(e.Nat64),round_duration_seconds:e.Opt(e.Nat64)}),s=e.Record({default_followees:e.Opt(C),max_dissolve_delay_seconds:e.Opt(e.Nat64),max_dissolve_delay_bonus_percentage:e.Opt(e.Nat64),max_followees_per_function:e.Opt(e.Nat64),neuron_claimer_permissions:e.Opt(d),neuron_minimum_stake_e8s:e.Opt(e.Nat64),max_neuron_age_for_age_bonus:e.Opt(e.Nat64),initial_voting_period_seconds:e.Opt(e.Nat64),neuron_minimum_dissolve_delay_to_vote_seconds:e.Opt(e.Nat64),reject_cost_e8s:e.Opt(e.Nat64),max_proposals_to_keep_per_action:e.Opt(e.Nat32),wait_for_quiet_deadline_increase_seconds:e.Opt(e.Nat64),max_number_of_neurons:e.Opt(e.Nat64),transaction_fee_e8s:e.Opt(e.Nat64),max_number_of_proposals_with_ballots:e.Opt(e.Nat64),max_age_bonus_percentage:e.Opt(e.Nat64),neuron_grantable_permissions:e.Opt(d),voting_rewards_parameters:e.Opt(A),maturity_modulation_disabled:e.Opt(e.Bool),max_number_of_principals_per_neuron:e.Opt(e.Nat64)}),l=e.Record({archive_wasm_hash:e.Vec(e.Nat8),root_wasm_hash:e.Vec(e.Nat8),swap_wasm_hash:e.Vec(e.Nat8),ledger_wasm_hash:e.Vec(e.Nat8),governance_wasm_hash:e.Vec(e.Nat8),index_wasm_hash:e.Vec(e.Nat8)}),r=e.Record({id:e.Nat64}),O=e.Record({rounds_since_last_distribution:e.Opt(e.Nat64),actual_timestamp_seconds:e.Nat64,end_timestamp_seconds:e.Opt(e.Nat64),distributed_e8s_equivalent:e.Nat64,round:e.Nat64,settled_proposals:e.Vec(r)}),R=e.Record({mark_failed_at_seconds:e.Nat64,checking_upgrade_lock:e.Nat64,proposal_id:e.Nat64,target_version:e.Opt(l)}),i=e.Record({error_message:e.Text,error_type:e.Int32}),E=e.Record({vote:e.Int32,cast_timestamp_seconds:e.Nat64,voting_power:e.Nat64}),k=e.Record({no:e.Nat64,yes:e.Nat64,total:e.Nat64,timestamp_seconds:e.Nat64}),G=e.Record({canister_ids:e.Vec(e.Principal)}),g=e.Record({subaccount:e.Vec(e.Nat8)}),U=e.Record({from_treasury:e.Int32,to_principal:e.Opt(e.Principal),to_subaccount:e.Opt(g),memo:e.Opt(e.Nat64),amount_e8s:e.Nat64}),q=e.Record({new_canister_wasm:e.Vec(e.Nat8),mode:e.Opt(e.Int32),canister_id:e.Opt(e.Principal),canister_upgrade_arg:e.Opt(e.Vec(e.Nat8))}),B=e.Record({canister_ids:e.Vec(e.Principal),new_controllers:e.Vec(e.Principal)}),v=e.Record({url:e.Opt(e.Text),logo:e.Opt(e.Text),name:e.Opt(e.Text),description:e.Opt(e.Text)}),z=e.Record({function_id:e.Nat64,payload:e.Vec(e.Nat8)}),Y=e.Record({motion_text:e.Text}),W=e.Variant({ManageNervousSystemParameters:s,AddGenericNervousSystemFunction:o,RemoveGenericNervousSystemFunction:e.Nat64,UpgradeSnsToNextVersion:e.Record({}),RegisterDappCanisters:G,TransferSnsTreasuryFunds:U,UpgradeSnsControlledCanister:q,DeregisterDappCanisters:B,Unspecified:e.Record({}),ManageSnsMetadata:v,ExecuteGenericNervousSystemFunction:z,Motion:Y}),m=e.Record({url:e.Text,title:e.Text,action:e.Opt(W),summary:e.Text}),j=e.Record({current_deadline_timestamp_seconds:e.Nat64}),N=e.Record({id:e.Opt(r),payload_text_rendering:e.Opt(e.Text),action:e.Nat64,failure_reason:e.Opt(i),ballots:e.Vec(e.Tuple(e.Text,E)),reward_event_round:e.Nat64,failed_timestamp_seconds:e.Nat64,reward_event_end_timestamp_seconds:e.Opt(e.Nat64),proposal_creation_timestamp_seconds:e.Nat64,initial_voting_period_seconds:e.Nat64,reject_cost_e8s:e.Nat64,latest_tally:e.Opt(k),wait_for_quiet_deadline_increase_seconds:e.Nat64,decided_timestamp_seconds:e.Nat64,proposal:e.Opt(m),proposer:e.Opt(t),wait_for_quiet_state:e.Opt(j),is_eligible_for_rewards:e.Bool,executed_timestamp_seconds:e.Nat64}),y=e.Record({memo:e.Nat64,amount_e8s:e.Nat64}),S=e.Record({function_id:e.Nat64,followees:e.Vec(t)}),_=e.Record({owner:e.Opt(e.Principal),subaccount:e.Opt(g)}),V=e.Record({to_account:e.Opt(_),percentage_to_disburse:e.Nat32}),Q=e.Record({requested_setting_for_auto_stake_maturity:e.Bool}),K=e.Record({additional_dissolve_delay_seconds:e.Nat32}),X=e.Record({dissolve_timestamp_seconds:e.Nat64}),J=e.Variant({ChangeAutoStakeMaturity:Q,StopDissolving:e.Record({}),StartDissolving:e.Record({}),IncreaseDissolveDelay:K,SetDissolveTimestamp:X}),f=e.Record({operation:e.Opt(J)}),P=e.Record({vote:e.Int32,proposal:e.Opt(r)}),H=e.Record({amount_to_be_disbursed_e8s:e.Nat64,to_account:e.Opt(_)}),Z=e.Record({controller:e.Opt(e.Principal),memo:e.Nat64}),$=e.Variant({MemoAndController:Z,NeuronId:e.Record({})}),T=e.Record({by:e.Opt($)}),b=e.Record({permissions_to_remove:e.Opt(d),principal_id:e.Opt(e.Principal)}),x=e.Record({permissions_to_add:e.Opt(d),principal_id:e.Opt(e.Principal)}),w=e.Record({percentage_to_merge:e.Nat32}),I=e.Record({e8s:e.Nat64}),M=e.Record({to_account:e.Opt(_),amount:e.Opt(I)}),D=e.Variant({Split:y,Follow:S,DisburseMaturity:V,Configure:f,RegisterVote:P,SyncCommand:e.Record({}),MakeProposal:m,FinalizeDisburseMaturity:H,ClaimOrRefreshNeuron:T,RemoveNeuronPermissions:b,AddNeuronPermissions:x,MergeMaturity:w,Disburse:M}),L=e.Record({command:e.Opt(D),timestamp:e.Nat64}),ee=e.Record({principal:e.Opt(e.Principal),permission_type:e.Vec(e.Int32)}),te=e.Variant({DissolveDelaySeconds:e.Nat64,WhenDissolvedTimestampSeconds:e.Nat64}),se=e.Record({timestamp_of_disbursement_seconds:e.Nat64,amount_e8s:e.Nat64,account_to_disburse_to:e.Opt(_)}),p=e.Record({id:e.Opt(t),staked_maturity_e8s_equivalent:e.Opt(e.Nat64),permissions:e.Vec(ee),maturity_e8s_equivalent:e.Nat64,cached_neuron_stake_e8s:e.Nat64,created_timestamp_seconds:e.Nat64,source_nns_neuron_id:e.Opt(e.Nat64),auto_stake_maturity:e.Opt(e.Bool),aging_since_timestamp_seconds:e.Nat64,dissolve_state:e.Opt(te),voting_power_percentage_multiplier:e.Nat64,vesting_period_seconds:e.Opt(e.Nat64),disburse_maturity_in_progress:e.Vec(se),followees:e.Vec(e.Tuple(e.Nat64,n)),neuron_fees_e8s:e.Nat64}),Je=e.Record({root_canister_id:e.Opt(e.Principal),id_to_nervous_system_functions:e.Vec(e.Tuple(e.Nat64,o)),metrics:e.Opt(a),maturity_modulation:e.Opt(c),mode:e.Int32,parameters:e.Opt(s),is_finalizing_disburse_maturity:e.Opt(e.Bool),deployed_version:e.Opt(l),sns_initialization_parameters:e.Text,latest_reward_event:e.Opt(O),pending_version:e.Opt(R),swap_canister_id:e.Opt(e.Principal),ledger_canister_id:e.Opt(e.Principal),proposals:e.Vec(e.Tuple(e.Nat64,N)),in_flight_commands:e.Vec(e.Tuple(e.Text,L)),sns_metadata:e.Opt(v),neurons:e.Vec(e.Tuple(e.Text,p)),genesis_timestamp_seconds:e.Nat64}),oe=e.Record({id:e.Opt(t),amount_e8s:e.Opt(e.Nat64)}),ne=e.Record({new_maturity_e8s:e.Opt(e.Nat64)}),ae=e.Record({controller:e.Opt(e.Principal),dissolve_delay_seconds:e.Opt(e.Nat64),source_nns_neuron_id:e.Opt(e.Nat64),stake_e8s:e.Opt(e.Nat64),followees:e.Vec(t),hotkey:e.Opt(e.Principal),neuron_id:e.Opt(t)}),re=e.Record({neuron_parameters:e.Vec(ae)}),ie=e.Record({id:e.Opt(t),status:e.Int32}),_e=e.Record({swap_neurons:e.Vec(ie)}),ce=e.Variant({Ok:_e,Err:e.Int32}),de=e.Record({claim_swap_neurons_result:e.Opt(ce)}),pe=e.Record({maturity_modulation:e.Opt(c)}),ue=e.Record({url:e.Opt(e.Text),logo:e.Opt(e.Text),name:e.Opt(e.Text),description:e.Opt(e.Text)}),le=e.Record({mode:e.Opt(e.Int32)}),me=e.Record({neuron_id:e.Opt(t)}),Ne=e.Variant({Error:i,Neuron:p}),Oe=e.Record({result:e.Opt(Ne)}),h=e.Record({proposal_id:e.Opt(r)}),Re=e.Variant({Error:i,Proposal:N}),ge=e.Record({result:e.Opt(Re)}),ve=e.Variant({stopped:e.Null,stopping:e.Null,running:e.Null}),ye=e.Record({freezing_threshold:e.Nat,controllers:e.Vec(e.Principal),memory_allocation:e.Nat,compute_allocation:e.Nat}),Se=e.Record({status:ve,memory_size:e.Nat,cycles:e.Nat,settings:ye,idle_cycles_burned_per_day:e.Nat,module_hash:e.Opt(e.Vec(e.Nat8))}),Ve=e.Record({deployed_version:e.Opt(l),pending_version:e.Opt(R)}),fe=e.Record({sns_initialization_parameters:e.Text}),Pe=e.Record({reserved_ids:e.Vec(e.Nat64),functions:e.Vec(o)}),Te=e.Record({of_principal:e.Opt(e.Principal),limit:e.Nat32,start_page_at:e.Opt(t)}),be=e.Record({neurons:e.Vec(p)}),xe=e.Record({include_reward_status:e.Vec(e.Int32),before_proposal:e.Opt(r),limit:e.Nat32,exclude_type:e.Vec(e.Nat64),include_status:e.Vec(e.Int32)}),we=e.Record({proposals:e.Vec(N)}),Me=e.Record({percentage_to_stake:e.Opt(e.Nat32)}),he=e.Variant({Split:y,Follow:S,DisburseMaturity:V,ClaimOrRefresh:T,Configure:f,RegisterVote:P,MakeProposal:m,StakeMaturity:Me,RemoveNeuronPermissions:b,AddNeuronPermissions:x,MergeMaturity:w,Disburse:M}),Fe=e.Record({subaccount:e.Vec(e.Nat8),command:e.Opt(he)}),Ce=e.Record({created_neuron_id:e.Opt(t)}),Ae=e.Record({amount_disbursed_e8s:e.Nat64,amount_deducted_e8s:e.Opt(e.Nat64)}),Ee=e.Record({refreshed_neuron_id:e.Opt(t)}),ke=e.Record({maturity_e8s:e.Nat64,staked_maturity_e8s:e.Nat64}),Ge=e.Record({merged_maturity_e8s:e.Nat64,new_stake_e8s:e.Nat64}),Ue=e.Record({transfer_block_height:e.Nat64}),qe=e.Variant({Error:i,Split:Ce,Follow:e.Record({}),DisburseMaturity:Ae,ClaimOrRefresh:Ee,Configure:e.Record({}),RegisterVote:e.Record({}),MakeProposal:h,RemoveNeuronPermission:e.Record({}),StakeMaturity:ke,MergeMaturity:Ge,Disburse:Ue,AddNeuronPermission:e.Record({})}),Be=e.Record({command:e.Opt(qe)}),ze=e.Record({recipient:e.Opt(_),amount_e8s:e.Opt(e.Nat64)}),Ye=e.Record({mode:e.Int32});return e.Service({add_maturity:e.Func([oe],[ne],[]),claim_swap_neurons:e.Func([re],[de],[]),fail_stuck_upgrade_in_progress:e.Func([e.Record({})],[e.Record({})],[]),get_build_metadata:e.Func([],[e.Text],[]),get_latest_reward_event:e.Func([],[O],[]),get_maturity_modulation:e.Func([e.Record({})],[pe],[]),get_metadata:e.Func([e.Record({})],[ue],[]),get_mode:e.Func([e.Record({})],[le],[]),get_nervous_system_parameters:e.Func([e.Null],[s],[]),get_neuron:e.Func([me],[Oe],[]),get_proposal:e.Func([h],[ge],[]),get_root_canister_status:e.Func([e.Null],[Se],[]),get_running_sns_version:e.Func([e.Record({})],[Ve],[]),get_sns_initialization_parameters:e.Func([e.Record({})],[fe],[]),list_nervous_system_functions:e.Func([],[Pe],[]),list_neurons:e.Func([Te],[be],[]),list_proposals:e.Func([xe],[we],[]),manage_neuron:e.Func([Fe],[Be],[]),mint_tokens:e.Func([ze],[e.Record({})],[]),set_mode:e.Func([Ye],[e.Record({})],[]),update_neuron:e.Func([p],[e.Opt(i)],[])})};var Ke=({IDL:e})=>{let F=e.Record({validator_canister_id:e.Opt(e.Principal),target_canister_id:e.Opt(e.Principal),validator_method_name:e.Opt(e.Text),target_method_name:e.Opt(e.Text)}),u=e.Variant({NativeNervousSystemFunction:e.Record({}),GenericNervousSystemFunction:F}),o=e.Record({id:e.Nat64,name:e.Text,description:e.Opt(e.Text),function_type:e.Opt(u)}),a=e.Record({not_dissolving_neurons_e8s_buckets:e.Vec(e.Tuple(e.Nat64,e.Float64)),garbage_collectable_neurons_count:e.Nat64,neurons_with_invalid_stake_count:e.Nat64,not_dissolving_neurons_count_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),neurons_with_less_than_6_months_dissolve_delay_count:e.Nat64,dissolved_neurons_count:e.Nat64,total_staked_e8s:e.Nat64,total_supply_governance_tokens:e.Nat64,not_dissolving_neurons_count:e.Nat64,dissolved_neurons_e8s:e.Nat64,neurons_with_less_than_6_months_dissolve_delay_e8s:e.Nat64,dissolving_neurons_count_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),dissolving_neurons_count:e.Nat64,dissolving_neurons_e8s_buckets:e.Vec(e.Tuple(e.Nat64,e.Float64)),timestamp_seconds:e.Nat64}),c=e.Record({current_basis_points:e.Opt(e.Int32),updated_at_timestamp_seconds:e.Opt(e.Nat64)}),t=e.Record({id:e.Vec(e.Nat8)}),n=e.Record({followees:e.Vec(t)}),C=e.Record({followees:e.Vec(e.Tuple(e.Nat64,n))}),d=e.Record({permissions:e.Vec(e.Int32)}),A=e.Record({final_reward_rate_basis_points:e.Opt(e.Nat64),initial_reward_rate_basis_points:e.Opt(e.Nat64),reward_rate_transition_duration_seconds:e.Opt(e.Nat64),round_duration_seconds:e.Opt(e.Nat64)}),s=e.Record({default_followees:e.Opt(C),max_dissolve_delay_seconds:e.Opt(e.Nat64),max_dissolve_delay_bonus_percentage:e.Opt(e.Nat64),max_followees_per_function:e.Opt(e.Nat64),neuron_claimer_permissions:e.Opt(d),neuron_minimum_stake_e8s:e.Opt(e.Nat64),max_neuron_age_for_age_bonus:e.Opt(e.Nat64),initial_voting_period_seconds:e.Opt(e.Nat64),neuron_minimum_dissolve_delay_to_vote_seconds:e.Opt(e.Nat64),reject_cost_e8s:e.Opt(e.Nat64),max_proposals_to_keep_per_action:e.Opt(e.Nat32),wait_for_quiet_deadline_increase_seconds:e.Opt(e.Nat64),max_number_of_neurons:e.Opt(e.Nat64),transaction_fee_e8s:e.Opt(e.Nat64),max_number_of_proposals_with_ballots:e.Opt(e.Nat64),max_age_bonus_percentage:e.Opt(e.Nat64),neuron_grantable_permissions:e.Opt(d),voting_rewards_parameters:e.Opt(A),maturity_modulation_disabled:e.Opt(e.Bool),max_number_of_principals_per_neuron:e.Opt(e.Nat64)}),l=e.Record({archive_wasm_hash:e.Vec(e.Nat8),root_wasm_hash:e.Vec(e.Nat8),swap_wasm_hash:e.Vec(e.Nat8),ledger_wasm_hash:e.Vec(e.Nat8),governance_wasm_hash:e.Vec(e.Nat8),index_wasm_hash:e.Vec(e.Nat8)}),r=e.Record({id:e.Nat64}),O=e.Record({rounds_since_last_distribution:e.Opt(e.Nat64),actual_timestamp_seconds:e.Nat64,end_timestamp_seconds:e.Opt(e.Nat64),distributed_e8s_equivalent:e.Nat64,round:e.Nat64,settled_proposals:e.Vec(r)}),R=e.Record({mark_failed_at_seconds:e.Nat64,checking_upgrade_lock:e.Nat64,proposal_id:e.Nat64,target_version:e.Opt(l)}),i=e.Record({error_message:e.Text,error_type:e.Int32}),E=e.Record({vote:e.Int32,cast_timestamp_seconds:e.Nat64,voting_power:e.Nat64}),k=e.Record({no:e.Nat64,yes:e.Nat64,total:e.Nat64,timestamp_seconds:e.Nat64}),G=e.Record({canister_ids:e.Vec(e.Principal)}),g=e.Record({subaccount:e.Vec(e.Nat8)}),U=e.Record({from_treasury:e.Int32,to_principal:e.Opt(e.Principal),to_subaccount:e.Opt(g),memo:e.Opt(e.Nat64),amount_e8s:e.Nat64}),q=e.Record({new_canister_wasm:e.Vec(e.Nat8),mode:e.Opt(e.Int32),canister_id:e.Opt(e.Principal),canister_upgrade_arg:e.Opt(e.Vec(e.Nat8))}),B=e.Record({canister_ids:e.Vec(e.Principal),new_controllers:e.Vec(e.Principal)}),v=e.Record({url:e.Opt(e.Text),logo:e.Opt(e.Text),name:e.Opt(e.Text),description:e.Opt(e.Text)}),z=e.Record({function_id:e.Nat64,payload:e.Vec(e.Nat8)}),Y=e.Record({motion_text:e.Text}),W=e.Variant({ManageNervousSystemParameters:s,AddGenericNervousSystemFunction:o,RemoveGenericNervousSystemFunction:e.Nat64,UpgradeSnsToNextVersion:e.Record({}),RegisterDappCanisters:G,TransferSnsTreasuryFunds:U,UpgradeSnsControlledCanister:q,DeregisterDappCanisters:B,Unspecified:e.Record({}),ManageSnsMetadata:v,ExecuteGenericNervousSystemFunction:z,Motion:Y}),m=e.Record({url:e.Text,title:e.Text,action:e.Opt(W),summary:e.Text}),j=e.Record({current_deadline_timestamp_seconds:e.Nat64}),N=e.Record({id:e.Opt(r),payload_text_rendering:e.Opt(e.Text),action:e.Nat64,failure_reason:e.Opt(i),ballots:e.Vec(e.Tuple(e.Text,E)),reward_event_round:e.Nat64,failed_timestamp_seconds:e.Nat64,reward_event_end_timestamp_seconds:e.Opt(e.Nat64),proposal_creation_timestamp_seconds:e.Nat64,initial_voting_period_seconds:e.Nat64,reject_cost_e8s:e.Nat64,latest_tally:e.Opt(k),wait_for_quiet_deadline_increase_seconds:e.Nat64,decided_timestamp_seconds:e.Nat64,proposal:e.Opt(m),proposer:e.Opt(t),wait_for_quiet_state:e.Opt(j),is_eligible_for_rewards:e.Bool,executed_timestamp_seconds:e.Nat64}),y=e.Record({memo:e.Nat64,amount_e8s:e.Nat64}),S=e.Record({function_id:e.Nat64,followees:e.Vec(t)}),_=e.Record({owner:e.Opt(e.Principal),subaccount:e.Opt(g)}),V=e.Record({to_account:e.Opt(_),percentage_to_disburse:e.Nat32}),Q=e.Record({requested_setting_for_auto_stake_maturity:e.Bool}),K=e.Record({additional_dissolve_delay_seconds:e.Nat32}),X=e.Record({dissolve_timestamp_seconds:e.Nat64}),J=e.Variant({ChangeAutoStakeMaturity:Q,StopDissolving:e.Record({}),StartDissolving:e.Record({}),IncreaseDissolveDelay:K,SetDissolveTimestamp:X}),f=e.Record({operation:e.Opt(J)}),P=e.Record({vote:e.Int32,proposal:e.Opt(r)}),H=e.Record({amount_to_be_disbursed_e8s:e.Nat64,to_account:e.Opt(_)}),Z=e.Record({controller:e.Opt(e.Principal),memo:e.Nat64}),$=e.Variant({MemoAndController:Z,NeuronId:e.Record({})}),T=e.Record({by:e.Opt($)}),b=e.Record({permissions_to_remove:e.Opt(d),principal_id:e.Opt(e.Principal)}),x=e.Record({permissions_to_add:e.Opt(d),principal_id:e.Opt(e.Principal)}),w=e.Record({percentage_to_merge:e.Nat32}),I=e.Record({e8s:e.Nat64}),M=e.Record({to_account:e.Opt(_),amount:e.Opt(I)}),D=e.Variant({Split:y,Follow:S,DisburseMaturity:V,Configure:f,RegisterVote:P,SyncCommand:e.Record({}),MakeProposal:m,FinalizeDisburseMaturity:H,ClaimOrRefreshNeuron:T,RemoveNeuronPermissions:b,AddNeuronPermissions:x,MergeMaturity:w,Disburse:M}),L=e.Record({command:e.Opt(D),timestamp:e.Nat64}),ee=e.Record({principal:e.Opt(e.Principal),permission_type:e.Vec(e.Int32)}),te=e.Variant({DissolveDelaySeconds:e.Nat64,WhenDissolvedTimestampSeconds:e.Nat64}),se=e.Record({timestamp_of_disbursement_seconds:e.Nat64,amount_e8s:e.Nat64,account_to_disburse_to:e.Opt(_)}),p=e.Record({id:e.Opt(t),staked_maturity_e8s_equivalent:e.Opt(e.Nat64),permissions:e.Vec(ee),maturity_e8s_equivalent:e.Nat64,cached_neuron_stake_e8s:e.Nat64,created_timestamp_seconds:e.Nat64,source_nns_neuron_id:e.Opt(e.Nat64),auto_stake_maturity:e.Opt(e.Bool),aging_since_timestamp_seconds:e.Nat64,dissolve_state:e.Opt(te),voting_power_percentage_multiplier:e.Nat64,vesting_period_seconds:e.Opt(e.Nat64),disburse_maturity_in_progress:e.Vec(se),followees:e.Vec(e.Tuple(e.Nat64,n)),neuron_fees_e8s:e.Nat64}),Je=e.Record({root_canister_id:e.Opt(e.Principal),id_to_nervous_system_functions:e.Vec(e.Tuple(e.Nat64,o)),metrics:e.Opt(a),maturity_modulation:e.Opt(c),mode:e.Int32,parameters:e.Opt(s),is_finalizing_disburse_maturity:e.Opt(e.Bool),deployed_version:e.Opt(l),sns_initialization_parameters:e.Text,latest_reward_event:e.Opt(O),pending_version:e.Opt(R),swap_canister_id:e.Opt(e.Principal),ledger_canister_id:e.Opt(e.Principal),proposals:e.Vec(e.Tuple(e.Nat64,N)),in_flight_commands:e.Vec(e.Tuple(e.Text,L)),sns_metadata:e.Opt(v),neurons:e.Vec(e.Tuple(e.Text,p)),genesis_timestamp_seconds:e.Nat64}),oe=e.Record({id:e.Opt(t),amount_e8s:e.Opt(e.Nat64)}),ne=e.Record({new_maturity_e8s:e.Opt(e.Nat64)}),ae=e.Record({controller:e.Opt(e.Principal),dissolve_delay_seconds:e.Opt(e.Nat64),source_nns_neuron_id:e.Opt(e.Nat64),stake_e8s:e.Opt(e.Nat64),followees:e.Vec(t),hotkey:e.Opt(e.Principal),neuron_id:e.Opt(t)}),re=e.Record({neuron_parameters:e.Vec(ae)}),ie=e.Record({id:e.Opt(t),status:e.Int32}),_e=e.Record({swap_neurons:e.Vec(ie)}),ce=e.Variant({Ok:_e,Err:e.Int32}),de=e.Record({claim_swap_neurons_result:e.Opt(ce)}),pe=e.Record({maturity_modulation:e.Opt(c)}),ue=e.Record({url:e.Opt(e.Text),logo:e.Opt(e.Text),name:e.Opt(e.Text),description:e.Opt(e.Text)}),le=e.Record({mode:e.Opt(e.Int32)}),me=e.Record({neuron_id:e.Opt(t)}),Ne=e.Variant({Error:i,Neuron:p}),Oe=e.Record({result:e.Opt(Ne)}),h=e.Record({proposal_id:e.Opt(r)}),Re=e.Variant({Error:i,Proposal:N}),ge=e.Record({result:e.Opt(Re)}),ve=e.Variant({stopped:e.Null,stopping:e.Null,running:e.Null}),ye=e.Record({freezing_threshold:e.Nat,controllers:e.Vec(e.Principal),memory_allocation:e.Nat,compute_allocation:e.Nat}),Se=e.Record({status:ve,memory_size:e.Nat,cycles:e.Nat,settings:ye,idle_cycles_burned_per_day:e.Nat,module_hash:e.Opt(e.Vec(e.Nat8))}),Ve=e.Record({deployed_version:e.Opt(l),pending_version:e.Opt(R)}),fe=e.Record({sns_initialization_parameters:e.Text}),Pe=e.Record({reserved_ids:e.Vec(e.Nat64),functions:e.Vec(o)}),Te=e.Record({of_principal:e.Opt(e.Principal),limit:e.Nat32,start_page_at:e.Opt(t)}),be=e.Record({neurons:e.Vec(p)}),xe=e.Record({include_reward_status:e.Vec(e.Int32),before_proposal:e.Opt(r),limit:e.Nat32,exclude_type:e.Vec(e.Nat64),include_status:e.Vec(e.Int32)}),we=e.Record({proposals:e.Vec(N)}),Me=e.Record({percentage_to_stake:e.Opt(e.Nat32)}),he=e.Variant({Split:y,Follow:S,DisburseMaturity:V,ClaimOrRefresh:T,Configure:f,RegisterVote:P,MakeProposal:m,StakeMaturity:Me,RemoveNeuronPermissions:b,AddNeuronPermissions:x,MergeMaturity:w,Disburse:M}),Fe=e.Record({subaccount:e.Vec(e.Nat8),command:e.Opt(he)}),Ce=e.Record({created_neuron_id:e.Opt(t)}),Ae=e.Record({amount_disbursed_e8s:e.Nat64,amount_deducted_e8s:e.Opt(e.Nat64)}),Ee=e.Record({refreshed_neuron_id:e.Opt(t)}),ke=e.Record({maturity_e8s:e.Nat64,staked_maturity_e8s:e.Nat64}),Ge=e.Record({merged_maturity_e8s:e.Nat64,new_stake_e8s:e.Nat64}),Ue=e.Record({transfer_block_height:e.Nat64}),qe=e.Variant({Error:i,Split:Ce,Follow:e.Record({}),DisburseMaturity:Ae,ClaimOrRefresh:Ee,Configure:e.Record({}),RegisterVote:e.Record({}),MakeProposal:h,RemoveNeuronPermission:e.Record({}),StakeMaturity:ke,MergeMaturity:Ge,Disburse:Ue,AddNeuronPermission:e.Record({})}),Be=e.Record({command:e.Opt(qe)}),ze=e.Record({recipient:e.Opt(_),amount_e8s:e.Opt(e.Nat64)}),Ye=e.Record({mode:e.Int32});return e.Service({add_maturity:e.Func([oe],[ne],[]),claim_swap_neurons:e.Func([re],[de],[]),fail_stuck_upgrade_in_progress:e.Func([e.Record({})],[e.Record({})],[]),get_build_metadata:e.Func([],[e.Text],["query"]),get_latest_reward_event:e.Func([],[O],["query"]),get_maturity_modulation:e.Func([e.Record({})],[pe],[]),get_metadata:e.Func([e.Record({})],[ue],["query"]),get_mode:e.Func([e.Record({})],[le],["query"]),get_nervous_system_parameters:e.Func([e.Null],[s],["query"]),get_neuron:e.Func([me],[Oe],["query"]),get_proposal:e.Func([h],[ge],["query"]),get_root_canister_status:e.Func([e.Null],[Se],[]),get_running_sns_version:e.Func([e.Record({})],[Ve],["query"]),get_sns_initialization_parameters:e.Func([e.Record({})],[fe],["query"]),list_nervous_system_functions:e.Func([],[Pe],["query"]),list_neurons:e.Func([Te],[be],["query"]),list_proposals:e.Func([xe],[we],["query"]),manage_neuron:e.Func([Fe],[Be],[]),mint_tokens:e.Func([ze],[e.Record({})],[]),set_mode:e.Func([Ye],[e.Record({})],[]),update_neuron:e.Func([p],[e.Opt(i)],[])})};var We=class e extends at{constructor(){super(...arguments);this.addMaturity=async u=>{let{id:o,amountE8s:a}=u,{new_maturity_e8s:c}=await this.caller(u).add_maturity({id:Xe(o),amount_e8s:Xe(a)}),t=it(c);if(_t(t)||t<a)throw new je("No maturity added")}}static create(u){let{service:o,certifiedService:a,canisterId:c}=rt({options:u,idlFactory:Ke,certifiedIdlFactory:Qe});return new e(c,o,a)}};export{ot as GetOpenTicketErrorType,nt as NewSaleTicketResponseErrorType,Ze as SnsGovernanceCanister,je as SnsGovernanceError,We as SnsGovernanceTestCanister,De as SnsNeuronPermissionType,et as SnsProposalDecisionStatus,Le as SnsProposalRewardStatus,$e as SnsRootCanister,Ie as SnsSwapCanister,pt as SnsSwapGetOpenTicketError,st as SnsSwapLifecycle,dt as SnsSwapNewTicketError,tt as SnsVote,lt as SnsWrapper,ct as UnsupportedMethodError,He as fromCandidAction,mt as initSnsWrapper,ut as neuronSubaccount};
1
+ import{a as Ne}from"./chunk-V6OGOPZC.js";import{a as Zt,b as $t}from"./chunk-ONZVK7WV.js";import{a as It}from"./chunk-Q2SQYFV4.js";import{a as le,b as me}from"./chunk-BMI3IY3I.js";import{a as Qt}from"./chunk-4INNMFYU.js";import{a as de,b as pe,c as ue,d as Dt}from"./chunk-ZF2AGKNK.js";var Lt=(s=>(s[s.NEURON_PERMISSION_TYPE_UNSPECIFIED=0]="NEURON_PERMISSION_TYPE_UNSPECIFIED",s[s.NEURON_PERMISSION_TYPE_CONFIGURE_DISSOLVE_STATE=1]="NEURON_PERMISSION_TYPE_CONFIGURE_DISSOLVE_STATE",s[s.NEURON_PERMISSION_TYPE_MANAGE_PRINCIPALS=2]="NEURON_PERMISSION_TYPE_MANAGE_PRINCIPALS",s[s.NEURON_PERMISSION_TYPE_SUBMIT_PROPOSAL=3]="NEURON_PERMISSION_TYPE_SUBMIT_PROPOSAL",s[s.NEURON_PERMISSION_TYPE_VOTE=4]="NEURON_PERMISSION_TYPE_VOTE",s[s.NEURON_PERMISSION_TYPE_DISBURSE=5]="NEURON_PERMISSION_TYPE_DISBURSE",s[s.NEURON_PERMISSION_TYPE_SPLIT=6]="NEURON_PERMISSION_TYPE_SPLIT",s[s.NEURON_PERMISSION_TYPE_MERGE_MATURITY=7]="NEURON_PERMISSION_TYPE_MERGE_MATURITY",s[s.NEURON_PERMISSION_TYPE_DISBURSE_MATURITY=8]="NEURON_PERMISSION_TYPE_DISBURSE_MATURITY",s[s.NEURON_PERMISSION_TYPE_STAKE_MATURITY=9]="NEURON_PERMISSION_TYPE_STAKE_MATURITY",s[s.NEURON_PERMISSION_TYPE_MANAGE_VOTING_PERMISSION=10]="NEURON_PERMISSION_TYPE_MANAGE_VOTING_PERMISSION",s))(Lt||{}),te=(a=>(a[a.PROPOSAL_REWARD_STATUS_UNSPECIFIED=0]="PROPOSAL_REWARD_STATUS_UNSPECIFIED",a[a.PROPOSAL_REWARD_STATUS_ACCEPT_VOTES=1]="PROPOSAL_REWARD_STATUS_ACCEPT_VOTES",a[a.PROPOSAL_REWARD_STATUS_READY_TO_SETTLE=2]="PROPOSAL_REWARD_STATUS_READY_TO_SETTLE",a[a.PROPOSAL_REWARD_STATUS_SETTLED=3]="PROPOSAL_REWARD_STATUS_SETTLED",a))(te||{}),ee=(e=>(e[e.PROPOSAL_DECISION_STATUS_UNSPECIFIED=0]="PROPOSAL_DECISION_STATUS_UNSPECIFIED",e[e.PROPOSAL_DECISION_STATUS_OPEN=1]="PROPOSAL_DECISION_STATUS_OPEN",e[e.PROPOSAL_DECISION_STATUS_REJECTED=2]="PROPOSAL_DECISION_STATUS_REJECTED",e[e.PROPOSAL_DECISION_STATUS_ADOPTED=3]="PROPOSAL_DECISION_STATUS_ADOPTED",e[e.PROPOSAL_DECISION_STATUS_EXECUTED=4]="PROPOSAL_DECISION_STATUS_EXECUTED",e[e.PROPOSAL_DECISION_STATUS_FAILED=5]="PROPOSAL_DECISION_STATUS_FAILED",e))(ee||{}),se=(o=>(o[o.Unspecified=0]="Unspecified",o[o.Yes=1]="Yes",o[o.No=2]="No",o))(se||{});var oe=(e=>(e[e.Unspecified=0]="Unspecified",e[e.Pending=1]="Pending",e[e.Open=2]="Open",e[e.Committed=3]="Committed",e[e.Aborted=4]="Aborted",e[e.Adopted=5]="Adopted",e))(oe||{}),ne=(o=>(o[o.TYPE_UNSPECIFIED=0]="TYPE_UNSPECIFIED",o[o.TYPE_SALE_NOT_OPEN=1]="TYPE_SALE_NOT_OPEN",o[o.TYPE_SALE_CLOSED=2]="TYPE_SALE_CLOSED",o))(ne||{}),ae=(n=>(n[n.TYPE_UNSPECIFIED=0]="TYPE_UNSPECIFIED",n[n.TYPE_SALE_NOT_OPEN=1]="TYPE_SALE_NOT_OPEN",n[n.TYPE_SALE_CLOSED=2]="TYPE_SALE_CLOSED",n[n.TYPE_TICKET_EXISTS=3]="TYPE_TICKET_EXISTS",n[n.TYPE_INVALID_USER_AMOUNT=4]="TYPE_INVALID_USER_AMOUNT",n[n.TYPE_INVALID_SUBACCOUNT=5]="TYPE_INVALID_SUBACCOUNT",n[n.TYPE_INVALID_PRINCIPAL=6]="TYPE_INVALID_PRINCIPAL",n))(ae||{});import{Canister as re,createServices as ie,fromNullable as _e,isNullish as ce,toNullable as Jt}from"@dfinity/utils";var Kt=({IDL:t})=>{let C=t.Record({validator_canister_id:t.Opt(t.Principal),target_canister_id:t.Opt(t.Principal),validator_method_name:t.Opt(t.Text),target_method_name:t.Opt(t.Text)}),u=t.Variant({NativeNervousSystemFunction:t.Record({}),GenericNervousSystemFunction:C}),o=t.Record({id:t.Nat64,name:t.Text,description:t.Opt(t.Text),function_type:t.Opt(u)}),a=t.Record({not_dissolving_neurons_e8s_buckets:t.Vec(t.Tuple(t.Nat64,t.Float64)),garbage_collectable_neurons_count:t.Nat64,neurons_with_invalid_stake_count:t.Nat64,not_dissolving_neurons_count_buckets:t.Vec(t.Tuple(t.Nat64,t.Nat64)),neurons_with_less_than_6_months_dissolve_delay_count:t.Nat64,dissolved_neurons_count:t.Nat64,total_staked_e8s:t.Nat64,total_supply_governance_tokens:t.Nat64,not_dissolving_neurons_count:t.Nat64,dissolved_neurons_e8s:t.Nat64,neurons_with_less_than_6_months_dissolve_delay_e8s:t.Nat64,dissolving_neurons_count_buckets:t.Vec(t.Tuple(t.Nat64,t.Nat64)),dissolving_neurons_count:t.Nat64,dissolving_neurons_e8s_buckets:t.Vec(t.Tuple(t.Nat64,t.Float64)),timestamp_seconds:t.Nat64}),c=t.Record({current_basis_points:t.Opt(t.Int32),updated_at_timestamp_seconds:t.Opt(t.Nat64)}),e=t.Record({id:t.Vec(t.Nat8)}),n=t.Record({followees:t.Vec(e)}),A=t.Record({followees:t.Vec(t.Tuple(t.Nat64,n))}),d=t.Record({permissions:t.Vec(t.Int32)}),E=t.Record({final_reward_rate_basis_points:t.Opt(t.Nat64),initial_reward_rate_basis_points:t.Opt(t.Nat64),reward_rate_transition_duration_seconds:t.Opt(t.Nat64),round_duration_seconds:t.Opt(t.Nat64)}),s=t.Record({default_followees:t.Opt(A),max_dissolve_delay_seconds:t.Opt(t.Nat64),max_dissolve_delay_bonus_percentage:t.Opt(t.Nat64),max_followees_per_function:t.Opt(t.Nat64),neuron_claimer_permissions:t.Opt(d),neuron_minimum_stake_e8s:t.Opt(t.Nat64),max_neuron_age_for_age_bonus:t.Opt(t.Nat64),initial_voting_period_seconds:t.Opt(t.Nat64),neuron_minimum_dissolve_delay_to_vote_seconds:t.Opt(t.Nat64),reject_cost_e8s:t.Opt(t.Nat64),max_proposals_to_keep_per_action:t.Opt(t.Nat32),wait_for_quiet_deadline_increase_seconds:t.Opt(t.Nat64),max_number_of_neurons:t.Opt(t.Nat64),transaction_fee_e8s:t.Opt(t.Nat64),max_number_of_proposals_with_ballots:t.Opt(t.Nat64),max_age_bonus_percentage:t.Opt(t.Nat64),neuron_grantable_permissions:t.Opt(d),voting_rewards_parameters:t.Opt(E),maturity_modulation_disabled:t.Opt(t.Bool),max_number_of_principals_per_neuron:t.Opt(t.Nat64)}),l=t.Record({archive_wasm_hash:t.Vec(t.Nat8),root_wasm_hash:t.Vec(t.Nat8),swap_wasm_hash:t.Vec(t.Nat8),ledger_wasm_hash:t.Vec(t.Nat8),governance_wasm_hash:t.Vec(t.Nat8),index_wasm_hash:t.Vec(t.Nat8)}),r=t.Record({id:t.Nat64}),O=t.Record({rounds_since_last_distribution:t.Opt(t.Nat64),actual_timestamp_seconds:t.Nat64,end_timestamp_seconds:t.Opt(t.Nat64),total_available_e8s_equivalent:t.Opt(t.Nat64),distributed_e8s_equivalent:t.Nat64,round:t.Nat64,settled_proposals:t.Vec(r)}),R=t.Record({mark_failed_at_seconds:t.Nat64,checking_upgrade_lock:t.Nat64,proposal_id:t.Nat64,target_version:t.Opt(l)}),i=t.Record({error_message:t.Text,error_type:t.Int32}),k=t.Record({vote:t.Int32,cast_timestamp_seconds:t.Nat64,voting_power:t.Nat64}),g=t.Record({basis_points:t.Opt(t.Nat64)}),G=t.Record({no:t.Nat64,yes:t.Nat64,total:t.Nat64,timestamp_seconds:t.Nat64}),U=t.Record({canister_ids:t.Vec(t.Principal)}),v=t.Record({subaccount:t.Vec(t.Nat8)}),q=t.Record({from_treasury:t.Int32,to_principal:t.Opt(t.Principal),to_subaccount:t.Opt(v),memo:t.Opt(t.Nat64),amount_e8s:t.Nat64}),B=t.Record({new_canister_wasm:t.Vec(t.Nat8),mode:t.Opt(t.Int32),canister_id:t.Opt(t.Principal),canister_upgrade_arg:t.Opt(t.Vec(t.Nat8))}),z=t.Record({canister_ids:t.Vec(t.Principal),new_controllers:t.Vec(t.Principal)}),y=t.Record({url:t.Opt(t.Text),logo:t.Opt(t.Text),name:t.Opt(t.Text),description:t.Opt(t.Text)}),Y=t.Record({function_id:t.Nat64,payload:t.Vec(t.Nat8)}),W=t.Record({motion_text:t.Text}),j=t.Variant({ManageNervousSystemParameters:s,AddGenericNervousSystemFunction:o,RemoveGenericNervousSystemFunction:t.Nat64,UpgradeSnsToNextVersion:t.Record({}),RegisterDappCanisters:U,TransferSnsTreasuryFunds:q,UpgradeSnsControlledCanister:B,DeregisterDappCanisters:z,Unspecified:t.Record({}),ManageSnsMetadata:y,ExecuteGenericNervousSystemFunction:Y,Motion:W}),m=t.Record({url:t.Text,title:t.Text,action:t.Opt(j),summary:t.Text}),Q=t.Record({current_deadline_timestamp_seconds:t.Nat64}),N=t.Record({id:t.Opt(r),payload_text_rendering:t.Opt(t.Text),action:t.Nat64,failure_reason:t.Opt(i),ballots:t.Vec(t.Tuple(t.Text,k)),minimum_yes_proportion_of_total:t.Opt(g),reward_event_round:t.Nat64,failed_timestamp_seconds:t.Nat64,reward_event_end_timestamp_seconds:t.Opt(t.Nat64),proposal_creation_timestamp_seconds:t.Nat64,initial_voting_period_seconds:t.Nat64,reject_cost_e8s:t.Nat64,latest_tally:t.Opt(G),wait_for_quiet_deadline_increase_seconds:t.Nat64,decided_timestamp_seconds:t.Nat64,proposal:t.Opt(m),proposer:t.Opt(e),wait_for_quiet_state:t.Opt(Q),minimum_yes_proportion_of_exercised:t.Opt(g),is_eligible_for_rewards:t.Bool,executed_timestamp_seconds:t.Nat64}),S=t.Record({memo:t.Nat64,amount_e8s:t.Nat64}),f=t.Record({function_id:t.Nat64,followees:t.Vec(e)}),_=t.Record({owner:t.Opt(t.Principal),subaccount:t.Opt(v)}),V=t.Record({to_account:t.Opt(_),percentage_to_disburse:t.Nat32}),K=t.Record({requested_setting_for_auto_stake_maturity:t.Bool}),X=t.Record({additional_dissolve_delay_seconds:t.Nat32}),J=t.Record({dissolve_timestamp_seconds:t.Nat64}),H=t.Variant({ChangeAutoStakeMaturity:K,StopDissolving:t.Record({}),StartDissolving:t.Record({}),IncreaseDissolveDelay:X,SetDissolveTimestamp:J}),P=t.Record({operation:t.Opt(H)}),b=t.Record({vote:t.Int32,proposal:t.Opt(r)}),Z=t.Record({amount_to_be_disbursed_e8s:t.Nat64,to_account:t.Opt(_)}),$=t.Record({controller:t.Opt(t.Principal),memo:t.Nat64}),I=t.Variant({MemoAndController:$,NeuronId:t.Record({})}),T=t.Record({by:t.Opt(I)}),x=t.Record({permissions_to_remove:t.Opt(d),principal_id:t.Opt(t.Principal)}),w=t.Record({permissions_to_add:t.Opt(d),principal_id:t.Opt(t.Principal)}),M=t.Record({percentage_to_merge:t.Nat32}),D=t.Record({e8s:t.Nat64}),h=t.Record({to_account:t.Opt(_),amount:t.Opt(D)}),L=t.Variant({Split:S,Follow:f,DisburseMaturity:V,Configure:P,RegisterVote:b,SyncCommand:t.Record({}),MakeProposal:m,FinalizeDisburseMaturity:Z,ClaimOrRefreshNeuron:T,RemoveNeuronPermissions:x,AddNeuronPermissions:w,MergeMaturity:M,Disburse:h}),tt=t.Record({command:t.Opt(L),timestamp:t.Nat64}),et=t.Record({principal:t.Opt(t.Principal),permission_type:t.Vec(t.Int32)}),st=t.Variant({DissolveDelaySeconds:t.Nat64,WhenDissolvedTimestampSeconds:t.Nat64}),ot=t.Record({timestamp_of_disbursement_seconds:t.Nat64,amount_e8s:t.Nat64,account_to_disburse_to:t.Opt(_)}),p=t.Record({id:t.Opt(e),staked_maturity_e8s_equivalent:t.Opt(t.Nat64),permissions:t.Vec(et),maturity_e8s_equivalent:t.Nat64,cached_neuron_stake_e8s:t.Nat64,created_timestamp_seconds:t.Nat64,source_nns_neuron_id:t.Opt(t.Nat64),auto_stake_maturity:t.Opt(t.Bool),aging_since_timestamp_seconds:t.Nat64,dissolve_state:t.Opt(st),voting_power_percentage_multiplier:t.Nat64,vesting_period_seconds:t.Opt(t.Nat64),disburse_maturity_in_progress:t.Vec(ot),followees:t.Vec(t.Tuple(t.Nat64,n)),neuron_fees_e8s:t.Nat64}),Ht=t.Record({root_canister_id:t.Opt(t.Principal),id_to_nervous_system_functions:t.Vec(t.Tuple(t.Nat64,o)),metrics:t.Opt(a),maturity_modulation:t.Opt(c),mode:t.Int32,parameters:t.Opt(s),is_finalizing_disburse_maturity:t.Opt(t.Bool),deployed_version:t.Opt(l),sns_initialization_parameters:t.Text,latest_reward_event:t.Opt(O),pending_version:t.Opt(R),swap_canister_id:t.Opt(t.Principal),ledger_canister_id:t.Opt(t.Principal),proposals:t.Vec(t.Tuple(t.Nat64,N)),in_flight_commands:t.Vec(t.Tuple(t.Text,tt)),sns_metadata:t.Opt(y),neurons:t.Vec(t.Tuple(t.Text,p)),genesis_timestamp_seconds:t.Nat64}),nt=t.Record({id:t.Opt(e),amount_e8s:t.Opt(t.Nat64)}),at=t.Record({new_maturity_e8s:t.Opt(t.Nat64)}),rt=t.Record({controller:t.Opt(t.Principal),dissolve_delay_seconds:t.Opt(t.Nat64),source_nns_neuron_id:t.Opt(t.Nat64),stake_e8s:t.Opt(t.Nat64),followees:t.Vec(e),hotkey:t.Opt(t.Principal),neuron_id:t.Opt(e)}),it=t.Record({neuron_parameters:t.Vec(rt)}),_t=t.Record({id:t.Opt(e),status:t.Int32}),ct=t.Record({swap_neurons:t.Vec(_t)}),dt=t.Variant({Ok:ct,Err:t.Int32}),pt=t.Record({claim_swap_neurons_result:t.Opt(dt)}),ut=t.Record({maturity_modulation:t.Opt(c)}),lt=t.Record({url:t.Opt(t.Text),logo:t.Opt(t.Text),name:t.Opt(t.Text),description:t.Opt(t.Text)}),mt=t.Record({mode:t.Opt(t.Int32)}),Nt=t.Record({neuron_id:t.Opt(e)}),Ot=t.Variant({Error:i,Neuron:p}),Rt=t.Record({result:t.Opt(Ot)}),F=t.Record({proposal_id:t.Opt(r)}),gt=t.Variant({Error:i,Proposal:N}),vt=t.Record({result:t.Opt(gt)}),yt=t.Variant({stopped:t.Null,stopping:t.Null,running:t.Null}),St=t.Record({freezing_threshold:t.Nat,controllers:t.Vec(t.Principal),memory_allocation:t.Nat,compute_allocation:t.Nat}),ft=t.Record({status:yt,memory_size:t.Nat,cycles:t.Nat,settings:St,idle_cycles_burned_per_day:t.Nat,module_hash:t.Opt(t.Vec(t.Nat8))}),Vt=t.Record({deployed_version:t.Opt(l),pending_version:t.Opt(R)}),Pt=t.Record({sns_initialization_parameters:t.Text}),bt=t.Record({reserved_ids:t.Vec(t.Nat64),functions:t.Vec(o)}),Tt=t.Record({of_principal:t.Opt(t.Principal),limit:t.Nat32,start_page_at:t.Opt(e)}),xt=t.Record({neurons:t.Vec(p)}),wt=t.Record({include_reward_status:t.Vec(t.Int32),before_proposal:t.Opt(r),limit:t.Nat32,exclude_type:t.Vec(t.Nat64),include_status:t.Vec(t.Int32)}),Mt=t.Record({proposals:t.Vec(N)}),ht=t.Record({percentage_to_stake:t.Opt(t.Nat32)}),Ft=t.Variant({Split:S,Follow:f,DisburseMaturity:V,ClaimOrRefresh:T,Configure:P,RegisterVote:b,MakeProposal:m,StakeMaturity:ht,RemoveNeuronPermissions:x,AddNeuronPermissions:w,MergeMaturity:M,Disburse:h}),Ct=t.Record({subaccount:t.Vec(t.Nat8),command:t.Opt(Ft)}),At=t.Record({created_neuron_id:t.Opt(e)}),Et=t.Record({amount_disbursed_e8s:t.Nat64,amount_deducted_e8s:t.Opt(t.Nat64)}),kt=t.Record({refreshed_neuron_id:t.Opt(e)}),Gt=t.Record({maturity_e8s:t.Nat64,staked_maturity_e8s:t.Nat64}),Ut=t.Record({merged_maturity_e8s:t.Nat64,new_stake_e8s:t.Nat64}),qt=t.Record({transfer_block_height:t.Nat64}),Bt=t.Variant({Error:i,Split:At,Follow:t.Record({}),DisburseMaturity:Et,ClaimOrRefresh:kt,Configure:t.Record({}),RegisterVote:t.Record({}),MakeProposal:F,RemoveNeuronPermission:t.Record({}),StakeMaturity:Gt,MergeMaturity:Ut,Disburse:qt,AddNeuronPermission:t.Record({})}),zt=t.Record({command:t.Opt(Bt)}),Yt=t.Record({recipient:t.Opt(_),amount_e8s:t.Opt(t.Nat64)}),Wt=t.Record({mode:t.Int32});return t.Service({add_maturity:t.Func([nt],[at],[]),claim_swap_neurons:t.Func([it],[pt],[]),fail_stuck_upgrade_in_progress:t.Func([t.Record({})],[t.Record({})],[]),get_build_metadata:t.Func([],[t.Text],[]),get_latest_reward_event:t.Func([],[O],[]),get_maturity_modulation:t.Func([t.Record({})],[ut],[]),get_metadata:t.Func([t.Record({})],[lt],[]),get_mode:t.Func([t.Record({})],[mt],[]),get_nervous_system_parameters:t.Func([t.Null],[s],[]),get_neuron:t.Func([Nt],[Rt],[]),get_proposal:t.Func([F],[vt],[]),get_root_canister_status:t.Func([t.Null],[ft],[]),get_running_sns_version:t.Func([t.Record({})],[Vt],[]),get_sns_initialization_parameters:t.Func([t.Record({})],[Pt],[]),list_nervous_system_functions:t.Func([],[bt],[]),list_neurons:t.Func([Tt],[xt],[]),list_proposals:t.Func([wt],[Mt],[]),manage_neuron:t.Func([Ct],[zt],[]),mint_tokens:t.Func([Yt],[t.Record({})],[]),set_mode:t.Func([Wt],[t.Record({})],[]),update_neuron:t.Func([p],[t.Opt(i)],[])})};var Xt=({IDL:t})=>{let C=t.Record({validator_canister_id:t.Opt(t.Principal),target_canister_id:t.Opt(t.Principal),validator_method_name:t.Opt(t.Text),target_method_name:t.Opt(t.Text)}),u=t.Variant({NativeNervousSystemFunction:t.Record({}),GenericNervousSystemFunction:C}),o=t.Record({id:t.Nat64,name:t.Text,description:t.Opt(t.Text),function_type:t.Opt(u)}),a=t.Record({not_dissolving_neurons_e8s_buckets:t.Vec(t.Tuple(t.Nat64,t.Float64)),garbage_collectable_neurons_count:t.Nat64,neurons_with_invalid_stake_count:t.Nat64,not_dissolving_neurons_count_buckets:t.Vec(t.Tuple(t.Nat64,t.Nat64)),neurons_with_less_than_6_months_dissolve_delay_count:t.Nat64,dissolved_neurons_count:t.Nat64,total_staked_e8s:t.Nat64,total_supply_governance_tokens:t.Nat64,not_dissolving_neurons_count:t.Nat64,dissolved_neurons_e8s:t.Nat64,neurons_with_less_than_6_months_dissolve_delay_e8s:t.Nat64,dissolving_neurons_count_buckets:t.Vec(t.Tuple(t.Nat64,t.Nat64)),dissolving_neurons_count:t.Nat64,dissolving_neurons_e8s_buckets:t.Vec(t.Tuple(t.Nat64,t.Float64)),timestamp_seconds:t.Nat64}),c=t.Record({current_basis_points:t.Opt(t.Int32),updated_at_timestamp_seconds:t.Opt(t.Nat64)}),e=t.Record({id:t.Vec(t.Nat8)}),n=t.Record({followees:t.Vec(e)}),A=t.Record({followees:t.Vec(t.Tuple(t.Nat64,n))}),d=t.Record({permissions:t.Vec(t.Int32)}),E=t.Record({final_reward_rate_basis_points:t.Opt(t.Nat64),initial_reward_rate_basis_points:t.Opt(t.Nat64),reward_rate_transition_duration_seconds:t.Opt(t.Nat64),round_duration_seconds:t.Opt(t.Nat64)}),s=t.Record({default_followees:t.Opt(A),max_dissolve_delay_seconds:t.Opt(t.Nat64),max_dissolve_delay_bonus_percentage:t.Opt(t.Nat64),max_followees_per_function:t.Opt(t.Nat64),neuron_claimer_permissions:t.Opt(d),neuron_minimum_stake_e8s:t.Opt(t.Nat64),max_neuron_age_for_age_bonus:t.Opt(t.Nat64),initial_voting_period_seconds:t.Opt(t.Nat64),neuron_minimum_dissolve_delay_to_vote_seconds:t.Opt(t.Nat64),reject_cost_e8s:t.Opt(t.Nat64),max_proposals_to_keep_per_action:t.Opt(t.Nat32),wait_for_quiet_deadline_increase_seconds:t.Opt(t.Nat64),max_number_of_neurons:t.Opt(t.Nat64),transaction_fee_e8s:t.Opt(t.Nat64),max_number_of_proposals_with_ballots:t.Opt(t.Nat64),max_age_bonus_percentage:t.Opt(t.Nat64),neuron_grantable_permissions:t.Opt(d),voting_rewards_parameters:t.Opt(E),maturity_modulation_disabled:t.Opt(t.Bool),max_number_of_principals_per_neuron:t.Opt(t.Nat64)}),l=t.Record({archive_wasm_hash:t.Vec(t.Nat8),root_wasm_hash:t.Vec(t.Nat8),swap_wasm_hash:t.Vec(t.Nat8),ledger_wasm_hash:t.Vec(t.Nat8),governance_wasm_hash:t.Vec(t.Nat8),index_wasm_hash:t.Vec(t.Nat8)}),r=t.Record({id:t.Nat64}),O=t.Record({rounds_since_last_distribution:t.Opt(t.Nat64),actual_timestamp_seconds:t.Nat64,end_timestamp_seconds:t.Opt(t.Nat64),total_available_e8s_equivalent:t.Opt(t.Nat64),distributed_e8s_equivalent:t.Nat64,round:t.Nat64,settled_proposals:t.Vec(r)}),R=t.Record({mark_failed_at_seconds:t.Nat64,checking_upgrade_lock:t.Nat64,proposal_id:t.Nat64,target_version:t.Opt(l)}),i=t.Record({error_message:t.Text,error_type:t.Int32}),k=t.Record({vote:t.Int32,cast_timestamp_seconds:t.Nat64,voting_power:t.Nat64}),g=t.Record({basis_points:t.Opt(t.Nat64)}),G=t.Record({no:t.Nat64,yes:t.Nat64,total:t.Nat64,timestamp_seconds:t.Nat64}),U=t.Record({canister_ids:t.Vec(t.Principal)}),v=t.Record({subaccount:t.Vec(t.Nat8)}),q=t.Record({from_treasury:t.Int32,to_principal:t.Opt(t.Principal),to_subaccount:t.Opt(v),memo:t.Opt(t.Nat64),amount_e8s:t.Nat64}),B=t.Record({new_canister_wasm:t.Vec(t.Nat8),mode:t.Opt(t.Int32),canister_id:t.Opt(t.Principal),canister_upgrade_arg:t.Opt(t.Vec(t.Nat8))}),z=t.Record({canister_ids:t.Vec(t.Principal),new_controllers:t.Vec(t.Principal)}),y=t.Record({url:t.Opt(t.Text),logo:t.Opt(t.Text),name:t.Opt(t.Text),description:t.Opt(t.Text)}),Y=t.Record({function_id:t.Nat64,payload:t.Vec(t.Nat8)}),W=t.Record({motion_text:t.Text}),j=t.Variant({ManageNervousSystemParameters:s,AddGenericNervousSystemFunction:o,RemoveGenericNervousSystemFunction:t.Nat64,UpgradeSnsToNextVersion:t.Record({}),RegisterDappCanisters:U,TransferSnsTreasuryFunds:q,UpgradeSnsControlledCanister:B,DeregisterDappCanisters:z,Unspecified:t.Record({}),ManageSnsMetadata:y,ExecuteGenericNervousSystemFunction:Y,Motion:W}),m=t.Record({url:t.Text,title:t.Text,action:t.Opt(j),summary:t.Text}),Q=t.Record({current_deadline_timestamp_seconds:t.Nat64}),N=t.Record({id:t.Opt(r),payload_text_rendering:t.Opt(t.Text),action:t.Nat64,failure_reason:t.Opt(i),ballots:t.Vec(t.Tuple(t.Text,k)),minimum_yes_proportion_of_total:t.Opt(g),reward_event_round:t.Nat64,failed_timestamp_seconds:t.Nat64,reward_event_end_timestamp_seconds:t.Opt(t.Nat64),proposal_creation_timestamp_seconds:t.Nat64,initial_voting_period_seconds:t.Nat64,reject_cost_e8s:t.Nat64,latest_tally:t.Opt(G),wait_for_quiet_deadline_increase_seconds:t.Nat64,decided_timestamp_seconds:t.Nat64,proposal:t.Opt(m),proposer:t.Opt(e),wait_for_quiet_state:t.Opt(Q),minimum_yes_proportion_of_exercised:t.Opt(g),is_eligible_for_rewards:t.Bool,executed_timestamp_seconds:t.Nat64}),S=t.Record({memo:t.Nat64,amount_e8s:t.Nat64}),f=t.Record({function_id:t.Nat64,followees:t.Vec(e)}),_=t.Record({owner:t.Opt(t.Principal),subaccount:t.Opt(v)}),V=t.Record({to_account:t.Opt(_),percentage_to_disburse:t.Nat32}),K=t.Record({requested_setting_for_auto_stake_maturity:t.Bool}),X=t.Record({additional_dissolve_delay_seconds:t.Nat32}),J=t.Record({dissolve_timestamp_seconds:t.Nat64}),H=t.Variant({ChangeAutoStakeMaturity:K,StopDissolving:t.Record({}),StartDissolving:t.Record({}),IncreaseDissolveDelay:X,SetDissolveTimestamp:J}),P=t.Record({operation:t.Opt(H)}),b=t.Record({vote:t.Int32,proposal:t.Opt(r)}),Z=t.Record({amount_to_be_disbursed_e8s:t.Nat64,to_account:t.Opt(_)}),$=t.Record({controller:t.Opt(t.Principal),memo:t.Nat64}),I=t.Variant({MemoAndController:$,NeuronId:t.Record({})}),T=t.Record({by:t.Opt(I)}),x=t.Record({permissions_to_remove:t.Opt(d),principal_id:t.Opt(t.Principal)}),w=t.Record({permissions_to_add:t.Opt(d),principal_id:t.Opt(t.Principal)}),M=t.Record({percentage_to_merge:t.Nat32}),D=t.Record({e8s:t.Nat64}),h=t.Record({to_account:t.Opt(_),amount:t.Opt(D)}),L=t.Variant({Split:S,Follow:f,DisburseMaturity:V,Configure:P,RegisterVote:b,SyncCommand:t.Record({}),MakeProposal:m,FinalizeDisburseMaturity:Z,ClaimOrRefreshNeuron:T,RemoveNeuronPermissions:x,AddNeuronPermissions:w,MergeMaturity:M,Disburse:h}),tt=t.Record({command:t.Opt(L),timestamp:t.Nat64}),et=t.Record({principal:t.Opt(t.Principal),permission_type:t.Vec(t.Int32)}),st=t.Variant({DissolveDelaySeconds:t.Nat64,WhenDissolvedTimestampSeconds:t.Nat64}),ot=t.Record({timestamp_of_disbursement_seconds:t.Nat64,amount_e8s:t.Nat64,account_to_disburse_to:t.Opt(_)}),p=t.Record({id:t.Opt(e),staked_maturity_e8s_equivalent:t.Opt(t.Nat64),permissions:t.Vec(et),maturity_e8s_equivalent:t.Nat64,cached_neuron_stake_e8s:t.Nat64,created_timestamp_seconds:t.Nat64,source_nns_neuron_id:t.Opt(t.Nat64),auto_stake_maturity:t.Opt(t.Bool),aging_since_timestamp_seconds:t.Nat64,dissolve_state:t.Opt(st),voting_power_percentage_multiplier:t.Nat64,vesting_period_seconds:t.Opt(t.Nat64),disburse_maturity_in_progress:t.Vec(ot),followees:t.Vec(t.Tuple(t.Nat64,n)),neuron_fees_e8s:t.Nat64}),Ht=t.Record({root_canister_id:t.Opt(t.Principal),id_to_nervous_system_functions:t.Vec(t.Tuple(t.Nat64,o)),metrics:t.Opt(a),maturity_modulation:t.Opt(c),mode:t.Int32,parameters:t.Opt(s),is_finalizing_disburse_maturity:t.Opt(t.Bool),deployed_version:t.Opt(l),sns_initialization_parameters:t.Text,latest_reward_event:t.Opt(O),pending_version:t.Opt(R),swap_canister_id:t.Opt(t.Principal),ledger_canister_id:t.Opt(t.Principal),proposals:t.Vec(t.Tuple(t.Nat64,N)),in_flight_commands:t.Vec(t.Tuple(t.Text,tt)),sns_metadata:t.Opt(y),neurons:t.Vec(t.Tuple(t.Text,p)),genesis_timestamp_seconds:t.Nat64}),nt=t.Record({id:t.Opt(e),amount_e8s:t.Opt(t.Nat64)}),at=t.Record({new_maturity_e8s:t.Opt(t.Nat64)}),rt=t.Record({controller:t.Opt(t.Principal),dissolve_delay_seconds:t.Opt(t.Nat64),source_nns_neuron_id:t.Opt(t.Nat64),stake_e8s:t.Opt(t.Nat64),followees:t.Vec(e),hotkey:t.Opt(t.Principal),neuron_id:t.Opt(e)}),it=t.Record({neuron_parameters:t.Vec(rt)}),_t=t.Record({id:t.Opt(e),status:t.Int32}),ct=t.Record({swap_neurons:t.Vec(_t)}),dt=t.Variant({Ok:ct,Err:t.Int32}),pt=t.Record({claim_swap_neurons_result:t.Opt(dt)}),ut=t.Record({maturity_modulation:t.Opt(c)}),lt=t.Record({url:t.Opt(t.Text),logo:t.Opt(t.Text),name:t.Opt(t.Text),description:t.Opt(t.Text)}),mt=t.Record({mode:t.Opt(t.Int32)}),Nt=t.Record({neuron_id:t.Opt(e)}),Ot=t.Variant({Error:i,Neuron:p}),Rt=t.Record({result:t.Opt(Ot)}),F=t.Record({proposal_id:t.Opt(r)}),gt=t.Variant({Error:i,Proposal:N}),vt=t.Record({result:t.Opt(gt)}),yt=t.Variant({stopped:t.Null,stopping:t.Null,running:t.Null}),St=t.Record({freezing_threshold:t.Nat,controllers:t.Vec(t.Principal),memory_allocation:t.Nat,compute_allocation:t.Nat}),ft=t.Record({status:yt,memory_size:t.Nat,cycles:t.Nat,settings:St,idle_cycles_burned_per_day:t.Nat,module_hash:t.Opt(t.Vec(t.Nat8))}),Vt=t.Record({deployed_version:t.Opt(l),pending_version:t.Opt(R)}),Pt=t.Record({sns_initialization_parameters:t.Text}),bt=t.Record({reserved_ids:t.Vec(t.Nat64),functions:t.Vec(o)}),Tt=t.Record({of_principal:t.Opt(t.Principal),limit:t.Nat32,start_page_at:t.Opt(e)}),xt=t.Record({neurons:t.Vec(p)}),wt=t.Record({include_reward_status:t.Vec(t.Int32),before_proposal:t.Opt(r),limit:t.Nat32,exclude_type:t.Vec(t.Nat64),include_status:t.Vec(t.Int32)}),Mt=t.Record({proposals:t.Vec(N)}),ht=t.Record({percentage_to_stake:t.Opt(t.Nat32)}),Ft=t.Variant({Split:S,Follow:f,DisburseMaturity:V,ClaimOrRefresh:T,Configure:P,RegisterVote:b,MakeProposal:m,StakeMaturity:ht,RemoveNeuronPermissions:x,AddNeuronPermissions:w,MergeMaturity:M,Disburse:h}),Ct=t.Record({subaccount:t.Vec(t.Nat8),command:t.Opt(Ft)}),At=t.Record({created_neuron_id:t.Opt(e)}),Et=t.Record({amount_disbursed_e8s:t.Nat64,amount_deducted_e8s:t.Opt(t.Nat64)}),kt=t.Record({refreshed_neuron_id:t.Opt(e)}),Gt=t.Record({maturity_e8s:t.Nat64,staked_maturity_e8s:t.Nat64}),Ut=t.Record({merged_maturity_e8s:t.Nat64,new_stake_e8s:t.Nat64}),qt=t.Record({transfer_block_height:t.Nat64}),Bt=t.Variant({Error:i,Split:At,Follow:t.Record({}),DisburseMaturity:Et,ClaimOrRefresh:kt,Configure:t.Record({}),RegisterVote:t.Record({}),MakeProposal:F,RemoveNeuronPermission:t.Record({}),StakeMaturity:Gt,MergeMaturity:Ut,Disburse:qt,AddNeuronPermission:t.Record({})}),zt=t.Record({command:t.Opt(Bt)}),Yt=t.Record({recipient:t.Opt(_),amount_e8s:t.Opt(t.Nat64)}),Wt=t.Record({mode:t.Int32});return t.Service({add_maturity:t.Func([nt],[at],[]),claim_swap_neurons:t.Func([it],[pt],[]),fail_stuck_upgrade_in_progress:t.Func([t.Record({})],[t.Record({})],[]),get_build_metadata:t.Func([],[t.Text],["query"]),get_latest_reward_event:t.Func([],[O],["query"]),get_maturity_modulation:t.Func([t.Record({})],[ut],[]),get_metadata:t.Func([t.Record({})],[lt],["query"]),get_mode:t.Func([t.Record({})],[mt],["query"]),get_nervous_system_parameters:t.Func([t.Null],[s],["query"]),get_neuron:t.Func([Nt],[Rt],["query"]),get_proposal:t.Func([F],[vt],["query"]),get_root_canister_status:t.Func([t.Null],[ft],[]),get_running_sns_version:t.Func([t.Record({})],[Vt],["query"]),get_sns_initialization_parameters:t.Func([t.Record({})],[Pt],["query"]),list_nervous_system_functions:t.Func([],[bt],["query"]),list_neurons:t.Func([Tt],[xt],["query"]),list_proposals:t.Func([wt],[Mt],["query"]),manage_neuron:t.Func([Ct],[zt],[]),mint_tokens:t.Func([Yt],[t.Record({})],[]),set_mode:t.Func([Wt],[t.Record({})],[]),update_neuron:t.Func([p],[t.Opt(i)],[])})};var jt=class t extends re{constructor(){super(...arguments);this.addMaturity=async u=>{let{id:o,amountE8s:a}=u,{new_maturity_e8s:c}=await this.caller(u).add_maturity({id:Jt(o),amount_e8s:Jt(a)}),e=_e(c);if(ce(e)||e<a)throw new Qt("No maturity added")}}static create(u){let{service:o,certifiedService:a,canisterId:c}=ie({options:u,idlFactory:Xt,certifiedIdlFactory:Kt});return new t(c,o,a)}};export{ne as GetOpenTicketErrorType,ae as NewSaleTicketResponseErrorType,$t as SnsGovernanceCanister,Qt as SnsGovernanceError,jt as SnsGovernanceTestCanister,Lt as SnsNeuronPermissionType,ee as SnsProposalDecisionStatus,te as SnsProposalRewardStatus,It as SnsRootCanister,Dt as SnsSwapCanister,ue as SnsSwapGetOpenTicketError,oe as SnsSwapLifecycle,pe as SnsSwapNewTicketError,se as SnsVote,me as SnsWrapper,de as UnsupportedMethodError,Zt as fromCandidAction,Ne as initSnsWrapper,le as neuronSubaccount};
2
2
  //# sourceMappingURL=index.js.map