@dfinity/sns 0.0.4 → 0.0.5

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.
@@ -1,2 +1,2 @@
1
- import{b as p}from"./chunk-CGB4OZHY.js";import{a as m}from"./chunk-VRNOICZG.js";import{a as c}from"./chunk-UHK4OUPY.js";import{a as S}from"./chunk-GYFUURE5.js";import{a as d}from"./chunk-CIBAWOSU.js";import{assertNonNullish as r,fromNullable as e}from"@dfinity/utils";var v=async({agent:n,rootOptions:f,certified:t=!0})=>{let s=c.create({...f,agent:n}),{ledger:C,swap:l,governance:y}=await s.listSnsCanisters({certified:t}),i=e(y),o=e(C),a=e(l);return r(i),r(o),r(a),new S({root:s,governance:p.create({canisterId:i,agent:n}),ledger:m.create({canisterId:o,agent:n}),swap:d.create({canisterId:a,agent:n}),certified:t})};export{v as a};
2
- //# sourceMappingURL=chunk-ZVF3C5QU.js.map
1
+ import{b as p}from"./chunk-RHJCTI4Q.js";import{a as m}from"./chunk-VRNOICZG.js";import{a as c}from"./chunk-UHK4OUPY.js";import{a as S}from"./chunk-SDKH2X73.js";import{a as d}from"./chunk-CIBAWOSU.js";import{assertNonNullish as r,fromNullable as e}from"@dfinity/utils";var v=async({agent:n,rootOptions:f,certified:t=!0})=>{let s=c.create({...f,agent:n}),{ledger:C,swap:l,governance:y}=await s.listSnsCanisters({certified:t}),i=e(y),o=e(C),a=e(l);return r(i),r(o),r(a),new S({root:s,governance:p.create({canisterId:i,agent:n}),ledger:m.create({canisterId:o,agent:n}),swap:d.create({canisterId:a,agent:n}),certified:t})};export{v as a};
2
+ //# sourceMappingURL=chunk-JAVN4ROU.js.map
@@ -1,2 +1,2 @@
1
- import{a as Te}from"./chunk-OZ3QVZ6V.js";import{createServices as Ce,fromNullable as ke,toNullable as Pe}from"@dfinity/utils";var Se=({IDL:e})=>{let t=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)}),o=e.Variant({NativeNervousSystemFunction:e.Record({}),GenericNervousSystemFunction:t}),n=e.Record({id:e.Nat64,name:e.Text,description:e.Opt(e.Text),function_type:e.Opt(o)}),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}),s=e.Record({id:e.Vec(e.Nat8)}),m=e.Record({followees:e.Vec(s)}),F=e.Record({followees:e.Vec(e.Tuple(e.Nat64,m))}),i=e.Record({permissions:e.Vec(e.Int32)}),C=e.Record({start_timestamp_seconds:e.Opt(e.Nat64),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)}),_=e.Record({default_followees:e.Opt(F),max_dissolve_delay_seconds:e.Opt(e.Nat64),max_followees_per_function:e.Opt(e.Nat64),neuron_claimer_permissions:e.Opt(i),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),neuron_grantable_permissions:e.Opt(i),voting_rewards_parameters:e.Opt(C),max_number_of_principals_per_neuron:e.Opt(e.Nat64)}),d=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)}),r=e.Record({id:e.Nat64}),k=e.Record({actual_timestamp_seconds:e.Nat64,distributed_e8s_equivalent:e.Nat64,round:e.Nat64,settled_proposals:e.Vec(r)}),N=e.Record({mark_failed_at_seconds:e.Nat64,checking_upgrade_lock:e.Nat64,proposal_id:e.Nat64,target_version:e.Opt(d)}),c=e.Record({error_message:e.Text,error_type:e.Int32}),G=e.Record({vote:e.Int32,cast_timestamp_seconds:e.Nat64,voting_power:e.Nat64}),A=e.Record({no:e.Nat64,yes:e.Nat64,total:e.Nat64,timestamp_seconds:e.Nat64}),q=e.Record({new_canister_wasm:e.Vec(e.Nat8),canister_id:e.Opt(e.Principal)}),R=e.Record({url:e.Opt(e.Text),logo:e.Opt(e.Text),name:e.Opt(e.Text),description:e.Opt(e.Text)}),E=e.Record({function_id:e.Nat64,payload:e.Vec(e.Nat8)}),U=e.Record({motion_text:e.Text}),z=e.Variant({ManageNervousSystemParameters:_,AddGenericNervousSystemFunction:n,RemoveGenericNervousSystemFunction:e.Nat64,UpgradeSnsToNextVersion:e.Record({}),UpgradeSnsControlledCanister:q,Unspecified:e.Record({}),ManageSnsMetadata:R,ExecuteGenericNervousSystemFunction:E,Motion:U}),p=e.Record({url:e.Text,title:e.Text,action:e.Opt(z),summary:e.Text}),B=e.Record({current_deadline_timestamp_seconds:e.Nat64}),l=e.Record({id:e.Opt(r),payload_text_rendering:e.Opt(e.Text),action:e.Nat64,failure_reason:e.Opt(c),ballots:e.Vec(e.Tuple(e.Text,G)),reward_event_round:e.Nat64,failed_timestamp_seconds:e.Nat64,proposal_creation_timestamp_seconds:e.Nat64,initial_voting_period_seconds:e.Nat64,reject_cost_e8s:e.Nat64,latest_tally:e.Opt(A),wait_for_quiet_deadline_increase_seconds:e.Nat64,decided_timestamp_seconds:e.Nat64,proposal:e.Opt(p),proposer:e.Opt(s),wait_for_quiet_state:e.Opt(B),is_eligible_for_rewards:e.Bool,executed_timestamp_seconds:e.Nat64}),O=e.Record({memo:e.Nat64,amount_e8s:e.Nat64}),g=e.Record({function_id:e.Nat64,followees:e.Vec(s)}),j=e.Record({subaccount:e.Vec(e.Nat8)}),v=e.Record({owner:e.Opt(e.Principal),subaccount:e.Opt(j)}),y=e.Record({to_account:e.Opt(v),percentage_to_disburse:e.Nat32}),W=e.Record({additional_dissolve_delay_seconds:e.Nat32}),Q=e.Record({dissolve_timestamp_seconds:e.Nat64}),X=e.Variant({StopDissolving:e.Record({}),StartDissolving:e.Record({}),IncreaseDissolveDelay:W,SetDissolveTimestamp:Q}),V=e.Record({operation:e.Opt(X)}),f=e.Record({vote:e.Int32,proposal:e.Opt(r)}),H=e.Record({controller:e.Opt(e.Principal),memo:e.Nat64}),J=e.Variant({MemoAndController:H,NeuronId:e.Record({})}),w=e.Record({by:e.Opt(J)}),P=e.Record({permissions_to_remove:e.Opt(i),principal_id:e.Opt(e.Principal)}),T=e.Record({permissions_to_add:e.Opt(i),principal_id:e.Opt(e.Principal)}),S=e.Record({percentage_to_merge:e.Nat32}),K=e.Record({e8s:e.Nat64}),h=e.Record({to_account:e.Opt(v),amount:e.Opt(K)}),Y=e.Variant({Split:O,Follow:g,DisburseMaturity:y,Configure:V,RegisterVote:f,MakeProposal:p,ClaimOrRefreshNeuron:w,RemoveNeuronPermissions:P,AddNeuronPermissions:T,MergeMaturity:S,Disburse:h}),Z=e.Record({command:e.Opt(Y),timestamp:e.Nat64}),$=e.Record({principal:e.Opt(e.Principal),permission_type:e.Vec(e.Int32)}),D=e.Variant({DissolveDelaySeconds:e.Nat64,WhenDissolvedTimestampSeconds:e.Nat64}),u=e.Record({id:e.Opt(s),permissions:e.Vec($),maturity_e8s_equivalent:e.Nat64,cached_neuron_stake_e8s:e.Nat64,created_timestamp_seconds:e.Nat64,aging_since_timestamp_seconds:e.Nat64,dissolve_state:e.Opt(D),voting_power_percentage_multiplier:e.Nat64,followees:e.Vec(e.Tuple(e.Nat64,m)),neuron_fees_e8s:e.Nat64}),Me=e.Record({root_canister_id:e.Opt(e.Principal),id_to_nervous_system_functions:e.Vec(e.Tuple(e.Nat64,n)),metrics:e.Opt(a),mode:e.Int32,parameters:e.Opt(_),deployed_version:e.Opt(d),sns_initialization_parameters:e.Text,latest_reward_event:e.Opt(k),pending_version:e.Opt(N),swap_canister_id:e.Opt(e.Principal),ledger_canister_id:e.Opt(e.Principal),proposals:e.Vec(e.Tuple(e.Nat64,l)),in_flight_commands:e.Vec(e.Tuple(e.Text,Z)),sns_metadata:e.Opt(R),neurons:e.Vec(e.Tuple(e.Text,u)),genesis_timestamp_seconds:e.Nat64}),I=e.Record({url:e.Opt(e.Text),logo:e.Opt(e.Text),name:e.Opt(e.Text),description:e.Opt(e.Text)}),L=e.Record({neuron_id:e.Opt(s)}),ee=e.Variant({Error:c,Neuron:u}),te=e.Record({result:e.Opt(ee)}),x=e.Record({proposal_id:e.Opt(r)}),oe=e.Variant({Error:c,Proposal:l}),se=e.Record({result:e.Opt(oe)}),ne=e.Variant({stopped:e.Null,stopping:e.Null,running:e.Null}),ae=e.Record({controller:e.Principal,freezing_threshold:e.Nat,controllers:e.Vec(e.Principal),memory_allocation:e.Nat,compute_allocation:e.Nat}),re=e.Record({controller:e.Principal,status:ne,freezing_threshold:e.Nat,balance:e.Vec(e.Tuple(e.Vec(e.Nat8),e.Nat)),memory_size:e.Nat,cycles:e.Nat,settings:ae,idle_cycles_burned_per_day:e.Nat,module_hash:e.Opt(e.Vec(e.Nat8))}),ie=e.Record({deployed_version:e.Opt(d),pending_version:e.Opt(N)}),ce=e.Record({sns_initialization_parameters:e.Text}),_e=e.Record({reserved_ids:e.Vec(e.Nat64),functions:e.Vec(n)}),de=e.Record({of_principal:e.Opt(e.Principal),limit:e.Nat32,start_page_at:e.Opt(s)}),pe=e.Record({neurons:e.Vec(u)}),le=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)}),ue=e.Record({proposals:e.Vec(l)}),me=e.Variant({Split:O,Follow:g,DisburseMaturity:y,ClaimOrRefresh:w,Configure:V,RegisterVote:f,MakeProposal:p,RemoveNeuronPermissions:P,AddNeuronPermissions:T,MergeMaturity:S,Disburse:h}),Ne=e.Record({subaccount:e.Vec(e.Nat8),command:e.Opt(me)}),Re=e.Record({created_neuron_id:e.Opt(s)}),Oe=e.Record({transfer_block_height:e.Nat64,amount_disbursed_e8s:e.Nat64}),ge=e.Record({refreshed_neuron_id:e.Opt(s)}),ve=e.Record({merged_maturity_e8s:e.Nat64,new_stake_e8s:e.Nat64}),ye=e.Record({transfer_block_height:e.Nat64}),Ve=e.Variant({Error:c,Split:Re,Follow:e.Record({}),DisburseMaturity:Oe,ClaimOrRefresh:ge,Configure:e.Record({}),RegisterVote:e.Record({}),MakeProposal:x,RemoveNeuronPermission:e.Record({}),MergeMaturity:ve,Disburse:ye,AddNeuronPermission:e.Record({})}),fe=e.Record({command:e.Opt(Ve)}),we=e.Record({mode:e.Int32});return e.Service({get_build_metadata:e.Func([],[e.Text],[]),get_metadata:e.Func([e.Record({})],[I],[]),get_nervous_system_parameters:e.Func([e.Null],[_],[]),get_neuron:e.Func([L],[te],[]),get_proposal:e.Func([x],[se],[]),get_root_canister_status:e.Func([e.Null],[re],[]),get_running_sns_version:e.Func([e.Record({})],[ie],[]),get_sns_initialization_parameters:e.Func([e.Record({})],[ce],[]),list_nervous_system_functions:e.Func([],[_e],[]),list_neurons:e.Func([de],[pe],[]),list_proposals:e.Func([le],[ue],[]),manage_neuron:e.Func([Ne],[fe],[]),set_mode:e.Func([we],[e.Record({})],[])})};var he=({IDL:e})=>{let t=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)}),o=e.Variant({NativeNervousSystemFunction:e.Record({}),GenericNervousSystemFunction:t}),n=e.Record({id:e.Nat64,name:e.Text,description:e.Opt(e.Text),function_type:e.Opt(o)}),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}),s=e.Record({id:e.Vec(e.Nat8)}),m=e.Record({followees:e.Vec(s)}),F=e.Record({followees:e.Vec(e.Tuple(e.Nat64,m))}),i=e.Record({permissions:e.Vec(e.Int32)}),C=e.Record({start_timestamp_seconds:e.Opt(e.Nat64),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)}),_=e.Record({default_followees:e.Opt(F),max_dissolve_delay_seconds:e.Opt(e.Nat64),max_followees_per_function:e.Opt(e.Nat64),neuron_claimer_permissions:e.Opt(i),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),neuron_grantable_permissions:e.Opt(i),voting_rewards_parameters:e.Opt(C),max_number_of_principals_per_neuron:e.Opt(e.Nat64)}),d=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)}),r=e.Record({id:e.Nat64}),k=e.Record({actual_timestamp_seconds:e.Nat64,distributed_e8s_equivalent:e.Nat64,round:e.Nat64,settled_proposals:e.Vec(r)}),N=e.Record({mark_failed_at_seconds:e.Nat64,checking_upgrade_lock:e.Nat64,proposal_id:e.Nat64,target_version:e.Opt(d)}),c=e.Record({error_message:e.Text,error_type:e.Int32}),G=e.Record({vote:e.Int32,cast_timestamp_seconds:e.Nat64,voting_power:e.Nat64}),A=e.Record({no:e.Nat64,yes:e.Nat64,total:e.Nat64,timestamp_seconds:e.Nat64}),q=e.Record({new_canister_wasm:e.Vec(e.Nat8),canister_id:e.Opt(e.Principal)}),R=e.Record({url:e.Opt(e.Text),logo:e.Opt(e.Text),name:e.Opt(e.Text),description:e.Opt(e.Text)}),E=e.Record({function_id:e.Nat64,payload:e.Vec(e.Nat8)}),U=e.Record({motion_text:e.Text}),z=e.Variant({ManageNervousSystemParameters:_,AddGenericNervousSystemFunction:n,RemoveGenericNervousSystemFunction:e.Nat64,UpgradeSnsToNextVersion:e.Record({}),UpgradeSnsControlledCanister:q,Unspecified:e.Record({}),ManageSnsMetadata:R,ExecuteGenericNervousSystemFunction:E,Motion:U}),p=e.Record({url:e.Text,title:e.Text,action:e.Opt(z),summary:e.Text}),B=e.Record({current_deadline_timestamp_seconds:e.Nat64}),l=e.Record({id:e.Opt(r),payload_text_rendering:e.Opt(e.Text),action:e.Nat64,failure_reason:e.Opt(c),ballots:e.Vec(e.Tuple(e.Text,G)),reward_event_round:e.Nat64,failed_timestamp_seconds:e.Nat64,proposal_creation_timestamp_seconds:e.Nat64,initial_voting_period_seconds:e.Nat64,reject_cost_e8s:e.Nat64,latest_tally:e.Opt(A),wait_for_quiet_deadline_increase_seconds:e.Nat64,decided_timestamp_seconds:e.Nat64,proposal:e.Opt(p),proposer:e.Opt(s),wait_for_quiet_state:e.Opt(B),is_eligible_for_rewards:e.Bool,executed_timestamp_seconds:e.Nat64}),O=e.Record({memo:e.Nat64,amount_e8s:e.Nat64}),g=e.Record({function_id:e.Nat64,followees:e.Vec(s)}),j=e.Record({subaccount:e.Vec(e.Nat8)}),v=e.Record({owner:e.Opt(e.Principal),subaccount:e.Opt(j)}),y=e.Record({to_account:e.Opt(v),percentage_to_disburse:e.Nat32}),W=e.Record({additional_dissolve_delay_seconds:e.Nat32}),Q=e.Record({dissolve_timestamp_seconds:e.Nat64}),X=e.Variant({StopDissolving:e.Record({}),StartDissolving:e.Record({}),IncreaseDissolveDelay:W,SetDissolveTimestamp:Q}),V=e.Record({operation:e.Opt(X)}),f=e.Record({vote:e.Int32,proposal:e.Opt(r)}),H=e.Record({controller:e.Opt(e.Principal),memo:e.Nat64}),J=e.Variant({MemoAndController:H,NeuronId:e.Record({})}),w=e.Record({by:e.Opt(J)}),P=e.Record({permissions_to_remove:e.Opt(i),principal_id:e.Opt(e.Principal)}),T=e.Record({permissions_to_add:e.Opt(i),principal_id:e.Opt(e.Principal)}),S=e.Record({percentage_to_merge:e.Nat32}),K=e.Record({e8s:e.Nat64}),h=e.Record({to_account:e.Opt(v),amount:e.Opt(K)}),Y=e.Variant({Split:O,Follow:g,DisburseMaturity:y,Configure:V,RegisterVote:f,MakeProposal:p,ClaimOrRefreshNeuron:w,RemoveNeuronPermissions:P,AddNeuronPermissions:T,MergeMaturity:S,Disburse:h}),Z=e.Record({command:e.Opt(Y),timestamp:e.Nat64}),$=e.Record({principal:e.Opt(e.Principal),permission_type:e.Vec(e.Int32)}),D=e.Variant({DissolveDelaySeconds:e.Nat64,WhenDissolvedTimestampSeconds:e.Nat64}),u=e.Record({id:e.Opt(s),permissions:e.Vec($),maturity_e8s_equivalent:e.Nat64,cached_neuron_stake_e8s:e.Nat64,created_timestamp_seconds:e.Nat64,aging_since_timestamp_seconds:e.Nat64,dissolve_state:e.Opt(D),voting_power_percentage_multiplier:e.Nat64,followees:e.Vec(e.Tuple(e.Nat64,m)),neuron_fees_e8s:e.Nat64}),Me=e.Record({root_canister_id:e.Opt(e.Principal),id_to_nervous_system_functions:e.Vec(e.Tuple(e.Nat64,n)),metrics:e.Opt(a),mode:e.Int32,parameters:e.Opt(_),deployed_version:e.Opt(d),sns_initialization_parameters:e.Text,latest_reward_event:e.Opt(k),pending_version:e.Opt(N),swap_canister_id:e.Opt(e.Principal),ledger_canister_id:e.Opt(e.Principal),proposals:e.Vec(e.Tuple(e.Nat64,l)),in_flight_commands:e.Vec(e.Tuple(e.Text,Z)),sns_metadata:e.Opt(R),neurons:e.Vec(e.Tuple(e.Text,u)),genesis_timestamp_seconds:e.Nat64}),I=e.Record({url:e.Opt(e.Text),logo:e.Opt(e.Text),name:e.Opt(e.Text),description:e.Opt(e.Text)}),L=e.Record({neuron_id:e.Opt(s)}),ee=e.Variant({Error:c,Neuron:u}),te=e.Record({result:e.Opt(ee)}),x=e.Record({proposal_id:e.Opt(r)}),oe=e.Variant({Error:c,Proposal:l}),se=e.Record({result:e.Opt(oe)}),ne=e.Variant({stopped:e.Null,stopping:e.Null,running:e.Null}),ae=e.Record({controller:e.Principal,freezing_threshold:e.Nat,controllers:e.Vec(e.Principal),memory_allocation:e.Nat,compute_allocation:e.Nat}),re=e.Record({controller:e.Principal,status:ne,freezing_threshold:e.Nat,balance:e.Vec(e.Tuple(e.Vec(e.Nat8),e.Nat)),memory_size:e.Nat,cycles:e.Nat,settings:ae,idle_cycles_burned_per_day:e.Nat,module_hash:e.Opt(e.Vec(e.Nat8))}),ie=e.Record({deployed_version:e.Opt(d),pending_version:e.Opt(N)}),ce=e.Record({sns_initialization_parameters:e.Text}),_e=e.Record({reserved_ids:e.Vec(e.Nat64),functions:e.Vec(n)}),de=e.Record({of_principal:e.Opt(e.Principal),limit:e.Nat32,start_page_at:e.Opt(s)}),pe=e.Record({neurons:e.Vec(u)}),le=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)}),ue=e.Record({proposals:e.Vec(l)}),me=e.Variant({Split:O,Follow:g,DisburseMaturity:y,ClaimOrRefresh:w,Configure:V,RegisterVote:f,MakeProposal:p,RemoveNeuronPermissions:P,AddNeuronPermissions:T,MergeMaturity:S,Disburse:h}),Ne=e.Record({subaccount:e.Vec(e.Nat8),command:e.Opt(me)}),Re=e.Record({created_neuron_id:e.Opt(s)}),Oe=e.Record({transfer_block_height:e.Nat64,amount_disbursed_e8s:e.Nat64}),ge=e.Record({refreshed_neuron_id:e.Opt(s)}),ve=e.Record({merged_maturity_e8s:e.Nat64,new_stake_e8s:e.Nat64}),ye=e.Record({transfer_block_height:e.Nat64}),Ve=e.Variant({Error:c,Split:Re,Follow:e.Record({}),DisburseMaturity:Oe,ClaimOrRefresh:ge,Configure:e.Record({}),RegisterVote:e.Record({}),MakeProposal:x,RemoveNeuronPermission:e.Record({}),MergeMaturity:ve,Disburse:ye,AddNeuronPermission:e.Record({})}),fe=e.Record({command:e.Opt(Ve)}),we=e.Record({mode:e.Int32});return e.Service({get_build_metadata:e.Func([],[e.Text],["query"]),get_metadata:e.Func([e.Record({})],[I],["query"]),get_nervous_system_parameters:e.Func([e.Null],[_],["query"]),get_neuron:e.Func([L],[te],["query"]),get_proposal:e.Func([x],[se],["query"]),get_root_canister_status:e.Func([e.Null],[re],[]),get_running_sns_version:e.Func([e.Record({})],[ie],["query"]),get_sns_initialization_parameters:e.Func([e.Record({})],[ce],["query"]),list_nervous_system_functions:e.Func([],[_e],["query"]),list_neurons:e.Func([de],[pe],["query"]),list_proposals:e.Func([le],[ue],["query"]),manage_neuron:e.Func([Ne],[fe],[]),set_mode:e.Func([we],[e.Record({})],[])})};var xe=({neuronId:e,permissions:t,principal:o})=>({subaccount:e.id,command:[{AddNeuronPermissions:{permissions_to_add:[{permissions:Int32Array.from(t)}],principal_id:[o]}}]}),be=({neuronId:e,permissions:t,principal:o})=>({subaccount:e.id,command:[{RemoveNeuronPermissions:{permissions_to_remove:[{permissions:Int32Array.from(t)}],principal_id:[o]}}]});var b=class extends Error{};var M=class extends Te{static create(t){let{service:o,certifiedService:n,canisterId:a}=Ce({options:t,idlFactory:he,certifiedIdlFactory:Se});return new M(a,o,n)}listNeurons=async t=>{let{principal:o,limit:n,beforeNeuronId:a}=t,{neurons:s}=await this.caller(t).list_neurons({of_principal:Pe(o),limit:n??100,start_page_at:Pe(a)});return s};metadata=t=>this.caller(t).get_metadata({});getNeuron=async t=>{let{neuronId:o}=t,{result:n}=await this.caller(t).get_neuron({neuron_id:Pe(o)}),a=ke(n);if(a===void 0||"Error"in a)throw new b(a?.Error.error_message??"Response type not supported");return a.Neuron};manageNeuron=async t=>{let o=await this.caller({certified:!0}).manage_neuron(t);return this.assertManageNeuronError(o),o};addNeuronPermissions=async t=>{let o=xe(t);await this.manageNeuron(o)};removeNeuronPermissions=async t=>{let o=be(t);await this.manageNeuron(o)};assertManageNeuronError=({command:t})=>{let o=t[0];if(o!==void 0&&"Error"in o)throw new b(o.Error.error_message)}};export{b as a,M as b};
2
- //# sourceMappingURL=chunk-CGB4OZHY.js.map
1
+ import{a as Te}from"./chunk-OZ3QVZ6V.js";import{createServices as ke,fromNullable as Ge,toNullable as we}from"@dfinity/utils";var Se=({IDL:e})=>{let t=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)}),o=e.Variant({NativeNervousSystemFunction:e.Record({}),GenericNervousSystemFunction:t}),n=e.Record({id:e.Nat64,name:e.Text,description:e.Opt(e.Text),function_type:e.Opt(o)}),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}),s=e.Record({id:e.Vec(e.Nat8)}),m=e.Record({followees:e.Vec(s)}),F=e.Record({followees:e.Vec(e.Tuple(e.Nat64,m))}),i=e.Record({permissions:e.Vec(e.Int32)}),C=e.Record({start_timestamp_seconds:e.Opt(e.Nat64),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)}),_=e.Record({default_followees:e.Opt(F),max_dissolve_delay_seconds:e.Opt(e.Nat64),max_followees_per_function:e.Opt(e.Nat64),neuron_claimer_permissions:e.Opt(i),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),neuron_grantable_permissions:e.Opt(i),voting_rewards_parameters:e.Opt(C),max_number_of_principals_per_neuron:e.Opt(e.Nat64)}),d=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)}),r=e.Record({id:e.Nat64}),k=e.Record({actual_timestamp_seconds:e.Nat64,distributed_e8s_equivalent:e.Nat64,round:e.Nat64,settled_proposals:e.Vec(r)}),N=e.Record({mark_failed_at_seconds:e.Nat64,checking_upgrade_lock:e.Nat64,proposal_id:e.Nat64,target_version:e.Opt(d)}),c=e.Record({error_message:e.Text,error_type:e.Int32}),G=e.Record({vote:e.Int32,cast_timestamp_seconds:e.Nat64,voting_power:e.Nat64}),A=e.Record({no:e.Nat64,yes:e.Nat64,total:e.Nat64,timestamp_seconds:e.Nat64}),q=e.Record({new_canister_wasm:e.Vec(e.Nat8),canister_id:e.Opt(e.Principal)}),R=e.Record({url:e.Opt(e.Text),logo:e.Opt(e.Text),name:e.Opt(e.Text),description:e.Opt(e.Text)}),E=e.Record({function_id:e.Nat64,payload:e.Vec(e.Nat8)}),U=e.Record({motion_text:e.Text}),z=e.Variant({ManageNervousSystemParameters:_,AddGenericNervousSystemFunction:n,RemoveGenericNervousSystemFunction:e.Nat64,UpgradeSnsToNextVersion:e.Record({}),UpgradeSnsControlledCanister:q,Unspecified:e.Record({}),ManageSnsMetadata:R,ExecuteGenericNervousSystemFunction:E,Motion:U}),p=e.Record({url:e.Text,title:e.Text,action:e.Opt(z),summary:e.Text}),B=e.Record({current_deadline_timestamp_seconds:e.Nat64}),l=e.Record({id:e.Opt(r),payload_text_rendering:e.Opt(e.Text),action:e.Nat64,failure_reason:e.Opt(c),ballots:e.Vec(e.Tuple(e.Text,G)),reward_event_round:e.Nat64,failed_timestamp_seconds:e.Nat64,proposal_creation_timestamp_seconds:e.Nat64,initial_voting_period_seconds:e.Nat64,reject_cost_e8s:e.Nat64,latest_tally:e.Opt(A),wait_for_quiet_deadline_increase_seconds:e.Nat64,decided_timestamp_seconds:e.Nat64,proposal:e.Opt(p),proposer:e.Opt(s),wait_for_quiet_state:e.Opt(B),is_eligible_for_rewards:e.Bool,executed_timestamp_seconds:e.Nat64}),O=e.Record({memo:e.Nat64,amount_e8s:e.Nat64}),g=e.Record({function_id:e.Nat64,followees:e.Vec(s)}),j=e.Record({subaccount:e.Vec(e.Nat8)}),v=e.Record({owner:e.Opt(e.Principal),subaccount:e.Opt(j)}),y=e.Record({to_account:e.Opt(v),percentage_to_disburse:e.Nat32}),W=e.Record({additional_dissolve_delay_seconds:e.Nat32}),Q=e.Record({dissolve_timestamp_seconds:e.Nat64}),X=e.Variant({StopDissolving:e.Record({}),StartDissolving:e.Record({}),IncreaseDissolveDelay:W,SetDissolveTimestamp:Q}),f=e.Record({operation:e.Opt(X)}),V=e.Record({vote:e.Int32,proposal:e.Opt(r)}),H=e.Record({controller:e.Opt(e.Principal),memo:e.Nat64}),J=e.Variant({MemoAndController:H,NeuronId:e.Record({})}),P=e.Record({by:e.Opt(J)}),w=e.Record({permissions_to_remove:e.Opt(i),principal_id:e.Opt(e.Principal)}),T=e.Record({permissions_to_add:e.Opt(i),principal_id:e.Opt(e.Principal)}),S=e.Record({percentage_to_merge:e.Nat32}),K=e.Record({e8s:e.Nat64}),h=e.Record({to_account:e.Opt(v),amount:e.Opt(K)}),Y=e.Variant({Split:O,Follow:g,DisburseMaturity:y,Configure:f,RegisterVote:V,MakeProposal:p,ClaimOrRefreshNeuron:P,RemoveNeuronPermissions:w,AddNeuronPermissions:T,MergeMaturity:S,Disburse:h}),Z=e.Record({command:e.Opt(Y),timestamp:e.Nat64}),$=e.Record({principal:e.Opt(e.Principal),permission_type:e.Vec(e.Int32)}),D=e.Variant({DissolveDelaySeconds:e.Nat64,WhenDissolvedTimestampSeconds:e.Nat64}),u=e.Record({id:e.Opt(s),permissions:e.Vec($),maturity_e8s_equivalent:e.Nat64,cached_neuron_stake_e8s:e.Nat64,created_timestamp_seconds:e.Nat64,aging_since_timestamp_seconds:e.Nat64,dissolve_state:e.Opt(D),voting_power_percentage_multiplier:e.Nat64,followees:e.Vec(e.Tuple(e.Nat64,m)),neuron_fees_e8s:e.Nat64}),Fe=e.Record({root_canister_id:e.Opt(e.Principal),id_to_nervous_system_functions:e.Vec(e.Tuple(e.Nat64,n)),metrics:e.Opt(a),mode:e.Int32,parameters:e.Opt(_),deployed_version:e.Opt(d),sns_initialization_parameters:e.Text,latest_reward_event:e.Opt(k),pending_version:e.Opt(N),swap_canister_id:e.Opt(e.Principal),ledger_canister_id:e.Opt(e.Principal),proposals:e.Vec(e.Tuple(e.Nat64,l)),in_flight_commands:e.Vec(e.Tuple(e.Text,Z)),sns_metadata:e.Opt(R),neurons:e.Vec(e.Tuple(e.Text,u)),genesis_timestamp_seconds:e.Nat64}),I=e.Record({url:e.Opt(e.Text),logo:e.Opt(e.Text),name:e.Opt(e.Text),description:e.Opt(e.Text)}),L=e.Record({neuron_id:e.Opt(s)}),ee=e.Variant({Error:c,Neuron:u}),te=e.Record({result:e.Opt(ee)}),x=e.Record({proposal_id:e.Opt(r)}),oe=e.Variant({Error:c,Proposal:l}),se=e.Record({result:e.Opt(oe)}),ne=e.Variant({stopped:e.Null,stopping:e.Null,running:e.Null}),ae=e.Record({controller:e.Principal,freezing_threshold:e.Nat,controllers:e.Vec(e.Principal),memory_allocation:e.Nat,compute_allocation:e.Nat}),re=e.Record({controller:e.Principal,status:ne,freezing_threshold:e.Nat,balance:e.Vec(e.Tuple(e.Vec(e.Nat8),e.Nat)),memory_size:e.Nat,cycles:e.Nat,settings:ae,idle_cycles_burned_per_day:e.Nat,module_hash:e.Opt(e.Vec(e.Nat8))}),ie=e.Record({deployed_version:e.Opt(d),pending_version:e.Opt(N)}),ce=e.Record({sns_initialization_parameters:e.Text}),_e=e.Record({reserved_ids:e.Vec(e.Nat64),functions:e.Vec(n)}),de=e.Record({of_principal:e.Opt(e.Principal),limit:e.Nat32,start_page_at:e.Opt(s)}),pe=e.Record({neurons:e.Vec(u)}),le=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)}),ue=e.Record({proposals:e.Vec(l)}),me=e.Variant({Split:O,Follow:g,DisburseMaturity:y,ClaimOrRefresh:P,Configure:f,RegisterVote:V,MakeProposal:p,RemoveNeuronPermissions:w,AddNeuronPermissions:T,MergeMaturity:S,Disburse:h}),Ne=e.Record({subaccount:e.Vec(e.Nat8),command:e.Opt(me)}),Re=e.Record({created_neuron_id:e.Opt(s)}),Oe=e.Record({transfer_block_height:e.Nat64,amount_disbursed_e8s:e.Nat64}),ge=e.Record({refreshed_neuron_id:e.Opt(s)}),ve=e.Record({merged_maturity_e8s:e.Nat64,new_stake_e8s:e.Nat64}),ye=e.Record({transfer_block_height:e.Nat64}),fe=e.Variant({Error:c,Split:Re,Follow:e.Record({}),DisburseMaturity:Oe,ClaimOrRefresh:ge,Configure:e.Record({}),RegisterVote:e.Record({}),MakeProposal:x,RemoveNeuronPermission:e.Record({}),MergeMaturity:ve,Disburse:ye,AddNeuronPermission:e.Record({})}),Ve=e.Record({command:e.Opt(fe)}),Pe=e.Record({mode:e.Int32});return e.Service({get_build_metadata:e.Func([],[e.Text],[]),get_metadata:e.Func([e.Record({})],[I],[]),get_nervous_system_parameters:e.Func([e.Null],[_],[]),get_neuron:e.Func([L],[te],[]),get_proposal:e.Func([x],[se],[]),get_root_canister_status:e.Func([e.Null],[re],[]),get_running_sns_version:e.Func([e.Record({})],[ie],[]),get_sns_initialization_parameters:e.Func([e.Record({})],[ce],[]),list_nervous_system_functions:e.Func([],[_e],[]),list_neurons:e.Func([de],[pe],[]),list_proposals:e.Func([le],[ue],[]),manage_neuron:e.Func([Ne],[Ve],[]),set_mode:e.Func([Pe],[e.Record({})],[])})};var he=({IDL:e})=>{let t=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)}),o=e.Variant({NativeNervousSystemFunction:e.Record({}),GenericNervousSystemFunction:t}),n=e.Record({id:e.Nat64,name:e.Text,description:e.Opt(e.Text),function_type:e.Opt(o)}),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}),s=e.Record({id:e.Vec(e.Nat8)}),m=e.Record({followees:e.Vec(s)}),F=e.Record({followees:e.Vec(e.Tuple(e.Nat64,m))}),i=e.Record({permissions:e.Vec(e.Int32)}),C=e.Record({start_timestamp_seconds:e.Opt(e.Nat64),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)}),_=e.Record({default_followees:e.Opt(F),max_dissolve_delay_seconds:e.Opt(e.Nat64),max_followees_per_function:e.Opt(e.Nat64),neuron_claimer_permissions:e.Opt(i),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),neuron_grantable_permissions:e.Opt(i),voting_rewards_parameters:e.Opt(C),max_number_of_principals_per_neuron:e.Opt(e.Nat64)}),d=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)}),r=e.Record({id:e.Nat64}),k=e.Record({actual_timestamp_seconds:e.Nat64,distributed_e8s_equivalent:e.Nat64,round:e.Nat64,settled_proposals:e.Vec(r)}),N=e.Record({mark_failed_at_seconds:e.Nat64,checking_upgrade_lock:e.Nat64,proposal_id:e.Nat64,target_version:e.Opt(d)}),c=e.Record({error_message:e.Text,error_type:e.Int32}),G=e.Record({vote:e.Int32,cast_timestamp_seconds:e.Nat64,voting_power:e.Nat64}),A=e.Record({no:e.Nat64,yes:e.Nat64,total:e.Nat64,timestamp_seconds:e.Nat64}),q=e.Record({new_canister_wasm:e.Vec(e.Nat8),canister_id:e.Opt(e.Principal)}),R=e.Record({url:e.Opt(e.Text),logo:e.Opt(e.Text),name:e.Opt(e.Text),description:e.Opt(e.Text)}),E=e.Record({function_id:e.Nat64,payload:e.Vec(e.Nat8)}),U=e.Record({motion_text:e.Text}),z=e.Variant({ManageNervousSystemParameters:_,AddGenericNervousSystemFunction:n,RemoveGenericNervousSystemFunction:e.Nat64,UpgradeSnsToNextVersion:e.Record({}),UpgradeSnsControlledCanister:q,Unspecified:e.Record({}),ManageSnsMetadata:R,ExecuteGenericNervousSystemFunction:E,Motion:U}),p=e.Record({url:e.Text,title:e.Text,action:e.Opt(z),summary:e.Text}),B=e.Record({current_deadline_timestamp_seconds:e.Nat64}),l=e.Record({id:e.Opt(r),payload_text_rendering:e.Opt(e.Text),action:e.Nat64,failure_reason:e.Opt(c),ballots:e.Vec(e.Tuple(e.Text,G)),reward_event_round:e.Nat64,failed_timestamp_seconds:e.Nat64,proposal_creation_timestamp_seconds:e.Nat64,initial_voting_period_seconds:e.Nat64,reject_cost_e8s:e.Nat64,latest_tally:e.Opt(A),wait_for_quiet_deadline_increase_seconds:e.Nat64,decided_timestamp_seconds:e.Nat64,proposal:e.Opt(p),proposer:e.Opt(s),wait_for_quiet_state:e.Opt(B),is_eligible_for_rewards:e.Bool,executed_timestamp_seconds:e.Nat64}),O=e.Record({memo:e.Nat64,amount_e8s:e.Nat64}),g=e.Record({function_id:e.Nat64,followees:e.Vec(s)}),j=e.Record({subaccount:e.Vec(e.Nat8)}),v=e.Record({owner:e.Opt(e.Principal),subaccount:e.Opt(j)}),y=e.Record({to_account:e.Opt(v),percentage_to_disburse:e.Nat32}),W=e.Record({additional_dissolve_delay_seconds:e.Nat32}),Q=e.Record({dissolve_timestamp_seconds:e.Nat64}),X=e.Variant({StopDissolving:e.Record({}),StartDissolving:e.Record({}),IncreaseDissolveDelay:W,SetDissolveTimestamp:Q}),f=e.Record({operation:e.Opt(X)}),V=e.Record({vote:e.Int32,proposal:e.Opt(r)}),H=e.Record({controller:e.Opt(e.Principal),memo:e.Nat64}),J=e.Variant({MemoAndController:H,NeuronId:e.Record({})}),P=e.Record({by:e.Opt(J)}),w=e.Record({permissions_to_remove:e.Opt(i),principal_id:e.Opt(e.Principal)}),T=e.Record({permissions_to_add:e.Opt(i),principal_id:e.Opt(e.Principal)}),S=e.Record({percentage_to_merge:e.Nat32}),K=e.Record({e8s:e.Nat64}),h=e.Record({to_account:e.Opt(v),amount:e.Opt(K)}),Y=e.Variant({Split:O,Follow:g,DisburseMaturity:y,Configure:f,RegisterVote:V,MakeProposal:p,ClaimOrRefreshNeuron:P,RemoveNeuronPermissions:w,AddNeuronPermissions:T,MergeMaturity:S,Disburse:h}),Z=e.Record({command:e.Opt(Y),timestamp:e.Nat64}),$=e.Record({principal:e.Opt(e.Principal),permission_type:e.Vec(e.Int32)}),D=e.Variant({DissolveDelaySeconds:e.Nat64,WhenDissolvedTimestampSeconds:e.Nat64}),u=e.Record({id:e.Opt(s),permissions:e.Vec($),maturity_e8s_equivalent:e.Nat64,cached_neuron_stake_e8s:e.Nat64,created_timestamp_seconds:e.Nat64,aging_since_timestamp_seconds:e.Nat64,dissolve_state:e.Opt(D),voting_power_percentage_multiplier:e.Nat64,followees:e.Vec(e.Tuple(e.Nat64,m)),neuron_fees_e8s:e.Nat64}),Fe=e.Record({root_canister_id:e.Opt(e.Principal),id_to_nervous_system_functions:e.Vec(e.Tuple(e.Nat64,n)),metrics:e.Opt(a),mode:e.Int32,parameters:e.Opt(_),deployed_version:e.Opt(d),sns_initialization_parameters:e.Text,latest_reward_event:e.Opt(k),pending_version:e.Opt(N),swap_canister_id:e.Opt(e.Principal),ledger_canister_id:e.Opt(e.Principal),proposals:e.Vec(e.Tuple(e.Nat64,l)),in_flight_commands:e.Vec(e.Tuple(e.Text,Z)),sns_metadata:e.Opt(R),neurons:e.Vec(e.Tuple(e.Text,u)),genesis_timestamp_seconds:e.Nat64}),I=e.Record({url:e.Opt(e.Text),logo:e.Opt(e.Text),name:e.Opt(e.Text),description:e.Opt(e.Text)}),L=e.Record({neuron_id:e.Opt(s)}),ee=e.Variant({Error:c,Neuron:u}),te=e.Record({result:e.Opt(ee)}),x=e.Record({proposal_id:e.Opt(r)}),oe=e.Variant({Error:c,Proposal:l}),se=e.Record({result:e.Opt(oe)}),ne=e.Variant({stopped:e.Null,stopping:e.Null,running:e.Null}),ae=e.Record({controller:e.Principal,freezing_threshold:e.Nat,controllers:e.Vec(e.Principal),memory_allocation:e.Nat,compute_allocation:e.Nat}),re=e.Record({controller:e.Principal,status:ne,freezing_threshold:e.Nat,balance:e.Vec(e.Tuple(e.Vec(e.Nat8),e.Nat)),memory_size:e.Nat,cycles:e.Nat,settings:ae,idle_cycles_burned_per_day:e.Nat,module_hash:e.Opt(e.Vec(e.Nat8))}),ie=e.Record({deployed_version:e.Opt(d),pending_version:e.Opt(N)}),ce=e.Record({sns_initialization_parameters:e.Text}),_e=e.Record({reserved_ids:e.Vec(e.Nat64),functions:e.Vec(n)}),de=e.Record({of_principal:e.Opt(e.Principal),limit:e.Nat32,start_page_at:e.Opt(s)}),pe=e.Record({neurons:e.Vec(u)}),le=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)}),ue=e.Record({proposals:e.Vec(l)}),me=e.Variant({Split:O,Follow:g,DisburseMaturity:y,ClaimOrRefresh:P,Configure:f,RegisterVote:V,MakeProposal:p,RemoveNeuronPermissions:w,AddNeuronPermissions:T,MergeMaturity:S,Disburse:h}),Ne=e.Record({subaccount:e.Vec(e.Nat8),command:e.Opt(me)}),Re=e.Record({created_neuron_id:e.Opt(s)}),Oe=e.Record({transfer_block_height:e.Nat64,amount_disbursed_e8s:e.Nat64}),ge=e.Record({refreshed_neuron_id:e.Opt(s)}),ve=e.Record({merged_maturity_e8s:e.Nat64,new_stake_e8s:e.Nat64}),ye=e.Record({transfer_block_height:e.Nat64}),fe=e.Variant({Error:c,Split:Re,Follow:e.Record({}),DisburseMaturity:Oe,ClaimOrRefresh:ge,Configure:e.Record({}),RegisterVote:e.Record({}),MakeProposal:x,RemoveNeuronPermission:e.Record({}),MergeMaturity:ve,Disburse:ye,AddNeuronPermission:e.Record({})}),Ve=e.Record({command:e.Opt(fe)}),Pe=e.Record({mode:e.Int32});return e.Service({get_build_metadata:e.Func([],[e.Text],["query"]),get_metadata:e.Func([e.Record({})],[I],["query"]),get_nervous_system_parameters:e.Func([e.Null],[_],["query"]),get_neuron:e.Func([L],[te],["query"]),get_proposal:e.Func([x],[se],["query"]),get_root_canister_status:e.Func([e.Null],[re],[]),get_running_sns_version:e.Func([e.Record({})],[ie],["query"]),get_sns_initialization_parameters:e.Func([e.Record({})],[ce],["query"]),list_nervous_system_functions:e.Func([],[_e],["query"]),list_neurons:e.Func([de],[pe],["query"]),list_proposals:e.Func([le],[ue],["query"]),manage_neuron:e.Func([Ne],[Ve],[]),set_mode:e.Func([Pe],[e.Record({})],[])})};var xe=({neuronId:e,permissions:t,principal:o})=>({subaccount:e.id,command:[{AddNeuronPermissions:{permissions_to_add:[{permissions:Int32Array.from(t)}],principal_id:[o]}}]}),be=({neuronId:e,permissions:t,principal:o})=>({subaccount:e.id,command:[{RemoveNeuronPermissions:{permissions_to_remove:[{permissions:Int32Array.from(t)}],principal_id:[o]}}]}),Me=({neuronId:{id:e},amount:t})=>({subaccount:e,command:[{Disburse:{to_account:[],amount:t===void 0?[]:[{e8s:t}]}}]});var b=class extends Error{};var M=class extends Te{static create(t){let{service:o,certifiedService:n,canisterId:a}=ke({options:t,idlFactory:he,certifiedIdlFactory:Se});return new M(a,o,n)}listNeurons=async t=>{let{principal:o,limit:n,beforeNeuronId:a}=t,{neurons:s}=await this.caller(t).list_neurons({of_principal:we(o),limit:n??100,start_page_at:we(a)});return s};metadata=t=>this.caller(t).get_metadata({});getNeuron=async t=>{let{neuronId:o}=t,{result:n}=await this.caller(t).get_neuron({neuron_id:we(o)}),a=Ge(n);if(a===void 0||"Error"in a)throw new b(a?.Error.error_message??"Response type not supported");return a.Neuron};manageNeuron=async t=>{let o=await this.caller({certified:!0}).manage_neuron(t);return this.assertManageNeuronError(o),o};addNeuronPermissions=async t=>{let o=xe(t);await this.manageNeuron(o)};removeNeuronPermissions=async t=>{let o=be(t);await this.manageNeuron(o)};disburse=async t=>{let o=Me(t);await this.manageNeuron(o)};assertManageNeuronError=({command:t})=>{let o=t[0];if(o!==void 0&&"Error"in o)throw new b(o.Error.error_message)}};export{b as a,M as b};
2
+ //# sourceMappingURL=chunk-RHJCTI4Q.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", "../../src/errors/governance.errors.ts"],
4
+ "sourcesContent": ["import type { Principal } from \"@dfinity/principal\";\nimport { createServices, fromNullable, toNullable } from \"@dfinity/utils\";\nimport type {\n GetMetadataResponse,\n ManageNeuron,\n ManageNeuronResponse,\n Neuron,\n NeuronId,\n _SERVICE as SnsGovernanceService,\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 toDisburseNeuronRequest,\n toRemovePermissionsRequest,\n} from \"./converters/governance.converters\";\nimport { SnsGovernanceError } from \"./errors/governance.errors\";\nimport { Canister } from \"./services/canister\";\nimport type { SnsCanisterOptions } from \"./types/canister.options\";\nimport type {\n SnsDisburseNeuronParams,\n SnsGetNeuronParams,\n SnsListNeuronsParams,\n SnsNeuronPermissionsParams,\n} from \"./types/governance.params\";\nimport type { QueryParams } from \"./types/query.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 * 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 neuron of the Sns\n */\n getNeuron = async (\n params: SnsGetNeuronParams & QueryParams\n ): 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 * 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 * Disburse neuron on Account\n */\n public disburse = async (params: SnsDisburseNeuronParams): Promise<void> => {\n const request: ManageNeuron = toDisburseNeuronRequest(params);\n await this.manageNeuron(request);\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 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 'start_timestamp_seconds' : IDL.Opt(IDL.Nat64),\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_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 'neuron_grantable_permissions' : IDL.Opt(NeuronPermissionList),\n 'voting_rewards_parameters' : IDL.Opt(VotingRewardsParameters),\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 });\n const ProposalId = IDL.Record({ 'id' : IDL.Nat64 });\n const RewardEvent = IDL.Record({\n 'actual_timestamp_seconds' : 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 Tally = IDL.Record({\n 'no' : IDL.Nat64,\n 'yes' : IDL.Nat64,\n 'total' : IDL.Nat64,\n 'timestamp_seconds' : IDL.Nat64,\n });\n const UpgradeSnsControlledCanister = IDL.Record({\n 'new_canister_wasm' : IDL.Vec(IDL.Nat8),\n 'canister_id' : IDL.Opt(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 'UpgradeSnsControlledCanister' : UpgradeSnsControlledCanister,\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 'reward_event_round' : IDL.Nat64,\n 'failed_timestamp_seconds' : 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 '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 Subaccount = IDL.Record({ 'subaccount' : IDL.Vec(IDL.Nat8) });\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 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 '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 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 'MakeProposal' : Proposal,\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 Neuron = IDL.Record({\n 'id' : IDL.Opt(NeuronId),\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 'aging_since_timestamp_seconds' : IDL.Nat64,\n 'dissolve_state' : IDL.Opt(DissolveState),\n 'voting_power_percentage_multiplier' : IDL.Nat64,\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 'mode' : IDL.Int32,\n 'parameters' : IDL.Opt(NervousSystemParameters),\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 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 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 'controller' : IDL.Principal,\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 'controller' : IDL.Principal,\n 'status' : CanisterStatusType,\n 'freezing_threshold' : IDL.Nat,\n 'balance' : IDL.Vec(IDL.Tuple(IDL.Vec(IDL.Nat8), IDL.Nat)),\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 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 '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 'transfer_block_height' : IDL.Nat64,\n 'amount_disbursed_e8s' : IDL.Nat64,\n });\n const ClaimOrRefreshResponse = IDL.Record({\n 'refreshed_neuron_id' : IDL.Opt(NeuronId),\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 '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 'get_build_metadata' : IDL.Func([], [IDL.Text], []),\n 'get_metadata' : IDL.Func([IDL.Record({})], [GetMetadataResponse], []),\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 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 'start_timestamp_seconds' : IDL.Opt(IDL.Nat64),\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_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 'neuron_grantable_permissions' : IDL.Opt(NeuronPermissionList),\n 'voting_rewards_parameters' : IDL.Opt(VotingRewardsParameters),\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 });\n const ProposalId = IDL.Record({ 'id' : IDL.Nat64 });\n const RewardEvent = IDL.Record({\n 'actual_timestamp_seconds' : 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 Tally = IDL.Record({\n 'no' : IDL.Nat64,\n 'yes' : IDL.Nat64,\n 'total' : IDL.Nat64,\n 'timestamp_seconds' : IDL.Nat64,\n });\n const UpgradeSnsControlledCanister = IDL.Record({\n 'new_canister_wasm' : IDL.Vec(IDL.Nat8),\n 'canister_id' : IDL.Opt(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 'UpgradeSnsControlledCanister' : UpgradeSnsControlledCanister,\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 'reward_event_round' : IDL.Nat64,\n 'failed_timestamp_seconds' : 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 '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 Subaccount = IDL.Record({ 'subaccount' : IDL.Vec(IDL.Nat8) });\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 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 '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 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 'MakeProposal' : Proposal,\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 Neuron = IDL.Record({\n 'id' : IDL.Opt(NeuronId),\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 'aging_since_timestamp_seconds' : IDL.Nat64,\n 'dissolve_state' : IDL.Opt(DissolveState),\n 'voting_power_percentage_multiplier' : IDL.Nat64,\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 'mode' : IDL.Int32,\n 'parameters' : IDL.Opt(NervousSystemParameters),\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 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 'start_timestamp_seconds' : IDL.Opt(IDL.Nat64),\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_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 'neuron_grantable_permissions' : IDL.Opt(NeuronPermissionList),\n 'voting_rewards_parameters' : IDL.Opt(VotingRewardsParameters),\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 });\n const ProposalId = IDL.Record({ 'id' : IDL.Nat64 });\n const RewardEvent = IDL.Record({\n 'actual_timestamp_seconds' : 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 Tally = IDL.Record({\n 'no' : IDL.Nat64,\n 'yes' : IDL.Nat64,\n 'total' : IDL.Nat64,\n 'timestamp_seconds' : IDL.Nat64,\n });\n const UpgradeSnsControlledCanister = IDL.Record({\n 'new_canister_wasm' : IDL.Vec(IDL.Nat8),\n 'canister_id' : IDL.Opt(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 'UpgradeSnsControlledCanister' : UpgradeSnsControlledCanister,\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 'reward_event_round' : IDL.Nat64,\n 'failed_timestamp_seconds' : 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 '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 Subaccount = IDL.Record({ 'subaccount' : IDL.Vec(IDL.Nat8) });\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 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 '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 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 'MakeProposal' : Proposal,\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 Neuron = IDL.Record({\n 'id' : IDL.Opt(NeuronId),\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 'aging_since_timestamp_seconds' : IDL.Nat64,\n 'dissolve_state' : IDL.Opt(DissolveState),\n 'voting_power_percentage_multiplier' : IDL.Nat64,\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 'mode' : IDL.Int32,\n 'parameters' : IDL.Opt(NervousSystemParameters),\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 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 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 'controller' : IDL.Principal,\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 'controller' : IDL.Principal,\n 'status' : CanisterStatusType,\n 'freezing_threshold' : IDL.Nat,\n 'balance' : IDL.Vec(IDL.Tuple(IDL.Vec(IDL.Nat8), IDL.Nat)),\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 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 '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 'transfer_block_height' : IDL.Nat64,\n 'amount_disbursed_e8s' : IDL.Nat64,\n });\n const ClaimOrRefreshResponse = IDL.Record({\n 'refreshed_neuron_id' : IDL.Opt(NeuronId),\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 '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 'get_build_metadata' : IDL.Func([], [IDL.Text], ['query']),\n 'get_metadata' : IDL.Func(\n [IDL.Record({})],\n [GetMetadataResponse],\n ['query'],\n ),\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 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 'start_timestamp_seconds' : IDL.Opt(IDL.Nat64),\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_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 'neuron_grantable_permissions' : IDL.Opt(NeuronPermissionList),\n 'voting_rewards_parameters' : IDL.Opt(VotingRewardsParameters),\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 });\n const ProposalId = IDL.Record({ 'id' : IDL.Nat64 });\n const RewardEvent = IDL.Record({\n 'actual_timestamp_seconds' : 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 Tally = IDL.Record({\n 'no' : IDL.Nat64,\n 'yes' : IDL.Nat64,\n 'total' : IDL.Nat64,\n 'timestamp_seconds' : IDL.Nat64,\n });\n const UpgradeSnsControlledCanister = IDL.Record({\n 'new_canister_wasm' : IDL.Vec(IDL.Nat8),\n 'canister_id' : IDL.Opt(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 'UpgradeSnsControlledCanister' : UpgradeSnsControlledCanister,\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 'reward_event_round' : IDL.Nat64,\n 'failed_timestamp_seconds' : 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 '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 Subaccount = IDL.Record({ 'subaccount' : IDL.Vec(IDL.Nat8) });\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 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 '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 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 'MakeProposal' : Proposal,\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 Neuron = IDL.Record({\n 'id' : IDL.Opt(NeuronId),\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 'aging_since_timestamp_seconds' : IDL.Nat64,\n 'dissolve_state' : IDL.Opt(DissolveState),\n 'voting_power_percentage_multiplier' : IDL.Nat64,\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 'mode' : IDL.Int32,\n 'parameters' : IDL.Opt(NervousSystemParameters),\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 { ManageNeuron } from \"../../candid/sns_governance\";\nimport type {\n SnsDisburseNeuronParams,\n SnsNeuronPermissionsParams,\n} from \"../types/governance.params\";\n\nexport const toAddPermissionsRequest = ({\n neuronId,\n permissions,\n principal,\n}: SnsNeuronPermissionsParams): ManageNeuron => ({\n subaccount: neuronId.id,\n command: [\n {\n AddNeuronPermissions: {\n permissions_to_add: [{ permissions: Int32Array.from(permissions) }],\n principal_id: [principal],\n },\n },\n ],\n});\n\nexport const toRemovePermissionsRequest = ({\n neuronId,\n permissions,\n principal,\n}: SnsNeuronPermissionsParams): ManageNeuron => ({\n subaccount: neuronId.id,\n command: [\n {\n RemoveNeuronPermissions: {\n permissions_to_remove: [{ permissions: Int32Array.from(permissions) }],\n principal_id: [principal],\n },\n },\n ],\n});\n\nexport const toDisburseNeuronRequest = ({\n neuronId: { id },\n amount,\n}: SnsDisburseNeuronParams): ManageNeuron => ({\n subaccount: id,\n command: [\n {\n Disburse: {\n // currently there is a main account only support\n to_account: [],\n amount:\n amount === undefined\n ? []\n : [\n {\n e8s: amount,\n },\n ],\n },\n },\n ],\n});\n", "export class SnsGovernanceError extends Error {}\n"],
5
+ "mappings": "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",
6
+ "names": []
7
+ }
@@ -1,2 +1,2 @@
1
- var r=class{root;governance;ledger;swap;certified;constructor({root:e,governance:s,ledger:t,swap:a,certified:i}){this.root=e,this.governance=s,this.ledger=t,this.swap=a,this.certified=i}get canisterIds(){return{rootCanisterId:this.root.canisterId,ledgerCanisterId:this.ledger.canisterId,governanceCanisterId:this.governance.canisterId,swapCanisterId:this.swap.canisterId}}listNeurons=e=>this.governance.listNeurons(this.mergeParams(e));metadata=e=>Promise.all([this.governance.metadata(this.mergeParams(e)),this.ledger.metadata(this.mergeParams(e))]);ledgerMetadata=e=>this.ledger.metadata(this.mergeParams(e));balance=e=>this.ledger.balance(this.mergeParams(e));getNeuron=e=>this.governance.getNeuron(this.mergeParams(e));addNeuronPermissions=e=>this.governance.addNeuronPermissions(e);removeNeuronPermissions=e=>this.governance.removeNeuronPermissions(e);swapState=e=>this.swap.state(this.mergeParams(e));notifyParticipation=e=>this.swap.notifyParticipation(e);getUserCommitment=e=>this.swap.getUserCommitment(this.mergeParams(e));mergeParams(e){return{...e,certified:this.certified}}};export{r as a};
2
- //# sourceMappingURL=chunk-GYFUURE5.js.map
1
+ var r=class{root;governance;ledger;swap;certified;constructor({root:e,governance:s,ledger:t,swap:a,certified:i}){this.root=e,this.governance=s,this.ledger=t,this.swap=a,this.certified=i}get canisterIds(){return{rootCanisterId:this.root.canisterId,ledgerCanisterId:this.ledger.canisterId,governanceCanisterId:this.governance.canisterId,swapCanisterId:this.swap.canisterId}}listNeurons=e=>this.governance.listNeurons(this.mergeParams(e));metadata=e=>Promise.all([this.governance.metadata(this.mergeParams(e)),this.ledger.metadata(this.mergeParams(e))]);ledgerMetadata=e=>this.ledger.metadata(this.mergeParams(e));balance=e=>this.ledger.balance(this.mergeParams(e));getNeuron=e=>this.governance.getNeuron(this.mergeParams(e));addNeuronPermissions=e=>this.governance.addNeuronPermissions(e);removeNeuronPermissions=e=>this.governance.removeNeuronPermissions(e);disburse=e=>this.governance.disburse(e);swapState=e=>this.swap.state(this.mergeParams(e));notifyParticipation=e=>this.swap.notifyParticipation(e);getUserCommitment=e=>this.swap.getUserCommitment(this.mergeParams(e));mergeParams(e){return{...e,certified:this.certified}}};export{r as a};
2
+ //# sourceMappingURL=chunk-SDKH2X73.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/sns.wrapper.ts"],
4
+ "sourcesContent": ["import type { Principal } from \"@dfinity/principal\";\nimport type { Tokens } from \"../candid/icrc1_ledger\";\nimport type { GetMetadataResponse, Neuron } from \"../candid/sns_governance\";\nimport type {\n BuyerState,\n GetBuyerStateRequest,\n GetStateResponse,\n RefreshBuyerTokensRequest,\n} from \"../candid/sns_swap\";\nimport type { SnsGovernanceCanister } from \"./governance.canister\";\nimport type { SnsLedgerCanister } from \"./ledger.canister\";\nimport type { SnsRootCanister } from \"./root.canister\";\nimport type { SnsSwapCanister } from \"./swap.canister\";\nimport type {\n SnsDisburseNeuronParams,\n SnsGetNeuronParams,\n SnsListNeuronsParams,\n SnsNeuronPermissionsParams,\n} from \"./types/governance.params\";\nimport type { BalanceParams } from \"./types/ledger.params\";\nimport type { SnsTokenMetadataResponse } from \"./types/ledger.responses\";\nimport type { QueryParams } from \"./types/query.params\";\n\ninterface SnsWrapperOptions {\n /** The wrapper for the \"root\" canister of the particular Sns */\n root: SnsRootCanister;\n /** The wrapper for the \"governance\" canister of the particular Sns */\n governance: SnsGovernanceCanister;\n /** The wrapper for the \"ledger\" canister of the particular Sns */\n ledger: SnsLedgerCanister;\n /** The wrapper for the \"swap\" canister of the particular Sns */\n swap: SnsSwapCanister;\n\n /** The wrapper has been instantiated and should perform query or update calls */\n certified: boolean;\n}\n\n/**\n * Sns wrapper - notably used by NNS-dapp - ease the access to a particular Sns.\n * It knows all the Sns' canisters, wrap and enhance their available features.\n * A wrapper either performs query or update calls.\n */\nexport class SnsWrapper {\n private readonly root: SnsRootCanister;\n private readonly governance: SnsGovernanceCanister;\n private readonly ledger: SnsLedgerCanister;\n private readonly swap: SnsSwapCanister;\n private readonly certified: boolean;\n\n /**\n * Constructor to instantiate a Sns\n */\n constructor({\n root,\n governance,\n ledger,\n swap,\n certified,\n }: SnsWrapperOptions) {\n this.root = root;\n this.governance = governance;\n this.ledger = ledger;\n this.swap = swap;\n this.certified = certified;\n }\n\n /**\n * Binds the list of canister ids of the Sns.\n */\n get canisterIds(): {\n rootCanisterId: Principal;\n ledgerCanisterId: Principal;\n governanceCanisterId: Principal;\n swapCanisterId: Principal;\n } {\n return {\n rootCanisterId: this.root.canisterId,\n ledgerCanisterId: this.ledger.canisterId,\n governanceCanisterId: this.governance.canisterId,\n swapCanisterId: this.swap.canisterId,\n };\n }\n\n listNeurons = (\n params: Omit<SnsListNeuronsParams, \"certified\">\n ): Promise<Neuron[]> => this.governance.listNeurons(this.mergeParams(params));\n\n metadata = (\n params: Omit<QueryParams, \"certified\">\n ): Promise<[GetMetadataResponse, SnsTokenMetadataResponse]> =>\n Promise.all([\n this.governance.metadata(this.mergeParams(params)),\n this.ledger.metadata(this.mergeParams(params)),\n ]);\n\n ledgerMetadata = (\n params: Omit<QueryParams, \"certified\">\n ): Promise<SnsTokenMetadataResponse> =>\n this.ledger.metadata(this.mergeParams(params));\n\n balance = (params: Omit<BalanceParams, \"certified\">): Promise<Tokens> =>\n this.ledger.balance(this.mergeParams(params));\n\n getNeuron = (\n params: Omit<SnsGetNeuronParams, \"certified\">\n ): Promise<Neuron> => this.governance.getNeuron(this.mergeParams(params));\n\n // Always certified\n addNeuronPermissions = (params: SnsNeuronPermissionsParams): Promise<void> =>\n this.governance.addNeuronPermissions(params);\n\n // Always certified\n removeNeuronPermissions = (\n params: SnsNeuronPermissionsParams\n ): Promise<void> => this.governance.removeNeuronPermissions(params);\n\n // Always certified\n disburse = (params: SnsDisburseNeuronParams): Promise<void> =>\n this.governance.disburse(params);\n\n swapState = (\n params: Omit<QueryParams, \"certified\">\n ): Promise<GetStateResponse> => this.swap.state(this.mergeParams(params));\n\n // Always certified\n notifyParticipation = (params: RefreshBuyerTokensRequest): Promise<void> =>\n this.swap.notifyParticipation(params);\n\n getUserCommitment = (\n params: GetBuyerStateRequest\n ): Promise<BuyerState | undefined> =>\n this.swap.getUserCommitment(this.mergeParams(params));\n\n private mergeParams<T>(params: T): QueryParams & T {\n return {\n ...params,\n certified: this.certified,\n };\n }\n}\n"],
5
+ "mappings": "AA0CO,GAAM,GAAN,KAAiB,CACtB,AAAiB,KACjB,AAAiB,WACjB,AAAiB,OACjB,AAAiB,KACjB,AAAiB,UAKjB,YAAY,CACV,OACA,aACA,SACA,OACA,aACoB,CACpB,KAAK,KAAO,EACZ,KAAK,WAAa,EAClB,KAAK,OAAS,EACd,KAAK,KAAO,EACZ,KAAK,UAAY,CACnB,CAKA,GAAI,cAKF,CACA,MAAO,CACL,eAAgB,KAAK,KAAK,WAC1B,iBAAkB,KAAK,OAAO,WAC9B,qBAAsB,KAAK,WAAW,WACtC,eAAgB,KAAK,KAAK,UAC5B,CACF,CAEA,YAAc,AACZ,GACsB,KAAK,WAAW,YAAY,KAAK,YAAY,CAAM,CAAC,EAE5E,SAAW,AACT,GAEA,QAAQ,IAAI,CACV,KAAK,WAAW,SAAS,KAAK,YAAY,CAAM,CAAC,EACjD,KAAK,OAAO,SAAS,KAAK,YAAY,CAAM,CAAC,CAC/C,CAAC,EAEH,eAAiB,AACf,GAEA,KAAK,OAAO,SAAS,KAAK,YAAY,CAAM,CAAC,EAE/C,QAAU,AAAC,GACT,KAAK,OAAO,QAAQ,KAAK,YAAY,CAAM,CAAC,EAE9C,UAAY,AACV,GACoB,KAAK,WAAW,UAAU,KAAK,YAAY,CAAM,CAAC,EAGxE,qBAAuB,AAAC,GACtB,KAAK,WAAW,qBAAqB,CAAM,EAG7C,wBAA0B,AACxB,GACkB,KAAK,WAAW,wBAAwB,CAAM,EAGlE,SAAW,AAAC,GACV,KAAK,WAAW,SAAS,CAAM,EAEjC,UAAY,AACV,GAC8B,KAAK,KAAK,MAAM,KAAK,YAAY,CAAM,CAAC,EAGxE,oBAAsB,AAAC,GACrB,KAAK,KAAK,oBAAoB,CAAM,EAEtC,kBAAoB,AAClB,GAEA,KAAK,KAAK,kBAAkB,KAAK,YAAY,CAAM,CAAC,EAEtD,AAAQ,YAAe,EAA4B,CACjD,MAAO,CACL,GAAG,EACH,UAAW,KAAK,SAClB,CACF,CACF",
6
+ "names": []
7
+ }
@@ -1,2 +1,2 @@
1
- import{b as a}from"./chunk-CGB4OZHY.js";import"./chunk-OZ3QVZ6V.js";export{a as SnsGovernanceCanister};
1
+ import{b as a}from"./chunk-RHJCTI4Q.js";import"./chunk-OZ3QVZ6V.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 O}from"./chunk-ZVF3C5QU.js";import{a as U,b as S}from"./chunk-CGB4OZHY.js";import{a as f}from"./chunk-VRNOICZG.js";import{a as I}from"./chunk-UHK4OUPY.js";import{a as N}from"./chunk-GYFUURE5.js";import{a as R}from"./chunk-CIBAWOSU.js";import"./chunk-OZ3QVZ6V.js";var d=(t=>(t[t.NEURON_PERMISSION_TYPE_UNSPECIFIED=0]="NEURON_PERMISSION_TYPE_UNSPECIFIED",t[t.NEURON_PERMISSION_TYPE_CONFIGURE_DISSOLVE_STATE=1]="NEURON_PERMISSION_TYPE_CONFIGURE_DISSOLVE_STATE",t[t.NEURON_PERMISSION_TYPE_MANAGE_PRINCIPALS=2]="NEURON_PERMISSION_TYPE_MANAGE_PRINCIPALS",t[t.NEURON_PERMISSION_TYPE_SUBMIT_PROPOSAL=3]="NEURON_PERMISSION_TYPE_SUBMIT_PROPOSAL",t[t.NEURON_PERMISSION_TYPE_VOTE=4]="NEURON_PERMISSION_TYPE_VOTE",t[t.NEURON_PERMISSION_TYPE_DISBURSE=5]="NEURON_PERMISSION_TYPE_DISBURSE",t[t.NEURON_PERMISSION_TYPE_SPLIT=6]="NEURON_PERMISSION_TYPE_SPLIT",t[t.NEURON_PERMISSION_TYPE_MERGE_MATURITY=7]="NEURON_PERMISSION_TYPE_MERGE_MATURITY",t[t.NEURON_PERMISSION_TYPE_DISBURSE_MATURITY=8]="NEURON_PERMISSION_TYPE_DISBURSE_MATURITY",t))(d||{});var m=(r=>(r[r.Unspecified=0]="Unspecified",r[r.Pending=1]="Pending",r[r.Open=2]="Open",r[r.Committed=3]="Committed",r[r.Aborted=4]="Aborted",r))(m||{});var i=(n=>(n.SYMBOL="icrc1:symbol",n.NAME="icrc1:name",n.DECIMALS="icrc1:decimals",n.FEE="icrc1:fee",n))(i||{});import{Principal as c}from"@dfinity/principal";var E=parseInt("FF",16),p=32,A=e=>{let a=Array.from(e);for(;a[0]===0;)a.shift();return Uint8Array.from(a)},B=({owner:e,subaccount:a})=>{if(a===void 0)return e.toText();let s=A(a);if(s.length===0)return e.toText();let o=Uint8Array.from([...e.toUint8Array(),...s,s.length,E]);return c.fromUint8Array(o).toText()},C=e=>{let a=c.fromText(e),[s,o,...n]=a.toUint8Array().reverse();if(s!==E)return{owner:c.fromText(e)};if(o>p||o===0||o===void 0)throw new Error("Invalid account string");let r=n.slice(0,o);if(r[0]===0||r.length!==o)throw new Error("Invalid account string");for(;r.length<p;)r.push(0);let _=Uint8Array.from(r.reverse()),u=n.reverse().filter((x,t)=>t<n.length-o);return{owner:c.fromUint8Array(Uint8Array.from(u)),subaccount:_}};export{S as SnsGovernanceCanister,U as SnsGovernanceError,f as SnsLedgerCanister,i as SnsMetadataResponseEntries,d as SnsNeuronPermissionType,I as SnsRootCanister,R as SnsSwapCanister,m as SnsSwapLifecycle,N as SnsWrapper,C as decodeSnsAccount,B as encodeSnsAccount,O as initSnsWrapper};
1
+ import{a as O}from"./chunk-JAVN4ROU.js";import{a as U,b as S}from"./chunk-RHJCTI4Q.js";import{a as f}from"./chunk-VRNOICZG.js";import{a as I}from"./chunk-UHK4OUPY.js";import{a as N}from"./chunk-SDKH2X73.js";import{a as R}from"./chunk-CIBAWOSU.js";import"./chunk-OZ3QVZ6V.js";var d=(t=>(t[t.NEURON_PERMISSION_TYPE_UNSPECIFIED=0]="NEURON_PERMISSION_TYPE_UNSPECIFIED",t[t.NEURON_PERMISSION_TYPE_CONFIGURE_DISSOLVE_STATE=1]="NEURON_PERMISSION_TYPE_CONFIGURE_DISSOLVE_STATE",t[t.NEURON_PERMISSION_TYPE_MANAGE_PRINCIPALS=2]="NEURON_PERMISSION_TYPE_MANAGE_PRINCIPALS",t[t.NEURON_PERMISSION_TYPE_SUBMIT_PROPOSAL=3]="NEURON_PERMISSION_TYPE_SUBMIT_PROPOSAL",t[t.NEURON_PERMISSION_TYPE_VOTE=4]="NEURON_PERMISSION_TYPE_VOTE",t[t.NEURON_PERMISSION_TYPE_DISBURSE=5]="NEURON_PERMISSION_TYPE_DISBURSE",t[t.NEURON_PERMISSION_TYPE_SPLIT=6]="NEURON_PERMISSION_TYPE_SPLIT",t[t.NEURON_PERMISSION_TYPE_MERGE_MATURITY=7]="NEURON_PERMISSION_TYPE_MERGE_MATURITY",t[t.NEURON_PERMISSION_TYPE_DISBURSE_MATURITY=8]="NEURON_PERMISSION_TYPE_DISBURSE_MATURITY",t))(d||{});var m=(r=>(r[r.Unspecified=0]="Unspecified",r[r.Pending=1]="Pending",r[r.Open=2]="Open",r[r.Committed=3]="Committed",r[r.Aborted=4]="Aborted",r))(m||{});var i=(n=>(n.SYMBOL="icrc1:symbol",n.NAME="icrc1:name",n.DECIMALS="icrc1:decimals",n.FEE="icrc1:fee",n))(i||{});import{Principal as c}from"@dfinity/principal";var E=parseInt("FF",16),p=32,A=e=>{let a=Array.from(e);for(;a[0]===0;)a.shift();return Uint8Array.from(a)},B=({owner:e,subaccount:a})=>{if(a===void 0)return e.toText();let s=A(a);if(s.length===0)return e.toText();let o=Uint8Array.from([...e.toUint8Array(),...s,s.length,E]);return c.fromUint8Array(o).toText()},C=e=>{let a=c.fromText(e),[s,o,...n]=a.toUint8Array().reverse();if(s!==E)return{owner:c.fromText(e)};if(o>p||o===0||o===void 0)throw new Error("Invalid account string");let r=n.slice(0,o);if(r[0]===0||r.length!==o)throw new Error("Invalid account string");for(;r.length<p;)r.push(0);let _=Uint8Array.from(r.reverse()),u=n.reverse().filter((x,t)=>t<n.length-o);return{owner:c.fromUint8Array(Uint8Array.from(u)),subaccount:_}};export{S as SnsGovernanceCanister,U as SnsGovernanceError,f as SnsLedgerCanister,i as SnsMetadataResponseEntries,d as SnsNeuronPermissionType,I as SnsRootCanister,R as SnsSwapCanister,m as SnsSwapLifecycle,N as SnsWrapper,C as decodeSnsAccount,B as encodeSnsAccount,O as initSnsWrapper};
2
2
  //# sourceMappingURL=index.js.map
package/dist/esm/sns.js CHANGED
@@ -1,2 +1,2 @@
1
- import{a}from"./chunk-ZVF3C5QU.js";import"./chunk-CGB4OZHY.js";import"./chunk-VRNOICZG.js";import"./chunk-UHK4OUPY.js";import"./chunk-GYFUURE5.js";import"./chunk-CIBAWOSU.js";import"./chunk-OZ3QVZ6V.js";export{a as initSnsWrapper};
1
+ import{a}from"./chunk-JAVN4ROU.js";import"./chunk-RHJCTI4Q.js";import"./chunk-VRNOICZG.js";import"./chunk-UHK4OUPY.js";import"./chunk-SDKH2X73.js";import"./chunk-CIBAWOSU.js";import"./chunk-OZ3QVZ6V.js";export{a as initSnsWrapper};
2
2
  //# sourceMappingURL=sns.js.map
@@ -1,2 +1,2 @@
1
- import{a}from"./chunk-GYFUURE5.js";export{a as SnsWrapper};
1
+ import{a}from"./chunk-SDKH2X73.js";export{a as SnsWrapper};
2
2
  //# sourceMappingURL=sns.wrapper.js.map
@@ -1,4 +1,5 @@
1
1
  import type { ManageNeuron } from "../../candid/sns_governance";
2
- import type { SnsNeuronPermissionsParams } from "../types/governance.params";
2
+ import type { SnsDisburseNeuronParams, SnsNeuronPermissionsParams } from "../types/governance.params";
3
3
  export declare const toAddPermissionsRequest: ({ neuronId, permissions, principal, }: SnsNeuronPermissionsParams) => ManageNeuron;
4
4
  export declare const toRemovePermissionsRequest: ({ neuronId, permissions, principal, }: SnsNeuronPermissionsParams) => ManageNeuron;
5
+ export declare const toDisburseNeuronRequest: ({ neuronId: { id }, amount, }: SnsDisburseNeuronParams) => ManageNeuron;
@@ -1,7 +1,7 @@
1
1
  import type { GetMetadataResponse, ManageNeuron, ManageNeuronResponse, Neuron, _SERVICE as SnsGovernanceService } from "../candid/sns_governance";
2
2
  import { Canister } from "./services/canister";
3
3
  import type { SnsCanisterOptions } from "./types/canister.options";
4
- import type { SnsGetNeuronParams, SnsListNeuronsParams, SnsNeuronPermissionsParams } from "./types/governance.params";
4
+ import type { SnsDisburseNeuronParams, SnsGetNeuronParams, SnsListNeuronsParams, SnsNeuronPermissionsParams } from "./types/governance.params";
5
5
  import type { QueryParams } from "./types/query.params";
6
6
  export declare class SnsGovernanceCanister extends Canister<SnsGovernanceService> {
7
7
  /**
@@ -34,6 +34,10 @@ export declare class SnsGovernanceCanister extends Canister<SnsGovernanceService
34
34
  * Remove permissions to a neuron for a specific principal
35
35
  */
36
36
  removeNeuronPermissions: (params: SnsNeuronPermissionsParams) => Promise<void>;
37
+ /**
38
+ * Disburse neuron on Account
39
+ */
40
+ disburse: (params: SnsDisburseNeuronParams) => Promise<void>;
37
41
  /**
38
42
  *
39
43
  * @param response ManageNeuronResponse
@@ -6,7 +6,7 @@ import type { SnsGovernanceCanister } from "./governance.canister";
6
6
  import type { SnsLedgerCanister } from "./ledger.canister";
7
7
  import type { SnsRootCanister } from "./root.canister";
8
8
  import type { SnsSwapCanister } from "./swap.canister";
9
- import type { SnsGetNeuronParams, SnsListNeuronsParams, SnsNeuronPermissionsParams } from "./types/governance.params";
9
+ import type { SnsDisburseNeuronParams, SnsGetNeuronParams, SnsListNeuronsParams, SnsNeuronPermissionsParams } from "./types/governance.params";
10
10
  import type { BalanceParams } from "./types/ledger.params";
11
11
  import type { SnsTokenMetadataResponse } from "./types/ledger.responses";
12
12
  import type { QueryParams } from "./types/query.params";
@@ -53,6 +53,7 @@ export declare class SnsWrapper {
53
53
  getNeuron: (params: Omit<SnsGetNeuronParams, "certified">) => Promise<Neuron>;
54
54
  addNeuronPermissions: (params: SnsNeuronPermissionsParams) => Promise<void>;
55
55
  removeNeuronPermissions: (params: SnsNeuronPermissionsParams) => Promise<void>;
56
+ disburse: (params: SnsDisburseNeuronParams) => Promise<void>;
56
57
  swapState: (params: Omit<QueryParams, "certified">) => Promise<GetStateResponse>;
57
58
  notifyParticipation: (params: RefreshBuyerTokensRequest) => Promise<void>;
58
59
  getUserCommitment: (params: GetBuyerStateRequest) => Promise<BuyerState | undefined>;
@@ -0,0 +1 @@
1
+ export declare type E8s = bigint;
@@ -1,6 +1,7 @@
1
1
  import type { Principal } from "@dfinity/principal";
2
2
  import type { NeuronId } from "../../candid/sns_governance";
3
3
  import type { SnsNeuronPermissionType } from "../enums/governance.enums";
4
+ import type { E8s } from "./common";
4
5
  import type { QueryParams } from "./query.params";
5
6
  /**
6
7
  * The parameters available to list Sns neurons
@@ -20,10 +21,17 @@ export interface SnsGetNeuronParams extends QueryParams {
20
21
  neuronId: NeuronId;
21
22
  }
22
23
  /**
23
- * Parametes to add permissions to a neuron
24
+ * The parameters to add permissions to a neuron
24
25
  */
25
26
  export interface SnsNeuronPermissionsParams {
26
27
  principal: Principal;
27
28
  neuronId: NeuronId;
28
29
  permissions: SnsNeuronPermissionType[];
29
30
  }
31
+ /**
32
+ * The parameters to disburse a neuron
33
+ */
34
+ export interface SnsDisburseNeuronParams {
35
+ neuronId: NeuronId;
36
+ amount?: E8s;
37
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dfinity/sns",
3
- "version": "0.0.4",
3
+ "version": "0.0.5",
4
4
  "description": "A library for interfacing with a Service Nervous System (SNS) project.",
5
5
  "license": "Apache-2.0",
6
6
  "main": "dist/cjs/index.cjs.js",
@@ -37,6 +37,6 @@
37
37
  "sns"
38
38
  ],
39
39
  "peerDependencies": {
40
- "@dfinity/utils": "^0.0.3"
40
+ "@dfinity/utils": "^0.0.4"
41
41
  }
42
42
  }