@dfinity/sns 2.1.2 → 3.0.0-next-2024-02-21

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,4 +1,4 @@
1
- "use strict";var gt=Object.defineProperty;var is=Object.getOwnPropertyDescriptor;var cs=Object.getOwnPropertyNames;var _s=Object.prototype.hasOwnProperty;var ps=(e,t)=>{for(var s in t)gt(e,s,{get:t[s],enumerable:!0})},ds=(e,t,s,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of cs(t))!_s.call(e,r)&&r!==s&&gt(e,r,{get:()=>t[r],enumerable:!(n=is(t,r))||n.enumerable});return e};var us=e=>ds(gt({},"__esModule",{value:!0}),e);var ks={};ps(ks,{GetOpenTicketErrorType:()=>$t,NewSaleTicketResponseErrorType:()=>Ht,SnsGovernanceCanister:()=>Le,SnsGovernanceError:()=>w,SnsGovernanceTestCanister:()=>_t,SnsNeuronPermissionType:()=>zt,SnsProposalDecisionStatus:()=>Wt,SnsProposalRewardStatus:()=>Qt,SnsRootCanister:()=>et,SnsSwapCanister:()=>st,SnsSwapGetOpenTicketError:()=>at,SnsSwapLifecycle:()=>Yt,SnsSwapNewTicketError:()=>rt,SnsVote:()=>jt,SnsWrapper:()=>ct,UnsupportedMethodError:()=>ot,fromCandidAction:()=>Ut,initSnsWrapper:()=>Fs,neuronSubaccount:()=>Pt});module.exports=us(ks);var _=require("@dfinity/utils");var De=({neuronId:{id:e},command:t})=>({subaccount:e,command:[t]}),nt=({neuronId:e,operation:t})=>De({neuronId:e,command:{Configure:{operation:[t]}}}),ht=({owner:e,subaccount:t})=>({owner:(0,_.toNullable)(e),subaccount:t===void 0?[]:(0,_.toNullable)({subaccount:t})}),xt=({neuronId:e,permissions:t,principal:s})=>De({neuronId:e,command:{AddNeuronPermissions:{permissions_to_add:[{permissions:Int32Array.from(t)}],principal_id:[s]}}}),wt=({neuronId:e,permissions:t,principal:s})=>De({neuronId:e,command:{RemoveNeuronPermissions:{permissions_to_remove:[{permissions:Int32Array.from(t)}],principal_id:[s]}}}),bt=({neuronId:e,memo:t,amount:s})=>De({neuronId:e,command:{Split:{memo:t,amount_e8s:s}}}),Tt=({neuronId:e,amount:t,toAccount:s})=>De({neuronId:e,command:{Disburse:{to_account:s===void 0?[]:(0,_.toNullable)(ht(s)),amount:t===void 0?[]:[{e8s:t}]}}}),Vt=e=>nt({neuronId:e,operation:{StartDissolving:{}}}),Ct=e=>nt({neuronId:e,operation:{StopDissolving:{}}}),Mt=({neuronId:e,percentageToStake:t})=>De({neuronId:e,command:{StakeMaturity:{percentage_to_stake:(0,_.toNullable)(t)}}}),Ft=({neuronId:e,percentageToDisburse:t,toAccount:s})=>De({neuronId:e,command:{DisburseMaturity:{to_account:s===void 0?[]:(0,_.toNullable)(ht(s)),percentage_to_disburse:t}}}),kt=({neuronId:e,autoStake:t})=>nt({neuronId:e,operation:{ChangeAutoStakeMaturity:{requested_setting_for_auto_stake_maturity:t}}}),At=({neuronId:e,dissolveTimestampSeconds:t})=>nt({neuronId:e,operation:{SetDissolveTimestamp:{dissolve_timestamp_seconds:t}}}),Et=({neuronId:e,additionalDissolveDelaySeconds:t})=>nt({neuronId:e,operation:{IncreaseDissolveDelay:{additional_dissolve_delay_seconds:t}}}),Gt=({neuronId:e,functionId:t,followees:s})=>({subaccount:e.id,command:[{Follow:{function_id:t,followees:s}}]}),qt=({neuronId:e,proposalId:t,vote:s})=>({subaccount:e.id,command:[{RegisterVote:{vote:s,proposal:[t]}}]}),yt=({subaccount:e,memo:t,controller:s})=>({subaccount:e,command:[{ClaimOrRefresh:{by:[t===void 0?{NeuronId:{}}:{MemoAndController:{memo:t,controller:(0,_.toNullable)(s)}}]}}]}),Bt=({excludeType:e,beforeProposal:t,includeRewardStatus:s,includeStatus:n,limit:r})=>({exclude_type:BigUint64Array.from(e??[]),before_proposal:(0,_.toNullable)(t),include_reward_status:Int32Array.from(s??[]),include_status:Int32Array.from(n??[]),limit:r??10}),Ut=e=>{if("ManageNervousSystemParameters"in e)return{ManageNervousSystemParameters:vs(e.ManageNervousSystemParameters)};if("AddGenericNervousSystemFunction"in e)return{AddGenericNervousSystemFunction:ys(e.AddGenericNervousSystemFunction)};if("RemoveGenericNervousSystemFunction"in e)return{RemoveGenericNervousSystemFunction:e.RemoveGenericNervousSystemFunction};if("UpgradeSnsToNextVersion"in e)return{UpgradeSnsToNextVersion:e.UpgradeSnsToNextVersion};if("RegisterDappCanisters"in e)return{RegisterDappCanisters:e.RegisterDappCanisters};if("TransferSnsTreasuryFunds"in e)return{TransferSnsTreasuryFunds:Os(e.TransferSnsTreasuryFunds)};if("UpgradeSnsControlledCanister"in e)return{UpgradeSnsControlledCanister:Ns(e.UpgradeSnsControlledCanister)};if("DeregisterDappCanisters"in e)return{DeregisterDappCanisters:e.DeregisterDappCanisters};if("Unspecified"in e)return{Unspecified:e.Unspecified};if("ManageSnsMetadata"in e)return{ManageSnsMetadata:ms(e.ManageSnsMetadata)};if("ExecuteGenericNervousSystemFunction"in e)return{ExecuteGenericNervousSystemFunction:e.ExecuteGenericNervousSystemFunction};if("Motion"in e)return{Motion:e.Motion};throw new Error(`Unknown action type ${JSON.stringify(e)}`)},ms=e=>({url:(0,_.fromNullable)(e.url),logo:(0,_.fromNullable)(e.logo),name:(0,_.fromNullable)(e.name),description:(0,_.fromNullable)(e.description)}),Ns=e=>({new_canister_wasm:e.new_canister_wasm,canister_id:(0,_.fromNullable)(e.canister_id),canister_upgrade_arg:(0,_.fromNullable)(e.canister_upgrade_arg),mode:(0,_.fromNullable)(e.mode)}),Os=e=>({from_treasury:e.from_treasury,to_principal:(0,_.fromNullable)(e.to_principal),to_subaccount:(0,_.fromNullable)(e.to_subaccount),memo:(0,_.fromNullable)(e.memo),amount_e8s:e.amount_e8s}),Rs=e=>({validator_canister_id:(0,_.fromNullable)(e.validator_canister_id),target_canister_id:(0,_.fromNullable)(e.target_canister_id),validator_method_name:(0,_.fromNullable)(e.validator_method_name),target_method_name:(0,_.fromNullable)(e.target_method_name)}),gs=e=>{if(e!==void 0){if("NativeNervousSystemFunction"in e)return{NativeNervousSystemFunction:e.NativeNervousSystemFunction};if("GenericNervousSystemFunction"in e)return{GenericNervousSystemFunction:Rs(e.GenericNervousSystemFunction)};throw new Error(`Unknown FunctionType ${JSON.stringify(e)}`)}},ys=e=>({id:e.id,name:e.name,description:(0,_.fromNullable)(e.description),function_type:gs((0,_.fromNullable)(e.function_type))}),fs=e=>e&&{final_reward_rate_basis_points:(0,_.fromNullable)(e.final_reward_rate_basis_points),initial_reward_rate_basis_points:(0,_.fromNullable)(e.initial_reward_rate_basis_points),reward_rate_transition_duration_seconds:(0,_.fromNullable)(e.reward_rate_transition_duration_seconds),round_duration_seconds:(0,_.fromNullable)(e.round_duration_seconds)},vs=e=>({default_followees:(0,_.fromNullable)(e.default_followees),max_dissolve_delay_seconds:(0,_.fromNullable)(e.max_dissolve_delay_seconds),max_dissolve_delay_bonus_percentage:(0,_.fromNullable)(e.max_dissolve_delay_bonus_percentage),max_followees_per_function:(0,_.fromNullable)(e.max_followees_per_function),neuron_claimer_permissions:(0,_.fromNullable)(e.neuron_claimer_permissions),neuron_minimum_stake_e8s:(0,_.fromNullable)(e.neuron_minimum_stake_e8s),max_neuron_age_for_age_bonus:(0,_.fromNullable)(e.max_neuron_age_for_age_bonus),initial_voting_period_seconds:(0,_.fromNullable)(e.initial_voting_period_seconds),neuron_minimum_dissolve_delay_to_vote_seconds:(0,_.fromNullable)(e.neuron_minimum_dissolve_delay_to_vote_seconds),reject_cost_e8s:(0,_.fromNullable)(e.reject_cost_e8s),max_proposals_to_keep_per_action:(0,_.fromNullable)(e.max_proposals_to_keep_per_action),wait_for_quiet_deadline_increase_seconds:(0,_.fromNullable)(e.wait_for_quiet_deadline_increase_seconds),max_number_of_neurons:(0,_.fromNullable)(e.max_number_of_neurons),transaction_fee_e8s:(0,_.fromNullable)(e.transaction_fee_e8s),max_number_of_proposals_with_ballots:(0,_.fromNullable)(e.max_number_of_proposals_with_ballots),max_age_bonus_percentage:(0,_.fromNullable)(e.max_age_bonus_percentage),neuron_grantable_permissions:(0,_.fromNullable)(e.neuron_grantable_permissions),voting_rewards_parameters:fs((0,_.fromNullable)(e.voting_rewards_parameters)),max_number_of_principals_per_neuron:(0,_.fromNullable)(e.max_number_of_principals_per_neuron)});var zt=(i=>(i[i.NEURON_PERMISSION_TYPE_UNSPECIFIED=0]="NEURON_PERMISSION_TYPE_UNSPECIFIED",i[i.NEURON_PERMISSION_TYPE_CONFIGURE_DISSOLVE_STATE=1]="NEURON_PERMISSION_TYPE_CONFIGURE_DISSOLVE_STATE",i[i.NEURON_PERMISSION_TYPE_MANAGE_PRINCIPALS=2]="NEURON_PERMISSION_TYPE_MANAGE_PRINCIPALS",i[i.NEURON_PERMISSION_TYPE_SUBMIT_PROPOSAL=3]="NEURON_PERMISSION_TYPE_SUBMIT_PROPOSAL",i[i.NEURON_PERMISSION_TYPE_VOTE=4]="NEURON_PERMISSION_TYPE_VOTE",i[i.NEURON_PERMISSION_TYPE_DISBURSE=5]="NEURON_PERMISSION_TYPE_DISBURSE",i[i.NEURON_PERMISSION_TYPE_SPLIT=6]="NEURON_PERMISSION_TYPE_SPLIT",i[i.NEURON_PERMISSION_TYPE_MERGE_MATURITY=7]="NEURON_PERMISSION_TYPE_MERGE_MATURITY",i[i.NEURON_PERMISSION_TYPE_DISBURSE_MATURITY=8]="NEURON_PERMISSION_TYPE_DISBURSE_MATURITY",i[i.NEURON_PERMISSION_TYPE_STAKE_MATURITY=9]="NEURON_PERMISSION_TYPE_STAKE_MATURITY",i[i.NEURON_PERMISSION_TYPE_MANAGE_VOTING_PERMISSION=10]="NEURON_PERMISSION_TYPE_MANAGE_VOTING_PERMISSION",i))(zt||{}),Qt=(r=>(r[r.PROPOSAL_REWARD_STATUS_UNSPECIFIED=0]="PROPOSAL_REWARD_STATUS_UNSPECIFIED",r[r.PROPOSAL_REWARD_STATUS_ACCEPT_VOTES=1]="PROPOSAL_REWARD_STATUS_ACCEPT_VOTES",r[r.PROPOSAL_REWARD_STATUS_READY_TO_SETTLE=2]="PROPOSAL_REWARD_STATUS_READY_TO_SETTLE",r[r.PROPOSAL_REWARD_STATUS_SETTLED=3]="PROPOSAL_REWARD_STATUS_SETTLED",r))(Qt||{}),Wt=(o=>(o[o.PROPOSAL_DECISION_STATUS_UNSPECIFIED=0]="PROPOSAL_DECISION_STATUS_UNSPECIFIED",o[o.PROPOSAL_DECISION_STATUS_OPEN=1]="PROPOSAL_DECISION_STATUS_OPEN",o[o.PROPOSAL_DECISION_STATUS_REJECTED=2]="PROPOSAL_DECISION_STATUS_REJECTED",o[o.PROPOSAL_DECISION_STATUS_ADOPTED=3]="PROPOSAL_DECISION_STATUS_ADOPTED",o[o.PROPOSAL_DECISION_STATUS_EXECUTED=4]="PROPOSAL_DECISION_STATUS_EXECUTED",o[o.PROPOSAL_DECISION_STATUS_FAILED=5]="PROPOSAL_DECISION_STATUS_FAILED",o))(Wt||{}),jt=(n=>(n[n.Unspecified=0]="Unspecified",n[n.Yes=1]="Yes",n[n.No=2]="No",n))(jt||{});var Yt=(o=>(o[o.Unspecified=0]="Unspecified",o[o.Pending=1]="Pending",o[o.Open=2]="Open",o[o.Committed=3]="Committed",o[o.Aborted=4]="Aborted",o[o.Adopted=5]="Adopted",o))(Yt||{}),$t=(n=>(n[n.TYPE_UNSPECIFIED=0]="TYPE_UNSPECIFIED",n[n.TYPE_SALE_NOT_OPEN=1]="TYPE_SALE_NOT_OPEN",n[n.TYPE_SALE_CLOSED=2]="TYPE_SALE_CLOSED",n))($t||{}),Ht=(c=>(c[c.TYPE_UNSPECIFIED=0]="TYPE_UNSPECIFIED",c[c.TYPE_SALE_NOT_OPEN=1]="TYPE_SALE_NOT_OPEN",c[c.TYPE_SALE_CLOSED=2]="TYPE_SALE_CLOSED",c[c.TYPE_TICKET_EXISTS=3]="TYPE_TICKET_EXISTS",c[c.TYPE_INVALID_USER_AMOUNT=4]="TYPE_INVALID_USER_AMOUNT",c[c.TYPE_INVALID_SUBACCOUNT=5]="TYPE_INVALID_SUBACCOUNT",c[c.TYPE_INVALID_PRINCIPAL=6]="TYPE_INVALID_PRINCIPAL",c))(Ht||{});var ot=class extends Error{constructor(s){super();this.methodName=s}};var w=class extends Error{};var rt=class extends Error{constructor({errorType:t,invalidUserAmount:s,existingTicket:n}){super(),this.errorType=t,this.invalidUserAmount=s,this.existingTicket=n}},at=class extends Error{constructor(s){super();this.errorType=s}};var b=require("@dfinity/utils");var Xt=({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)}),s=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(s)}),r=e.Record({not_dissolving_neurons_e8s_buckets:e.Vec(e.Tuple(e.Nat64,e.Float64)),garbage_collectable_neurons_count:e.Nat64,neurons_with_invalid_stake_count:e.Nat64,not_dissolving_neurons_count_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),neurons_with_less_than_6_months_dissolve_delay_count:e.Nat64,dissolved_neurons_count:e.Nat64,total_staked_e8s:e.Nat64,total_supply_governance_tokens:e.Nat64,not_dissolving_neurons_count:e.Nat64,dissolved_neurons_e8s:e.Nat64,neurons_with_less_than_6_months_dissolve_delay_e8s:e.Nat64,dissolving_neurons_count_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),dissolving_neurons_count:e.Nat64,dissolving_neurons_e8s_buckets:e.Vec(e.Tuple(e.Nat64,e.Float64)),timestamp_seconds:e.Nat64}),a=e.Record({current_basis_points:e.Opt(e.Int32),updated_at_timestamp_seconds:e.Opt(e.Nat64)}),o=e.Record({id:e.Vec(e.Nat8)}),c=e.Record({followees:e.Vec(o)}),d=e.Record({followees:e.Vec(e.Tuple(e.Nat64,c))}),p=e.Record({permissions:e.Vec(e.Int32)}),O=e.Record({final_reward_rate_basis_points:e.Opt(e.Nat64),initial_reward_rate_basis_points:e.Opt(e.Nat64),reward_rate_transition_duration_seconds:e.Opt(e.Nat64),round_duration_seconds:e.Opt(e.Nat64)}),i=e.Record({default_followees:e.Opt(d),max_dissolve_delay_seconds:e.Opt(e.Nat64),max_dissolve_delay_bonus_percentage:e.Opt(e.Nat64),max_followees_per_function:e.Opt(e.Nat64),neuron_claimer_permissions:e.Opt(p),neuron_minimum_stake_e8s:e.Opt(e.Nat64),max_neuron_age_for_age_bonus:e.Opt(e.Nat64),initial_voting_period_seconds:e.Opt(e.Nat64),neuron_minimum_dissolve_delay_to_vote_seconds:e.Opt(e.Nat64),reject_cost_e8s:e.Opt(e.Nat64),max_proposals_to_keep_per_action:e.Opt(e.Nat32),wait_for_quiet_deadline_increase_seconds:e.Opt(e.Nat64),max_number_of_neurons:e.Opt(e.Nat64),transaction_fee_e8s:e.Opt(e.Nat64),max_number_of_proposals_with_ballots:e.Opt(e.Nat64),max_age_bonus_percentage:e.Opt(e.Nat64),neuron_grantable_permissions:e.Opt(p),voting_rewards_parameters:e.Opt(O),maturity_modulation_disabled:e.Opt(e.Bool),max_number_of_principals_per_neuron:e.Opt(e.Nat64)}),m=e.Record({archive_wasm_hash:e.Vec(e.Nat8),root_wasm_hash:e.Vec(e.Nat8),swap_wasm_hash:e.Vec(e.Nat8),ledger_wasm_hash:e.Vec(e.Nat8),governance_wasm_hash:e.Vec(e.Nat8),index_wasm_hash:e.Vec(e.Nat8)}),u=e.Record({id:e.Nat64}),y=e.Record({rounds_since_last_distribution:e.Opt(e.Nat64),actual_timestamp_seconds:e.Nat64,end_timestamp_seconds:e.Opt(e.Nat64),distributed_e8s_equivalent:e.Nat64,round:e.Nat64,settled_proposals:e.Vec(u)}),l=e.Record({mark_failed_at_seconds:e.Nat64,checking_upgrade_lock:e.Nat64,proposal_id:e.Nat64,target_version:e.Opt(m)}),N=e.Record({error_message:e.Text,error_type:e.Int32}),M=e.Record({vote:e.Int32,cast_timestamp_seconds:e.Nat64,voting_power:e.Nat64}),v=e.Record({basis_points:e.Opt(e.Nat64)}),T=e.Record({no:e.Nat64,yes:e.Nat64,total:e.Nat64,timestamp_seconds:e.Nat64}),V=e.Record({canister_ids:e.Vec(e.Principal)}),S=e.Record({subaccount:e.Vec(e.Nat8)}),H=e.Record({from_treasury:e.Int32,to_principal:e.Opt(e.Principal),to_subaccount:e.Opt(S),memo:e.Opt(e.Nat64),amount_e8s:e.Nat64}),X=e.Record({new_canister_wasm:e.Vec(e.Nat8),mode:e.Opt(e.Int32),canister_id:e.Opt(e.Principal),canister_upgrade_arg:e.Opt(e.Vec(e.Nat8))}),J=e.Record({canister_ids:e.Vec(e.Principal),new_controllers:e.Vec(e.Principal)}),K=e.Record({to_principal:e.Opt(e.Principal),to_subaccount:e.Opt(S),memo:e.Opt(e.Nat64),amount_e8s:e.Opt(e.Nat64)}),F=e.Record({url:e.Opt(e.Text),logo:e.Opt(e.Text),name:e.Opt(e.Text),description:e.Opt(e.Text)}),Z=e.Record({function_id:e.Nat64,payload:e.Vec(e.Nat8)}),I=e.Record({transfer_fee:e.Opt(e.Nat64)}),D=e.Record({motion_text:e.Text}),L=e.Variant({ManageNervousSystemParameters:i,AddGenericNervousSystemFunction:n,RemoveGenericNervousSystemFunction:e.Nat64,UpgradeSnsToNextVersion:e.Record({}),RegisterDappCanisters:V,TransferSnsTreasuryFunds:H,UpgradeSnsControlledCanister:X,DeregisterDappCanisters:J,MintSnsTokens:K,Unspecified:e.Record({}),ManageSnsMetadata:F,ExecuteGenericNervousSystemFunction:Z,ManageLedgerParameters:I,Motion:D}),g=e.Record({url:e.Text,title:e.Text,action:e.Opt(L),summary:e.Text}),ee=e.Record({current_deadline_timestamp_seconds:e.Nat64}),P=e.Record({id:e.Opt(u),payload_text_rendering:e.Opt(e.Text),action:e.Nat64,failure_reason:e.Opt(N),ballots:e.Vec(e.Tuple(e.Text,M)),minimum_yes_proportion_of_total:e.Opt(v),reward_event_round:e.Nat64,failed_timestamp_seconds:e.Nat64,reward_event_end_timestamp_seconds:e.Opt(e.Nat64),proposal_creation_timestamp_seconds:e.Nat64,initial_voting_period_seconds:e.Nat64,reject_cost_e8s:e.Nat64,latest_tally:e.Opt(T),wait_for_quiet_deadline_increase_seconds:e.Nat64,decided_timestamp_seconds:e.Nat64,proposal:e.Opt(g),proposer:e.Opt(o),wait_for_quiet_state:e.Opt(ee),minimum_yes_proportion_of_exercised:e.Opt(v),is_eligible_for_rewards:e.Bool,executed_timestamp_seconds:e.Nat64}),C=e.Record({memo:e.Nat64,amount_e8s:e.Nat64}),h=e.Record({function_id:e.Nat64,followees:e.Vec(o)}),R=e.Record({owner:e.Opt(e.Principal),subaccount:e.Opt(S)}),k=e.Record({to_account:e.Opt(R),percentage_to_disburse:e.Nat32}),te=e.Record({requested_setting_for_auto_stake_maturity:e.Bool}),se=e.Record({additional_dissolve_delay_seconds:e.Nat32}),ne=e.Record({dissolve_timestamp_seconds:e.Nat64}),oe=e.Variant({ChangeAutoStakeMaturity:te,StopDissolving:e.Record({}),StartDissolving:e.Record({}),IncreaseDissolveDelay:se,SetDissolveTimestamp:ne}),A=e.Record({operation:e.Opt(oe)}),E=e.Record({vote:e.Int32,proposal:e.Opt(u)}),re=e.Record({amount_to_be_disbursed_e8s:e.Nat64,to_account:e.Opt(R)}),W=e.Record({controller:e.Opt(e.Principal),memo:e.Nat64}),G=e.Variant({MemoAndController:W,NeuronId:e.Record({})}),q=e.Record({by:e.Opt(G)}),B=e.Record({permissions_to_remove:e.Opt(p),principal_id:e.Opt(e.Principal)}),U=e.Record({permissions_to_add:e.Opt(p),principal_id:e.Opt(e.Principal)}),x=e.Record({percentage_to_merge:e.Nat32}),ae=e.Record({e8s:e.Nat64}),z=e.Record({to_account:e.Opt(R),amount:e.Opt(ae)}),ie=e.Variant({Split:C,Follow:h,DisburseMaturity:k,Configure:A,RegisterVote:E,SyncCommand:e.Record({}),MakeProposal:g,FinalizeDisburseMaturity:re,ClaimOrRefreshNeuron:q,RemoveNeuronPermissions:B,AddNeuronPermissions:U,MergeMaturity:x,Disburse:z}),ce=e.Record({command:e.Opt(ie),timestamp:e.Nat64}),_e=e.Record({principal:e.Opt(e.Principal),permission_type:e.Vec(e.Int32)}),pe=e.Variant({DissolveDelaySeconds:e.Nat64,WhenDissolvedTimestampSeconds:e.Nat64}),j=e.Record({timestamp_of_disbursement_seconds:e.Nat64,amount_e8s:e.Nat64,account_to_disburse_to:e.Opt(R),finalize_disbursement_timestamp_seconds:e.Opt(e.Nat64)}),f=e.Record({id:e.Opt(o),staked_maturity_e8s_equivalent:e.Opt(e.Nat64),permissions:e.Vec(_e),maturity_e8s_equivalent:e.Nat64,cached_neuron_stake_e8s:e.Nat64,created_timestamp_seconds:e.Nat64,source_nns_neuron_id:e.Opt(e.Nat64),auto_stake_maturity:e.Opt(e.Bool),aging_since_timestamp_seconds:e.Nat64,dissolve_state:e.Opt(pe),voting_power_percentage_multiplier:e.Nat64,vesting_period_seconds:e.Opt(e.Nat64),disburse_maturity_in_progress:e.Vec(j),followees:e.Vec(e.Tuple(e.Nat64,c)),neuron_fees_e8s:e.Nat64}),Ve=e.Record({root_canister_id:e.Opt(e.Principal),id_to_nervous_system_functions:e.Vec(e.Tuple(e.Nat64,n)),metrics:e.Opt(r),maturity_modulation:e.Opt(a),mode:e.Int32,parameters:e.Opt(i),is_finalizing_disburse_maturity:e.Opt(e.Bool),deployed_version:e.Opt(m),sns_initialization_parameters:e.Text,latest_reward_event:e.Opt(y),pending_version:e.Opt(l),swap_canister_id:e.Opt(e.Principal),ledger_canister_id:e.Opt(e.Principal),proposals:e.Vec(e.Tuple(e.Nat64,P)),in_flight_commands:e.Vec(e.Tuple(e.Text,ce)),sns_metadata:e.Opt(F),neurons:e.Vec(e.Tuple(e.Text,f)),genesis_timestamp_seconds:e.Nat64}),de=e.Record({controller:e.Opt(e.Principal),dissolve_delay_seconds:e.Opt(e.Nat64),source_nns_neuron_id:e.Opt(e.Nat64),stake_e8s:e.Opt(e.Nat64),followees:e.Vec(o),hotkey:e.Opt(e.Principal),neuron_id:e.Opt(o)}),ue=e.Record({neuron_parameters:e.Vec(de)}),le=e.Record({id:e.Opt(o),status:e.Int32}),me=e.Record({swap_neurons:e.Vec(le)}),Ne=e.Variant({Ok:me,Err:e.Int32}),Oe=e.Record({claim_swap_neurons_result:e.Opt(Ne)}),Re=e.Record({maturity_modulation:e.Opt(a)}),ge=e.Record({url:e.Opt(e.Text),logo:e.Opt(e.Text),name:e.Opt(e.Text),description:e.Opt(e.Text)}),ye=e.Record({mode:e.Opt(e.Int32)}),fe=e.Record({neuron_id:e.Opt(o)}),ve=e.Variant({Error:N,Neuron:f}),Se=e.Record({result:e.Opt(ve)}),Y=e.Record({proposal_id:e.Opt(u)}),Pe=e.Variant({Error:N,Proposal:P}),$=e.Record({result:e.Opt(Pe)}),Ce=e.Variant({stopped:e.Null,stopping:e.Null,running:e.Null}),Me=e.Record({freezing_threshold:e.Nat,controllers:e.Vec(e.Principal),memory_allocation:e.Nat,compute_allocation:e.Nat}),Fe=e.Record({status:Ce,memory_size:e.Nat,cycles:e.Nat,settings:Me,idle_cycles_burned_per_day:e.Nat,module_hash:e.Opt(e.Vec(e.Nat8))}),ke=e.Record({deployed_version:e.Opt(m),pending_version:e.Opt(l)}),Ae=e.Record({sns_initialization_parameters:e.Text}),Ee=e.Record({reserved_ids:e.Vec(e.Nat64),functions:e.Vec(n)}),Ge=e.Record({of_principal:e.Opt(e.Principal),limit:e.Nat32,start_page_at:e.Opt(o)}),qe=e.Record({neurons:e.Vec(f)}),Be=e.Record({include_reward_status:e.Vec(e.Int32),before_proposal:e.Opt(u),limit:e.Nat32,exclude_type:e.Vec(e.Nat64),include_status:e.Vec(e.Int32)}),Ue=e.Record({proposals:e.Vec(P)}),ze=e.Record({percentage_to_stake:e.Opt(e.Nat32)}),Qe=e.Variant({Split:C,Follow:h,DisburseMaturity:k,ClaimOrRefresh:q,Configure:A,RegisterVote:E,MakeProposal:g,StakeMaturity:ze,RemoveNeuronPermissions:B,AddNeuronPermissions:U,MergeMaturity:x,Disburse:z}),We=e.Record({subaccount:e.Vec(e.Nat8),command:e.Opt(Qe)}),je=e.Record({created_neuron_id:e.Opt(o)}),Ye=e.Record({amount_disbursed_e8s:e.Nat64,amount_deducted_e8s:e.Opt(e.Nat64)}),$e=e.Record({refreshed_neuron_id:e.Opt(o)}),He=e.Record({maturity_e8s:e.Nat64,staked_maturity_e8s:e.Nat64}),Xe=e.Record({merged_maturity_e8s:e.Nat64,new_stake_e8s:e.Nat64}),Je=e.Record({transfer_block_height:e.Nat64}),Ke=e.Variant({Error:N,Split:je,Follow:e.Record({}),DisburseMaturity:Ye,ClaimOrRefresh:$e,Configure:e.Record({}),RegisterVote:e.Record({}),MakeProposal:Y,RemoveNeuronPermission:e.Record({}),StakeMaturity:He,MergeMaturity:Xe,Disburse:Je,AddNeuronPermission:e.Record({})}),Ze=e.Record({command:e.Opt(Ke)}),Ie=e.Record({mode:e.Int32});return e.Service({claim_swap_neurons:e.Func([ue],[Oe],[]),fail_stuck_upgrade_in_progress:e.Func([e.Record({})],[e.Record({})],[]),get_build_metadata:e.Func([],[e.Text],[]),get_latest_reward_event:e.Func([],[y],[]),get_maturity_modulation:e.Func([e.Record({})],[Re],[]),get_metadata:e.Func([e.Record({})],[ge],[]),get_mode:e.Func([e.Record({})],[ye],[]),get_nervous_system_parameters:e.Func([e.Null],[i],[]),get_neuron:e.Func([fe],[Se],[]),get_proposal:e.Func([Y],[$],[]),get_root_canister_status:e.Func([e.Null],[Fe],[]),get_running_sns_version:e.Func([e.Record({})],[ke],[]),get_sns_initialization_parameters:e.Func([e.Record({})],[Ae],[]),list_nervous_system_functions:e.Func([],[Ee],[]),list_neurons:e.Func([Ge],[qe],[]),list_proposals:e.Func([Be],[Ue],[]),manage_neuron:e.Func([We],[Ze],[]),set_mode:e.Func([Ie],[e.Record({})],[])})};var Jt=({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)}),s=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(s)}),r=e.Record({not_dissolving_neurons_e8s_buckets:e.Vec(e.Tuple(e.Nat64,e.Float64)),garbage_collectable_neurons_count:e.Nat64,neurons_with_invalid_stake_count:e.Nat64,not_dissolving_neurons_count_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),neurons_with_less_than_6_months_dissolve_delay_count:e.Nat64,dissolved_neurons_count:e.Nat64,total_staked_e8s:e.Nat64,total_supply_governance_tokens:e.Nat64,not_dissolving_neurons_count:e.Nat64,dissolved_neurons_e8s:e.Nat64,neurons_with_less_than_6_months_dissolve_delay_e8s:e.Nat64,dissolving_neurons_count_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),dissolving_neurons_count:e.Nat64,dissolving_neurons_e8s_buckets:e.Vec(e.Tuple(e.Nat64,e.Float64)),timestamp_seconds:e.Nat64}),a=e.Record({current_basis_points:e.Opt(e.Int32),updated_at_timestamp_seconds:e.Opt(e.Nat64)}),o=e.Record({id:e.Vec(e.Nat8)}),c=e.Record({followees:e.Vec(o)}),d=e.Record({followees:e.Vec(e.Tuple(e.Nat64,c))}),p=e.Record({permissions:e.Vec(e.Int32)}),O=e.Record({final_reward_rate_basis_points:e.Opt(e.Nat64),initial_reward_rate_basis_points:e.Opt(e.Nat64),reward_rate_transition_duration_seconds:e.Opt(e.Nat64),round_duration_seconds:e.Opt(e.Nat64)}),i=e.Record({default_followees:e.Opt(d),max_dissolve_delay_seconds:e.Opt(e.Nat64),max_dissolve_delay_bonus_percentage:e.Opt(e.Nat64),max_followees_per_function:e.Opt(e.Nat64),neuron_claimer_permissions:e.Opt(p),neuron_minimum_stake_e8s:e.Opt(e.Nat64),max_neuron_age_for_age_bonus:e.Opt(e.Nat64),initial_voting_period_seconds:e.Opt(e.Nat64),neuron_minimum_dissolve_delay_to_vote_seconds:e.Opt(e.Nat64),reject_cost_e8s:e.Opt(e.Nat64),max_proposals_to_keep_per_action:e.Opt(e.Nat32),wait_for_quiet_deadline_increase_seconds:e.Opt(e.Nat64),max_number_of_neurons:e.Opt(e.Nat64),transaction_fee_e8s:e.Opt(e.Nat64),max_number_of_proposals_with_ballots:e.Opt(e.Nat64),max_age_bonus_percentage:e.Opt(e.Nat64),neuron_grantable_permissions:e.Opt(p),voting_rewards_parameters:e.Opt(O),maturity_modulation_disabled:e.Opt(e.Bool),max_number_of_principals_per_neuron:e.Opt(e.Nat64)}),m=e.Record({archive_wasm_hash:e.Vec(e.Nat8),root_wasm_hash:e.Vec(e.Nat8),swap_wasm_hash:e.Vec(e.Nat8),ledger_wasm_hash:e.Vec(e.Nat8),governance_wasm_hash:e.Vec(e.Nat8),index_wasm_hash:e.Vec(e.Nat8)}),u=e.Record({id:e.Nat64}),y=e.Record({rounds_since_last_distribution:e.Opt(e.Nat64),actual_timestamp_seconds:e.Nat64,end_timestamp_seconds:e.Opt(e.Nat64),distributed_e8s_equivalent:e.Nat64,round:e.Nat64,settled_proposals:e.Vec(u)}),l=e.Record({mark_failed_at_seconds:e.Nat64,checking_upgrade_lock:e.Nat64,proposal_id:e.Nat64,target_version:e.Opt(m)}),N=e.Record({error_message:e.Text,error_type:e.Int32}),M=e.Record({vote:e.Int32,cast_timestamp_seconds:e.Nat64,voting_power:e.Nat64}),v=e.Record({basis_points:e.Opt(e.Nat64)}),T=e.Record({no:e.Nat64,yes:e.Nat64,total:e.Nat64,timestamp_seconds:e.Nat64}),V=e.Record({canister_ids:e.Vec(e.Principal)}),S=e.Record({subaccount:e.Vec(e.Nat8)}),H=e.Record({from_treasury:e.Int32,to_principal:e.Opt(e.Principal),to_subaccount:e.Opt(S),memo:e.Opt(e.Nat64),amount_e8s:e.Nat64}),X=e.Record({new_canister_wasm:e.Vec(e.Nat8),mode:e.Opt(e.Int32),canister_id:e.Opt(e.Principal),canister_upgrade_arg:e.Opt(e.Vec(e.Nat8))}),J=e.Record({canister_ids:e.Vec(e.Principal),new_controllers:e.Vec(e.Principal)}),K=e.Record({to_principal:e.Opt(e.Principal),to_subaccount:e.Opt(S),memo:e.Opt(e.Nat64),amount_e8s:e.Opt(e.Nat64)}),F=e.Record({url:e.Opt(e.Text),logo:e.Opt(e.Text),name:e.Opt(e.Text),description:e.Opt(e.Text)}),Z=e.Record({function_id:e.Nat64,payload:e.Vec(e.Nat8)}),I=e.Record({transfer_fee:e.Opt(e.Nat64)}),D=e.Record({motion_text:e.Text}),L=e.Variant({ManageNervousSystemParameters:i,AddGenericNervousSystemFunction:n,RemoveGenericNervousSystemFunction:e.Nat64,UpgradeSnsToNextVersion:e.Record({}),RegisterDappCanisters:V,TransferSnsTreasuryFunds:H,UpgradeSnsControlledCanister:X,DeregisterDappCanisters:J,MintSnsTokens:K,Unspecified:e.Record({}),ManageSnsMetadata:F,ExecuteGenericNervousSystemFunction:Z,ManageLedgerParameters:I,Motion:D}),g=e.Record({url:e.Text,title:e.Text,action:e.Opt(L),summary:e.Text}),ee=e.Record({current_deadline_timestamp_seconds:e.Nat64}),P=e.Record({id:e.Opt(u),payload_text_rendering:e.Opt(e.Text),action:e.Nat64,failure_reason:e.Opt(N),ballots:e.Vec(e.Tuple(e.Text,M)),minimum_yes_proportion_of_total:e.Opt(v),reward_event_round:e.Nat64,failed_timestamp_seconds:e.Nat64,reward_event_end_timestamp_seconds:e.Opt(e.Nat64),proposal_creation_timestamp_seconds:e.Nat64,initial_voting_period_seconds:e.Nat64,reject_cost_e8s:e.Nat64,latest_tally:e.Opt(T),wait_for_quiet_deadline_increase_seconds:e.Nat64,decided_timestamp_seconds:e.Nat64,proposal:e.Opt(g),proposer:e.Opt(o),wait_for_quiet_state:e.Opt(ee),minimum_yes_proportion_of_exercised:e.Opt(v),is_eligible_for_rewards:e.Bool,executed_timestamp_seconds:e.Nat64}),C=e.Record({memo:e.Nat64,amount_e8s:e.Nat64}),h=e.Record({function_id:e.Nat64,followees:e.Vec(o)}),R=e.Record({owner:e.Opt(e.Principal),subaccount:e.Opt(S)}),k=e.Record({to_account:e.Opt(R),percentage_to_disburse:e.Nat32}),te=e.Record({requested_setting_for_auto_stake_maturity:e.Bool}),se=e.Record({additional_dissolve_delay_seconds:e.Nat32}),ne=e.Record({dissolve_timestamp_seconds:e.Nat64}),oe=e.Variant({ChangeAutoStakeMaturity:te,StopDissolving:e.Record({}),StartDissolving:e.Record({}),IncreaseDissolveDelay:se,SetDissolveTimestamp:ne}),A=e.Record({operation:e.Opt(oe)}),E=e.Record({vote:e.Int32,proposal:e.Opt(u)}),re=e.Record({amount_to_be_disbursed_e8s:e.Nat64,to_account:e.Opt(R)}),W=e.Record({controller:e.Opt(e.Principal),memo:e.Nat64}),G=e.Variant({MemoAndController:W,NeuronId:e.Record({})}),q=e.Record({by:e.Opt(G)}),B=e.Record({permissions_to_remove:e.Opt(p),principal_id:e.Opt(e.Principal)}),U=e.Record({permissions_to_add:e.Opt(p),principal_id:e.Opt(e.Principal)}),x=e.Record({percentage_to_merge:e.Nat32}),ae=e.Record({e8s:e.Nat64}),z=e.Record({to_account:e.Opt(R),amount:e.Opt(ae)}),ie=e.Variant({Split:C,Follow:h,DisburseMaturity:k,Configure:A,RegisterVote:E,SyncCommand:e.Record({}),MakeProposal:g,FinalizeDisburseMaturity:re,ClaimOrRefreshNeuron:q,RemoveNeuronPermissions:B,AddNeuronPermissions:U,MergeMaturity:x,Disburse:z}),ce=e.Record({command:e.Opt(ie),timestamp:e.Nat64}),_e=e.Record({principal:e.Opt(e.Principal),permission_type:e.Vec(e.Int32)}),pe=e.Variant({DissolveDelaySeconds:e.Nat64,WhenDissolvedTimestampSeconds:e.Nat64}),j=e.Record({timestamp_of_disbursement_seconds:e.Nat64,amount_e8s:e.Nat64,account_to_disburse_to:e.Opt(R),finalize_disbursement_timestamp_seconds:e.Opt(e.Nat64)}),f=e.Record({id:e.Opt(o),staked_maturity_e8s_equivalent:e.Opt(e.Nat64),permissions:e.Vec(_e),maturity_e8s_equivalent:e.Nat64,cached_neuron_stake_e8s:e.Nat64,created_timestamp_seconds:e.Nat64,source_nns_neuron_id:e.Opt(e.Nat64),auto_stake_maturity:e.Opt(e.Bool),aging_since_timestamp_seconds:e.Nat64,dissolve_state:e.Opt(pe),voting_power_percentage_multiplier:e.Nat64,vesting_period_seconds:e.Opt(e.Nat64),disburse_maturity_in_progress:e.Vec(j),followees:e.Vec(e.Tuple(e.Nat64,c)),neuron_fees_e8s:e.Nat64}),Ve=e.Record({root_canister_id:e.Opt(e.Principal),id_to_nervous_system_functions:e.Vec(e.Tuple(e.Nat64,n)),metrics:e.Opt(r),maturity_modulation:e.Opt(a),mode:e.Int32,parameters:e.Opt(i),is_finalizing_disburse_maturity:e.Opt(e.Bool),deployed_version:e.Opt(m),sns_initialization_parameters:e.Text,latest_reward_event:e.Opt(y),pending_version:e.Opt(l),swap_canister_id:e.Opt(e.Principal),ledger_canister_id:e.Opt(e.Principal),proposals:e.Vec(e.Tuple(e.Nat64,P)),in_flight_commands:e.Vec(e.Tuple(e.Text,ce)),sns_metadata:e.Opt(F),neurons:e.Vec(e.Tuple(e.Text,f)),genesis_timestamp_seconds:e.Nat64}),de=e.Record({controller:e.Opt(e.Principal),dissolve_delay_seconds:e.Opt(e.Nat64),source_nns_neuron_id:e.Opt(e.Nat64),stake_e8s:e.Opt(e.Nat64),followees:e.Vec(o),hotkey:e.Opt(e.Principal),neuron_id:e.Opt(o)}),ue=e.Record({neuron_parameters:e.Vec(de)}),le=e.Record({id:e.Opt(o),status:e.Int32}),me=e.Record({swap_neurons:e.Vec(le)}),Ne=e.Variant({Ok:me,Err:e.Int32}),Oe=e.Record({claim_swap_neurons_result:e.Opt(Ne)}),Re=e.Record({maturity_modulation:e.Opt(a)}),ge=e.Record({url:e.Opt(e.Text),logo:e.Opt(e.Text),name:e.Opt(e.Text),description:e.Opt(e.Text)}),ye=e.Record({mode:e.Opt(e.Int32)}),fe=e.Record({neuron_id:e.Opt(o)}),ve=e.Variant({Error:N,Neuron:f}),Se=e.Record({result:e.Opt(ve)}),Y=e.Record({proposal_id:e.Opt(u)}),Pe=e.Variant({Error:N,Proposal:P}),$=e.Record({result:e.Opt(Pe)}),Ce=e.Variant({stopped:e.Null,stopping:e.Null,running:e.Null}),Me=e.Record({freezing_threshold:e.Nat,controllers:e.Vec(e.Principal),memory_allocation:e.Nat,compute_allocation:e.Nat}),Fe=e.Record({status:Ce,memory_size:e.Nat,cycles:e.Nat,settings:Me,idle_cycles_burned_per_day:e.Nat,module_hash:e.Opt(e.Vec(e.Nat8))}),ke=e.Record({deployed_version:e.Opt(m),pending_version:e.Opt(l)}),Ae=e.Record({sns_initialization_parameters:e.Text}),Ee=e.Record({reserved_ids:e.Vec(e.Nat64),functions:e.Vec(n)}),Ge=e.Record({of_principal:e.Opt(e.Principal),limit:e.Nat32,start_page_at:e.Opt(o)}),qe=e.Record({neurons:e.Vec(f)}),Be=e.Record({include_reward_status:e.Vec(e.Int32),before_proposal:e.Opt(u),limit:e.Nat32,exclude_type:e.Vec(e.Nat64),include_status:e.Vec(e.Int32)}),Ue=e.Record({proposals:e.Vec(P)}),ze=e.Record({percentage_to_stake:e.Opt(e.Nat32)}),Qe=e.Variant({Split:C,Follow:h,DisburseMaturity:k,ClaimOrRefresh:q,Configure:A,RegisterVote:E,MakeProposal:g,StakeMaturity:ze,RemoveNeuronPermissions:B,AddNeuronPermissions:U,MergeMaturity:x,Disburse:z}),We=e.Record({subaccount:e.Vec(e.Nat8),command:e.Opt(Qe)}),je=e.Record({created_neuron_id:e.Opt(o)}),Ye=e.Record({amount_disbursed_e8s:e.Nat64,amount_deducted_e8s:e.Opt(e.Nat64)}),$e=e.Record({refreshed_neuron_id:e.Opt(o)}),He=e.Record({maturity_e8s:e.Nat64,staked_maturity_e8s:e.Nat64}),Xe=e.Record({merged_maturity_e8s:e.Nat64,new_stake_e8s:e.Nat64}),Je=e.Record({transfer_block_height:e.Nat64}),Ke=e.Variant({Error:N,Split:je,Follow:e.Record({}),DisburseMaturity:Ye,ClaimOrRefresh:$e,Configure:e.Record({}),RegisterVote:e.Record({}),MakeProposal:Y,RemoveNeuronPermission:e.Record({}),StakeMaturity:He,MergeMaturity:Xe,Disburse:Je,AddNeuronPermission:e.Record({})}),Ze=e.Record({command:e.Opt(Ke)}),Ie=e.Record({mode:e.Int32});return e.Service({claim_swap_neurons:e.Func([ue],[Oe],[]),fail_stuck_upgrade_in_progress:e.Func([e.Record({})],[e.Record({})],[]),get_build_metadata:e.Func([],[e.Text],["query"]),get_latest_reward_event:e.Func([],[y],["query"]),get_maturity_modulation:e.Func([e.Record({})],[Re],[]),get_metadata:e.Func([e.Record({})],[ge],["query"]),get_mode:e.Func([e.Record({})],[ye],["query"]),get_nervous_system_parameters:e.Func([e.Null],[i],["query"]),get_neuron:e.Func([fe],[Se],["query"]),get_proposal:e.Func([Y],[$],["query"]),get_root_canister_status:e.Func([e.Null],[Fe],[]),get_running_sns_version:e.Func([e.Record({})],[ke],["query"]),get_sns_initialization_parameters:e.Func([e.Record({})],[Ae],["query"]),list_nervous_system_functions:e.Func([],[Ee],["query"]),list_neurons:e.Func([Ge],[qe],["query"]),list_proposals:e.Func([Be],[Ue],["query"]),manage_neuron:e.Func([We],[Ze],[]),set_mode:e.Func([Ie],[e.Record({})],[])})};var Le=class e extends b.Canister{constructor(){super(...arguments);this.listNeurons=async s=>{let{principal:n,limit:r,beforeNeuronId:a}=s,{neurons:o}=await this.caller(s).list_neurons({of_principal:(0,b.toNullable)(n),limit:r??100,start_page_at:(0,b.toNullable)(a)});return o};this.listProposals=async s=>{let{certified:n}=s,{proposals:r}=await this.caller({certified:n}).list_proposals(Bt(s));return r};this.getProposal=async s=>{let{proposalId:n}=s,{result:r}=await this.caller(s).get_proposal({proposal_id:(0,b.toNullable)(n)}),a=(0,b.fromNullable)(r);if(a===void 0||"Error"in a)throw new w((a==null?void 0:a.Error.error_message)??"Response type not supported");return a.Proposal};this.listNervousSystemFunctions=async s=>this.caller(s).list_nervous_system_functions();this.metadata=s=>this.caller(s).get_metadata({});this.nervousSystemParameters=s=>this.caller(s).get_nervous_system_parameters(null);this.getNeuron=async s=>{let{neuronId:n}=s,{result:r}=await this.caller(s).get_neuron({neuron_id:(0,b.toNullable)(n)}),a=(0,b.fromNullable)(r);if(a===void 0||"Error"in a)throw new w((a==null?void 0:a.Error.error_message)??"Response type not supported");return a.Neuron};this.queryNeuron=async s=>{try{return await this.getNeuron(s)}catch(n){if(n instanceof Error&&n.message.includes("No neuron for given NeuronId"))return;throw n}};this.manageNeuron=async s=>{let n=await this.caller({certified:!0}).manage_neuron(s);return this.assertManageNeuronError(n),n};this.addNeuronPermissions=async s=>{let n=xt(s);await this.manageNeuron(n)};this.removeNeuronPermissions=async s=>{let n=wt(s);await this.manageNeuron(n)};this.splitNeuron=async s=>{let n=bt(s),{command:r}=await this.manageNeuron(n),a=(0,b.fromNullable)(r),o=c=>`Split neuron failed (${c})`;if(a===void 0)throw new w(o("no response"));if("Split"in a){let c=a.Split,d=(0,b.fromNullable)(c.created_neuron_id);if(d!==void 0)return d;throw new w(o("no id"))}throw new w(o("unknown"))};this.disburse=async s=>{let n=Tt(s);await this.manageNeuron(n)};this.startDissolving=async s=>{let n=Vt(s);await this.manageNeuron(n)};this.stopDissolving=async s=>{let n=Ct(s);await this.manageNeuron(n)};this.stakeMaturity=async({neuronId:s,percentageToStake:n})=>{(0,b.assertPercentageNumber)(n??100);let r=Mt({neuronId:s,percentageToStake:n});await this.manageNeuron(r)};this.disburseMaturity=async s=>{(0,b.assertPercentageNumber)(s.percentageToDisburse);let n=Ft(s);await this.manageNeuron(n)};this.autoStakeMaturity=async s=>{let n=kt(s);await this.manageNeuron(n)};this.setDissolveTimestamp=async s=>{let n=At(s);await this.manageNeuron(n)};this.increaseDissolveDelay=async s=>{let n=Et(s);await this.manageNeuron(n)};this.setTopicFollowees=async s=>{let n=Gt(s);await this.manageNeuron(n)};this.registerVote=async s=>{let n=qt(s);await this.manageNeuron(n)};this.refreshNeuron=async s=>{let n=yt({subaccount:s.id});await this.manageNeuron(n)};this.claimNeuron=async({memo:s,controller:n,subaccount:r})=>{let a=yt({subaccount:r,memo:s,controller:n}),{command:o}=await this.manageNeuron(a),c=(0,b.fromNullable)(o);if(c===void 0)throw new w("Claim neuron failed");if("ClaimOrRefresh"in c){let d=(0,b.fromNullable)(c.ClaimOrRefresh.refreshed_neuron_id);if(d===void 0)throw new w("Claim neuron failed");return d}throw new w("Claim neuron failed")};this.assertManageNeuronError=({command:s})=>{let n=s[0];if(n!==void 0&&"Error"in n)throw new w(n.Error.error_message)}}static create(s){let{service:n,certifiedService:r,canisterId:a}=(0,b.createServices)({options:s,idlFactory:Jt,certifiedIdlFactory:Xt});return new e(a,n,r)}};var he=require("@dfinity/utils");var Kt=({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)}),s=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(s)}),r=e.Record({not_dissolving_neurons_e8s_buckets:e.Vec(e.Tuple(e.Nat64,e.Float64)),garbage_collectable_neurons_count:e.Nat64,neurons_with_invalid_stake_count:e.Nat64,not_dissolving_neurons_count_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),neurons_with_less_than_6_months_dissolve_delay_count:e.Nat64,dissolved_neurons_count:e.Nat64,total_staked_e8s:e.Nat64,total_supply_governance_tokens:e.Nat64,not_dissolving_neurons_count:e.Nat64,dissolved_neurons_e8s:e.Nat64,neurons_with_less_than_6_months_dissolve_delay_e8s:e.Nat64,dissolving_neurons_count_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),dissolving_neurons_count:e.Nat64,dissolving_neurons_e8s_buckets:e.Vec(e.Tuple(e.Nat64,e.Float64)),timestamp_seconds:e.Nat64}),a=e.Record({current_basis_points:e.Opt(e.Int32),updated_at_timestamp_seconds:e.Opt(e.Nat64)}),o=e.Record({id:e.Vec(e.Nat8)}),c=e.Record({followees:e.Vec(o)}),d=e.Record({followees:e.Vec(e.Tuple(e.Nat64,c))}),p=e.Record({permissions:e.Vec(e.Int32)}),O=e.Record({final_reward_rate_basis_points:e.Opt(e.Nat64),initial_reward_rate_basis_points:e.Opt(e.Nat64),reward_rate_transition_duration_seconds:e.Opt(e.Nat64),round_duration_seconds:e.Opt(e.Nat64)}),i=e.Record({default_followees:e.Opt(d),max_dissolve_delay_seconds:e.Opt(e.Nat64),max_dissolve_delay_bonus_percentage:e.Opt(e.Nat64),max_followees_per_function:e.Opt(e.Nat64),neuron_claimer_permissions:e.Opt(p),neuron_minimum_stake_e8s:e.Opt(e.Nat64),max_neuron_age_for_age_bonus:e.Opt(e.Nat64),initial_voting_period_seconds:e.Opt(e.Nat64),neuron_minimum_dissolve_delay_to_vote_seconds:e.Opt(e.Nat64),reject_cost_e8s:e.Opt(e.Nat64),max_proposals_to_keep_per_action:e.Opt(e.Nat32),wait_for_quiet_deadline_increase_seconds:e.Opt(e.Nat64),max_number_of_neurons:e.Opt(e.Nat64),transaction_fee_e8s:e.Opt(e.Nat64),max_number_of_proposals_with_ballots:e.Opt(e.Nat64),max_age_bonus_percentage:e.Opt(e.Nat64),neuron_grantable_permissions:e.Opt(p),voting_rewards_parameters:e.Opt(O),maturity_modulation_disabled:e.Opt(e.Bool),max_number_of_principals_per_neuron:e.Opt(e.Nat64)}),m=e.Record({archive_wasm_hash:e.Vec(e.Nat8),root_wasm_hash:e.Vec(e.Nat8),swap_wasm_hash:e.Vec(e.Nat8),ledger_wasm_hash:e.Vec(e.Nat8),governance_wasm_hash:e.Vec(e.Nat8),index_wasm_hash:e.Vec(e.Nat8)}),u=e.Record({id:e.Nat64}),y=e.Record({rounds_since_last_distribution:e.Opt(e.Nat64),actual_timestamp_seconds:e.Nat64,end_timestamp_seconds:e.Opt(e.Nat64),distributed_e8s_equivalent:e.Nat64,round:e.Nat64,settled_proposals:e.Vec(u)}),l=e.Record({mark_failed_at_seconds:e.Nat64,checking_upgrade_lock:e.Nat64,proposal_id:e.Nat64,target_version:e.Opt(m)}),N=e.Record({error_message:e.Text,error_type:e.Int32}),M=e.Record({vote:e.Int32,cast_timestamp_seconds:e.Nat64,voting_power:e.Nat64}),v=e.Record({basis_points:e.Opt(e.Nat64)}),T=e.Record({no:e.Nat64,yes:e.Nat64,total:e.Nat64,timestamp_seconds:e.Nat64}),V=e.Record({canister_ids:e.Vec(e.Principal)}),S=e.Record({subaccount:e.Vec(e.Nat8)}),H=e.Record({from_treasury:e.Int32,to_principal:e.Opt(e.Principal),to_subaccount:e.Opt(S),memo:e.Opt(e.Nat64),amount_e8s:e.Nat64}),X=e.Record({new_canister_wasm:e.Vec(e.Nat8),mode:e.Opt(e.Int32),canister_id:e.Opt(e.Principal),canister_upgrade_arg:e.Opt(e.Vec(e.Nat8))}),J=e.Record({canister_ids:e.Vec(e.Principal),new_controllers:e.Vec(e.Principal)}),K=e.Record({to_principal:e.Opt(e.Principal),to_subaccount:e.Opt(S),memo:e.Opt(e.Nat64),amount_e8s:e.Opt(e.Nat64)}),F=e.Record({url:e.Opt(e.Text),logo:e.Opt(e.Text),name:e.Opt(e.Text),description:e.Opt(e.Text)}),Z=e.Record({function_id:e.Nat64,payload:e.Vec(e.Nat8)}),I=e.Record({transfer_fee:e.Opt(e.Nat64)}),D=e.Record({motion_text:e.Text}),L=e.Variant({ManageNervousSystemParameters:i,AddGenericNervousSystemFunction:n,RemoveGenericNervousSystemFunction:e.Nat64,UpgradeSnsToNextVersion:e.Record({}),RegisterDappCanisters:V,TransferSnsTreasuryFunds:H,UpgradeSnsControlledCanister:X,DeregisterDappCanisters:J,MintSnsTokens:K,Unspecified:e.Record({}),ManageSnsMetadata:F,ExecuteGenericNervousSystemFunction:Z,ManageLedgerParameters:I,Motion:D}),g=e.Record({url:e.Text,title:e.Text,action:e.Opt(L),summary:e.Text}),ee=e.Record({current_deadline_timestamp_seconds:e.Nat64}),P=e.Record({id:e.Opt(u),payload_text_rendering:e.Opt(e.Text),action:e.Nat64,failure_reason:e.Opt(N),ballots:e.Vec(e.Tuple(e.Text,M)),minimum_yes_proportion_of_total:e.Opt(v),reward_event_round:e.Nat64,failed_timestamp_seconds:e.Nat64,reward_event_end_timestamp_seconds:e.Opt(e.Nat64),proposal_creation_timestamp_seconds:e.Nat64,initial_voting_period_seconds:e.Nat64,reject_cost_e8s:e.Nat64,latest_tally:e.Opt(T),wait_for_quiet_deadline_increase_seconds:e.Nat64,decided_timestamp_seconds:e.Nat64,proposal:e.Opt(g),proposer:e.Opt(o),wait_for_quiet_state:e.Opt(ee),minimum_yes_proportion_of_exercised:e.Opt(v),is_eligible_for_rewards:e.Bool,executed_timestamp_seconds:e.Nat64}),C=e.Record({memo:e.Nat64,amount_e8s:e.Nat64}),h=e.Record({function_id:e.Nat64,followees:e.Vec(o)}),R=e.Record({owner:e.Opt(e.Principal),subaccount:e.Opt(S)}),k=e.Record({to_account:e.Opt(R),percentage_to_disburse:e.Nat32}),te=e.Record({requested_setting_for_auto_stake_maturity:e.Bool}),se=e.Record({additional_dissolve_delay_seconds:e.Nat32}),ne=e.Record({dissolve_timestamp_seconds:e.Nat64}),oe=e.Variant({ChangeAutoStakeMaturity:te,StopDissolving:e.Record({}),StartDissolving:e.Record({}),IncreaseDissolveDelay:se,SetDissolveTimestamp:ne}),A=e.Record({operation:e.Opt(oe)}),E=e.Record({vote:e.Int32,proposal:e.Opt(u)}),re=e.Record({amount_to_be_disbursed_e8s:e.Nat64,to_account:e.Opt(R)}),W=e.Record({controller:e.Opt(e.Principal),memo:e.Nat64}),G=e.Variant({MemoAndController:W,NeuronId:e.Record({})}),q=e.Record({by:e.Opt(G)}),B=e.Record({permissions_to_remove:e.Opt(p),principal_id:e.Opt(e.Principal)}),U=e.Record({permissions_to_add:e.Opt(p),principal_id:e.Opt(e.Principal)}),x=e.Record({percentage_to_merge:e.Nat32}),ae=e.Record({e8s:e.Nat64}),z=e.Record({to_account:e.Opt(R),amount:e.Opt(ae)}),ie=e.Variant({Split:C,Follow:h,DisburseMaturity:k,Configure:A,RegisterVote:E,SyncCommand:e.Record({}),MakeProposal:g,FinalizeDisburseMaturity:re,ClaimOrRefreshNeuron:q,RemoveNeuronPermissions:B,AddNeuronPermissions:U,MergeMaturity:x,Disburse:z}),ce=e.Record({command:e.Opt(ie),timestamp:e.Nat64}),_e=e.Record({principal:e.Opt(e.Principal),permission_type:e.Vec(e.Int32)}),pe=e.Variant({DissolveDelaySeconds:e.Nat64,WhenDissolvedTimestampSeconds:e.Nat64}),j=e.Record({timestamp_of_disbursement_seconds:e.Nat64,amount_e8s:e.Nat64,account_to_disburse_to:e.Opt(R),finalize_disbursement_timestamp_seconds:e.Opt(e.Nat64)}),f=e.Record({id:e.Opt(o),staked_maturity_e8s_equivalent:e.Opt(e.Nat64),permissions:e.Vec(_e),maturity_e8s_equivalent:e.Nat64,cached_neuron_stake_e8s:e.Nat64,created_timestamp_seconds:e.Nat64,source_nns_neuron_id:e.Opt(e.Nat64),auto_stake_maturity:e.Opt(e.Bool),aging_since_timestamp_seconds:e.Nat64,dissolve_state:e.Opt(pe),voting_power_percentage_multiplier:e.Nat64,vesting_period_seconds:e.Opt(e.Nat64),disburse_maturity_in_progress:e.Vec(j),followees:e.Vec(e.Tuple(e.Nat64,c)),neuron_fees_e8s:e.Nat64}),Ve=e.Record({root_canister_id:e.Opt(e.Principal),id_to_nervous_system_functions:e.Vec(e.Tuple(e.Nat64,n)),metrics:e.Opt(r),maturity_modulation:e.Opt(a),mode:e.Int32,parameters:e.Opt(i),is_finalizing_disburse_maturity:e.Opt(e.Bool),deployed_version:e.Opt(m),sns_initialization_parameters:e.Text,latest_reward_event:e.Opt(y),pending_version:e.Opt(l),swap_canister_id:e.Opt(e.Principal),ledger_canister_id:e.Opt(e.Principal),proposals:e.Vec(e.Tuple(e.Nat64,P)),in_flight_commands:e.Vec(e.Tuple(e.Text,ce)),sns_metadata:e.Opt(F),neurons:e.Vec(e.Tuple(e.Text,f)),genesis_timestamp_seconds:e.Nat64}),de=e.Record({id:e.Opt(o),amount_e8s:e.Opt(e.Nat64)}),ue=e.Record({new_maturity_e8s:e.Opt(e.Nat64)}),le=e.Record({controller:e.Opt(e.Principal),dissolve_delay_seconds:e.Opt(e.Nat64),source_nns_neuron_id:e.Opt(e.Nat64),stake_e8s:e.Opt(e.Nat64),followees:e.Vec(o),hotkey:e.Opt(e.Principal),neuron_id:e.Opt(o)}),me=e.Record({neuron_parameters:e.Vec(le)}),Ne=e.Record({id:e.Opt(o),status:e.Int32}),Oe=e.Record({swap_neurons:e.Vec(Ne)}),Re=e.Variant({Ok:Oe,Err:e.Int32}),ge=e.Record({claim_swap_neurons_result:e.Opt(Re)}),ye=e.Record({maturity_modulation:e.Opt(a)}),fe=e.Record({url:e.Opt(e.Text),logo:e.Opt(e.Text),name:e.Opt(e.Text),description:e.Opt(e.Text)}),ve=e.Record({mode:e.Opt(e.Int32)}),Se=e.Record({neuron_id:e.Opt(o)}),Y=e.Variant({Error:N,Neuron:f}),Pe=e.Record({result:e.Opt(Y)}),$=e.Record({proposal_id:e.Opt(u)}),Ce=e.Variant({Error:N,Proposal:P}),Me=e.Record({result:e.Opt(Ce)}),Fe=e.Variant({stopped:e.Null,stopping:e.Null,running:e.Null}),ke=e.Record({freezing_threshold:e.Nat,controllers:e.Vec(e.Principal),memory_allocation:e.Nat,compute_allocation:e.Nat}),Ae=e.Record({status:Fe,memory_size:e.Nat,cycles:e.Nat,settings:ke,idle_cycles_burned_per_day:e.Nat,module_hash:e.Opt(e.Vec(e.Nat8))}),Ee=e.Record({deployed_version:e.Opt(m),pending_version:e.Opt(l)}),Ge=e.Record({sns_initialization_parameters:e.Text}),qe=e.Record({reserved_ids:e.Vec(e.Nat64),functions:e.Vec(n)}),Be=e.Record({of_principal:e.Opt(e.Principal),limit:e.Nat32,start_page_at:e.Opt(o)}),Ue=e.Record({neurons:e.Vec(f)}),ze=e.Record({include_reward_status:e.Vec(e.Int32),before_proposal:e.Opt(u),limit:e.Nat32,exclude_type:e.Vec(e.Nat64),include_status:e.Vec(e.Int32)}),Qe=e.Record({proposals:e.Vec(P)}),We=e.Record({percentage_to_stake:e.Opt(e.Nat32)}),je=e.Variant({Split:C,Follow:h,DisburseMaturity:k,ClaimOrRefresh:q,Configure:A,RegisterVote:E,MakeProposal:g,StakeMaturity:We,RemoveNeuronPermissions:B,AddNeuronPermissions:U,MergeMaturity:x,Disburse:z}),Ye=e.Record({subaccount:e.Vec(e.Nat8),command:e.Opt(je)}),$e=e.Record({created_neuron_id:e.Opt(o)}),He=e.Record({amount_disbursed_e8s:e.Nat64,amount_deducted_e8s:e.Opt(e.Nat64)}),Xe=e.Record({refreshed_neuron_id:e.Opt(o)}),Je=e.Record({maturity_e8s:e.Nat64,staked_maturity_e8s:e.Nat64}),Ke=e.Record({merged_maturity_e8s:e.Nat64,new_stake_e8s:e.Nat64}),Ze=e.Record({transfer_block_height:e.Nat64}),Ie=e.Variant({Error:N,Split:$e,Follow:e.Record({}),DisburseMaturity:He,ClaimOrRefresh:Xe,Configure:e.Record({}),RegisterVote:e.Record({}),MakeProposal:$,RemoveNeuronPermission:e.Record({}),StakeMaturity:Je,MergeMaturity:Ke,Disburse:Ze,AddNeuronPermission:e.Record({})}),Nt=e.Record({command:e.Opt(Ie)}),Ot=e.Record({recipient:e.Opt(R),amount_e8s:e.Opt(e.Nat64)}),Rt=e.Record({mode:e.Int32});return e.Service({add_maturity:e.Func([de],[ue],[]),claim_swap_neurons:e.Func([me],[ge],[]),fail_stuck_upgrade_in_progress:e.Func([e.Record({})],[e.Record({})],[]),get_build_metadata:e.Func([],[e.Text],[]),get_latest_reward_event:e.Func([],[y],[]),get_maturity_modulation:e.Func([e.Record({})],[ye],[]),get_metadata:e.Func([e.Record({})],[fe],[]),get_mode:e.Func([e.Record({})],[ve],[]),get_nervous_system_parameters:e.Func([e.Null],[i],[]),get_neuron:e.Func([Se],[Pe],[]),get_proposal:e.Func([$],[Me],[]),get_root_canister_status:e.Func([e.Null],[Ae],[]),get_running_sns_version:e.Func([e.Record({})],[Ee],[]),get_sns_initialization_parameters:e.Func([e.Record({})],[Ge],[]),list_nervous_system_functions:e.Func([],[qe],[]),list_neurons:e.Func([Be],[Ue],[]),list_proposals:e.Func([ze],[Qe],[]),manage_neuron:e.Func([Ye],[Nt],[]),mint_tokens:e.Func([Ot],[e.Record({})],[]),set_mode:e.Func([Rt],[e.Record({})],[]),update_neuron:e.Func([f],[e.Opt(N)],[])})};var Zt=({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)}),s=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(s)}),r=e.Record({not_dissolving_neurons_e8s_buckets:e.Vec(e.Tuple(e.Nat64,e.Float64)),garbage_collectable_neurons_count:e.Nat64,neurons_with_invalid_stake_count:e.Nat64,not_dissolving_neurons_count_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),neurons_with_less_than_6_months_dissolve_delay_count:e.Nat64,dissolved_neurons_count:e.Nat64,total_staked_e8s:e.Nat64,total_supply_governance_tokens:e.Nat64,not_dissolving_neurons_count:e.Nat64,dissolved_neurons_e8s:e.Nat64,neurons_with_less_than_6_months_dissolve_delay_e8s:e.Nat64,dissolving_neurons_count_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),dissolving_neurons_count:e.Nat64,dissolving_neurons_e8s_buckets:e.Vec(e.Tuple(e.Nat64,e.Float64)),timestamp_seconds:e.Nat64}),a=e.Record({current_basis_points:e.Opt(e.Int32),updated_at_timestamp_seconds:e.Opt(e.Nat64)}),o=e.Record({id:e.Vec(e.Nat8)}),c=e.Record({followees:e.Vec(o)}),d=e.Record({followees:e.Vec(e.Tuple(e.Nat64,c))}),p=e.Record({permissions:e.Vec(e.Int32)}),O=e.Record({final_reward_rate_basis_points:e.Opt(e.Nat64),initial_reward_rate_basis_points:e.Opt(e.Nat64),reward_rate_transition_duration_seconds:e.Opt(e.Nat64),round_duration_seconds:e.Opt(e.Nat64)}),i=e.Record({default_followees:e.Opt(d),max_dissolve_delay_seconds:e.Opt(e.Nat64),max_dissolve_delay_bonus_percentage:e.Opt(e.Nat64),max_followees_per_function:e.Opt(e.Nat64),neuron_claimer_permissions:e.Opt(p),neuron_minimum_stake_e8s:e.Opt(e.Nat64),max_neuron_age_for_age_bonus:e.Opt(e.Nat64),initial_voting_period_seconds:e.Opt(e.Nat64),neuron_minimum_dissolve_delay_to_vote_seconds:e.Opt(e.Nat64),reject_cost_e8s:e.Opt(e.Nat64),max_proposals_to_keep_per_action:e.Opt(e.Nat32),wait_for_quiet_deadline_increase_seconds:e.Opt(e.Nat64),max_number_of_neurons:e.Opt(e.Nat64),transaction_fee_e8s:e.Opt(e.Nat64),max_number_of_proposals_with_ballots:e.Opt(e.Nat64),max_age_bonus_percentage:e.Opt(e.Nat64),neuron_grantable_permissions:e.Opt(p),voting_rewards_parameters:e.Opt(O),maturity_modulation_disabled:e.Opt(e.Bool),max_number_of_principals_per_neuron:e.Opt(e.Nat64)}),m=e.Record({archive_wasm_hash:e.Vec(e.Nat8),root_wasm_hash:e.Vec(e.Nat8),swap_wasm_hash:e.Vec(e.Nat8),ledger_wasm_hash:e.Vec(e.Nat8),governance_wasm_hash:e.Vec(e.Nat8),index_wasm_hash:e.Vec(e.Nat8)}),u=e.Record({id:e.Nat64}),y=e.Record({rounds_since_last_distribution:e.Opt(e.Nat64),actual_timestamp_seconds:e.Nat64,end_timestamp_seconds:e.Opt(e.Nat64),distributed_e8s_equivalent:e.Nat64,round:e.Nat64,settled_proposals:e.Vec(u)}),l=e.Record({mark_failed_at_seconds:e.Nat64,checking_upgrade_lock:e.Nat64,proposal_id:e.Nat64,target_version:e.Opt(m)}),N=e.Record({error_message:e.Text,error_type:e.Int32}),M=e.Record({vote:e.Int32,cast_timestamp_seconds:e.Nat64,voting_power:e.Nat64}),v=e.Record({basis_points:e.Opt(e.Nat64)}),T=e.Record({no:e.Nat64,yes:e.Nat64,total:e.Nat64,timestamp_seconds:e.Nat64}),V=e.Record({canister_ids:e.Vec(e.Principal)}),S=e.Record({subaccount:e.Vec(e.Nat8)}),H=e.Record({from_treasury:e.Int32,to_principal:e.Opt(e.Principal),to_subaccount:e.Opt(S),memo:e.Opt(e.Nat64),amount_e8s:e.Nat64}),X=e.Record({new_canister_wasm:e.Vec(e.Nat8),mode:e.Opt(e.Int32),canister_id:e.Opt(e.Principal),canister_upgrade_arg:e.Opt(e.Vec(e.Nat8))}),J=e.Record({canister_ids:e.Vec(e.Principal),new_controllers:e.Vec(e.Principal)}),K=e.Record({to_principal:e.Opt(e.Principal),to_subaccount:e.Opt(S),memo:e.Opt(e.Nat64),amount_e8s:e.Opt(e.Nat64)}),F=e.Record({url:e.Opt(e.Text),logo:e.Opt(e.Text),name:e.Opt(e.Text),description:e.Opt(e.Text)}),Z=e.Record({function_id:e.Nat64,payload:e.Vec(e.Nat8)}),I=e.Record({transfer_fee:e.Opt(e.Nat64)}),D=e.Record({motion_text:e.Text}),L=e.Variant({ManageNervousSystemParameters:i,AddGenericNervousSystemFunction:n,RemoveGenericNervousSystemFunction:e.Nat64,UpgradeSnsToNextVersion:e.Record({}),RegisterDappCanisters:V,TransferSnsTreasuryFunds:H,UpgradeSnsControlledCanister:X,DeregisterDappCanisters:J,MintSnsTokens:K,Unspecified:e.Record({}),ManageSnsMetadata:F,ExecuteGenericNervousSystemFunction:Z,ManageLedgerParameters:I,Motion:D}),g=e.Record({url:e.Text,title:e.Text,action:e.Opt(L),summary:e.Text}),ee=e.Record({current_deadline_timestamp_seconds:e.Nat64}),P=e.Record({id:e.Opt(u),payload_text_rendering:e.Opt(e.Text),action:e.Nat64,failure_reason:e.Opt(N),ballots:e.Vec(e.Tuple(e.Text,M)),minimum_yes_proportion_of_total:e.Opt(v),reward_event_round:e.Nat64,failed_timestamp_seconds:e.Nat64,reward_event_end_timestamp_seconds:e.Opt(e.Nat64),proposal_creation_timestamp_seconds:e.Nat64,initial_voting_period_seconds:e.Nat64,reject_cost_e8s:e.Nat64,latest_tally:e.Opt(T),wait_for_quiet_deadline_increase_seconds:e.Nat64,decided_timestamp_seconds:e.Nat64,proposal:e.Opt(g),proposer:e.Opt(o),wait_for_quiet_state:e.Opt(ee),minimum_yes_proportion_of_exercised:e.Opt(v),is_eligible_for_rewards:e.Bool,executed_timestamp_seconds:e.Nat64}),C=e.Record({memo:e.Nat64,amount_e8s:e.Nat64}),h=e.Record({function_id:e.Nat64,followees:e.Vec(o)}),R=e.Record({owner:e.Opt(e.Principal),subaccount:e.Opt(S)}),k=e.Record({to_account:e.Opt(R),percentage_to_disburse:e.Nat32}),te=e.Record({requested_setting_for_auto_stake_maturity:e.Bool}),se=e.Record({additional_dissolve_delay_seconds:e.Nat32}),ne=e.Record({dissolve_timestamp_seconds:e.Nat64}),oe=e.Variant({ChangeAutoStakeMaturity:te,StopDissolving:e.Record({}),StartDissolving:e.Record({}),IncreaseDissolveDelay:se,SetDissolveTimestamp:ne}),A=e.Record({operation:e.Opt(oe)}),E=e.Record({vote:e.Int32,proposal:e.Opt(u)}),re=e.Record({amount_to_be_disbursed_e8s:e.Nat64,to_account:e.Opt(R)}),W=e.Record({controller:e.Opt(e.Principal),memo:e.Nat64}),G=e.Variant({MemoAndController:W,NeuronId:e.Record({})}),q=e.Record({by:e.Opt(G)}),B=e.Record({permissions_to_remove:e.Opt(p),principal_id:e.Opt(e.Principal)}),U=e.Record({permissions_to_add:e.Opt(p),principal_id:e.Opt(e.Principal)}),x=e.Record({percentage_to_merge:e.Nat32}),ae=e.Record({e8s:e.Nat64}),z=e.Record({to_account:e.Opt(R),amount:e.Opt(ae)}),ie=e.Variant({Split:C,Follow:h,DisburseMaturity:k,Configure:A,RegisterVote:E,SyncCommand:e.Record({}),MakeProposal:g,FinalizeDisburseMaturity:re,ClaimOrRefreshNeuron:q,RemoveNeuronPermissions:B,AddNeuronPermissions:U,MergeMaturity:x,Disburse:z}),ce=e.Record({command:e.Opt(ie),timestamp:e.Nat64}),_e=e.Record({principal:e.Opt(e.Principal),permission_type:e.Vec(e.Int32)}),pe=e.Variant({DissolveDelaySeconds:e.Nat64,WhenDissolvedTimestampSeconds:e.Nat64}),j=e.Record({timestamp_of_disbursement_seconds:e.Nat64,amount_e8s:e.Nat64,account_to_disburse_to:e.Opt(R),finalize_disbursement_timestamp_seconds:e.Opt(e.Nat64)}),f=e.Record({id:e.Opt(o),staked_maturity_e8s_equivalent:e.Opt(e.Nat64),permissions:e.Vec(_e),maturity_e8s_equivalent:e.Nat64,cached_neuron_stake_e8s:e.Nat64,created_timestamp_seconds:e.Nat64,source_nns_neuron_id:e.Opt(e.Nat64),auto_stake_maturity:e.Opt(e.Bool),aging_since_timestamp_seconds:e.Nat64,dissolve_state:e.Opt(pe),voting_power_percentage_multiplier:e.Nat64,vesting_period_seconds:e.Opt(e.Nat64),disburse_maturity_in_progress:e.Vec(j),followees:e.Vec(e.Tuple(e.Nat64,c)),neuron_fees_e8s:e.Nat64}),Ve=e.Record({root_canister_id:e.Opt(e.Principal),id_to_nervous_system_functions:e.Vec(e.Tuple(e.Nat64,n)),metrics:e.Opt(r),maturity_modulation:e.Opt(a),mode:e.Int32,parameters:e.Opt(i),is_finalizing_disburse_maturity:e.Opt(e.Bool),deployed_version:e.Opt(m),sns_initialization_parameters:e.Text,latest_reward_event:e.Opt(y),pending_version:e.Opt(l),swap_canister_id:e.Opt(e.Principal),ledger_canister_id:e.Opt(e.Principal),proposals:e.Vec(e.Tuple(e.Nat64,P)),in_flight_commands:e.Vec(e.Tuple(e.Text,ce)),sns_metadata:e.Opt(F),neurons:e.Vec(e.Tuple(e.Text,f)),genesis_timestamp_seconds:e.Nat64}),de=e.Record({id:e.Opt(o),amount_e8s:e.Opt(e.Nat64)}),ue=e.Record({new_maturity_e8s:e.Opt(e.Nat64)}),le=e.Record({controller:e.Opt(e.Principal),dissolve_delay_seconds:e.Opt(e.Nat64),source_nns_neuron_id:e.Opt(e.Nat64),stake_e8s:e.Opt(e.Nat64),followees:e.Vec(o),hotkey:e.Opt(e.Principal),neuron_id:e.Opt(o)}),me=e.Record({neuron_parameters:e.Vec(le)}),Ne=e.Record({id:e.Opt(o),status:e.Int32}),Oe=e.Record({swap_neurons:e.Vec(Ne)}),Re=e.Variant({Ok:Oe,Err:e.Int32}),ge=e.Record({claim_swap_neurons_result:e.Opt(Re)}),ye=e.Record({maturity_modulation:e.Opt(a)}),fe=e.Record({url:e.Opt(e.Text),logo:e.Opt(e.Text),name:e.Opt(e.Text),description:e.Opt(e.Text)}),ve=e.Record({mode:e.Opt(e.Int32)}),Se=e.Record({neuron_id:e.Opt(o)}),Y=e.Variant({Error:N,Neuron:f}),Pe=e.Record({result:e.Opt(Y)}),$=e.Record({proposal_id:e.Opt(u)}),Ce=e.Variant({Error:N,Proposal:P}),Me=e.Record({result:e.Opt(Ce)}),Fe=e.Variant({stopped:e.Null,stopping:e.Null,running:e.Null}),ke=e.Record({freezing_threshold:e.Nat,controllers:e.Vec(e.Principal),memory_allocation:e.Nat,compute_allocation:e.Nat}),Ae=e.Record({status:Fe,memory_size:e.Nat,cycles:e.Nat,settings:ke,idle_cycles_burned_per_day:e.Nat,module_hash:e.Opt(e.Vec(e.Nat8))}),Ee=e.Record({deployed_version:e.Opt(m),pending_version:e.Opt(l)}),Ge=e.Record({sns_initialization_parameters:e.Text}),qe=e.Record({reserved_ids:e.Vec(e.Nat64),functions:e.Vec(n)}),Be=e.Record({of_principal:e.Opt(e.Principal),limit:e.Nat32,start_page_at:e.Opt(o)}),Ue=e.Record({neurons:e.Vec(f)}),ze=e.Record({include_reward_status:e.Vec(e.Int32),before_proposal:e.Opt(u),limit:e.Nat32,exclude_type:e.Vec(e.Nat64),include_status:e.Vec(e.Int32)}),Qe=e.Record({proposals:e.Vec(P)}),We=e.Record({percentage_to_stake:e.Opt(e.Nat32)}),je=e.Variant({Split:C,Follow:h,DisburseMaturity:k,ClaimOrRefresh:q,Configure:A,RegisterVote:E,MakeProposal:g,StakeMaturity:We,RemoveNeuronPermissions:B,AddNeuronPermissions:U,MergeMaturity:x,Disburse:z}),Ye=e.Record({subaccount:e.Vec(e.Nat8),command:e.Opt(je)}),$e=e.Record({created_neuron_id:e.Opt(o)}),He=e.Record({amount_disbursed_e8s:e.Nat64,amount_deducted_e8s:e.Opt(e.Nat64)}),Xe=e.Record({refreshed_neuron_id:e.Opt(o)}),Je=e.Record({maturity_e8s:e.Nat64,staked_maturity_e8s:e.Nat64}),Ke=e.Record({merged_maturity_e8s:e.Nat64,new_stake_e8s:e.Nat64}),Ze=e.Record({transfer_block_height:e.Nat64}),Ie=e.Variant({Error:N,Split:$e,Follow:e.Record({}),DisburseMaturity:He,ClaimOrRefresh:Xe,Configure:e.Record({}),RegisterVote:e.Record({}),MakeProposal:$,RemoveNeuronPermission:e.Record({}),StakeMaturity:Je,MergeMaturity:Ke,Disburse:Ze,AddNeuronPermission:e.Record({})}),Nt=e.Record({command:e.Opt(Ie)}),Ot=e.Record({recipient:e.Opt(R),amount_e8s:e.Opt(e.Nat64)}),Rt=e.Record({mode:e.Int32});return e.Service({add_maturity:e.Func([de],[ue],[]),claim_swap_neurons:e.Func([me],[ge],[]),fail_stuck_upgrade_in_progress:e.Func([e.Record({})],[e.Record({})],[]),get_build_metadata:e.Func([],[e.Text],["query"]),get_latest_reward_event:e.Func([],[y],["query"]),get_maturity_modulation:e.Func([e.Record({})],[ye],[]),get_metadata:e.Func([e.Record({})],[fe],["query"]),get_mode:e.Func([e.Record({})],[ve],["query"]),get_nervous_system_parameters:e.Func([e.Null],[i],["query"]),get_neuron:e.Func([Se],[Pe],["query"]),get_proposal:e.Func([$],[Me],["query"]),get_root_canister_status:e.Func([e.Null],[Ae],[]),get_running_sns_version:e.Func([e.Record({})],[Ee],["query"]),get_sns_initialization_parameters:e.Func([e.Record({})],[Ge],["query"]),list_nervous_system_functions:e.Func([],[qe],["query"]),list_neurons:e.Func([Be],[Ue],["query"]),list_proposals:e.Func([ze],[Qe],["query"]),manage_neuron:e.Func([Ye],[Nt],[]),mint_tokens:e.Func([Ot],[e.Record({})],[]),set_mode:e.Func([Rt],[e.Record({})],[]),update_neuron:e.Func([f],[e.Opt(N)],[])})};var _t=class e extends he.Canister{constructor(){super(...arguments);this.addMaturity=async s=>{let{id:n,amountE8s:r}=s,{new_maturity_e8s:a}=await this.caller(s).add_maturity({id:(0,he.toNullable)(n),amount_e8s:(0,he.toNullable)(r)}),o=(0,he.fromNullable)(a);if((0,he.isNullish)(o)||o<r)throw new w("No maturity added")}}static create(s){let{service:n,certifiedService:r,canisterId:a}=(0,he.createServices)({options:s,idlFactory:Zt,certifiedIdlFactory:Kt});return new e(a,n,r)}};var pt=require("@dfinity/utils");var It=({IDL:e})=>{let t=e.Record({dapp_canister_ids:e.Vec(e.Principal),testflight:e.Bool,latest_ledger_archive_poll_timestamp_seconds:e.Opt(e.Nat64),archive_canister_ids:e.Vec(e.Principal),governance_canister_id:e.Opt(e.Principal),index_canister_id:e.Opt(e.Principal),swap_canister_id:e.Opt(e.Principal),ledger_canister_id:e.Opt(e.Principal)}),s=e.Record({canister_id:e.Principal}),n=e.Variant({stopped:e.Null,stopping:e.Null,running:e.Null}),r=e.Record({controllers:e.Vec(e.Principal)}),a=e.Record({status:n,memory_size:e.Nat,cycles:e.Nat,settings:r,module_hash:e.Opt(e.Vec(e.Nat8))}),o=e.Variant({reinstall:e.Null,upgrade:e.Null,install:e.Null}),c=e.Record({arg:e.Vec(e.Nat8),wasm_module:e.Vec(e.Nat8),stop_before_installing:e.Bool,mode:o,canister_id:e.Principal,query_allocation:e.Opt(e.Nat),memory_allocation:e.Opt(e.Nat),compute_allocation:e.Opt(e.Nat)}),d=e.Record({update_canister_list:e.Opt(e.Bool)}),p=e.Record({freezing_threshold:e.Nat,controllers:e.Vec(e.Principal),memory_allocation:e.Nat,compute_allocation:e.Nat}),O=e.Record({status:n,memory_size:e.Nat,cycles:e.Nat,settings:p,idle_cycles_burned_per_day:e.Nat,module_hash:e.Opt(e.Vec(e.Nat8))}),i=e.Record({status:e.Opt(O),canister_id:e.Opt(e.Principal)}),m=e.Record({root:e.Opt(i),swap:e.Opt(i),ledger:e.Opt(i),index:e.Opt(i),governance:e.Opt(i),dapps:e.Vec(i),archives:e.Vec(i)}),u=e.Record({root:e.Opt(e.Principal),swap:e.Opt(e.Principal),ledger:e.Opt(e.Principal),index:e.Opt(e.Principal),governance:e.Opt(e.Principal),dapps:e.Vec(e.Principal),archives:e.Vec(e.Principal)}),y=e.Record({canister_id:e.Opt(e.Principal)}),l=e.Record({canister_ids:e.Vec(e.Principal)}),N=e.Record({canister_ids:e.Opt(l),controller_principal_ids:e.Vec(e.Principal)}),M=e.Record({code:e.Opt(e.Int32),description:e.Text}),v=e.Record({err:e.Opt(M),dapp_canister_id:e.Opt(e.Principal)}),T=e.Record({failed_updates:e.Vec(v)});return e.Service({canister_status:e.Func([s],[a],[]),change_canister:e.Func([c],[],[]),get_build_metadata:e.Func([],[e.Text],[]),get_sns_canisters_summary:e.Func([d],[m],[]),list_sns_canisters:e.Func([e.Record({})],[u],[]),register_dapp_canister:e.Func([y],[e.Record({})],[]),register_dapp_canisters:e.Func([l],[e.Record({})],[]),set_dapp_controllers:e.Func([N],[T],[])})};var Dt=({IDL:e})=>{let t=e.Record({dapp_canister_ids:e.Vec(e.Principal),testflight:e.Bool,latest_ledger_archive_poll_timestamp_seconds:e.Opt(e.Nat64),archive_canister_ids:e.Vec(e.Principal),governance_canister_id:e.Opt(e.Principal),index_canister_id:e.Opt(e.Principal),swap_canister_id:e.Opt(e.Principal),ledger_canister_id:e.Opt(e.Principal)}),s=e.Record({canister_id:e.Principal}),n=e.Variant({stopped:e.Null,stopping:e.Null,running:e.Null}),r=e.Record({controllers:e.Vec(e.Principal)}),a=e.Record({status:n,memory_size:e.Nat,cycles:e.Nat,settings:r,module_hash:e.Opt(e.Vec(e.Nat8))}),o=e.Variant({reinstall:e.Null,upgrade:e.Null,install:e.Null}),c=e.Record({arg:e.Vec(e.Nat8),wasm_module:e.Vec(e.Nat8),stop_before_installing:e.Bool,mode:o,canister_id:e.Principal,query_allocation:e.Opt(e.Nat),memory_allocation:e.Opt(e.Nat),compute_allocation:e.Opt(e.Nat)}),d=e.Record({update_canister_list:e.Opt(e.Bool)}),p=e.Record({freezing_threshold:e.Nat,controllers:e.Vec(e.Principal),memory_allocation:e.Nat,compute_allocation:e.Nat}),O=e.Record({status:n,memory_size:e.Nat,cycles:e.Nat,settings:p,idle_cycles_burned_per_day:e.Nat,module_hash:e.Opt(e.Vec(e.Nat8))}),i=e.Record({status:e.Opt(O),canister_id:e.Opt(e.Principal)}),m=e.Record({root:e.Opt(i),swap:e.Opt(i),ledger:e.Opt(i),index:e.Opt(i),governance:e.Opt(i),dapps:e.Vec(i),archives:e.Vec(i)}),u=e.Record({root:e.Opt(e.Principal),swap:e.Opt(e.Principal),ledger:e.Opt(e.Principal),index:e.Opt(e.Principal),governance:e.Opt(e.Principal),dapps:e.Vec(e.Principal),archives:e.Vec(e.Principal)}),y=e.Record({canister_id:e.Opt(e.Principal)}),l=e.Record({canister_ids:e.Vec(e.Principal)}),N=e.Record({canister_ids:e.Opt(l),controller_principal_ids:e.Vec(e.Principal)}),M=e.Record({code:e.Opt(e.Int32),description:e.Text}),v=e.Record({err:e.Opt(M),dapp_canister_id:e.Opt(e.Principal)}),T=e.Record({failed_updates:e.Vec(v)});return e.Service({canister_status:e.Func([s],[a],[]),change_canister:e.Func([c],[],[]),get_build_metadata:e.Func([],[e.Text],["query"]),get_sns_canisters_summary:e.Func([d],[m],[]),list_sns_canisters:e.Func([e.Record({})],[u],["query"]),register_dapp_canister:e.Func([y],[e.Record({})],[]),register_dapp_canisters:e.Func([l],[e.Record({})],[]),set_dapp_controllers:e.Func([N],[T],[])})};var et=class e extends pt.Canister{constructor(){super(...arguments);this.listSnsCanisters=async({certified:s=!0})=>this.caller({certified:s}).list_sns_canisters({})}static create(s){let{service:n,certifiedService:r,canisterId:a}=(0,pt.createServices)({options:s,idlFactory:Dt,certifiedIdlFactory:It});return new e(a,n,r)}};var mt=require("@dfinity/ledger-icrc"),we=require("@dfinity/utils");var it=require("@dfinity/utils");var tt=require("@dfinity/utils");function Ps(e,...t){if(!(e instanceof Uint8Array))throw new Error("Expected Uint8Array");if(t.length>0&&!t.includes(e.length))throw new Error(`Expected Uint8Array of length ${t}, not of length=${e.length}`)}function ft(e,t=!0){if(e.destroyed)throw new Error("Hash instance has been destroyed");if(t&&e.finished)throw new Error("Hash#digest() has already been called")}function Lt(e,t){Ps(e);let s=t.outputLen;if(e.length<s)throw new Error(`digestInto() expects output buffer of length at least ${s}`)}var hs=e=>e instanceof Uint8Array;var ut=e=>new DataView(e.buffer,e.byteOffset,e.byteLength),xe=(e,t)=>e<<32-t|e>>>t,xs=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!xs)throw new Error("Non little-endian hardware is not supported");function ws(e){if(typeof e!="string")throw new Error(`utf8ToBytes expected string, got ${typeof e}`);return new Uint8Array(new TextEncoder().encode(e))}function vt(e){if(typeof e=="string"&&(e=ws(e)),!hs(e))throw new Error(`expected Uint8Array, got ${typeof e}`);return e}var dt=class{clone(){return this._cloneInto()}},pn={}.toString;function es(e){let t=n=>e().update(vt(n)).digest(),s=e();return t.outputLen=s.outputLen,t.blockLen=s.blockLen,t.create=()=>e(),t}function bs(e,t,s,n){if(typeof e.setBigUint64=="function")return e.setBigUint64(t,s,n);let r=BigInt(32),a=BigInt(4294967295),o=Number(s>>r&a),c=Number(s&a),d=n?4:0,p=n?0:4;e.setUint32(t+d,o,n),e.setUint32(t+p,c,n)}var lt=class extends dt{constructor(t,s,n,r){super(),this.blockLen=t,this.outputLen=s,this.padOffset=n,this.isLE=r,this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.buffer=new Uint8Array(t),this.view=ut(this.buffer)}update(t){ft(this);let{view:s,buffer:n,blockLen:r}=this;t=vt(t);let a=t.length;for(let o=0;o<a;){let c=Math.min(r-this.pos,a-o);if(c===r){let d=ut(t);for(;r<=a-o;o+=r)this.process(d,o);continue}n.set(t.subarray(o,o+c),this.pos),this.pos+=c,o+=c,this.pos===r&&(this.process(s,0),this.pos=0)}return this.length+=t.length,this.roundClean(),this}digestInto(t){ft(this),Lt(t,this),this.finished=!0;let{buffer:s,view:n,blockLen:r,isLE:a}=this,{pos:o}=this;s[o++]=128,this.buffer.subarray(o).fill(0),this.padOffset>r-o&&(this.process(n,0),o=0);for(let i=o;i<r;i++)s[i]=0;bs(n,r-8,BigInt(this.length*8),a),this.process(n,0);let c=ut(t),d=this.outputLen;if(d%4)throw new Error("_sha2: outputLen should be aligned to 32bit");let p=d/4,O=this.get();if(p>O.length)throw new Error("_sha2: outputLen bigger than state");for(let i=0;i<p;i++)c.setUint32(4*i,O[i],a)}digest(){let{buffer:t,outputLen:s}=this;this.digestInto(t);let n=t.slice(0,s);return this.destroy(),n}_cloneInto(t){t||(t=new this.constructor),t.set(...this.get());let{blockLen:s,buffer:n,length:r,finished:a,destroyed:o,pos:c}=this;return t.length=r,t.pos=c,t.finished=a,t.destroyed=o,r%s&&t.buffer.set(n),t}};var Ts=(e,t,s)=>e&t^~e&s,Vs=(e,t,s)=>e&t^e&s^t&s,Cs=new Uint32Array([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),be=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),Te=new Uint32Array(64),St=class extends lt{constructor(){super(64,32,8,!1),this.A=be[0]|0,this.B=be[1]|0,this.C=be[2]|0,this.D=be[3]|0,this.E=be[4]|0,this.F=be[5]|0,this.G=be[6]|0,this.H=be[7]|0}get(){let{A:t,B:s,C:n,D:r,E:a,F:o,G:c,H:d}=this;return[t,s,n,r,a,o,c,d]}set(t,s,n,r,a,o,c,d){this.A=t|0,this.B=s|0,this.C=n|0,this.D=r|0,this.E=a|0,this.F=o|0,this.G=c|0,this.H=d|0}process(t,s){for(let i=0;i<16;i++,s+=4)Te[i]=t.getUint32(s,!1);for(let i=16;i<64;i++){let m=Te[i-15],u=Te[i-2],y=xe(m,7)^xe(m,18)^m>>>3,l=xe(u,17)^xe(u,19)^u>>>10;Te[i]=l+Te[i-7]+y+Te[i-16]|0}let{A:n,B:r,C:a,D:o,E:c,F:d,G:p,H:O}=this;for(let i=0;i<64;i++){let m=xe(c,6)^xe(c,11)^xe(c,25),u=O+m+Ts(c,d,p)+Cs[i]+Te[i]|0,l=(xe(n,2)^xe(n,13)^xe(n,22))+Vs(n,r,a)|0;O=p,p=d,d=c,c=o+u|0,o=a,a=r,r=n,n=u+l|0}n=n+this.A|0,r=r+this.B|0,a=a+this.C|0,o=o+this.D|0,c=c+this.E|0,d=d+this.F|0,p=p+this.G|0,O=O+this.H|0,this.set(n,r,a,o,c,d,p,O)}roundClean(){Te.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}};var ts=es(()=>new St);var Pt=({index:e,controller:t})=>{let n=[12,...(0,tt.asciiStringToByteArray)("neuron-stake"),...t.toUint8Array(),...(0,tt.numberToUint8Array)(e)],r=ts.create();return r.update((0,tt.arrayOfNumberToUint8Array)(n)),r.digest()};var ct=class{constructor({root:t,governance:s,ledger:n,swap:r,index:a,certified:o}){this.listNeurons=t=>this.governance.listNeurons(this.mergeParams(t));this.listProposals=t=>this.governance.listProposals(this.mergeParams(t));this.getProposal=t=>this.governance.getProposal(this.mergeParams(t));this.listNervousSystemFunctions=t=>this.governance.listNervousSystemFunctions(this.mergeParams(t));this.metadata=t=>Promise.all([this.governance.metadata(this.mergeParams(t)),this.ledger.metadata(this.mergeParams(t))]);this.nervousSystemParameters=t=>this.governance.nervousSystemParameters(this.mergeParams(t));this.ledgerMetadata=t=>this.ledger.metadata(this.mergeParams(t));this.transactionFee=t=>this.ledger.transactionFee(this.mergeParams(t));this.totalTokensSupply=t=>this.ledger.totalTokensSupply(this.mergeParams(t));this.balance=t=>this.ledger.balance(this.mergeParams(t));this.transfer=t=>this.ledger.transfer(t);this.getNeuron=t=>this.governance.getNeuron(this.mergeParams(t));this.queryNeuron=t=>this.governance.queryNeuron(this.mergeParams(t));this.nextNeuronAccount=async t=>{for(let s=0;s<65536;s++){let n=Pt({index:s,controller:t}),r={id:n},a=await this.governance.queryNeuron({neuronId:r,certified:!1});if(a===void 0&&(a=await this.governance.queryNeuron({neuronId:r,certified:!0}),a===void 0))return{account:{...this.owner,subaccount:n},index:BigInt(s)}}throw new w("No more neuron accounts available")};this.stakeNeuron=async({stakeE8s:t,source:s,controller:n,createdAt:r,fee:a})=>{this.assertCertified("stakeNeuron");let{account:o,index:c}=await this.nextNeuronAccount(n);if(o.subaccount===void 0)throw new w("There was an error creating the neuron subaccount");return await this.ledger.transfer({amount:t,to:{owner:o.owner,subaccount:(0,it.toNullable)(o.subaccount)},from_subaccount:s.subaccount,memo:(0,it.bigIntToUint8Array)(c),created_at_time:r,fee:a}),this.governance.claimNeuron({memo:BigInt(c),controller:n,subaccount:o.subaccount})};this.increaseStakeNeuron=async({stakeE8s:t,source:s,neuronId:n})=>(this.assertCertified("stakeNeuron"),await this.ledger.transfer({amount:t,to:{...this.owner,subaccount:(0,it.toNullable)(Uint8Array.from(n.id))},from_subaccount:s.subaccount}),this.governance.refreshNeuron(n));this.getNeuronBalance=async t=>{let s={...this.owner,subaccount:Uint8Array.from(t.id)};return this.ledger.balance({...s,certified:this.certified})};this.addNeuronPermissions=t=>this.governance.addNeuronPermissions(t);this.refreshNeuron=t=>this.governance.refreshNeuron(t);this.claimNeuron=t=>this.governance.claimNeuron(t);this.removeNeuronPermissions=t=>this.governance.removeNeuronPermissions(t);this.splitNeuron=t=>this.governance.splitNeuron(t);this.disburse=t=>this.governance.disburse(t);this.startDissolving=t=>this.governance.startDissolving(t);this.stopDissolving=t=>this.governance.stopDissolving(t);this.setDissolveTimestamp=t=>this.governance.setDissolveTimestamp(t);this.increaseDissolveDelay=t=>this.governance.increaseDissolveDelay(t);this.setTopicFollowees=t=>this.governance.setTopicFollowees(t);this.registerVote=async t=>this.governance.registerVote(t);this.swapState=t=>this.swap.state(this.mergeParams(t));this.notifyPaymentFailure=()=>this.swap.notifyPaymentFailure();this.notifyParticipation=t=>this.swap.notifyParticipation(t);this.getUserCommitment=t=>this.swap.getUserCommitment(this.mergeParams(t));this.getOpenTicket=t=>this.swap.getOpenTicket(this.mergeParams(t));this.newSaleTicket=t=>this.swap.newSaleTicket(t);this.getLifecycle=t=>this.swap.getLifecycle(this.mergeParams(t));this.getFinalizationStatus=t=>this.swap.getFinalizationStatus(this.mergeParams(t));this.getSaleParameters=t=>this.swap.getSaleParameters(this.mergeParams(t));this.getDerivedState=t=>this.swap.getDerivedState(this.mergeParams(t));this.getTransactions=t=>this.index.getTransactions(t);this.stakeMaturity=t=>this.governance.stakeMaturity(t);this.disburseMaturity=t=>this.governance.disburseMaturity(t);this.autoStakeMaturity=t=>this.governance.autoStakeMaturity(t);this.assertCertified=t=>{if(!this.certified)throw new w(`Call to ${t} needs to be certified`)};this.root=t,this.governance=s,this.ledger=n,this.swap=r,this.index=a,this.certified=o}get canisterIds(){return{rootCanisterId:this.root.canisterId,ledgerCanisterId:this.ledger.canisterId,governanceCanisterId:this.governance.canisterId,swapCanisterId:this.swap.canisterId,indexCanisterId:this.index.canisterId}}mergeParams(t){return{...t,certified:this.certified}}get owner(){return{owner:this.canisterIds.governanceCanisterId}}};var Q=require("@dfinity/utils");var ss=({IDL:e})=>{let t=e.Record({dissolve_delay_interval_seconds:e.Nat64,count:e.Nat64}),s=e.Record({slope_numerator:e.Opt(e.Nat64),intercept_icp_e8s:e.Opt(e.Nat64),from_direct_participation_icp_e8s:e.Opt(e.Nat64),slope_denominator:e.Opt(e.Nat64),to_direct_participation_icp_e8s:e.Opt(e.Nat64)}),n=e.Record({serialized_representation:e.Opt(e.Text)}),r=e.Record({coefficient_intervals:e.Vec(s),max_neurons_fund_participation_icp_e8s:e.Opt(e.Nat64),min_direct_participation_threshold_icp_e8s:e.Opt(e.Nat64),ideal_matched_participation_function:e.Opt(n)}),a=e.Record({has_created_neuron_recipes:e.Opt(e.Bool),nns_neuron_id:e.Nat64,amount_icp_e8s:e.Nat64}),o=e.Record({hotkey_principal:e.Text,cf_neurons:e.Vec(a)}),c=e.Record({cf_participants:e.Vec(o)}),d=e.Record({iso_codes:e.Vec(e.Text)}),p=e.Record({nns_proposal_id:e.Opt(e.Nat64),sns_root_canister_id:e.Text,neurons_fund_participation:e.Opt(e.Bool),min_participant_icp_e8s:e.Opt(e.Nat64),neuron_basket_construction_parameters:e.Opt(t),fallback_controller_principal_ids:e.Vec(e.Text),max_icp_e8s:e.Opt(e.Nat64),neuron_minimum_stake_e8s:e.Opt(e.Nat64),confirmation_text:e.Opt(e.Text),swap_start_timestamp_seconds:e.Opt(e.Nat64),swap_due_timestamp_seconds:e.Opt(e.Nat64),min_participants:e.Opt(e.Nat32),sns_token_e8s:e.Opt(e.Nat64),nns_governance_canister_id:e.Text,transaction_fee_e8s:e.Opt(e.Nat64),icp_ledger_canister_id:e.Text,sns_ledger_canister_id:e.Text,neurons_fund_participation_constraints:e.Opt(r),neurons_fund_participants:e.Opt(c),should_auto_finalize:e.Opt(e.Bool),max_participant_icp_e8s:e.Opt(e.Nat64),sns_governance_canister_id:e.Text,min_direct_participation_icp_e8s:e.Opt(e.Nat64),restricted_countries:e.Opt(d),min_icp_e8s:e.Opt(e.Nat64),max_direct_participation_icp_e8s:e.Opt(e.Nat64)}),O=e.Record({source_principal_id:e.Opt(e.Principal)}),i=e.Record({block_height:e.Opt(e.Nat64)}),m=e.Record({description:e.Opt(e.Text),error_type:e.Opt(e.Int32)}),u=e.Variant({Ok:i,Err:m}),y=e.Record({result:e.Opt(u)}),l=e.Record({code:e.Opt(e.Int32),description:e.Text}),N=e.Record({err:e.Opt(l),dapp_canister_id:e.Opt(e.Principal)}),M=e.Record({failed_updates:e.Vec(N)}),v=e.Variant({Ok:M,Err:l}),T=e.Record({possibility:e.Opt(v)}),V=e.Record({failure:e.Nat32,skipped:e.Nat32,invalid:e.Nat32,success:e.Nat32,global_failures:e.Nat32}),S=e.Record({error_message:e.Text,error_type:e.Int32}),H=e.Record({governance_error:e.Opt(S)}),X=e.Variant({Ok:H,Err:l}),J=e.Record({possibility:e.Opt(X)}),K=e.Record({neurons_fund_participation_icp_e8s:e.Opt(e.Nat64),neurons_fund_neurons_count:e.Opt(e.Nat64)}),F=e.Record({message:e.Opt(e.Text)}),Z=e.Variant({Ok:K,Err:F}),I=e.Record({possibility:e.Opt(Z)}),D=e.Variant({Ok:e.Record({}),Err:l}),L=e.Record({possibility:e.Opt(D)}),g=e.Record({set_dapp_controllers_call_result:e.Opt(T),create_sns_neuron_recipes_result:e.Opt(V),settle_community_fund_participation_result:e.Opt(J),error_message:e.Opt(e.Text),settle_neurons_fund_participation_result:e.Opt(I),set_mode_call_result:e.Opt(L),sweep_icp_result:e.Opt(V),claim_neuron_result:e.Opt(V),sweep_sns_result:e.Opt(V)}),ee=e.Record({auto_finalize_swap_response:e.Opt(g),has_auto_finalize_been_attempted:e.Opt(e.Bool),is_auto_finalize_enabled:e.Opt(e.Bool)}),P=e.Record({principal_id:e.Opt(e.Principal)}),C=e.Record({transfer_fee_paid_e8s:e.Opt(e.Nat64),transfer_start_timestamp_seconds:e.Nat64,amount_e8s:e.Nat64,amount_transferred_e8s:e.Opt(e.Nat64),transfer_success_timestamp_seconds:e.Nat64}),h=e.Record({icp:e.Opt(C),has_created_neuron_recipes:e.Opt(e.Bool)}),R=e.Record({buyer_state:e.Opt(h)}),k=e.Record({buyers_total:e.Nat64}),te=e.Variant({stopped:e.Null,stopping:e.Null,running:e.Null}),se=e.Record({freezing_threshold:e.Nat,controllers:e.Vec(e.Principal),memory_allocation:e.Nat,compute_allocation:e.Nat}),ne=e.Record({status:te,memory_size:e.Nat,cycles:e.Nat,settings:se,idle_cycles_burned_per_day:e.Nat,module_hash:e.Opt(e.Vec(e.Nat8))}),oe=e.Record({sns_tokens_per_icp:e.Opt(e.Float64),buyer_total_icp_e8s:e.Opt(e.Nat64),cf_participant_count:e.Opt(e.Nat64),neurons_fund_participation_icp_e8s:e.Opt(e.Nat64),direct_participation_icp_e8s:e.Opt(e.Nat64),direct_participant_count:e.Opt(e.Nat64),cf_neuron_count:e.Opt(e.Nat64)}),A=e.Record({init:e.Opt(p)}),E=e.Record({decentralization_sale_open_timestamp_seconds:e.Opt(e.Nat64),lifecycle:e.Opt(e.Int32),decentralization_swap_termination_timestamp_seconds:e.Opt(e.Nat64)}),re=e.Record({owner:e.Opt(e.Principal),subaccount:e.Opt(e.Vec(e.Nat8))}),W=e.Record({creation_time:e.Nat64,ticket_id:e.Nat64,account:e.Opt(re),amount_icp_e8s:e.Nat64}),G=e.Record({ticket:e.Opt(W)}),q=e.Record({error_type:e.Opt(e.Int32)}),B=e.Variant({Ok:G,Err:q}),U=e.Record({result:e.Opt(B)}),x=e.Record({min_participant_icp_e8s:e.Nat64,neuron_basket_construction_parameters:e.Opt(t),max_icp_e8s:e.Nat64,swap_due_timestamp_seconds:e.Nat64,min_participants:e.Nat32,sns_token_e8s:e.Nat64,sale_delay_seconds:e.Opt(e.Nat64),max_participant_icp_e8s:e.Nat64,min_direct_participation_icp_e8s:e.Opt(e.Nat64),min_icp_e8s:e.Nat64,max_direct_participation_icp_e8s:e.Opt(e.Nat64)}),ae=e.Record({params:e.Opt(x)}),z=e.Record({id:e.Vec(e.Nat8)}),ie=e.Record({dissolve_delay_seconds:e.Nat64,memo:e.Nat64,followees:e.Vec(z)}),ce=e.Record({hotkey_principal:e.Text,nns_neuron_id:e.Nat64}),_e=e.Record({buyer_principal:e.Text}),pe=e.Variant({CommunityFund:ce,Direct:_e}),j=e.Record({sns:e.Opt(C),claimed_status:e.Opt(e.Int32),neuron_attributes:e.Opt(ie),investor:e.Opt(pe)}),f=e.Record({auto_finalize_swap_response:e.Opt(g),neuron_recipes:e.Vec(j),next_ticket_id:e.Opt(e.Nat64),decentralization_sale_open_timestamp_seconds:e.Opt(e.Nat64),finalize_swap_in_progress:e.Opt(e.Bool),cf_participants:e.Vec(o),init:e.Opt(p),already_tried_to_auto_finalize:e.Opt(e.Bool),neurons_fund_participation_icp_e8s:e.Opt(e.Nat64),purge_old_tickets_last_completion_timestamp_nanoseconds:e.Opt(e.Nat64),direct_participation_icp_e8s:e.Opt(e.Nat64),lifecycle:e.Int32,purge_old_tickets_next_principal:e.Opt(e.Vec(e.Nat8)),decentralization_swap_termination_timestamp_seconds:e.Opt(e.Nat64),buyers:e.Vec(e.Tuple(e.Text,h)),params:e.Opt(x),open_sns_token_swap_proposal_id:e.Opt(e.Nat64)}),Ve=e.Record({sns_tokens_per_icp:e.Float32,buyer_total_icp_e8s:e.Nat64,cf_participant_count:e.Opt(e.Nat64),neurons_fund_participation_icp_e8s:e.Opt(e.Nat64),direct_participation_icp_e8s:e.Opt(e.Nat64),direct_participant_count:e.Opt(e.Nat64),cf_neuron_count:e.Opt(e.Nat64)}),de=e.Record({swap:e.Opt(f),derived:e.Opt(Ve)}),ue=e.Record({offset:e.Opt(e.Nat64),limit:e.Opt(e.Nat32)}),le=e.Record({offset:e.Opt(e.Nat32),limit:e.Opt(e.Nat32)}),me=e.Record({participation:e.Opt(h),participant_id:e.Opt(e.Principal)}),Ne=e.Record({participants:e.Vec(me)}),Oe=e.Record({offset:e.Opt(e.Nat64),limit:e.Opt(e.Nat32)}),Re=e.Record({sns_neuron_recipes:e.Vec(j)}),ge=e.Record({subaccount:e.Opt(e.Vec(e.Nat8)),amount_icp_e8s:e.Nat64}),ye=e.Record({min_amount_icp_e8s_included:e.Nat64,max_amount_icp_e8s_included:e.Nat64}),fe=e.Record({invalid_user_amount:e.Opt(ye),existing_ticket:e.Opt(W),error_type:e.Int32}),ve=e.Variant({Ok:G,Err:fe}),Se=e.Record({result:e.Opt(ve)}),Y=e.Record({cf_participants:e.Vec(o),params:e.Opt(x),open_sns_token_swap_proposal_id:e.Opt(e.Nat64)}),Pe=e.Record({confirmation_text:e.Opt(e.Text),buyer:e.Text}),$=e.Record({icp_accepted_participation_e8s:e.Nat64,icp_ledger_account_balance_e8s:e.Nat64});return e.Service({error_refund_icp:e.Func([O],[y],[]),finalize_swap:e.Func([e.Record({})],[g],[]),get_auto_finalization_status:e.Func([e.Record({})],[ee],[]),get_buyer_state:e.Func([P],[R],[]),get_buyers_total:e.Func([e.Record({})],[k],[]),get_canister_status:e.Func([e.Record({})],[ne],[]),get_derived_state:e.Func([e.Record({})],[oe],[]),get_init:e.Func([e.Record({})],[A],[]),get_lifecycle:e.Func([e.Record({})],[E],[]),get_open_ticket:e.Func([e.Record({})],[U],[]),get_sale_parameters:e.Func([e.Record({})],[ae],[]),get_state:e.Func([e.Record({})],[de],[]),list_community_fund_participants:e.Func([ue],[c],[]),list_direct_participants:e.Func([le],[Ne],[]),list_sns_neuron_recipes:e.Func([Oe],[Re],[]),new_sale_ticket:e.Func([ge],[Se],[]),notify_payment_failure:e.Func([e.Record({})],[G],[]),open:e.Func([Y],[e.Record({})],[]),refresh_buyer_tokens:e.Func([Pe],[$],[]),restore_dapp_controllers:e.Func([e.Record({})],[T],[])})};var ns=({IDL:e})=>{let t=e.Record({dissolve_delay_interval_seconds:e.Nat64,count:e.Nat64}),s=e.Record({slope_numerator:e.Opt(e.Nat64),intercept_icp_e8s:e.Opt(e.Nat64),from_direct_participation_icp_e8s:e.Opt(e.Nat64),slope_denominator:e.Opt(e.Nat64),to_direct_participation_icp_e8s:e.Opt(e.Nat64)}),n=e.Record({serialized_representation:e.Opt(e.Text)}),r=e.Record({coefficient_intervals:e.Vec(s),max_neurons_fund_participation_icp_e8s:e.Opt(e.Nat64),min_direct_participation_threshold_icp_e8s:e.Opt(e.Nat64),ideal_matched_participation_function:e.Opt(n)}),a=e.Record({has_created_neuron_recipes:e.Opt(e.Bool),nns_neuron_id:e.Nat64,amount_icp_e8s:e.Nat64}),o=e.Record({hotkey_principal:e.Text,cf_neurons:e.Vec(a)}),c=e.Record({cf_participants:e.Vec(o)}),d=e.Record({iso_codes:e.Vec(e.Text)}),p=e.Record({nns_proposal_id:e.Opt(e.Nat64),sns_root_canister_id:e.Text,neurons_fund_participation:e.Opt(e.Bool),min_participant_icp_e8s:e.Opt(e.Nat64),neuron_basket_construction_parameters:e.Opt(t),fallback_controller_principal_ids:e.Vec(e.Text),max_icp_e8s:e.Opt(e.Nat64),neuron_minimum_stake_e8s:e.Opt(e.Nat64),confirmation_text:e.Opt(e.Text),swap_start_timestamp_seconds:e.Opt(e.Nat64),swap_due_timestamp_seconds:e.Opt(e.Nat64),min_participants:e.Opt(e.Nat32),sns_token_e8s:e.Opt(e.Nat64),nns_governance_canister_id:e.Text,transaction_fee_e8s:e.Opt(e.Nat64),icp_ledger_canister_id:e.Text,sns_ledger_canister_id:e.Text,neurons_fund_participation_constraints:e.Opt(r),neurons_fund_participants:e.Opt(c),should_auto_finalize:e.Opt(e.Bool),max_participant_icp_e8s:e.Opt(e.Nat64),sns_governance_canister_id:e.Text,min_direct_participation_icp_e8s:e.Opt(e.Nat64),restricted_countries:e.Opt(d),min_icp_e8s:e.Opt(e.Nat64),max_direct_participation_icp_e8s:e.Opt(e.Nat64)}),O=e.Record({source_principal_id:e.Opt(e.Principal)}),i=e.Record({block_height:e.Opt(e.Nat64)}),m=e.Record({description:e.Opt(e.Text),error_type:e.Opt(e.Int32)}),u=e.Variant({Ok:i,Err:m}),y=e.Record({result:e.Opt(u)}),l=e.Record({code:e.Opt(e.Int32),description:e.Text}),N=e.Record({err:e.Opt(l),dapp_canister_id:e.Opt(e.Principal)}),M=e.Record({failed_updates:e.Vec(N)}),v=e.Variant({Ok:M,Err:l}),T=e.Record({possibility:e.Opt(v)}),V=e.Record({failure:e.Nat32,skipped:e.Nat32,invalid:e.Nat32,success:e.Nat32,global_failures:e.Nat32}),S=e.Record({error_message:e.Text,error_type:e.Int32}),H=e.Record({governance_error:e.Opt(S)}),X=e.Variant({Ok:H,Err:l}),J=e.Record({possibility:e.Opt(X)}),K=e.Record({neurons_fund_participation_icp_e8s:e.Opt(e.Nat64),neurons_fund_neurons_count:e.Opt(e.Nat64)}),F=e.Record({message:e.Opt(e.Text)}),Z=e.Variant({Ok:K,Err:F}),I=e.Record({possibility:e.Opt(Z)}),D=e.Variant({Ok:e.Record({}),Err:l}),L=e.Record({possibility:e.Opt(D)}),g=e.Record({set_dapp_controllers_call_result:e.Opt(T),create_sns_neuron_recipes_result:e.Opt(V),settle_community_fund_participation_result:e.Opt(J),error_message:e.Opt(e.Text),settle_neurons_fund_participation_result:e.Opt(I),set_mode_call_result:e.Opt(L),sweep_icp_result:e.Opt(V),claim_neuron_result:e.Opt(V),sweep_sns_result:e.Opt(V)}),ee=e.Record({auto_finalize_swap_response:e.Opt(g),has_auto_finalize_been_attempted:e.Opt(e.Bool),is_auto_finalize_enabled:e.Opt(e.Bool)}),P=e.Record({principal_id:e.Opt(e.Principal)}),C=e.Record({transfer_fee_paid_e8s:e.Opt(e.Nat64),transfer_start_timestamp_seconds:e.Nat64,amount_e8s:e.Nat64,amount_transferred_e8s:e.Opt(e.Nat64),transfer_success_timestamp_seconds:e.Nat64}),h=e.Record({icp:e.Opt(C),has_created_neuron_recipes:e.Opt(e.Bool)}),R=e.Record({buyer_state:e.Opt(h)}),k=e.Record({buyers_total:e.Nat64}),te=e.Variant({stopped:e.Null,stopping:e.Null,running:e.Null}),se=e.Record({freezing_threshold:e.Nat,controllers:e.Vec(e.Principal),memory_allocation:e.Nat,compute_allocation:e.Nat}),ne=e.Record({status:te,memory_size:e.Nat,cycles:e.Nat,settings:se,idle_cycles_burned_per_day:e.Nat,module_hash:e.Opt(e.Vec(e.Nat8))}),oe=e.Record({sns_tokens_per_icp:e.Opt(e.Float64),buyer_total_icp_e8s:e.Opt(e.Nat64),cf_participant_count:e.Opt(e.Nat64),neurons_fund_participation_icp_e8s:e.Opt(e.Nat64),direct_participation_icp_e8s:e.Opt(e.Nat64),direct_participant_count:e.Opt(e.Nat64),cf_neuron_count:e.Opt(e.Nat64)}),A=e.Record({init:e.Opt(p)}),E=e.Record({decentralization_sale_open_timestamp_seconds:e.Opt(e.Nat64),lifecycle:e.Opt(e.Int32),decentralization_swap_termination_timestamp_seconds:e.Opt(e.Nat64)}),re=e.Record({owner:e.Opt(e.Principal),subaccount:e.Opt(e.Vec(e.Nat8))}),W=e.Record({creation_time:e.Nat64,ticket_id:e.Nat64,account:e.Opt(re),amount_icp_e8s:e.Nat64}),G=e.Record({ticket:e.Opt(W)}),q=e.Record({error_type:e.Opt(e.Int32)}),B=e.Variant({Ok:G,Err:q}),U=e.Record({result:e.Opt(B)}),x=e.Record({min_participant_icp_e8s:e.Nat64,neuron_basket_construction_parameters:e.Opt(t),max_icp_e8s:e.Nat64,swap_due_timestamp_seconds:e.Nat64,min_participants:e.Nat32,sns_token_e8s:e.Nat64,sale_delay_seconds:e.Opt(e.Nat64),max_participant_icp_e8s:e.Nat64,min_direct_participation_icp_e8s:e.Opt(e.Nat64),min_icp_e8s:e.Nat64,max_direct_participation_icp_e8s:e.Opt(e.Nat64)}),ae=e.Record({params:e.Opt(x)}),z=e.Record({id:e.Vec(e.Nat8)}),ie=e.Record({dissolve_delay_seconds:e.Nat64,memo:e.Nat64,followees:e.Vec(z)}),ce=e.Record({hotkey_principal:e.Text,nns_neuron_id:e.Nat64}),_e=e.Record({buyer_principal:e.Text}),pe=e.Variant({CommunityFund:ce,Direct:_e}),j=e.Record({sns:e.Opt(C),claimed_status:e.Opt(e.Int32),neuron_attributes:e.Opt(ie),investor:e.Opt(pe)}),f=e.Record({auto_finalize_swap_response:e.Opt(g),neuron_recipes:e.Vec(j),next_ticket_id:e.Opt(e.Nat64),decentralization_sale_open_timestamp_seconds:e.Opt(e.Nat64),finalize_swap_in_progress:e.Opt(e.Bool),cf_participants:e.Vec(o),init:e.Opt(p),already_tried_to_auto_finalize:e.Opt(e.Bool),neurons_fund_participation_icp_e8s:e.Opt(e.Nat64),purge_old_tickets_last_completion_timestamp_nanoseconds:e.Opt(e.Nat64),direct_participation_icp_e8s:e.Opt(e.Nat64),lifecycle:e.Int32,purge_old_tickets_next_principal:e.Opt(e.Vec(e.Nat8)),decentralization_swap_termination_timestamp_seconds:e.Opt(e.Nat64),buyers:e.Vec(e.Tuple(e.Text,h)),params:e.Opt(x),open_sns_token_swap_proposal_id:e.Opt(e.Nat64)}),Ve=e.Record({sns_tokens_per_icp:e.Float32,buyer_total_icp_e8s:e.Nat64,cf_participant_count:e.Opt(e.Nat64),neurons_fund_participation_icp_e8s:e.Opt(e.Nat64),direct_participation_icp_e8s:e.Opt(e.Nat64),direct_participant_count:e.Opt(e.Nat64),cf_neuron_count:e.Opt(e.Nat64)}),de=e.Record({swap:e.Opt(f),derived:e.Opt(Ve)}),ue=e.Record({offset:e.Opt(e.Nat64),limit:e.Opt(e.Nat32)}),le=e.Record({offset:e.Opt(e.Nat32),limit:e.Opt(e.Nat32)}),me=e.Record({participation:e.Opt(h),participant_id:e.Opt(e.Principal)}),Ne=e.Record({participants:e.Vec(me)}),Oe=e.Record({offset:e.Opt(e.Nat64),limit:e.Opt(e.Nat32)}),Re=e.Record({sns_neuron_recipes:e.Vec(j)}),ge=e.Record({subaccount:e.Opt(e.Vec(e.Nat8)),amount_icp_e8s:e.Nat64}),ye=e.Record({min_amount_icp_e8s_included:e.Nat64,max_amount_icp_e8s_included:e.Nat64}),fe=e.Record({invalid_user_amount:e.Opt(ye),existing_ticket:e.Opt(W),error_type:e.Int32}),ve=e.Variant({Ok:G,Err:fe}),Se=e.Record({result:e.Opt(ve)}),Y=e.Record({cf_participants:e.Vec(o),params:e.Opt(x),open_sns_token_swap_proposal_id:e.Opt(e.Nat64)}),Pe=e.Record({confirmation_text:e.Opt(e.Text),buyer:e.Text}),$=e.Record({icp_accepted_participation_e8s:e.Nat64,icp_ledger_account_balance_e8s:e.Nat64});return e.Service({error_refund_icp:e.Func([O],[y],[]),finalize_swap:e.Func([e.Record({})],[g],[]),get_auto_finalization_status:e.Func([e.Record({})],[ee],["query"]),get_buyer_state:e.Func([P],[R],["query"]),get_buyers_total:e.Func([e.Record({})],[k],[]),get_canister_status:e.Func([e.Record({})],[ne],[]),get_derived_state:e.Func([e.Record({})],[oe],["query"]),get_init:e.Func([e.Record({})],[A],["query"]),get_lifecycle:e.Func([e.Record({})],[E],["query"]),get_open_ticket:e.Func([e.Record({})],[U],["query"]),get_sale_parameters:e.Func([e.Record({})],[ae],["query"]),get_state:e.Func([e.Record({})],[de],["query"]),list_community_fund_participants:e.Func([ue],[c],["query"]),list_direct_participants:e.Func([le],[Ne],["query"]),list_sns_neuron_recipes:e.Func([Oe],[Re],["query"]),new_sale_ticket:e.Func([ge],[Se],[]),notify_payment_failure:e.Func([e.Record({})],[G],[]),open:e.Func([Y],[e.Record({})],[]),refresh_buyer_tokens:e.Func([Pe],[$],[]),restore_dapp_controllers:e.Func([e.Record({})],[T],[])})};var os=({subaccount:e,amount_icp_e8s:t})=>({subaccount:e===void 0?[]:[e],amount_icp_e8s:t});var rs=require("@dfinity/utils"),as=e=>{if(typeof e=="object"&&(0,rs.nonNullish)(e)&&"message"in e){let t=e.message;return t.includes("has no update method")||t.includes("has no query method")}return!1};var st=class e extends Q.Canister{constructor(){super(...arguments);this.state=s=>this.caller(s).get_state({});this.notifyPaymentFailure=async()=>{let{ticket:s}=await this.caller({certified:!0}).notify_payment_failure({});return(0,Q.fromNullable)(s)};this.notifyParticipation=async s=>await this.caller({certified:!0}).refresh_buyer_tokens(s);this.getUserCommitment=async s=>{let{buyer_state:n}=await this.caller({certified:s.certified}).get_buyer_state({principal_id:s.principal_id});return(0,Q.fromNullable)(n)};this.getDerivedState=async({certified:s})=>this.caller({certified:s}).get_derived_state({});this.getSaleParameters=async({certified:s})=>this.caller({certified:s}).get_sale_parameters({});this.getOpenTicket=async s=>{var o;let{result:n}=await this.caller({certified:s.certified}).get_open_ticket({}),r=(0,Q.fromDefinedNullable)(n);if("Ok"in r)return(0,Q.fromNullable)(r.Ok.ticket);let a=(0,Q.fromDefinedNullable)((o=r==null?void 0:r.Err)==null?void 0:o.error_type);throw new at(a)};this.newSaleTicket=async s=>{let n=os(s),{result:r}=await this.caller({certified:!0}).new_sale_ticket(n),a=(0,Q.fromDefinedNullable)(r);if("Ok"in a)return(0,Q.fromDefinedNullable)(a.Ok.ticket);let o=a.Err;throw new rt({errorType:o.error_type,invalidUserAmount:(0,Q.fromNullable)(o.invalid_user_amount??[]),existingTicket:(0,Q.fromNullable)(o.existing_ticket??[])})};this.getLifecycle=async s=>this.caller(s).get_lifecycle({});this.getFinalizationStatus=async s=>{try{return await this.caller(s).get_auto_finalization_status({})}catch(n){throw as(n)?new ot("getFinalizationStatus"):n}}}static create(s){let{service:n,certifiedService:r,canisterId:a}=(0,Q.createServices)({options:s,idlFactory:ns,certifiedIdlFactory:ss});return new e(a,n,r)}};var Fs=async({agent:e,rootOptions:t,certified:s=!0})=>{let n=et.create({...t,agent:e}),{ledger:r,swap:a,governance:o,index:c}=await n.listSnsCanisters({certified:s}),d=(0,we.fromNullable)(o),p=(0,we.fromNullable)(r),O=(0,we.fromNullable)(a),i=(0,we.fromNullable)(c);return(0,we.assertNonNullish)(d),(0,we.assertNonNullish)(p),(0,we.assertNonNullish)(O),(0,we.assertNonNullish)(i),new ct({root:n,governance:Le.create({canisterId:d,agent:e}),ledger:mt.IcrcLedgerCanister.create({canisterId:p,agent:e}),swap:st.create({canisterId:O,agent:e}),index:mt.IcrcIndexCanister.create({canisterId:i,agent:e}),certified:s})};0&&(module.exports={GetOpenTicketErrorType,NewSaleTicketResponseErrorType,SnsGovernanceCanister,SnsGovernanceError,SnsGovernanceTestCanister,SnsNeuronPermissionType,SnsProposalDecisionStatus,SnsProposalRewardStatus,SnsRootCanister,SnsSwapCanister,SnsSwapGetOpenTicketError,SnsSwapLifecycle,SnsSwapNewTicketError,SnsVote,SnsWrapper,UnsupportedMethodError,fromCandidAction,initSnsWrapper,neuronSubaccount});
1
+ "use strict";var yt=Object.defineProperty;var cs=Object.getOwnPropertyDescriptor;var _s=Object.getOwnPropertyNames;var ps=Object.prototype.hasOwnProperty;var ds=(e,t)=>{for(var s in t)yt(e,s,{get:t[s],enumerable:!0})},us=(e,t,s,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of _s(t))!ps.call(e,r)&&r!==s&&yt(e,r,{get:()=>t[r],enumerable:!(n=cs(t,r))||n.enumerable});return e};var ls=e=>us(yt({},"__esModule",{value:!0}),e);var Es={};ds(Es,{GetOpenTicketErrorType:()=>Ht,NewSaleTicketResponseErrorType:()=>Xt,SnsGovernanceCanister:()=>et,SnsGovernanceError:()=>x,SnsGovernanceTestCanister:()=>pt,SnsNeuronPermissionType:()=>Qt,SnsProposalDecisionStatus:()=>jt,SnsProposalRewardStatus:()=>Wt,SnsRootCanister:()=>tt,SnsSwapCanister:()=>nt,SnsSwapGetOpenTicketError:()=>it,SnsSwapLifecycle:()=>$t,SnsSwapNewTicketError:()=>at,SnsVote:()=>Yt,SnsWrapper:()=>_t,UnsupportedMethodError:()=>rt,fromCandidAction:()=>zt,initSnsWrapper:()=>As,neuronSubaccount:()=>ht});module.exports=ls(Es);var _=require("@dfinity/utils");var Le=({neuronId:{id:e},command:t})=>({subaccount:e,command:[t]}),ot=({neuronId:e,operation:t})=>Le({neuronId:e,command:{Configure:{operation:[t]}}}),bt=({owner:e,subaccount:t})=>({owner:(0,_.toNullable)(e),subaccount:t===void 0?[]:(0,_.toNullable)({subaccount:t})}),xt=({neuronId:e,permissions:t,principal:s})=>Le({neuronId:e,command:{AddNeuronPermissions:{permissions_to_add:[{permissions:Int32Array.from(t)}],principal_id:[s]}}}),wt=({neuronId:e,permissions:t,principal:s})=>Le({neuronId:e,command:{RemoveNeuronPermissions:{permissions_to_remove:[{permissions:Int32Array.from(t)}],principal_id:[s]}}}),Tt=({neuronId:e,memo:t,amount:s})=>Le({neuronId:e,command:{Split:{memo:t,amount_e8s:s}}}),Vt=({neuronId:e,amount:t,toAccount:s})=>Le({neuronId:e,command:{Disburse:{to_account:s===void 0?[]:(0,_.toNullable)(bt(s)),amount:t===void 0?[]:[{e8s:t}]}}}),Ct=e=>ot({neuronId:e,operation:{StartDissolving:{}}}),Mt=e=>ot({neuronId:e,operation:{StopDissolving:{}}}),Ft=({neuronId:e,percentageToStake:t})=>Le({neuronId:e,command:{StakeMaturity:{percentage_to_stake:(0,_.toNullable)(t)}}}),kt=({neuronId:e,percentageToDisburse:t,toAccount:s})=>Le({neuronId:e,command:{DisburseMaturity:{to_account:s===void 0?[]:(0,_.toNullable)(bt(s)),percentage_to_disburse:t}}}),At=({neuronId:e,autoStake:t})=>ot({neuronId:e,operation:{ChangeAutoStakeMaturity:{requested_setting_for_auto_stake_maturity:t}}}),Et=({neuronId:e,dissolveTimestampSeconds:t})=>ot({neuronId:e,operation:{SetDissolveTimestamp:{dissolve_timestamp_seconds:t}}}),Gt=({neuronId:e,additionalDissolveDelaySeconds:t})=>ot({neuronId:e,operation:{IncreaseDissolveDelay:{additional_dissolve_delay_seconds:t}}}),qt=({neuronId:e,functionId:t,followees:s})=>({subaccount:e.id,command:[{Follow:{function_id:t,followees:s}}]}),Bt=({neuronId:e,proposalId:t,vote:s})=>({subaccount:e.id,command:[{RegisterVote:{vote:s,proposal:[t]}}]}),ft=({subaccount:e,memo:t,controller:s})=>({subaccount:e,command:[{ClaimOrRefresh:{by:[t===void 0?{NeuronId:{}}:{MemoAndController:{memo:t,controller:(0,_.toNullable)(s)}}]}}]}),Ut=({excludeType:e,beforeProposal:t,includeRewardStatus:s,includeStatus:n,limit:r})=>({exclude_type:BigUint64Array.from(e??[]),before_proposal:(0,_.toNullable)(t),include_reward_status:Int32Array.from(s??[]),include_status:Int32Array.from(n??[]),limit:r??10}),zt=e=>{if("ManageNervousSystemParameters"in e)return{ManageNervousSystemParameters:Ss(e.ManageNervousSystemParameters)};if("AddGenericNervousSystemFunction"in e)return{AddGenericNervousSystemFunction:fs(e.AddGenericNervousSystemFunction)};if("RemoveGenericNervousSystemFunction"in e)return{RemoveGenericNervousSystemFunction:e.RemoveGenericNervousSystemFunction};if("UpgradeSnsToNextVersion"in e)return{UpgradeSnsToNextVersion:e.UpgradeSnsToNextVersion};if("RegisterDappCanisters"in e)return{RegisterDappCanisters:e.RegisterDappCanisters};if("TransferSnsTreasuryFunds"in e)return{TransferSnsTreasuryFunds:Rs(e.TransferSnsTreasuryFunds)};if("UpgradeSnsControlledCanister"in e)return{UpgradeSnsControlledCanister:Os(e.UpgradeSnsControlledCanister)};if("DeregisterDappCanisters"in e)return{DeregisterDappCanisters:e.DeregisterDappCanisters};if("Unspecified"in e)return{Unspecified:e.Unspecified};if("ManageSnsMetadata"in e)return{ManageSnsMetadata:Ns(e.ManageSnsMetadata)};if("ExecuteGenericNervousSystemFunction"in e)return{ExecuteGenericNervousSystemFunction:e.ExecuteGenericNervousSystemFunction};if("Motion"in e)return{Motion:e.Motion};throw new Error(`Unknown action type ${JSON.stringify(e)}`)},Ns=e=>({url:(0,_.fromNullable)(e.url),logo:(0,_.fromNullable)(e.logo),name:(0,_.fromNullable)(e.name),description:(0,_.fromNullable)(e.description)}),Os=e=>({new_canister_wasm:e.new_canister_wasm,canister_id:(0,_.fromNullable)(e.canister_id),canister_upgrade_arg:(0,_.fromNullable)(e.canister_upgrade_arg),mode:(0,_.fromNullable)(e.mode)}),Rs=e=>({from_treasury:e.from_treasury,to_principal:(0,_.fromNullable)(e.to_principal),to_subaccount:(0,_.fromNullable)(e.to_subaccount),memo:(0,_.fromNullable)(e.memo),amount_e8s:e.amount_e8s}),gs=e=>({validator_canister_id:(0,_.fromNullable)(e.validator_canister_id),target_canister_id:(0,_.fromNullable)(e.target_canister_id),validator_method_name:(0,_.fromNullable)(e.validator_method_name),target_method_name:(0,_.fromNullable)(e.target_method_name)}),ys=e=>{if(e!==void 0){if("NativeNervousSystemFunction"in e)return{NativeNervousSystemFunction:e.NativeNervousSystemFunction};if("GenericNervousSystemFunction"in e)return{GenericNervousSystemFunction:gs(e.GenericNervousSystemFunction)};throw new Error(`Unknown FunctionType ${JSON.stringify(e)}`)}},fs=e=>({id:e.id,name:e.name,description:(0,_.fromNullable)(e.description),function_type:ys((0,_.fromNullable)(e.function_type))}),vs=e=>e&&{final_reward_rate_basis_points:(0,_.fromNullable)(e.final_reward_rate_basis_points),initial_reward_rate_basis_points:(0,_.fromNullable)(e.initial_reward_rate_basis_points),reward_rate_transition_duration_seconds:(0,_.fromNullable)(e.reward_rate_transition_duration_seconds),round_duration_seconds:(0,_.fromNullable)(e.round_duration_seconds)},Ss=e=>({default_followees:(0,_.fromNullable)(e.default_followees),max_dissolve_delay_seconds:(0,_.fromNullable)(e.max_dissolve_delay_seconds),max_dissolve_delay_bonus_percentage:(0,_.fromNullable)(e.max_dissolve_delay_bonus_percentage),max_followees_per_function:(0,_.fromNullable)(e.max_followees_per_function),neuron_claimer_permissions:(0,_.fromNullable)(e.neuron_claimer_permissions),neuron_minimum_stake_e8s:(0,_.fromNullable)(e.neuron_minimum_stake_e8s),max_neuron_age_for_age_bonus:(0,_.fromNullable)(e.max_neuron_age_for_age_bonus),initial_voting_period_seconds:(0,_.fromNullable)(e.initial_voting_period_seconds),neuron_minimum_dissolve_delay_to_vote_seconds:(0,_.fromNullable)(e.neuron_minimum_dissolve_delay_to_vote_seconds),reject_cost_e8s:(0,_.fromNullable)(e.reject_cost_e8s),max_proposals_to_keep_per_action:(0,_.fromNullable)(e.max_proposals_to_keep_per_action),wait_for_quiet_deadline_increase_seconds:(0,_.fromNullable)(e.wait_for_quiet_deadline_increase_seconds),max_number_of_neurons:(0,_.fromNullable)(e.max_number_of_neurons),transaction_fee_e8s:(0,_.fromNullable)(e.transaction_fee_e8s),max_number_of_proposals_with_ballots:(0,_.fromNullable)(e.max_number_of_proposals_with_ballots),max_age_bonus_percentage:(0,_.fromNullable)(e.max_age_bonus_percentage),neuron_grantable_permissions:(0,_.fromNullable)(e.neuron_grantable_permissions),voting_rewards_parameters:vs((0,_.fromNullable)(e.voting_rewards_parameters)),max_number_of_principals_per_neuron:(0,_.fromNullable)(e.max_number_of_principals_per_neuron)});var Qt=(i=>(i[i.NEURON_PERMISSION_TYPE_UNSPECIFIED=0]="NEURON_PERMISSION_TYPE_UNSPECIFIED",i[i.NEURON_PERMISSION_TYPE_CONFIGURE_DISSOLVE_STATE=1]="NEURON_PERMISSION_TYPE_CONFIGURE_DISSOLVE_STATE",i[i.NEURON_PERMISSION_TYPE_MANAGE_PRINCIPALS=2]="NEURON_PERMISSION_TYPE_MANAGE_PRINCIPALS",i[i.NEURON_PERMISSION_TYPE_SUBMIT_PROPOSAL=3]="NEURON_PERMISSION_TYPE_SUBMIT_PROPOSAL",i[i.NEURON_PERMISSION_TYPE_VOTE=4]="NEURON_PERMISSION_TYPE_VOTE",i[i.NEURON_PERMISSION_TYPE_DISBURSE=5]="NEURON_PERMISSION_TYPE_DISBURSE",i[i.NEURON_PERMISSION_TYPE_SPLIT=6]="NEURON_PERMISSION_TYPE_SPLIT",i[i.NEURON_PERMISSION_TYPE_MERGE_MATURITY=7]="NEURON_PERMISSION_TYPE_MERGE_MATURITY",i[i.NEURON_PERMISSION_TYPE_DISBURSE_MATURITY=8]="NEURON_PERMISSION_TYPE_DISBURSE_MATURITY",i[i.NEURON_PERMISSION_TYPE_STAKE_MATURITY=9]="NEURON_PERMISSION_TYPE_STAKE_MATURITY",i[i.NEURON_PERMISSION_TYPE_MANAGE_VOTING_PERMISSION=10]="NEURON_PERMISSION_TYPE_MANAGE_VOTING_PERMISSION",i))(Qt||{}),Wt=(r=>(r[r.PROPOSAL_REWARD_STATUS_UNSPECIFIED=0]="PROPOSAL_REWARD_STATUS_UNSPECIFIED",r[r.PROPOSAL_REWARD_STATUS_ACCEPT_VOTES=1]="PROPOSAL_REWARD_STATUS_ACCEPT_VOTES",r[r.PROPOSAL_REWARD_STATUS_READY_TO_SETTLE=2]="PROPOSAL_REWARD_STATUS_READY_TO_SETTLE",r[r.PROPOSAL_REWARD_STATUS_SETTLED=3]="PROPOSAL_REWARD_STATUS_SETTLED",r))(Wt||{}),jt=(o=>(o[o.PROPOSAL_DECISION_STATUS_UNSPECIFIED=0]="PROPOSAL_DECISION_STATUS_UNSPECIFIED",o[o.PROPOSAL_DECISION_STATUS_OPEN=1]="PROPOSAL_DECISION_STATUS_OPEN",o[o.PROPOSAL_DECISION_STATUS_REJECTED=2]="PROPOSAL_DECISION_STATUS_REJECTED",o[o.PROPOSAL_DECISION_STATUS_ADOPTED=3]="PROPOSAL_DECISION_STATUS_ADOPTED",o[o.PROPOSAL_DECISION_STATUS_EXECUTED=4]="PROPOSAL_DECISION_STATUS_EXECUTED",o[o.PROPOSAL_DECISION_STATUS_FAILED=5]="PROPOSAL_DECISION_STATUS_FAILED",o))(jt||{}),Yt=(n=>(n[n.Unspecified=0]="Unspecified",n[n.Yes=1]="Yes",n[n.No=2]="No",n))(Yt||{});var $t=(o=>(o[o.Unspecified=0]="Unspecified",o[o.Pending=1]="Pending",o[o.Open=2]="Open",o[o.Committed=3]="Committed",o[o.Aborted=4]="Aborted",o[o.Adopted=5]="Adopted",o))($t||{}),Ht=(n=>(n[n.TYPE_UNSPECIFIED=0]="TYPE_UNSPECIFIED",n[n.TYPE_SALE_NOT_OPEN=1]="TYPE_SALE_NOT_OPEN",n[n.TYPE_SALE_CLOSED=2]="TYPE_SALE_CLOSED",n))(Ht||{}),Xt=(c=>(c[c.TYPE_UNSPECIFIED=0]="TYPE_UNSPECIFIED",c[c.TYPE_SALE_NOT_OPEN=1]="TYPE_SALE_NOT_OPEN",c[c.TYPE_SALE_CLOSED=2]="TYPE_SALE_CLOSED",c[c.TYPE_TICKET_EXISTS=3]="TYPE_TICKET_EXISTS",c[c.TYPE_INVALID_USER_AMOUNT=4]="TYPE_INVALID_USER_AMOUNT",c[c.TYPE_INVALID_SUBACCOUNT=5]="TYPE_INVALID_SUBACCOUNT",c[c.TYPE_INVALID_PRINCIPAL=6]="TYPE_INVALID_PRINCIPAL",c))(Xt||{});var rt=class extends Error{constructor(s){super();this.methodName=s}};var x=class extends Error{};var at=class extends Error{constructor({errorType:t,invalidUserAmount:s,existingTicket:n}){super(),this.errorType=t,this.invalidUserAmount=s,this.existingTicket=n}},it=class extends Error{constructor(s){super();this.errorType=s}};var w=require("@dfinity/utils");var Jt=({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)}),s=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(s)}),r=e.Record({not_dissolving_neurons_e8s_buckets:e.Vec(e.Tuple(e.Nat64,e.Float64)),garbage_collectable_neurons_count:e.Nat64,neurons_with_invalid_stake_count:e.Nat64,not_dissolving_neurons_count_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),neurons_with_less_than_6_months_dissolve_delay_count:e.Nat64,dissolved_neurons_count:e.Nat64,total_staked_e8s:e.Nat64,total_supply_governance_tokens:e.Nat64,not_dissolving_neurons_count:e.Nat64,dissolved_neurons_e8s:e.Nat64,neurons_with_less_than_6_months_dissolve_delay_e8s:e.Nat64,dissolving_neurons_count_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),dissolving_neurons_count:e.Nat64,dissolving_neurons_e8s_buckets:e.Vec(e.Tuple(e.Nat64,e.Float64)),timestamp_seconds:e.Nat64}),a=e.Record({current_basis_points:e.Opt(e.Int32),updated_at_timestamp_seconds:e.Opt(e.Nat64)}),o=e.Record({id:e.Vec(e.Nat8)}),c=e.Record({followees:e.Vec(o)}),d=e.Record({followees:e.Vec(e.Tuple(e.Nat64,c))}),p=e.Record({permissions:e.Vec(e.Int32)}),O=e.Record({final_reward_rate_basis_points:e.Opt(e.Nat64),initial_reward_rate_basis_points:e.Opt(e.Nat64),reward_rate_transition_duration_seconds:e.Opt(e.Nat64),round_duration_seconds:e.Opt(e.Nat64)}),i=e.Record({default_followees:e.Opt(d),max_dissolve_delay_seconds:e.Opt(e.Nat64),max_dissolve_delay_bonus_percentage:e.Opt(e.Nat64),max_followees_per_function:e.Opt(e.Nat64),neuron_claimer_permissions:e.Opt(p),neuron_minimum_stake_e8s:e.Opt(e.Nat64),max_neuron_age_for_age_bonus:e.Opt(e.Nat64),initial_voting_period_seconds:e.Opt(e.Nat64),neuron_minimum_dissolve_delay_to_vote_seconds:e.Opt(e.Nat64),reject_cost_e8s:e.Opt(e.Nat64),max_proposals_to_keep_per_action:e.Opt(e.Nat32),wait_for_quiet_deadline_increase_seconds:e.Opt(e.Nat64),max_number_of_neurons:e.Opt(e.Nat64),transaction_fee_e8s:e.Opt(e.Nat64),max_number_of_proposals_with_ballots:e.Opt(e.Nat64),max_age_bonus_percentage:e.Opt(e.Nat64),neuron_grantable_permissions:e.Opt(p),voting_rewards_parameters:e.Opt(O),maturity_modulation_disabled:e.Opt(e.Bool),max_number_of_principals_per_neuron:e.Opt(e.Nat64)}),m=e.Record({archive_wasm_hash:e.Vec(e.Nat8),root_wasm_hash:e.Vec(e.Nat8),swap_wasm_hash:e.Vec(e.Nat8),ledger_wasm_hash:e.Vec(e.Nat8),governance_wasm_hash:e.Vec(e.Nat8),index_wasm_hash:e.Vec(e.Nat8)}),u=e.Record({id:e.Nat64}),g=e.Record({rounds_since_last_distribution:e.Opt(e.Nat64),actual_timestamp_seconds:e.Nat64,end_timestamp_seconds:e.Opt(e.Nat64),distributed_e8s_equivalent:e.Nat64,round:e.Nat64,settled_proposals:e.Vec(u)}),l=e.Record({mark_failed_at_seconds:e.Nat64,checking_upgrade_lock:e.Nat64,proposal_id:e.Nat64,target_version:e.Opt(m)}),N=e.Record({error_message:e.Text,error_type:e.Int32}),C=e.Record({vote:e.Int32,cast_timestamp_seconds:e.Nat64,voting_power:e.Nat64}),v=e.Record({basis_points:e.Opt(e.Nat64)}),T=e.Record({no:e.Nat64,yes:e.Nat64,total:e.Nat64,timestamp_seconds:e.Nat64}),V=e.Record({freezing_threshold:e.Opt(e.Nat64),canister_ids:e.Vec(e.Principal),reserved_cycles_limit:e.Opt(e.Nat64),log_visibility:e.Opt(e.Int32),memory_allocation:e.Opt(e.Nat64),compute_allocation:e.Opt(e.Nat64)}),H=e.Record({canister_ids:e.Vec(e.Principal)}),S=e.Record({subaccount:e.Vec(e.Nat8)}),X=e.Record({from_treasury:e.Int32,to_principal:e.Opt(e.Principal),to_subaccount:e.Opt(S),memo:e.Opt(e.Nat64),amount_e8s:e.Nat64}),J=e.Record({new_canister_wasm:e.Vec(e.Nat8),mode:e.Opt(e.Int32),canister_id:e.Opt(e.Principal),canister_upgrade_arg:e.Opt(e.Vec(e.Nat8))}),K=e.Record({canister_ids:e.Vec(e.Principal),new_controllers:e.Vec(e.Principal)}),Z=e.Record({to_principal:e.Opt(e.Principal),to_subaccount:e.Opt(S),memo:e.Opt(e.Nat64),amount_e8s:e.Opt(e.Nat64)}),M=e.Record({url:e.Opt(e.Text),logo:e.Opt(e.Text),name:e.Opt(e.Text),description:e.Opt(e.Text)}),I=e.Record({function_id:e.Nat64,payload:e.Vec(e.Nat8)}),D=e.Record({transfer_fee:e.Opt(e.Nat64)}),L=e.Record({motion_text:e.Text}),F=e.Variant({ManageNervousSystemParameters:i,AddGenericNervousSystemFunction:n,ManageDappCanisterSettings:V,RemoveGenericNervousSystemFunction:e.Nat64,UpgradeSnsToNextVersion:e.Record({}),RegisterDappCanisters:H,TransferSnsTreasuryFunds:X,UpgradeSnsControlledCanister:J,DeregisterDappCanisters:K,MintSnsTokens:Z,Unspecified:e.Record({}),ManageSnsMetadata:M,ExecuteGenericNervousSystemFunction:I,ManageLedgerParameters:D,Motion:L}),P=e.Record({url:e.Text,title:e.Text,action:e.Opt(F),summary:e.Text}),ee=e.Record({current_deadline_timestamp_seconds:e.Nat64}),y=e.Record({id:e.Opt(u),payload_text_rendering:e.Opt(e.Text),action:e.Nat64,failure_reason:e.Opt(N),ballots:e.Vec(e.Tuple(e.Text,C)),minimum_yes_proportion_of_total:e.Opt(v),reward_event_round:e.Nat64,failed_timestamp_seconds:e.Nat64,reward_event_end_timestamp_seconds:e.Opt(e.Nat64),proposal_creation_timestamp_seconds:e.Nat64,initial_voting_period_seconds:e.Nat64,reject_cost_e8s:e.Nat64,latest_tally:e.Opt(T),wait_for_quiet_deadline_increase_seconds:e.Nat64,decided_timestamp_seconds:e.Nat64,proposal:e.Opt(P),proposer:e.Opt(o),wait_for_quiet_state:e.Opt(ee),minimum_yes_proportion_of_exercised:e.Opt(v),is_eligible_for_rewards:e.Bool,executed_timestamp_seconds:e.Nat64}),h=e.Record({memo:e.Nat64,amount_e8s:e.Nat64}),k=e.Record({function_id:e.Nat64,followees:e.Vec(o)}),R=e.Record({owner:e.Opt(e.Principal),subaccount:e.Opt(S)}),A=e.Record({to_account:e.Opt(R),percentage_to_disburse:e.Nat32}),te=e.Record({requested_setting_for_auto_stake_maturity:e.Bool}),se=e.Record({additional_dissolve_delay_seconds:e.Nat32}),ne=e.Record({dissolve_timestamp_seconds:e.Nat64}),oe=e.Variant({ChangeAutoStakeMaturity:te,StopDissolving:e.Record({}),StartDissolving:e.Record({}),IncreaseDissolveDelay:se,SetDissolveTimestamp:ne}),E=e.Record({operation:e.Opt(oe)}),G=e.Record({vote:e.Int32,proposal:e.Opt(u)}),j=e.Record({amount_to_be_disbursed_e8s:e.Nat64,to_account:e.Opt(R)}),q=e.Record({controller:e.Opt(e.Principal),memo:e.Nat64}),re=e.Variant({MemoAndController:q,NeuronId:e.Record({})}),B=e.Record({by:e.Opt(re)}),U=e.Record({permissions_to_remove:e.Opt(p),principal_id:e.Opt(e.Principal)}),b=e.Record({permissions_to_add:e.Opt(p),principal_id:e.Opt(e.Principal)}),z=e.Record({percentage_to_merge:e.Nat32}),ae=e.Record({e8s:e.Nat64}),Q=e.Record({to_account:e.Opt(R),amount:e.Opt(ae)}),ie=e.Variant({Split:h,Follow:k,DisburseMaturity:A,Configure:E,RegisterVote:G,SyncCommand:e.Record({}),MakeProposal:P,FinalizeDisburseMaturity:j,ClaimOrRefreshNeuron:B,RemoveNeuronPermissions:U,AddNeuronPermissions:b,MergeMaturity:z,Disburse:Q}),ce=e.Record({command:e.Opt(ie),timestamp:e.Nat64}),_e=e.Record({principal:e.Opt(e.Principal),permission_type:e.Vec(e.Int32)}),Y=e.Variant({DissolveDelaySeconds:e.Nat64,WhenDissolvedTimestampSeconds:e.Nat64}),pe=e.Record({timestamp_of_disbursement_seconds:e.Nat64,amount_e8s:e.Nat64,account_to_disburse_to:e.Opt(R),finalize_disbursement_timestamp_seconds:e.Opt(e.Nat64)}),f=e.Record({id:e.Opt(o),staked_maturity_e8s_equivalent:e.Opt(e.Nat64),permissions:e.Vec(_e),maturity_e8s_equivalent:e.Nat64,cached_neuron_stake_e8s:e.Nat64,created_timestamp_seconds:e.Nat64,source_nns_neuron_id:e.Opt(e.Nat64),auto_stake_maturity:e.Opt(e.Bool),aging_since_timestamp_seconds:e.Nat64,dissolve_state:e.Opt(Y),voting_power_percentage_multiplier:e.Nat64,vesting_period_seconds:e.Opt(e.Nat64),disburse_maturity_in_progress:e.Vec(pe),followees:e.Vec(e.Tuple(e.Nat64,c)),neuron_fees_e8s:e.Nat64}),Ce=e.Record({root_canister_id:e.Opt(e.Principal),id_to_nervous_system_functions:e.Vec(e.Tuple(e.Nat64,n)),metrics:e.Opt(r),maturity_modulation:e.Opt(a),mode:e.Int32,parameters:e.Opt(i),is_finalizing_disburse_maturity:e.Opt(e.Bool),deployed_version:e.Opt(m),sns_initialization_parameters:e.Text,latest_reward_event:e.Opt(g),pending_version:e.Opt(l),swap_canister_id:e.Opt(e.Principal),ledger_canister_id:e.Opt(e.Principal),proposals:e.Vec(e.Tuple(e.Nat64,y)),in_flight_commands:e.Vec(e.Tuple(e.Text,ce)),sns_metadata:e.Opt(M),neurons:e.Vec(e.Tuple(e.Text,f)),genesis_timestamp_seconds:e.Nat64}),de=e.Record({controller:e.Opt(e.Principal),dissolve_delay_seconds:e.Opt(e.Nat64),source_nns_neuron_id:e.Opt(e.Nat64),stake_e8s:e.Opt(e.Nat64),followees:e.Vec(o),hotkey:e.Opt(e.Principal),neuron_id:e.Opt(o)}),ue=e.Record({neuron_parameters:e.Vec(de)}),le=e.Record({id:e.Opt(o),status:e.Int32}),me=e.Record({swap_neurons:e.Vec(le)}),Ne=e.Variant({Ok:me,Err:e.Int32}),Oe=e.Record({claim_swap_neurons_result:e.Opt(Ne)}),Re=e.Record({maturity_modulation:e.Opt(a)}),ge=e.Record({url:e.Opt(e.Text),logo:e.Opt(e.Text),name:e.Opt(e.Text),description:e.Opt(e.Text)}),ye=e.Record({mode:e.Opt(e.Int32)}),fe=e.Record({neuron_id:e.Opt(o)}),ve=e.Variant({Error:N,Neuron:f}),Se=e.Record({result:e.Opt(ve)}),$=e.Record({proposal_id:e.Opt(u)}),Pe=e.Variant({Error:N,Proposal:y}),we=e.Record({result:e.Opt(Pe)}),Me=e.Variant({stopped:e.Null,stopping:e.Null,running:e.Null}),Fe=e.Record({freezing_threshold:e.Nat,controllers:e.Vec(e.Principal),memory_allocation:e.Nat,compute_allocation:e.Nat}),ke=e.Record({status:Me,memory_size:e.Nat,cycles:e.Nat,settings:Fe,idle_cycles_burned_per_day:e.Nat,module_hash:e.Opt(e.Vec(e.Nat8))}),Ae=e.Record({deployed_version:e.Opt(m),pending_version:e.Opt(l)}),Ee=e.Record({sns_initialization_parameters:e.Text}),Ge=e.Record({reserved_ids:e.Vec(e.Nat64),functions:e.Vec(n)}),qe=e.Record({of_principal:e.Opt(e.Principal),limit:e.Nat32,start_page_at:e.Opt(o)}),Be=e.Record({neurons:e.Vec(f)}),Ue=e.Record({include_reward_status:e.Vec(e.Int32),before_proposal:e.Opt(u),limit:e.Nat32,exclude_type:e.Vec(e.Nat64),include_status:e.Vec(e.Int32)}),ze=e.Record({include_ballots_by_caller:e.Opt(e.Bool),proposals:e.Vec(y)}),Qe=e.Record({percentage_to_stake:e.Opt(e.Nat32)}),We=e.Variant({Split:h,Follow:k,DisburseMaturity:A,ClaimOrRefresh:B,Configure:E,RegisterVote:G,MakeProposal:P,StakeMaturity:Qe,RemoveNeuronPermissions:U,AddNeuronPermissions:b,MergeMaturity:z,Disburse:Q}),je=e.Record({subaccount:e.Vec(e.Nat8),command:e.Opt(We)}),Ye=e.Record({created_neuron_id:e.Opt(o)}),$e=e.Record({amount_disbursed_e8s:e.Nat64,amount_deducted_e8s:e.Opt(e.Nat64)}),He=e.Record({refreshed_neuron_id:e.Opt(o)}),Xe=e.Record({maturity_e8s:e.Nat64,staked_maturity_e8s:e.Nat64}),Je=e.Record({merged_maturity_e8s:e.Nat64,new_stake_e8s:e.Nat64}),Ke=e.Record({transfer_block_height:e.Nat64}),Ze=e.Variant({Error:N,Split:Ye,Follow:e.Record({}),DisburseMaturity:$e,ClaimOrRefresh:He,Configure:e.Record({}),RegisterVote:e.Record({}),MakeProposal:$,RemoveNeuronPermission:e.Record({}),StakeMaturity:Xe,MergeMaturity:Je,Disburse:Ke,AddNeuronPermission:e.Record({})}),Ie=e.Record({command:e.Opt(Ze)}),De=e.Record({mode:e.Int32});return e.Service({claim_swap_neurons:e.Func([ue],[Oe],[]),fail_stuck_upgrade_in_progress:e.Func([e.Record({})],[e.Record({})],[]),get_build_metadata:e.Func([],[e.Text],[]),get_latest_reward_event:e.Func([],[g],[]),get_maturity_modulation:e.Func([e.Record({})],[Re],[]),get_metadata:e.Func([e.Record({})],[ge],[]),get_mode:e.Func([e.Record({})],[ye],[]),get_nervous_system_parameters:e.Func([e.Null],[i],[]),get_neuron:e.Func([fe],[Se],[]),get_proposal:e.Func([$],[we],[]),get_root_canister_status:e.Func([e.Null],[ke],[]),get_running_sns_version:e.Func([e.Record({})],[Ae],[]),get_sns_initialization_parameters:e.Func([e.Record({})],[Ee],[]),list_nervous_system_functions:e.Func([],[Ge],[]),list_neurons:e.Func([qe],[Be],[]),list_proposals:e.Func([Ue],[ze],[]),manage_neuron:e.Func([je],[Ie],[]),set_mode:e.Func([De],[e.Record({})],[])})};var Kt=({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)}),s=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(s)}),r=e.Record({not_dissolving_neurons_e8s_buckets:e.Vec(e.Tuple(e.Nat64,e.Float64)),garbage_collectable_neurons_count:e.Nat64,neurons_with_invalid_stake_count:e.Nat64,not_dissolving_neurons_count_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),neurons_with_less_than_6_months_dissolve_delay_count:e.Nat64,dissolved_neurons_count:e.Nat64,total_staked_e8s:e.Nat64,total_supply_governance_tokens:e.Nat64,not_dissolving_neurons_count:e.Nat64,dissolved_neurons_e8s:e.Nat64,neurons_with_less_than_6_months_dissolve_delay_e8s:e.Nat64,dissolving_neurons_count_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),dissolving_neurons_count:e.Nat64,dissolving_neurons_e8s_buckets:e.Vec(e.Tuple(e.Nat64,e.Float64)),timestamp_seconds:e.Nat64}),a=e.Record({current_basis_points:e.Opt(e.Int32),updated_at_timestamp_seconds:e.Opt(e.Nat64)}),o=e.Record({id:e.Vec(e.Nat8)}),c=e.Record({followees:e.Vec(o)}),d=e.Record({followees:e.Vec(e.Tuple(e.Nat64,c))}),p=e.Record({permissions:e.Vec(e.Int32)}),O=e.Record({final_reward_rate_basis_points:e.Opt(e.Nat64),initial_reward_rate_basis_points:e.Opt(e.Nat64),reward_rate_transition_duration_seconds:e.Opt(e.Nat64),round_duration_seconds:e.Opt(e.Nat64)}),i=e.Record({default_followees:e.Opt(d),max_dissolve_delay_seconds:e.Opt(e.Nat64),max_dissolve_delay_bonus_percentage:e.Opt(e.Nat64),max_followees_per_function:e.Opt(e.Nat64),neuron_claimer_permissions:e.Opt(p),neuron_minimum_stake_e8s:e.Opt(e.Nat64),max_neuron_age_for_age_bonus:e.Opt(e.Nat64),initial_voting_period_seconds:e.Opt(e.Nat64),neuron_minimum_dissolve_delay_to_vote_seconds:e.Opt(e.Nat64),reject_cost_e8s:e.Opt(e.Nat64),max_proposals_to_keep_per_action:e.Opt(e.Nat32),wait_for_quiet_deadline_increase_seconds:e.Opt(e.Nat64),max_number_of_neurons:e.Opt(e.Nat64),transaction_fee_e8s:e.Opt(e.Nat64),max_number_of_proposals_with_ballots:e.Opt(e.Nat64),max_age_bonus_percentage:e.Opt(e.Nat64),neuron_grantable_permissions:e.Opt(p),voting_rewards_parameters:e.Opt(O),maturity_modulation_disabled:e.Opt(e.Bool),max_number_of_principals_per_neuron:e.Opt(e.Nat64)}),m=e.Record({archive_wasm_hash:e.Vec(e.Nat8),root_wasm_hash:e.Vec(e.Nat8),swap_wasm_hash:e.Vec(e.Nat8),ledger_wasm_hash:e.Vec(e.Nat8),governance_wasm_hash:e.Vec(e.Nat8),index_wasm_hash:e.Vec(e.Nat8)}),u=e.Record({id:e.Nat64}),g=e.Record({rounds_since_last_distribution:e.Opt(e.Nat64),actual_timestamp_seconds:e.Nat64,end_timestamp_seconds:e.Opt(e.Nat64),distributed_e8s_equivalent:e.Nat64,round:e.Nat64,settled_proposals:e.Vec(u)}),l=e.Record({mark_failed_at_seconds:e.Nat64,checking_upgrade_lock:e.Nat64,proposal_id:e.Nat64,target_version:e.Opt(m)}),N=e.Record({error_message:e.Text,error_type:e.Int32}),C=e.Record({vote:e.Int32,cast_timestamp_seconds:e.Nat64,voting_power:e.Nat64}),v=e.Record({basis_points:e.Opt(e.Nat64)}),T=e.Record({no:e.Nat64,yes:e.Nat64,total:e.Nat64,timestamp_seconds:e.Nat64}),V=e.Record({freezing_threshold:e.Opt(e.Nat64),canister_ids:e.Vec(e.Principal),reserved_cycles_limit:e.Opt(e.Nat64),log_visibility:e.Opt(e.Int32),memory_allocation:e.Opt(e.Nat64),compute_allocation:e.Opt(e.Nat64)}),H=e.Record({canister_ids:e.Vec(e.Principal)}),S=e.Record({subaccount:e.Vec(e.Nat8)}),X=e.Record({from_treasury:e.Int32,to_principal:e.Opt(e.Principal),to_subaccount:e.Opt(S),memo:e.Opt(e.Nat64),amount_e8s:e.Nat64}),J=e.Record({new_canister_wasm:e.Vec(e.Nat8),mode:e.Opt(e.Int32),canister_id:e.Opt(e.Principal),canister_upgrade_arg:e.Opt(e.Vec(e.Nat8))}),K=e.Record({canister_ids:e.Vec(e.Principal),new_controllers:e.Vec(e.Principal)}),Z=e.Record({to_principal:e.Opt(e.Principal),to_subaccount:e.Opt(S),memo:e.Opt(e.Nat64),amount_e8s:e.Opt(e.Nat64)}),M=e.Record({url:e.Opt(e.Text),logo:e.Opt(e.Text),name:e.Opt(e.Text),description:e.Opt(e.Text)}),I=e.Record({function_id:e.Nat64,payload:e.Vec(e.Nat8)}),D=e.Record({transfer_fee:e.Opt(e.Nat64)}),L=e.Record({motion_text:e.Text}),F=e.Variant({ManageNervousSystemParameters:i,AddGenericNervousSystemFunction:n,ManageDappCanisterSettings:V,RemoveGenericNervousSystemFunction:e.Nat64,UpgradeSnsToNextVersion:e.Record({}),RegisterDappCanisters:H,TransferSnsTreasuryFunds:X,UpgradeSnsControlledCanister:J,DeregisterDappCanisters:K,MintSnsTokens:Z,Unspecified:e.Record({}),ManageSnsMetadata:M,ExecuteGenericNervousSystemFunction:I,ManageLedgerParameters:D,Motion:L}),P=e.Record({url:e.Text,title:e.Text,action:e.Opt(F),summary:e.Text}),ee=e.Record({current_deadline_timestamp_seconds:e.Nat64}),y=e.Record({id:e.Opt(u),payload_text_rendering:e.Opt(e.Text),action:e.Nat64,failure_reason:e.Opt(N),ballots:e.Vec(e.Tuple(e.Text,C)),minimum_yes_proportion_of_total:e.Opt(v),reward_event_round:e.Nat64,failed_timestamp_seconds:e.Nat64,reward_event_end_timestamp_seconds:e.Opt(e.Nat64),proposal_creation_timestamp_seconds:e.Nat64,initial_voting_period_seconds:e.Nat64,reject_cost_e8s:e.Nat64,latest_tally:e.Opt(T),wait_for_quiet_deadline_increase_seconds:e.Nat64,decided_timestamp_seconds:e.Nat64,proposal:e.Opt(P),proposer:e.Opt(o),wait_for_quiet_state:e.Opt(ee),minimum_yes_proportion_of_exercised:e.Opt(v),is_eligible_for_rewards:e.Bool,executed_timestamp_seconds:e.Nat64}),h=e.Record({memo:e.Nat64,amount_e8s:e.Nat64}),k=e.Record({function_id:e.Nat64,followees:e.Vec(o)}),R=e.Record({owner:e.Opt(e.Principal),subaccount:e.Opt(S)}),A=e.Record({to_account:e.Opt(R),percentage_to_disburse:e.Nat32}),te=e.Record({requested_setting_for_auto_stake_maturity:e.Bool}),se=e.Record({additional_dissolve_delay_seconds:e.Nat32}),ne=e.Record({dissolve_timestamp_seconds:e.Nat64}),oe=e.Variant({ChangeAutoStakeMaturity:te,StopDissolving:e.Record({}),StartDissolving:e.Record({}),IncreaseDissolveDelay:se,SetDissolveTimestamp:ne}),E=e.Record({operation:e.Opt(oe)}),G=e.Record({vote:e.Int32,proposal:e.Opt(u)}),j=e.Record({amount_to_be_disbursed_e8s:e.Nat64,to_account:e.Opt(R)}),q=e.Record({controller:e.Opt(e.Principal),memo:e.Nat64}),re=e.Variant({MemoAndController:q,NeuronId:e.Record({})}),B=e.Record({by:e.Opt(re)}),U=e.Record({permissions_to_remove:e.Opt(p),principal_id:e.Opt(e.Principal)}),b=e.Record({permissions_to_add:e.Opt(p),principal_id:e.Opt(e.Principal)}),z=e.Record({percentage_to_merge:e.Nat32}),ae=e.Record({e8s:e.Nat64}),Q=e.Record({to_account:e.Opt(R),amount:e.Opt(ae)}),ie=e.Variant({Split:h,Follow:k,DisburseMaturity:A,Configure:E,RegisterVote:G,SyncCommand:e.Record({}),MakeProposal:P,FinalizeDisburseMaturity:j,ClaimOrRefreshNeuron:B,RemoveNeuronPermissions:U,AddNeuronPermissions:b,MergeMaturity:z,Disburse:Q}),ce=e.Record({command:e.Opt(ie),timestamp:e.Nat64}),_e=e.Record({principal:e.Opt(e.Principal),permission_type:e.Vec(e.Int32)}),Y=e.Variant({DissolveDelaySeconds:e.Nat64,WhenDissolvedTimestampSeconds:e.Nat64}),pe=e.Record({timestamp_of_disbursement_seconds:e.Nat64,amount_e8s:e.Nat64,account_to_disburse_to:e.Opt(R),finalize_disbursement_timestamp_seconds:e.Opt(e.Nat64)}),f=e.Record({id:e.Opt(o),staked_maturity_e8s_equivalent:e.Opt(e.Nat64),permissions:e.Vec(_e),maturity_e8s_equivalent:e.Nat64,cached_neuron_stake_e8s:e.Nat64,created_timestamp_seconds:e.Nat64,source_nns_neuron_id:e.Opt(e.Nat64),auto_stake_maturity:e.Opt(e.Bool),aging_since_timestamp_seconds:e.Nat64,dissolve_state:e.Opt(Y),voting_power_percentage_multiplier:e.Nat64,vesting_period_seconds:e.Opt(e.Nat64),disburse_maturity_in_progress:e.Vec(pe),followees:e.Vec(e.Tuple(e.Nat64,c)),neuron_fees_e8s:e.Nat64}),Ce=e.Record({root_canister_id:e.Opt(e.Principal),id_to_nervous_system_functions:e.Vec(e.Tuple(e.Nat64,n)),metrics:e.Opt(r),maturity_modulation:e.Opt(a),mode:e.Int32,parameters:e.Opt(i),is_finalizing_disburse_maturity:e.Opt(e.Bool),deployed_version:e.Opt(m),sns_initialization_parameters:e.Text,latest_reward_event:e.Opt(g),pending_version:e.Opt(l),swap_canister_id:e.Opt(e.Principal),ledger_canister_id:e.Opt(e.Principal),proposals:e.Vec(e.Tuple(e.Nat64,y)),in_flight_commands:e.Vec(e.Tuple(e.Text,ce)),sns_metadata:e.Opt(M),neurons:e.Vec(e.Tuple(e.Text,f)),genesis_timestamp_seconds:e.Nat64}),de=e.Record({controller:e.Opt(e.Principal),dissolve_delay_seconds:e.Opt(e.Nat64),source_nns_neuron_id:e.Opt(e.Nat64),stake_e8s:e.Opt(e.Nat64),followees:e.Vec(o),hotkey:e.Opt(e.Principal),neuron_id:e.Opt(o)}),ue=e.Record({neuron_parameters:e.Vec(de)}),le=e.Record({id:e.Opt(o),status:e.Int32}),me=e.Record({swap_neurons:e.Vec(le)}),Ne=e.Variant({Ok:me,Err:e.Int32}),Oe=e.Record({claim_swap_neurons_result:e.Opt(Ne)}),Re=e.Record({maturity_modulation:e.Opt(a)}),ge=e.Record({url:e.Opt(e.Text),logo:e.Opt(e.Text),name:e.Opt(e.Text),description:e.Opt(e.Text)}),ye=e.Record({mode:e.Opt(e.Int32)}),fe=e.Record({neuron_id:e.Opt(o)}),ve=e.Variant({Error:N,Neuron:f}),Se=e.Record({result:e.Opt(ve)}),$=e.Record({proposal_id:e.Opt(u)}),Pe=e.Variant({Error:N,Proposal:y}),we=e.Record({result:e.Opt(Pe)}),Me=e.Variant({stopped:e.Null,stopping:e.Null,running:e.Null}),Fe=e.Record({freezing_threshold:e.Nat,controllers:e.Vec(e.Principal),memory_allocation:e.Nat,compute_allocation:e.Nat}),ke=e.Record({status:Me,memory_size:e.Nat,cycles:e.Nat,settings:Fe,idle_cycles_burned_per_day:e.Nat,module_hash:e.Opt(e.Vec(e.Nat8))}),Ae=e.Record({deployed_version:e.Opt(m),pending_version:e.Opt(l)}),Ee=e.Record({sns_initialization_parameters:e.Text}),Ge=e.Record({reserved_ids:e.Vec(e.Nat64),functions:e.Vec(n)}),qe=e.Record({of_principal:e.Opt(e.Principal),limit:e.Nat32,start_page_at:e.Opt(o)}),Be=e.Record({neurons:e.Vec(f)}),Ue=e.Record({include_reward_status:e.Vec(e.Int32),before_proposal:e.Opt(u),limit:e.Nat32,exclude_type:e.Vec(e.Nat64),include_status:e.Vec(e.Int32)}),ze=e.Record({include_ballots_by_caller:e.Opt(e.Bool),proposals:e.Vec(y)}),Qe=e.Record({percentage_to_stake:e.Opt(e.Nat32)}),We=e.Variant({Split:h,Follow:k,DisburseMaturity:A,ClaimOrRefresh:B,Configure:E,RegisterVote:G,MakeProposal:P,StakeMaturity:Qe,RemoveNeuronPermissions:U,AddNeuronPermissions:b,MergeMaturity:z,Disburse:Q}),je=e.Record({subaccount:e.Vec(e.Nat8),command:e.Opt(We)}),Ye=e.Record({created_neuron_id:e.Opt(o)}),$e=e.Record({amount_disbursed_e8s:e.Nat64,amount_deducted_e8s:e.Opt(e.Nat64)}),He=e.Record({refreshed_neuron_id:e.Opt(o)}),Xe=e.Record({maturity_e8s:e.Nat64,staked_maturity_e8s:e.Nat64}),Je=e.Record({merged_maturity_e8s:e.Nat64,new_stake_e8s:e.Nat64}),Ke=e.Record({transfer_block_height:e.Nat64}),Ze=e.Variant({Error:N,Split:Ye,Follow:e.Record({}),DisburseMaturity:$e,ClaimOrRefresh:He,Configure:e.Record({}),RegisterVote:e.Record({}),MakeProposal:$,RemoveNeuronPermission:e.Record({}),StakeMaturity:Xe,MergeMaturity:Je,Disburse:Ke,AddNeuronPermission:e.Record({})}),Ie=e.Record({command:e.Opt(Ze)}),De=e.Record({mode:e.Int32});return e.Service({claim_swap_neurons:e.Func([ue],[Oe],[]),fail_stuck_upgrade_in_progress:e.Func([e.Record({})],[e.Record({})],[]),get_build_metadata:e.Func([],[e.Text],["query"]),get_latest_reward_event:e.Func([],[g],["query"]),get_maturity_modulation:e.Func([e.Record({})],[Re],[]),get_metadata:e.Func([e.Record({})],[ge],["query"]),get_mode:e.Func([e.Record({})],[ye],["query"]),get_nervous_system_parameters:e.Func([e.Null],[i],["query"]),get_neuron:e.Func([fe],[Se],["query"]),get_proposal:e.Func([$],[we],["query"]),get_root_canister_status:e.Func([e.Null],[ke],[]),get_running_sns_version:e.Func([e.Record({})],[Ae],["query"]),get_sns_initialization_parameters:e.Func([e.Record({})],[Ee],["query"]),list_nervous_system_functions:e.Func([],[Ge],["query"]),list_neurons:e.Func([qe],[Be],["query"]),list_proposals:e.Func([Ue],[ze],["query"]),manage_neuron:e.Func([je],[Ie],[]),set_mode:e.Func([De],[e.Record({})],[])})};var et=class e extends w.Canister{constructor(){super(...arguments);this.listNeurons=async s=>{let{principal:n,limit:r,beforeNeuronId:a}=s,{neurons:o}=await this.caller(s).list_neurons({of_principal:(0,w.toNullable)(n),limit:r??100,start_page_at:(0,w.toNullable)(a)});return o};this.listProposals=async s=>{let{certified:n}=s;return await this.caller({certified:n}).list_proposals(Ut(s))};this.getProposal=async s=>{let{proposalId:n}=s,{result:r}=await this.caller(s).get_proposal({proposal_id:(0,w.toNullable)(n)}),a=(0,w.fromNullable)(r);if(a===void 0||"Error"in a)throw new x((a==null?void 0:a.Error.error_message)??"Response type not supported");return a.Proposal};this.listNervousSystemFunctions=async s=>this.caller(s).list_nervous_system_functions();this.metadata=s=>this.caller(s).get_metadata({});this.nervousSystemParameters=s=>this.caller(s).get_nervous_system_parameters(null);this.getNeuron=async s=>{let{neuronId:n}=s,{result:r}=await this.caller(s).get_neuron({neuron_id:(0,w.toNullable)(n)}),a=(0,w.fromNullable)(r);if(a===void 0||"Error"in a)throw new x((a==null?void 0:a.Error.error_message)??"Response type not supported");return a.Neuron};this.queryNeuron=async s=>{try{return await this.getNeuron(s)}catch(n){if(n instanceof Error&&n.message.includes("No neuron for given NeuronId"))return;throw n}};this.manageNeuron=async s=>{let n=await this.caller({certified:!0}).manage_neuron(s);return this.assertManageNeuronError(n),n};this.addNeuronPermissions=async s=>{let n=xt(s);await this.manageNeuron(n)};this.removeNeuronPermissions=async s=>{let n=wt(s);await this.manageNeuron(n)};this.splitNeuron=async s=>{let n=Tt(s),{command:r}=await this.manageNeuron(n),a=(0,w.fromNullable)(r),o=c=>`Split neuron failed (${c})`;if(a===void 0)throw new x(o("no response"));if("Split"in a){let c=a.Split,d=(0,w.fromNullable)(c.created_neuron_id);if(d!==void 0)return d;throw new x(o("no id"))}throw new x(o("unknown"))};this.disburse=async s=>{let n=Vt(s);await this.manageNeuron(n)};this.startDissolving=async s=>{let n=Ct(s);await this.manageNeuron(n)};this.stopDissolving=async s=>{let n=Mt(s);await this.manageNeuron(n)};this.stakeMaturity=async({neuronId:s,percentageToStake:n})=>{(0,w.assertPercentageNumber)(n??100);let r=Ft({neuronId:s,percentageToStake:n});await this.manageNeuron(r)};this.disburseMaturity=async s=>{(0,w.assertPercentageNumber)(s.percentageToDisburse);let n=kt(s);await this.manageNeuron(n)};this.autoStakeMaturity=async s=>{let n=At(s);await this.manageNeuron(n)};this.setDissolveTimestamp=async s=>{let n=Et(s);await this.manageNeuron(n)};this.increaseDissolveDelay=async s=>{let n=Gt(s);await this.manageNeuron(n)};this.setTopicFollowees=async s=>{let n=qt(s);await this.manageNeuron(n)};this.registerVote=async s=>{let n=Bt(s);await this.manageNeuron(n)};this.refreshNeuron=async s=>{let n=ft({subaccount:s.id});await this.manageNeuron(n)};this.claimNeuron=async({memo:s,controller:n,subaccount:r})=>{let a=ft({subaccount:r,memo:s,controller:n}),{command:o}=await this.manageNeuron(a),c=(0,w.fromNullable)(o);if(c===void 0)throw new x("Claim neuron failed");if("ClaimOrRefresh"in c){let d=(0,w.fromNullable)(c.ClaimOrRefresh.refreshed_neuron_id);if(d===void 0)throw new x("Claim neuron failed");return d}throw new x("Claim neuron failed")};this.assertManageNeuronError=({command:s})=>{let n=s[0];if(n!==void 0&&"Error"in n)throw new x(n.Error.error_message)}}static create(s){let{service:n,certifiedService:r,canisterId:a}=(0,w.createServices)({options:s,idlFactory:Kt,certifiedIdlFactory:Jt});return new e(a,n,r)}};var he=require("@dfinity/utils");var Zt=({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)}),s=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(s)}),r=e.Record({not_dissolving_neurons_e8s_buckets:e.Vec(e.Tuple(e.Nat64,e.Float64)),garbage_collectable_neurons_count:e.Nat64,neurons_with_invalid_stake_count:e.Nat64,not_dissolving_neurons_count_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),neurons_with_less_than_6_months_dissolve_delay_count:e.Nat64,dissolved_neurons_count:e.Nat64,total_staked_e8s:e.Nat64,total_supply_governance_tokens:e.Nat64,not_dissolving_neurons_count:e.Nat64,dissolved_neurons_e8s:e.Nat64,neurons_with_less_than_6_months_dissolve_delay_e8s:e.Nat64,dissolving_neurons_count_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),dissolving_neurons_count:e.Nat64,dissolving_neurons_e8s_buckets:e.Vec(e.Tuple(e.Nat64,e.Float64)),timestamp_seconds:e.Nat64}),a=e.Record({current_basis_points:e.Opt(e.Int32),updated_at_timestamp_seconds:e.Opt(e.Nat64)}),o=e.Record({id:e.Vec(e.Nat8)}),c=e.Record({followees:e.Vec(o)}),d=e.Record({followees:e.Vec(e.Tuple(e.Nat64,c))}),p=e.Record({permissions:e.Vec(e.Int32)}),O=e.Record({final_reward_rate_basis_points:e.Opt(e.Nat64),initial_reward_rate_basis_points:e.Opt(e.Nat64),reward_rate_transition_duration_seconds:e.Opt(e.Nat64),round_duration_seconds:e.Opt(e.Nat64)}),i=e.Record({default_followees:e.Opt(d),max_dissolve_delay_seconds:e.Opt(e.Nat64),max_dissolve_delay_bonus_percentage:e.Opt(e.Nat64),max_followees_per_function:e.Opt(e.Nat64),neuron_claimer_permissions:e.Opt(p),neuron_minimum_stake_e8s:e.Opt(e.Nat64),max_neuron_age_for_age_bonus:e.Opt(e.Nat64),initial_voting_period_seconds:e.Opt(e.Nat64),neuron_minimum_dissolve_delay_to_vote_seconds:e.Opt(e.Nat64),reject_cost_e8s:e.Opt(e.Nat64),max_proposals_to_keep_per_action:e.Opt(e.Nat32),wait_for_quiet_deadline_increase_seconds:e.Opt(e.Nat64),max_number_of_neurons:e.Opt(e.Nat64),transaction_fee_e8s:e.Opt(e.Nat64),max_number_of_proposals_with_ballots:e.Opt(e.Nat64),max_age_bonus_percentage:e.Opt(e.Nat64),neuron_grantable_permissions:e.Opt(p),voting_rewards_parameters:e.Opt(O),maturity_modulation_disabled:e.Opt(e.Bool),max_number_of_principals_per_neuron:e.Opt(e.Nat64)}),m=e.Record({archive_wasm_hash:e.Vec(e.Nat8),root_wasm_hash:e.Vec(e.Nat8),swap_wasm_hash:e.Vec(e.Nat8),ledger_wasm_hash:e.Vec(e.Nat8),governance_wasm_hash:e.Vec(e.Nat8),index_wasm_hash:e.Vec(e.Nat8)}),u=e.Record({id:e.Nat64}),g=e.Record({rounds_since_last_distribution:e.Opt(e.Nat64),actual_timestamp_seconds:e.Nat64,end_timestamp_seconds:e.Opt(e.Nat64),distributed_e8s_equivalent:e.Nat64,round:e.Nat64,settled_proposals:e.Vec(u)}),l=e.Record({mark_failed_at_seconds:e.Nat64,checking_upgrade_lock:e.Nat64,proposal_id:e.Nat64,target_version:e.Opt(m)}),N=e.Record({error_message:e.Text,error_type:e.Int32}),C=e.Record({vote:e.Int32,cast_timestamp_seconds:e.Nat64,voting_power:e.Nat64}),v=e.Record({basis_points:e.Opt(e.Nat64)}),T=e.Record({no:e.Nat64,yes:e.Nat64,total:e.Nat64,timestamp_seconds:e.Nat64}),V=e.Record({freezing_threshold:e.Opt(e.Nat64),canister_ids:e.Vec(e.Principal),reserved_cycles_limit:e.Opt(e.Nat64),log_visibility:e.Opt(e.Int32),memory_allocation:e.Opt(e.Nat64),compute_allocation:e.Opt(e.Nat64)}),H=e.Record({canister_ids:e.Vec(e.Principal)}),S=e.Record({subaccount:e.Vec(e.Nat8)}),X=e.Record({from_treasury:e.Int32,to_principal:e.Opt(e.Principal),to_subaccount:e.Opt(S),memo:e.Opt(e.Nat64),amount_e8s:e.Nat64}),J=e.Record({new_canister_wasm:e.Vec(e.Nat8),mode:e.Opt(e.Int32),canister_id:e.Opt(e.Principal),canister_upgrade_arg:e.Opt(e.Vec(e.Nat8))}),K=e.Record({canister_ids:e.Vec(e.Principal),new_controllers:e.Vec(e.Principal)}),Z=e.Record({to_principal:e.Opt(e.Principal),to_subaccount:e.Opt(S),memo:e.Opt(e.Nat64),amount_e8s:e.Opt(e.Nat64)}),M=e.Record({url:e.Opt(e.Text),logo:e.Opt(e.Text),name:e.Opt(e.Text),description:e.Opt(e.Text)}),I=e.Record({function_id:e.Nat64,payload:e.Vec(e.Nat8)}),D=e.Record({transfer_fee:e.Opt(e.Nat64)}),L=e.Record({motion_text:e.Text}),F=e.Variant({ManageNervousSystemParameters:i,AddGenericNervousSystemFunction:n,ManageDappCanisterSettings:V,RemoveGenericNervousSystemFunction:e.Nat64,UpgradeSnsToNextVersion:e.Record({}),RegisterDappCanisters:H,TransferSnsTreasuryFunds:X,UpgradeSnsControlledCanister:J,DeregisterDappCanisters:K,MintSnsTokens:Z,Unspecified:e.Record({}),ManageSnsMetadata:M,ExecuteGenericNervousSystemFunction:I,ManageLedgerParameters:D,Motion:L}),P=e.Record({url:e.Text,title:e.Text,action:e.Opt(F),summary:e.Text}),ee=e.Record({current_deadline_timestamp_seconds:e.Nat64}),y=e.Record({id:e.Opt(u),payload_text_rendering:e.Opt(e.Text),action:e.Nat64,failure_reason:e.Opt(N),ballots:e.Vec(e.Tuple(e.Text,C)),minimum_yes_proportion_of_total:e.Opt(v),reward_event_round:e.Nat64,failed_timestamp_seconds:e.Nat64,reward_event_end_timestamp_seconds:e.Opt(e.Nat64),proposal_creation_timestamp_seconds:e.Nat64,initial_voting_period_seconds:e.Nat64,reject_cost_e8s:e.Nat64,latest_tally:e.Opt(T),wait_for_quiet_deadline_increase_seconds:e.Nat64,decided_timestamp_seconds:e.Nat64,proposal:e.Opt(P),proposer:e.Opt(o),wait_for_quiet_state:e.Opt(ee),minimum_yes_proportion_of_exercised:e.Opt(v),is_eligible_for_rewards:e.Bool,executed_timestamp_seconds:e.Nat64}),h=e.Record({memo:e.Nat64,amount_e8s:e.Nat64}),k=e.Record({function_id:e.Nat64,followees:e.Vec(o)}),R=e.Record({owner:e.Opt(e.Principal),subaccount:e.Opt(S)}),A=e.Record({to_account:e.Opt(R),percentage_to_disburse:e.Nat32}),te=e.Record({requested_setting_for_auto_stake_maturity:e.Bool}),se=e.Record({additional_dissolve_delay_seconds:e.Nat32}),ne=e.Record({dissolve_timestamp_seconds:e.Nat64}),oe=e.Variant({ChangeAutoStakeMaturity:te,StopDissolving:e.Record({}),StartDissolving:e.Record({}),IncreaseDissolveDelay:se,SetDissolveTimestamp:ne}),E=e.Record({operation:e.Opt(oe)}),G=e.Record({vote:e.Int32,proposal:e.Opt(u)}),j=e.Record({amount_to_be_disbursed_e8s:e.Nat64,to_account:e.Opt(R)}),q=e.Record({controller:e.Opt(e.Principal),memo:e.Nat64}),re=e.Variant({MemoAndController:q,NeuronId:e.Record({})}),B=e.Record({by:e.Opt(re)}),U=e.Record({permissions_to_remove:e.Opt(p),principal_id:e.Opt(e.Principal)}),b=e.Record({permissions_to_add:e.Opt(p),principal_id:e.Opt(e.Principal)}),z=e.Record({percentage_to_merge:e.Nat32}),ae=e.Record({e8s:e.Nat64}),Q=e.Record({to_account:e.Opt(R),amount:e.Opt(ae)}),ie=e.Variant({Split:h,Follow:k,DisburseMaturity:A,Configure:E,RegisterVote:G,SyncCommand:e.Record({}),MakeProposal:P,FinalizeDisburseMaturity:j,ClaimOrRefreshNeuron:B,RemoveNeuronPermissions:U,AddNeuronPermissions:b,MergeMaturity:z,Disburse:Q}),ce=e.Record({command:e.Opt(ie),timestamp:e.Nat64}),_e=e.Record({principal:e.Opt(e.Principal),permission_type:e.Vec(e.Int32)}),Y=e.Variant({DissolveDelaySeconds:e.Nat64,WhenDissolvedTimestampSeconds:e.Nat64}),pe=e.Record({timestamp_of_disbursement_seconds:e.Nat64,amount_e8s:e.Nat64,account_to_disburse_to:e.Opt(R),finalize_disbursement_timestamp_seconds:e.Opt(e.Nat64)}),f=e.Record({id:e.Opt(o),staked_maturity_e8s_equivalent:e.Opt(e.Nat64),permissions:e.Vec(_e),maturity_e8s_equivalent:e.Nat64,cached_neuron_stake_e8s:e.Nat64,created_timestamp_seconds:e.Nat64,source_nns_neuron_id:e.Opt(e.Nat64),auto_stake_maturity:e.Opt(e.Bool),aging_since_timestamp_seconds:e.Nat64,dissolve_state:e.Opt(Y),voting_power_percentage_multiplier:e.Nat64,vesting_period_seconds:e.Opt(e.Nat64),disburse_maturity_in_progress:e.Vec(pe),followees:e.Vec(e.Tuple(e.Nat64,c)),neuron_fees_e8s:e.Nat64}),Ce=e.Record({root_canister_id:e.Opt(e.Principal),id_to_nervous_system_functions:e.Vec(e.Tuple(e.Nat64,n)),metrics:e.Opt(r),maturity_modulation:e.Opt(a),mode:e.Int32,parameters:e.Opt(i),is_finalizing_disburse_maturity:e.Opt(e.Bool),deployed_version:e.Opt(m),sns_initialization_parameters:e.Text,latest_reward_event:e.Opt(g),pending_version:e.Opt(l),swap_canister_id:e.Opt(e.Principal),ledger_canister_id:e.Opt(e.Principal),proposals:e.Vec(e.Tuple(e.Nat64,y)),in_flight_commands:e.Vec(e.Tuple(e.Text,ce)),sns_metadata:e.Opt(M),neurons:e.Vec(e.Tuple(e.Text,f)),genesis_timestamp_seconds:e.Nat64}),de=e.Record({id:e.Opt(o),amount_e8s:e.Opt(e.Nat64)}),ue=e.Record({new_maturity_e8s:e.Opt(e.Nat64)}),le=e.Record({controller:e.Opt(e.Principal),dissolve_delay_seconds:e.Opt(e.Nat64),source_nns_neuron_id:e.Opt(e.Nat64),stake_e8s:e.Opt(e.Nat64),followees:e.Vec(o),hotkey:e.Opt(e.Principal),neuron_id:e.Opt(o)}),me=e.Record({neuron_parameters:e.Vec(le)}),Ne=e.Record({id:e.Opt(o),status:e.Int32}),Oe=e.Record({swap_neurons:e.Vec(Ne)}),Re=e.Variant({Ok:Oe,Err:e.Int32}),ge=e.Record({claim_swap_neurons_result:e.Opt(Re)}),ye=e.Record({maturity_modulation:e.Opt(a)}),fe=e.Record({url:e.Opt(e.Text),logo:e.Opt(e.Text),name:e.Opt(e.Text),description:e.Opt(e.Text)}),ve=e.Record({mode:e.Opt(e.Int32)}),Se=e.Record({neuron_id:e.Opt(o)}),$=e.Variant({Error:N,Neuron:f}),Pe=e.Record({result:e.Opt($)}),we=e.Record({proposal_id:e.Opt(u)}),Me=e.Variant({Error:N,Proposal:y}),Fe=e.Record({result:e.Opt(Me)}),ke=e.Variant({stopped:e.Null,stopping:e.Null,running:e.Null}),Ae=e.Record({freezing_threshold:e.Nat,controllers:e.Vec(e.Principal),memory_allocation:e.Nat,compute_allocation:e.Nat}),Ee=e.Record({status:ke,memory_size:e.Nat,cycles:e.Nat,settings:Ae,idle_cycles_burned_per_day:e.Nat,module_hash:e.Opt(e.Vec(e.Nat8))}),Ge=e.Record({deployed_version:e.Opt(m),pending_version:e.Opt(l)}),qe=e.Record({sns_initialization_parameters:e.Text}),Be=e.Record({reserved_ids:e.Vec(e.Nat64),functions:e.Vec(n)}),Ue=e.Record({of_principal:e.Opt(e.Principal),limit:e.Nat32,start_page_at:e.Opt(o)}),ze=e.Record({neurons:e.Vec(f)}),Qe=e.Record({include_reward_status:e.Vec(e.Int32),before_proposal:e.Opt(u),limit:e.Nat32,exclude_type:e.Vec(e.Nat64),include_status:e.Vec(e.Int32)}),We=e.Record({include_ballots_by_caller:e.Opt(e.Bool),proposals:e.Vec(y)}),je=e.Record({percentage_to_stake:e.Opt(e.Nat32)}),Ye=e.Variant({Split:h,Follow:k,DisburseMaturity:A,ClaimOrRefresh:B,Configure:E,RegisterVote:G,MakeProposal:P,StakeMaturity:je,RemoveNeuronPermissions:U,AddNeuronPermissions:b,MergeMaturity:z,Disburse:Q}),$e=e.Record({subaccount:e.Vec(e.Nat8),command:e.Opt(Ye)}),He=e.Record({created_neuron_id:e.Opt(o)}),Xe=e.Record({amount_disbursed_e8s:e.Nat64,amount_deducted_e8s:e.Opt(e.Nat64)}),Je=e.Record({refreshed_neuron_id:e.Opt(o)}),Ke=e.Record({maturity_e8s:e.Nat64,staked_maturity_e8s:e.Nat64}),Ze=e.Record({merged_maturity_e8s:e.Nat64,new_stake_e8s:e.Nat64}),Ie=e.Record({transfer_block_height:e.Nat64}),De=e.Variant({Error:N,Split:He,Follow:e.Record({}),DisburseMaturity:Xe,ClaimOrRefresh:Je,Configure:e.Record({}),RegisterVote:e.Record({}),MakeProposal:we,RemoveNeuronPermission:e.Record({}),StakeMaturity:Ke,MergeMaturity:Ze,Disburse:Ie,AddNeuronPermission:e.Record({})}),Ot=e.Record({command:e.Opt(De)}),Rt=e.Record({recipient:e.Opt(R),amount_e8s:e.Opt(e.Nat64)}),gt=e.Record({mode:e.Int32});return e.Service({add_maturity:e.Func([de],[ue],[]),claim_swap_neurons:e.Func([me],[ge],[]),fail_stuck_upgrade_in_progress:e.Func([e.Record({})],[e.Record({})],[]),get_build_metadata:e.Func([],[e.Text],[]),get_latest_reward_event:e.Func([],[g],[]),get_maturity_modulation:e.Func([e.Record({})],[ye],[]),get_metadata:e.Func([e.Record({})],[fe],[]),get_mode:e.Func([e.Record({})],[ve],[]),get_nervous_system_parameters:e.Func([e.Null],[i],[]),get_neuron:e.Func([Se],[Pe],[]),get_proposal:e.Func([we],[Fe],[]),get_root_canister_status:e.Func([e.Null],[Ee],[]),get_running_sns_version:e.Func([e.Record({})],[Ge],[]),get_sns_initialization_parameters:e.Func([e.Record({})],[qe],[]),list_nervous_system_functions:e.Func([],[Be],[]),list_neurons:e.Func([Ue],[ze],[]),list_proposals:e.Func([Qe],[We],[]),manage_neuron:e.Func([$e],[Ot],[]),mint_tokens:e.Func([Rt],[e.Record({})],[]),set_mode:e.Func([gt],[e.Record({})],[]),update_neuron:e.Func([f],[e.Opt(N)],[])})};var It=({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)}),s=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(s)}),r=e.Record({not_dissolving_neurons_e8s_buckets:e.Vec(e.Tuple(e.Nat64,e.Float64)),garbage_collectable_neurons_count:e.Nat64,neurons_with_invalid_stake_count:e.Nat64,not_dissolving_neurons_count_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),neurons_with_less_than_6_months_dissolve_delay_count:e.Nat64,dissolved_neurons_count:e.Nat64,total_staked_e8s:e.Nat64,total_supply_governance_tokens:e.Nat64,not_dissolving_neurons_count:e.Nat64,dissolved_neurons_e8s:e.Nat64,neurons_with_less_than_6_months_dissolve_delay_e8s:e.Nat64,dissolving_neurons_count_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),dissolving_neurons_count:e.Nat64,dissolving_neurons_e8s_buckets:e.Vec(e.Tuple(e.Nat64,e.Float64)),timestamp_seconds:e.Nat64}),a=e.Record({current_basis_points:e.Opt(e.Int32),updated_at_timestamp_seconds:e.Opt(e.Nat64)}),o=e.Record({id:e.Vec(e.Nat8)}),c=e.Record({followees:e.Vec(o)}),d=e.Record({followees:e.Vec(e.Tuple(e.Nat64,c))}),p=e.Record({permissions:e.Vec(e.Int32)}),O=e.Record({final_reward_rate_basis_points:e.Opt(e.Nat64),initial_reward_rate_basis_points:e.Opt(e.Nat64),reward_rate_transition_duration_seconds:e.Opt(e.Nat64),round_duration_seconds:e.Opt(e.Nat64)}),i=e.Record({default_followees:e.Opt(d),max_dissolve_delay_seconds:e.Opt(e.Nat64),max_dissolve_delay_bonus_percentage:e.Opt(e.Nat64),max_followees_per_function:e.Opt(e.Nat64),neuron_claimer_permissions:e.Opt(p),neuron_minimum_stake_e8s:e.Opt(e.Nat64),max_neuron_age_for_age_bonus:e.Opt(e.Nat64),initial_voting_period_seconds:e.Opt(e.Nat64),neuron_minimum_dissolve_delay_to_vote_seconds:e.Opt(e.Nat64),reject_cost_e8s:e.Opt(e.Nat64),max_proposals_to_keep_per_action:e.Opt(e.Nat32),wait_for_quiet_deadline_increase_seconds:e.Opt(e.Nat64),max_number_of_neurons:e.Opt(e.Nat64),transaction_fee_e8s:e.Opt(e.Nat64),max_number_of_proposals_with_ballots:e.Opt(e.Nat64),max_age_bonus_percentage:e.Opt(e.Nat64),neuron_grantable_permissions:e.Opt(p),voting_rewards_parameters:e.Opt(O),maturity_modulation_disabled:e.Opt(e.Bool),max_number_of_principals_per_neuron:e.Opt(e.Nat64)}),m=e.Record({archive_wasm_hash:e.Vec(e.Nat8),root_wasm_hash:e.Vec(e.Nat8),swap_wasm_hash:e.Vec(e.Nat8),ledger_wasm_hash:e.Vec(e.Nat8),governance_wasm_hash:e.Vec(e.Nat8),index_wasm_hash:e.Vec(e.Nat8)}),u=e.Record({id:e.Nat64}),g=e.Record({rounds_since_last_distribution:e.Opt(e.Nat64),actual_timestamp_seconds:e.Nat64,end_timestamp_seconds:e.Opt(e.Nat64),distributed_e8s_equivalent:e.Nat64,round:e.Nat64,settled_proposals:e.Vec(u)}),l=e.Record({mark_failed_at_seconds:e.Nat64,checking_upgrade_lock:e.Nat64,proposal_id:e.Nat64,target_version:e.Opt(m)}),N=e.Record({error_message:e.Text,error_type:e.Int32}),C=e.Record({vote:e.Int32,cast_timestamp_seconds:e.Nat64,voting_power:e.Nat64}),v=e.Record({basis_points:e.Opt(e.Nat64)}),T=e.Record({no:e.Nat64,yes:e.Nat64,total:e.Nat64,timestamp_seconds:e.Nat64}),V=e.Record({freezing_threshold:e.Opt(e.Nat64),canister_ids:e.Vec(e.Principal),reserved_cycles_limit:e.Opt(e.Nat64),log_visibility:e.Opt(e.Int32),memory_allocation:e.Opt(e.Nat64),compute_allocation:e.Opt(e.Nat64)}),H=e.Record({canister_ids:e.Vec(e.Principal)}),S=e.Record({subaccount:e.Vec(e.Nat8)}),X=e.Record({from_treasury:e.Int32,to_principal:e.Opt(e.Principal),to_subaccount:e.Opt(S),memo:e.Opt(e.Nat64),amount_e8s:e.Nat64}),J=e.Record({new_canister_wasm:e.Vec(e.Nat8),mode:e.Opt(e.Int32),canister_id:e.Opt(e.Principal),canister_upgrade_arg:e.Opt(e.Vec(e.Nat8))}),K=e.Record({canister_ids:e.Vec(e.Principal),new_controllers:e.Vec(e.Principal)}),Z=e.Record({to_principal:e.Opt(e.Principal),to_subaccount:e.Opt(S),memo:e.Opt(e.Nat64),amount_e8s:e.Opt(e.Nat64)}),M=e.Record({url:e.Opt(e.Text),logo:e.Opt(e.Text),name:e.Opt(e.Text),description:e.Opt(e.Text)}),I=e.Record({function_id:e.Nat64,payload:e.Vec(e.Nat8)}),D=e.Record({transfer_fee:e.Opt(e.Nat64)}),L=e.Record({motion_text:e.Text}),F=e.Variant({ManageNervousSystemParameters:i,AddGenericNervousSystemFunction:n,ManageDappCanisterSettings:V,RemoveGenericNervousSystemFunction:e.Nat64,UpgradeSnsToNextVersion:e.Record({}),RegisterDappCanisters:H,TransferSnsTreasuryFunds:X,UpgradeSnsControlledCanister:J,DeregisterDappCanisters:K,MintSnsTokens:Z,Unspecified:e.Record({}),ManageSnsMetadata:M,ExecuteGenericNervousSystemFunction:I,ManageLedgerParameters:D,Motion:L}),P=e.Record({url:e.Text,title:e.Text,action:e.Opt(F),summary:e.Text}),ee=e.Record({current_deadline_timestamp_seconds:e.Nat64}),y=e.Record({id:e.Opt(u),payload_text_rendering:e.Opt(e.Text),action:e.Nat64,failure_reason:e.Opt(N),ballots:e.Vec(e.Tuple(e.Text,C)),minimum_yes_proportion_of_total:e.Opt(v),reward_event_round:e.Nat64,failed_timestamp_seconds:e.Nat64,reward_event_end_timestamp_seconds:e.Opt(e.Nat64),proposal_creation_timestamp_seconds:e.Nat64,initial_voting_period_seconds:e.Nat64,reject_cost_e8s:e.Nat64,latest_tally:e.Opt(T),wait_for_quiet_deadline_increase_seconds:e.Nat64,decided_timestamp_seconds:e.Nat64,proposal:e.Opt(P),proposer:e.Opt(o),wait_for_quiet_state:e.Opt(ee),minimum_yes_proportion_of_exercised:e.Opt(v),is_eligible_for_rewards:e.Bool,executed_timestamp_seconds:e.Nat64}),h=e.Record({memo:e.Nat64,amount_e8s:e.Nat64}),k=e.Record({function_id:e.Nat64,followees:e.Vec(o)}),R=e.Record({owner:e.Opt(e.Principal),subaccount:e.Opt(S)}),A=e.Record({to_account:e.Opt(R),percentage_to_disburse:e.Nat32}),te=e.Record({requested_setting_for_auto_stake_maturity:e.Bool}),se=e.Record({additional_dissolve_delay_seconds:e.Nat32}),ne=e.Record({dissolve_timestamp_seconds:e.Nat64}),oe=e.Variant({ChangeAutoStakeMaturity:te,StopDissolving:e.Record({}),StartDissolving:e.Record({}),IncreaseDissolveDelay:se,SetDissolveTimestamp:ne}),E=e.Record({operation:e.Opt(oe)}),G=e.Record({vote:e.Int32,proposal:e.Opt(u)}),j=e.Record({amount_to_be_disbursed_e8s:e.Nat64,to_account:e.Opt(R)}),q=e.Record({controller:e.Opt(e.Principal),memo:e.Nat64}),re=e.Variant({MemoAndController:q,NeuronId:e.Record({})}),B=e.Record({by:e.Opt(re)}),U=e.Record({permissions_to_remove:e.Opt(p),principal_id:e.Opt(e.Principal)}),b=e.Record({permissions_to_add:e.Opt(p),principal_id:e.Opt(e.Principal)}),z=e.Record({percentage_to_merge:e.Nat32}),ae=e.Record({e8s:e.Nat64}),Q=e.Record({to_account:e.Opt(R),amount:e.Opt(ae)}),ie=e.Variant({Split:h,Follow:k,DisburseMaturity:A,Configure:E,RegisterVote:G,SyncCommand:e.Record({}),MakeProposal:P,FinalizeDisburseMaturity:j,ClaimOrRefreshNeuron:B,RemoveNeuronPermissions:U,AddNeuronPermissions:b,MergeMaturity:z,Disburse:Q}),ce=e.Record({command:e.Opt(ie),timestamp:e.Nat64}),_e=e.Record({principal:e.Opt(e.Principal),permission_type:e.Vec(e.Int32)}),Y=e.Variant({DissolveDelaySeconds:e.Nat64,WhenDissolvedTimestampSeconds:e.Nat64}),pe=e.Record({timestamp_of_disbursement_seconds:e.Nat64,amount_e8s:e.Nat64,account_to_disburse_to:e.Opt(R),finalize_disbursement_timestamp_seconds:e.Opt(e.Nat64)}),f=e.Record({id:e.Opt(o),staked_maturity_e8s_equivalent:e.Opt(e.Nat64),permissions:e.Vec(_e),maturity_e8s_equivalent:e.Nat64,cached_neuron_stake_e8s:e.Nat64,created_timestamp_seconds:e.Nat64,source_nns_neuron_id:e.Opt(e.Nat64),auto_stake_maturity:e.Opt(e.Bool),aging_since_timestamp_seconds:e.Nat64,dissolve_state:e.Opt(Y),voting_power_percentage_multiplier:e.Nat64,vesting_period_seconds:e.Opt(e.Nat64),disburse_maturity_in_progress:e.Vec(pe),followees:e.Vec(e.Tuple(e.Nat64,c)),neuron_fees_e8s:e.Nat64}),Ce=e.Record({root_canister_id:e.Opt(e.Principal),id_to_nervous_system_functions:e.Vec(e.Tuple(e.Nat64,n)),metrics:e.Opt(r),maturity_modulation:e.Opt(a),mode:e.Int32,parameters:e.Opt(i),is_finalizing_disburse_maturity:e.Opt(e.Bool),deployed_version:e.Opt(m),sns_initialization_parameters:e.Text,latest_reward_event:e.Opt(g),pending_version:e.Opt(l),swap_canister_id:e.Opt(e.Principal),ledger_canister_id:e.Opt(e.Principal),proposals:e.Vec(e.Tuple(e.Nat64,y)),in_flight_commands:e.Vec(e.Tuple(e.Text,ce)),sns_metadata:e.Opt(M),neurons:e.Vec(e.Tuple(e.Text,f)),genesis_timestamp_seconds:e.Nat64}),de=e.Record({id:e.Opt(o),amount_e8s:e.Opt(e.Nat64)}),ue=e.Record({new_maturity_e8s:e.Opt(e.Nat64)}),le=e.Record({controller:e.Opt(e.Principal),dissolve_delay_seconds:e.Opt(e.Nat64),source_nns_neuron_id:e.Opt(e.Nat64),stake_e8s:e.Opt(e.Nat64),followees:e.Vec(o),hotkey:e.Opt(e.Principal),neuron_id:e.Opt(o)}),me=e.Record({neuron_parameters:e.Vec(le)}),Ne=e.Record({id:e.Opt(o),status:e.Int32}),Oe=e.Record({swap_neurons:e.Vec(Ne)}),Re=e.Variant({Ok:Oe,Err:e.Int32}),ge=e.Record({claim_swap_neurons_result:e.Opt(Re)}),ye=e.Record({maturity_modulation:e.Opt(a)}),fe=e.Record({url:e.Opt(e.Text),logo:e.Opt(e.Text),name:e.Opt(e.Text),description:e.Opt(e.Text)}),ve=e.Record({mode:e.Opt(e.Int32)}),Se=e.Record({neuron_id:e.Opt(o)}),$=e.Variant({Error:N,Neuron:f}),Pe=e.Record({result:e.Opt($)}),we=e.Record({proposal_id:e.Opt(u)}),Me=e.Variant({Error:N,Proposal:y}),Fe=e.Record({result:e.Opt(Me)}),ke=e.Variant({stopped:e.Null,stopping:e.Null,running:e.Null}),Ae=e.Record({freezing_threshold:e.Nat,controllers:e.Vec(e.Principal),memory_allocation:e.Nat,compute_allocation:e.Nat}),Ee=e.Record({status:ke,memory_size:e.Nat,cycles:e.Nat,settings:Ae,idle_cycles_burned_per_day:e.Nat,module_hash:e.Opt(e.Vec(e.Nat8))}),Ge=e.Record({deployed_version:e.Opt(m),pending_version:e.Opt(l)}),qe=e.Record({sns_initialization_parameters:e.Text}),Be=e.Record({reserved_ids:e.Vec(e.Nat64),functions:e.Vec(n)}),Ue=e.Record({of_principal:e.Opt(e.Principal),limit:e.Nat32,start_page_at:e.Opt(o)}),ze=e.Record({neurons:e.Vec(f)}),Qe=e.Record({include_reward_status:e.Vec(e.Int32),before_proposal:e.Opt(u),limit:e.Nat32,exclude_type:e.Vec(e.Nat64),include_status:e.Vec(e.Int32)}),We=e.Record({include_ballots_by_caller:e.Opt(e.Bool),proposals:e.Vec(y)}),je=e.Record({percentage_to_stake:e.Opt(e.Nat32)}),Ye=e.Variant({Split:h,Follow:k,DisburseMaturity:A,ClaimOrRefresh:B,Configure:E,RegisterVote:G,MakeProposal:P,StakeMaturity:je,RemoveNeuronPermissions:U,AddNeuronPermissions:b,MergeMaturity:z,Disburse:Q}),$e=e.Record({subaccount:e.Vec(e.Nat8),command:e.Opt(Ye)}),He=e.Record({created_neuron_id:e.Opt(o)}),Xe=e.Record({amount_disbursed_e8s:e.Nat64,amount_deducted_e8s:e.Opt(e.Nat64)}),Je=e.Record({refreshed_neuron_id:e.Opt(o)}),Ke=e.Record({maturity_e8s:e.Nat64,staked_maturity_e8s:e.Nat64}),Ze=e.Record({merged_maturity_e8s:e.Nat64,new_stake_e8s:e.Nat64}),Ie=e.Record({transfer_block_height:e.Nat64}),De=e.Variant({Error:N,Split:He,Follow:e.Record({}),DisburseMaturity:Xe,ClaimOrRefresh:Je,Configure:e.Record({}),RegisterVote:e.Record({}),MakeProposal:we,RemoveNeuronPermission:e.Record({}),StakeMaturity:Ke,MergeMaturity:Ze,Disburse:Ie,AddNeuronPermission:e.Record({})}),Ot=e.Record({command:e.Opt(De)}),Rt=e.Record({recipient:e.Opt(R),amount_e8s:e.Opt(e.Nat64)}),gt=e.Record({mode:e.Int32});return e.Service({add_maturity:e.Func([de],[ue],[]),claim_swap_neurons:e.Func([me],[ge],[]),fail_stuck_upgrade_in_progress:e.Func([e.Record({})],[e.Record({})],[]),get_build_metadata:e.Func([],[e.Text],["query"]),get_latest_reward_event:e.Func([],[g],["query"]),get_maturity_modulation:e.Func([e.Record({})],[ye],[]),get_metadata:e.Func([e.Record({})],[fe],["query"]),get_mode:e.Func([e.Record({})],[ve],["query"]),get_nervous_system_parameters:e.Func([e.Null],[i],["query"]),get_neuron:e.Func([Se],[Pe],["query"]),get_proposal:e.Func([we],[Fe],["query"]),get_root_canister_status:e.Func([e.Null],[Ee],[]),get_running_sns_version:e.Func([e.Record({})],[Ge],["query"]),get_sns_initialization_parameters:e.Func([e.Record({})],[qe],["query"]),list_nervous_system_functions:e.Func([],[Be],["query"]),list_neurons:e.Func([Ue],[ze],["query"]),list_proposals:e.Func([Qe],[We],["query"]),manage_neuron:e.Func([$e],[Ot],[]),mint_tokens:e.Func([Rt],[e.Record({})],[]),set_mode:e.Func([gt],[e.Record({})],[]),update_neuron:e.Func([f],[e.Opt(N)],[])})};var pt=class e extends he.Canister{constructor(){super(...arguments);this.addMaturity=async s=>{let{id:n,amountE8s:r}=s,{new_maturity_e8s:a}=await this.caller(s).add_maturity({id:(0,he.toNullable)(n),amount_e8s:(0,he.toNullable)(r)}),o=(0,he.fromNullable)(a);if((0,he.isNullish)(o)||o<r)throw new x("No maturity added")}}static create(s){let{service:n,certifiedService:r,canisterId:a}=(0,he.createServices)({options:s,idlFactory:It,certifiedIdlFactory:Zt});return new e(a,n,r)}};var dt=require("@dfinity/utils");var Dt=({IDL:e})=>{let t=e.Record({dapp_canister_ids:e.Vec(e.Principal),testflight:e.Bool,latest_ledger_archive_poll_timestamp_seconds:e.Opt(e.Nat64),archive_canister_ids:e.Vec(e.Principal),governance_canister_id:e.Opt(e.Principal),index_canister_id:e.Opt(e.Principal),swap_canister_id:e.Opt(e.Principal),ledger_canister_id:e.Opt(e.Principal)}),s=e.Record({canister_id:e.Principal}),n=e.Variant({stopped:e.Null,stopping:e.Null,running:e.Null}),r=e.Record({controllers:e.Vec(e.Principal)}),a=e.Record({status:n,memory_size:e.Nat,cycles:e.Nat,settings:r,module_hash:e.Opt(e.Vec(e.Nat8))}),o=e.Variant({reinstall:e.Null,upgrade:e.Null,install:e.Null}),c=e.Record({arg:e.Vec(e.Nat8),wasm_module:e.Vec(e.Nat8),stop_before_installing:e.Bool,mode:o,canister_id:e.Principal,query_allocation:e.Opt(e.Nat),memory_allocation:e.Opt(e.Nat),compute_allocation:e.Opt(e.Nat)}),d=e.Record({update_canister_list:e.Opt(e.Bool)}),p=e.Record({freezing_threshold:e.Nat,controllers:e.Vec(e.Principal),memory_allocation:e.Nat,compute_allocation:e.Nat}),O=e.Record({status:n,memory_size:e.Nat,cycles:e.Nat,settings:p,idle_cycles_burned_per_day:e.Nat,module_hash:e.Opt(e.Vec(e.Nat8))}),i=e.Record({status:e.Opt(O),canister_id:e.Opt(e.Principal)}),m=e.Record({root:e.Opt(i),swap:e.Opt(i),ledger:e.Opt(i),index:e.Opt(i),governance:e.Opt(i),dapps:e.Vec(i),archives:e.Vec(i)}),u=e.Record({root:e.Opt(e.Principal),swap:e.Opt(e.Principal),ledger:e.Opt(e.Principal),index:e.Opt(e.Principal),governance:e.Opt(e.Principal),dapps:e.Vec(e.Principal),archives:e.Vec(e.Principal)}),g=e.Record({canister_id:e.Opt(e.Principal)}),l=e.Record({canister_ids:e.Vec(e.Principal)}),N=e.Record({canister_ids:e.Opt(l),controller_principal_ids:e.Vec(e.Principal)}),C=e.Record({code:e.Opt(e.Int32),description:e.Text}),v=e.Record({err:e.Opt(C),dapp_canister_id:e.Opt(e.Principal)}),T=e.Record({failed_updates:e.Vec(v)});return e.Service({canister_status:e.Func([s],[a],[]),change_canister:e.Func([c],[],[]),get_build_metadata:e.Func([],[e.Text],[]),get_sns_canisters_summary:e.Func([d],[m],[]),list_sns_canisters:e.Func([e.Record({})],[u],[]),register_dapp_canister:e.Func([g],[e.Record({})],[]),register_dapp_canisters:e.Func([l],[e.Record({})],[]),set_dapp_controllers:e.Func([N],[T],[])})};var Lt=({IDL:e})=>{let t=e.Record({dapp_canister_ids:e.Vec(e.Principal),testflight:e.Bool,latest_ledger_archive_poll_timestamp_seconds:e.Opt(e.Nat64),archive_canister_ids:e.Vec(e.Principal),governance_canister_id:e.Opt(e.Principal),index_canister_id:e.Opt(e.Principal),swap_canister_id:e.Opt(e.Principal),ledger_canister_id:e.Opt(e.Principal)}),s=e.Record({canister_id:e.Principal}),n=e.Variant({stopped:e.Null,stopping:e.Null,running:e.Null}),r=e.Record({controllers:e.Vec(e.Principal)}),a=e.Record({status:n,memory_size:e.Nat,cycles:e.Nat,settings:r,module_hash:e.Opt(e.Vec(e.Nat8))}),o=e.Variant({reinstall:e.Null,upgrade:e.Null,install:e.Null}),c=e.Record({arg:e.Vec(e.Nat8),wasm_module:e.Vec(e.Nat8),stop_before_installing:e.Bool,mode:o,canister_id:e.Principal,query_allocation:e.Opt(e.Nat),memory_allocation:e.Opt(e.Nat),compute_allocation:e.Opt(e.Nat)}),d=e.Record({update_canister_list:e.Opt(e.Bool)}),p=e.Record({freezing_threshold:e.Nat,controllers:e.Vec(e.Principal),memory_allocation:e.Nat,compute_allocation:e.Nat}),O=e.Record({status:n,memory_size:e.Nat,cycles:e.Nat,settings:p,idle_cycles_burned_per_day:e.Nat,module_hash:e.Opt(e.Vec(e.Nat8))}),i=e.Record({status:e.Opt(O),canister_id:e.Opt(e.Principal)}),m=e.Record({root:e.Opt(i),swap:e.Opt(i),ledger:e.Opt(i),index:e.Opt(i),governance:e.Opt(i),dapps:e.Vec(i),archives:e.Vec(i)}),u=e.Record({root:e.Opt(e.Principal),swap:e.Opt(e.Principal),ledger:e.Opt(e.Principal),index:e.Opt(e.Principal),governance:e.Opt(e.Principal),dapps:e.Vec(e.Principal),archives:e.Vec(e.Principal)}),g=e.Record({canister_id:e.Opt(e.Principal)}),l=e.Record({canister_ids:e.Vec(e.Principal)}),N=e.Record({canister_ids:e.Opt(l),controller_principal_ids:e.Vec(e.Principal)}),C=e.Record({code:e.Opt(e.Int32),description:e.Text}),v=e.Record({err:e.Opt(C),dapp_canister_id:e.Opt(e.Principal)}),T=e.Record({failed_updates:e.Vec(v)});return e.Service({canister_status:e.Func([s],[a],[]),change_canister:e.Func([c],[],[]),get_build_metadata:e.Func([],[e.Text],["query"]),get_sns_canisters_summary:e.Func([d],[m],[]),list_sns_canisters:e.Func([e.Record({})],[u],["query"]),register_dapp_canister:e.Func([g],[e.Record({})],[]),register_dapp_canisters:e.Func([l],[e.Record({})],[]),set_dapp_controllers:e.Func([N],[T],[])})};var tt=class e extends dt.Canister{constructor(){super(...arguments);this.listSnsCanisters=async({certified:s=!0})=>this.caller({certified:s}).list_sns_canisters({})}static create(s){let{service:n,certifiedService:r,canisterId:a}=(0,dt.createServices)({options:s,idlFactory:Lt,certifiedIdlFactory:Dt});return new e(a,n,r)}};var Nt=require("@dfinity/ledger-icrc"),xe=require("@dfinity/utils");var ct=require("@dfinity/utils");var st=require("@dfinity/utils");function hs(e){return e instanceof Uint8Array||e!=null&&typeof e=="object"&&e.constructor.name==="Uint8Array"}function bs(e,...t){if(!hs(e))throw new Error("Expected Uint8Array");if(t.length>0&&!t.includes(e.length))throw new Error(`Expected Uint8Array of length ${t}, not of length=${e.length}`)}function vt(e,t=!0){if(e.destroyed)throw new Error("Hash instance has been destroyed");if(t&&e.finished)throw new Error("Hash#digest() has already been called")}function es(e,t){bs(e);let s=t.outputLen;if(e.length<s)throw new Error(`digestInto() expects output buffer of length at least ${s}`)}function xs(e){return e instanceof Uint8Array||e!=null&&typeof e=="object"&&e.constructor.name==="Uint8Array"}var lt=e=>new DataView(e.buffer,e.byteOffset,e.byteLength),be=(e,t)=>e<<32-t|e>>>t,ws=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!ws)throw new Error("Non little-endian hardware is not supported");function Ts(e){if(typeof e!="string")throw new Error(`utf8ToBytes expected string, got ${typeof e}`);return new Uint8Array(new TextEncoder().encode(e))}function St(e){if(typeof e=="string"&&(e=Ts(e)),!xs(e))throw new Error(`expected Uint8Array, got ${typeof e}`);return e}var ut=class{clone(){return this._cloneInto()}},un={}.toString;function ts(e){let t=n=>e().update(St(n)).digest(),s=e();return t.outputLen=s.outputLen,t.blockLen=s.blockLen,t.create=()=>e(),t}function Vs(e,t,s,n){if(typeof e.setBigUint64=="function")return e.setBigUint64(t,s,n);let r=BigInt(32),a=BigInt(4294967295),o=Number(s>>r&a),c=Number(s&a),d=n?4:0,p=n?0:4;e.setUint32(t+d,o,n),e.setUint32(t+p,c,n)}var mt=class extends ut{constructor(t,s,n,r){super(),this.blockLen=t,this.outputLen=s,this.padOffset=n,this.isLE=r,this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.buffer=new Uint8Array(t),this.view=lt(this.buffer)}update(t){vt(this);let{view:s,buffer:n,blockLen:r}=this;t=St(t);let a=t.length;for(let o=0;o<a;){let c=Math.min(r-this.pos,a-o);if(c===r){let d=lt(t);for(;r<=a-o;o+=r)this.process(d,o);continue}n.set(t.subarray(o,o+c),this.pos),this.pos+=c,o+=c,this.pos===r&&(this.process(s,0),this.pos=0)}return this.length+=t.length,this.roundClean(),this}digestInto(t){vt(this),es(t,this),this.finished=!0;let{buffer:s,view:n,blockLen:r,isLE:a}=this,{pos:o}=this;s[o++]=128,this.buffer.subarray(o).fill(0),this.padOffset>r-o&&(this.process(n,0),o=0);for(let i=o;i<r;i++)s[i]=0;Vs(n,r-8,BigInt(this.length*8),a),this.process(n,0);let c=lt(t),d=this.outputLen;if(d%4)throw new Error("_sha2: outputLen should be aligned to 32bit");let p=d/4,O=this.get();if(p>O.length)throw new Error("_sha2: outputLen bigger than state");for(let i=0;i<p;i++)c.setUint32(4*i,O[i],a)}digest(){let{buffer:t,outputLen:s}=this;this.digestInto(t);let n=t.slice(0,s);return this.destroy(),n}_cloneInto(t){t||(t=new this.constructor),t.set(...this.get());let{blockLen:s,buffer:n,length:r,finished:a,destroyed:o,pos:c}=this;return t.length=r,t.pos=c,t.finished=a,t.destroyed=o,r%s&&t.buffer.set(n),t}};var Cs=(e,t,s)=>e&t^~e&s,Ms=(e,t,s)=>e&t^e&s^t&s,Fs=new Uint32Array([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),Te=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),Ve=new Uint32Array(64),Pt=class extends mt{constructor(){super(64,32,8,!1),this.A=Te[0]|0,this.B=Te[1]|0,this.C=Te[2]|0,this.D=Te[3]|0,this.E=Te[4]|0,this.F=Te[5]|0,this.G=Te[6]|0,this.H=Te[7]|0}get(){let{A:t,B:s,C:n,D:r,E:a,F:o,G:c,H:d}=this;return[t,s,n,r,a,o,c,d]}set(t,s,n,r,a,o,c,d){this.A=t|0,this.B=s|0,this.C=n|0,this.D=r|0,this.E=a|0,this.F=o|0,this.G=c|0,this.H=d|0}process(t,s){for(let i=0;i<16;i++,s+=4)Ve[i]=t.getUint32(s,!1);for(let i=16;i<64;i++){let m=Ve[i-15],u=Ve[i-2],g=be(m,7)^be(m,18)^m>>>3,l=be(u,17)^be(u,19)^u>>>10;Ve[i]=l+Ve[i-7]+g+Ve[i-16]|0}let{A:n,B:r,C:a,D:o,E:c,F:d,G:p,H:O}=this;for(let i=0;i<64;i++){let m=be(c,6)^be(c,11)^be(c,25),u=O+m+Cs(c,d,p)+Fs[i]+Ve[i]|0,l=(be(n,2)^be(n,13)^be(n,22))+Ms(n,r,a)|0;O=p,p=d,d=c,c=o+u|0,o=a,a=r,r=n,n=u+l|0}n=n+this.A|0,r=r+this.B|0,a=a+this.C|0,o=o+this.D|0,c=c+this.E|0,d=d+this.F|0,p=p+this.G|0,O=O+this.H|0,this.set(n,r,a,o,c,d,p,O)}roundClean(){Ve.fill(0)}destroy(){this.set(0,0,0,0,0,0,0,0),this.buffer.fill(0)}};var ss=ts(()=>new Pt);var ht=({index:e,controller:t})=>{let n=[12,...(0,st.asciiStringToByteArray)("neuron-stake"),...t.toUint8Array(),...(0,st.numberToUint8Array)(e)],r=ss.create();return r.update((0,st.arrayOfNumberToUint8Array)(n)),r.digest()};var _t=class{constructor({root:t,governance:s,ledger:n,swap:r,index:a,certified:o}){this.listNeurons=t=>this.governance.listNeurons(this.mergeParams(t));this.listProposals=t=>this.governance.listProposals(this.mergeParams(t));this.getProposal=t=>this.governance.getProposal(this.mergeParams(t));this.listNervousSystemFunctions=t=>this.governance.listNervousSystemFunctions(this.mergeParams(t));this.metadata=t=>Promise.all([this.governance.metadata(this.mergeParams(t)),this.ledger.metadata(this.mergeParams(t))]);this.nervousSystemParameters=t=>this.governance.nervousSystemParameters(this.mergeParams(t));this.ledgerMetadata=t=>this.ledger.metadata(this.mergeParams(t));this.transactionFee=t=>this.ledger.transactionFee(this.mergeParams(t));this.totalTokensSupply=t=>this.ledger.totalTokensSupply(this.mergeParams(t));this.balance=t=>this.ledger.balance(this.mergeParams(t));this.transfer=t=>this.ledger.transfer(t);this.getNeuron=t=>this.governance.getNeuron(this.mergeParams(t));this.queryNeuron=t=>this.governance.queryNeuron(this.mergeParams(t));this.nextNeuronAccount=async t=>{for(let s=0;s<65536;s++){let n=ht({index:s,controller:t}),r={id:n},a=await this.governance.queryNeuron({neuronId:r,certified:!1});if(a===void 0&&(a=await this.governance.queryNeuron({neuronId:r,certified:!0}),a===void 0))return{account:{...this.owner,subaccount:n},index:BigInt(s)}}throw new x("No more neuron accounts available")};this.stakeNeuron=async({stakeE8s:t,source:s,controller:n,createdAt:r,fee:a})=>{this.assertCertified("stakeNeuron");let{account:o,index:c}=await this.nextNeuronAccount(n);if(o.subaccount===void 0)throw new x("There was an error creating the neuron subaccount");return await this.ledger.transfer({amount:t,to:{owner:o.owner,subaccount:(0,ct.toNullable)(o.subaccount)},from_subaccount:s.subaccount,memo:(0,ct.bigIntToUint8Array)(c),created_at_time:r,fee:a}),this.governance.claimNeuron({memo:BigInt(c),controller:n,subaccount:o.subaccount})};this.increaseStakeNeuron=async({stakeE8s:t,source:s,neuronId:n})=>(this.assertCertified("stakeNeuron"),await this.ledger.transfer({amount:t,to:{...this.owner,subaccount:(0,ct.toNullable)(Uint8Array.from(n.id))},from_subaccount:s.subaccount}),this.governance.refreshNeuron(n));this.getNeuronBalance=async t=>{let s={...this.owner,subaccount:Uint8Array.from(t.id)};return this.ledger.balance({...s,certified:this.certified})};this.addNeuronPermissions=t=>this.governance.addNeuronPermissions(t);this.refreshNeuron=t=>this.governance.refreshNeuron(t);this.claimNeuron=t=>this.governance.claimNeuron(t);this.removeNeuronPermissions=t=>this.governance.removeNeuronPermissions(t);this.splitNeuron=t=>this.governance.splitNeuron(t);this.disburse=t=>this.governance.disburse(t);this.startDissolving=t=>this.governance.startDissolving(t);this.stopDissolving=t=>this.governance.stopDissolving(t);this.setDissolveTimestamp=t=>this.governance.setDissolveTimestamp(t);this.increaseDissolveDelay=t=>this.governance.increaseDissolveDelay(t);this.setTopicFollowees=t=>this.governance.setTopicFollowees(t);this.registerVote=async t=>this.governance.registerVote(t);this.swapState=t=>this.swap.state(this.mergeParams(t));this.notifyPaymentFailure=()=>this.swap.notifyPaymentFailure();this.notifyParticipation=t=>this.swap.notifyParticipation(t);this.getUserCommitment=t=>this.swap.getUserCommitment(this.mergeParams(t));this.getOpenTicket=t=>this.swap.getOpenTicket(this.mergeParams(t));this.newSaleTicket=t=>this.swap.newSaleTicket(t);this.getLifecycle=t=>this.swap.getLifecycle(this.mergeParams(t));this.getFinalizationStatus=t=>this.swap.getFinalizationStatus(this.mergeParams(t));this.getSaleParameters=t=>this.swap.getSaleParameters(this.mergeParams(t));this.getDerivedState=t=>this.swap.getDerivedState(this.mergeParams(t));this.getTransactions=t=>this.index.getTransactions(t);this.stakeMaturity=t=>this.governance.stakeMaturity(t);this.disburseMaturity=t=>this.governance.disburseMaturity(t);this.autoStakeMaturity=t=>this.governance.autoStakeMaturity(t);this.assertCertified=t=>{if(!this.certified)throw new x(`Call to ${t} needs to be certified`)};this.root=t,this.governance=s,this.ledger=n,this.swap=r,this.index=a,this.certified=o}get canisterIds(){return{rootCanisterId:this.root.canisterId,ledgerCanisterId:this.ledger.canisterId,governanceCanisterId:this.governance.canisterId,swapCanisterId:this.swap.canisterId,indexCanisterId:this.index.canisterId}}mergeParams(t){return{...t,certified:this.certified}}get owner(){return{owner:this.canisterIds.governanceCanisterId}}};var W=require("@dfinity/utils");var ns=({IDL:e})=>{let t=e.Record({dissolve_delay_interval_seconds:e.Nat64,count:e.Nat64}),s=e.Record({slope_numerator:e.Opt(e.Nat64),intercept_icp_e8s:e.Opt(e.Nat64),from_direct_participation_icp_e8s:e.Opt(e.Nat64),slope_denominator:e.Opt(e.Nat64),to_direct_participation_icp_e8s:e.Opt(e.Nat64)}),n=e.Record({serialized_representation:e.Opt(e.Text)}),r=e.Record({coefficient_intervals:e.Vec(s),max_neurons_fund_participation_icp_e8s:e.Opt(e.Nat64),min_direct_participation_threshold_icp_e8s:e.Opt(e.Nat64),ideal_matched_participation_function:e.Opt(n)}),a=e.Record({has_created_neuron_recipes:e.Opt(e.Bool),nns_neuron_id:e.Nat64,amount_icp_e8s:e.Nat64}),o=e.Record({hotkey_principal:e.Text,cf_neurons:e.Vec(a)}),c=e.Record({cf_participants:e.Vec(o)}),d=e.Record({iso_codes:e.Vec(e.Text)}),p=e.Record({nns_proposal_id:e.Opt(e.Nat64),sns_root_canister_id:e.Text,neurons_fund_participation:e.Opt(e.Bool),min_participant_icp_e8s:e.Opt(e.Nat64),neuron_basket_construction_parameters:e.Opt(t),fallback_controller_principal_ids:e.Vec(e.Text),max_icp_e8s:e.Opt(e.Nat64),neuron_minimum_stake_e8s:e.Opt(e.Nat64),confirmation_text:e.Opt(e.Text),swap_start_timestamp_seconds:e.Opt(e.Nat64),swap_due_timestamp_seconds:e.Opt(e.Nat64),min_participants:e.Opt(e.Nat32),sns_token_e8s:e.Opt(e.Nat64),nns_governance_canister_id:e.Text,transaction_fee_e8s:e.Opt(e.Nat64),icp_ledger_canister_id:e.Text,sns_ledger_canister_id:e.Text,neurons_fund_participation_constraints:e.Opt(r),neurons_fund_participants:e.Opt(c),should_auto_finalize:e.Opt(e.Bool),max_participant_icp_e8s:e.Opt(e.Nat64),sns_governance_canister_id:e.Text,min_direct_participation_icp_e8s:e.Opt(e.Nat64),restricted_countries:e.Opt(d),min_icp_e8s:e.Opt(e.Nat64),max_direct_participation_icp_e8s:e.Opt(e.Nat64)}),O=e.Record({source_principal_id:e.Opt(e.Principal)}),i=e.Record({block_height:e.Opt(e.Nat64)}),m=e.Record({description:e.Opt(e.Text),error_type:e.Opt(e.Int32)}),u=e.Variant({Ok:i,Err:m}),g=e.Record({result:e.Opt(u)}),l=e.Record({code:e.Opt(e.Int32),description:e.Text}),N=e.Record({err:e.Opt(l),dapp_canister_id:e.Opt(e.Principal)}),C=e.Record({failed_updates:e.Vec(N)}),v=e.Variant({Ok:C,Err:l}),T=e.Record({possibility:e.Opt(v)}),V=e.Record({failure:e.Nat32,skipped:e.Nat32,invalid:e.Nat32,success:e.Nat32,global_failures:e.Nat32}),H=e.Record({error_message:e.Text,error_type:e.Int32}),S=e.Record({governance_error:e.Opt(H)}),X=e.Variant({Ok:S,Err:l}),J=e.Record({possibility:e.Opt(X)}),K=e.Record({neurons_fund_participation_icp_e8s:e.Opt(e.Nat64),neurons_fund_neurons_count:e.Opt(e.Nat64)}),Z=e.Record({message:e.Opt(e.Text)}),M=e.Variant({Ok:K,Err:Z}),I=e.Record({possibility:e.Opt(M)}),D=e.Variant({Ok:e.Record({}),Err:l}),L=e.Record({possibility:e.Opt(D)}),F=e.Record({set_dapp_controllers_call_result:e.Opt(T),create_sns_neuron_recipes_result:e.Opt(V),settle_community_fund_participation_result:e.Opt(J),error_message:e.Opt(e.Text),settle_neurons_fund_participation_result:e.Opt(I),set_mode_call_result:e.Opt(L),sweep_icp_result:e.Opt(V),claim_neuron_result:e.Opt(V),sweep_sns_result:e.Opt(V)}),P=e.Record({auto_finalize_swap_response:e.Opt(F),has_auto_finalize_been_attempted:e.Opt(e.Bool),is_auto_finalize_enabled:e.Opt(e.Bool)}),ee=e.Record({principal_id:e.Opt(e.Principal)}),y=e.Record({transfer_fee_paid_e8s:e.Opt(e.Nat64),transfer_start_timestamp_seconds:e.Nat64,amount_e8s:e.Nat64,amount_transferred_e8s:e.Opt(e.Nat64),transfer_success_timestamp_seconds:e.Nat64}),h=e.Record({icp:e.Opt(y),has_created_neuron_recipes:e.Opt(e.Bool)}),k=e.Record({buyer_state:e.Opt(h)}),R=e.Record({buyers_total:e.Nat64}),A=e.Variant({stopped:e.Null,stopping:e.Null,running:e.Null}),te=e.Record({freezing_threshold:e.Nat,controllers:e.Vec(e.Principal),memory_allocation:e.Nat,compute_allocation:e.Nat}),se=e.Record({status:A,memory_size:e.Nat,cycles:e.Nat,settings:te,idle_cycles_burned_per_day:e.Nat,module_hash:e.Opt(e.Vec(e.Nat8))}),ne=e.Record({sns_tokens_per_icp:e.Opt(e.Float64),buyer_total_icp_e8s:e.Opt(e.Nat64),cf_participant_count:e.Opt(e.Nat64),neurons_fund_participation_icp_e8s:e.Opt(e.Nat64),direct_participation_icp_e8s:e.Opt(e.Nat64),direct_participant_count:e.Opt(e.Nat64),cf_neuron_count:e.Opt(e.Nat64)}),oe=e.Record({init:e.Opt(p)}),E=e.Record({decentralization_sale_open_timestamp_seconds:e.Opt(e.Nat64),lifecycle:e.Opt(e.Int32),decentralization_swap_termination_timestamp_seconds:e.Opt(e.Nat64)}),G=e.Record({owner:e.Opt(e.Principal),subaccount:e.Opt(e.Vec(e.Nat8))}),j=e.Record({creation_time:e.Nat64,ticket_id:e.Nat64,account:e.Opt(G),amount_icp_e8s:e.Nat64}),q=e.Record({ticket:e.Opt(j)}),re=e.Record({error_type:e.Opt(e.Int32)}),B=e.Variant({Ok:q,Err:re}),U=e.Record({result:e.Opt(B)}),b=e.Record({min_participant_icp_e8s:e.Nat64,neuron_basket_construction_parameters:e.Opt(t),max_icp_e8s:e.Nat64,swap_due_timestamp_seconds:e.Nat64,min_participants:e.Nat32,sns_token_e8s:e.Nat64,sale_delay_seconds:e.Opt(e.Nat64),max_participant_icp_e8s:e.Nat64,min_direct_participation_icp_e8s:e.Opt(e.Nat64),min_icp_e8s:e.Nat64,max_direct_participation_icp_e8s:e.Opt(e.Nat64)}),z=e.Record({params:e.Opt(b)}),ae=e.Record({id:e.Vec(e.Nat8)}),Q=e.Record({dissolve_delay_seconds:e.Nat64,memo:e.Nat64,followees:e.Vec(ae)}),ie=e.Record({hotkey_principal:e.Text,nns_neuron_id:e.Nat64}),ce=e.Record({buyer_principal:e.Text}),_e=e.Variant({CommunityFund:ie,Direct:ce}),Y=e.Record({sns:e.Opt(y),claimed_status:e.Opt(e.Int32),neuron_attributes:e.Opt(Q),investor:e.Opt(_e)}),pe=e.Record({auto_finalize_swap_response:e.Opt(F),neuron_recipes:e.Vec(Y),next_ticket_id:e.Opt(e.Nat64),decentralization_sale_open_timestamp_seconds:e.Opt(e.Nat64),finalize_swap_in_progress:e.Opt(e.Bool),cf_participants:e.Vec(o),init:e.Opt(p),already_tried_to_auto_finalize:e.Opt(e.Bool),neurons_fund_participation_icp_e8s:e.Opt(e.Nat64),purge_old_tickets_last_completion_timestamp_nanoseconds:e.Opt(e.Nat64),direct_participation_icp_e8s:e.Opt(e.Nat64),lifecycle:e.Int32,purge_old_tickets_next_principal:e.Opt(e.Vec(e.Nat8)),decentralization_swap_termination_timestamp_seconds:e.Opt(e.Nat64),buyers:e.Vec(e.Tuple(e.Text,h)),params:e.Opt(b),open_sns_token_swap_proposal_id:e.Opt(e.Nat64)}),f=e.Record({sns_tokens_per_icp:e.Float32,buyer_total_icp_e8s:e.Nat64,cf_participant_count:e.Opt(e.Nat64),neurons_fund_participation_icp_e8s:e.Opt(e.Nat64),direct_participation_icp_e8s:e.Opt(e.Nat64),direct_participant_count:e.Opt(e.Nat64),cf_neuron_count:e.Opt(e.Nat64)}),Ce=e.Record({swap:e.Opt(pe),derived:e.Opt(f)}),de=e.Record({offset:e.Opt(e.Nat64),limit:e.Opt(e.Nat32)}),ue=e.Record({offset:e.Opt(e.Nat32),limit:e.Opt(e.Nat32)}),le=e.Record({participation:e.Opt(h),participant_id:e.Opt(e.Principal)}),me=e.Record({participants:e.Vec(le)}),Ne=e.Record({offset:e.Opt(e.Nat64),limit:e.Opt(e.Nat32)}),Oe=e.Record({sns_neuron_recipes:e.Vec(Y)}),Re=e.Record({subaccount:e.Opt(e.Vec(e.Nat8)),amount_icp_e8s:e.Nat64}),ge=e.Record({min_amount_icp_e8s_included:e.Nat64,max_amount_icp_e8s_included:e.Nat64}),ye=e.Record({invalid_user_amount:e.Opt(ge),existing_ticket:e.Opt(j),error_type:e.Int32}),fe=e.Variant({Ok:q,Err:ye}),ve=e.Record({result:e.Opt(fe)}),Se=e.Record({cf_participants:e.Vec(o),params:e.Opt(b),open_sns_token_swap_proposal_id:e.Opt(e.Nat64)}),$=e.Record({confirmation_text:e.Opt(e.Text),buyer:e.Text}),Pe=e.Record({icp_accepted_participation_e8s:e.Nat64,icp_ledger_account_balance_e8s:e.Nat64});return e.Service({error_refund_icp:e.Func([O],[g],[]),finalize_swap:e.Func([e.Record({})],[F],[]),get_auto_finalization_status:e.Func([e.Record({})],[P],[]),get_buyer_state:e.Func([ee],[k],[]),get_buyers_total:e.Func([e.Record({})],[R],[]),get_canister_status:e.Func([e.Record({})],[se],[]),get_derived_state:e.Func([e.Record({})],[ne],[]),get_init:e.Func([e.Record({})],[oe],[]),get_lifecycle:e.Func([e.Record({})],[E],[]),get_open_ticket:e.Func([e.Record({})],[U],[]),get_sale_parameters:e.Func([e.Record({})],[z],[]),get_state:e.Func([e.Record({})],[Ce],[]),list_community_fund_participants:e.Func([de],[c],[]),list_direct_participants:e.Func([ue],[me],[]),list_sns_neuron_recipes:e.Func([Ne],[Oe],[]),new_sale_ticket:e.Func([Re],[ve],[]),notify_payment_failure:e.Func([e.Record({})],[q],[]),open:e.Func([Se],[e.Record({})],[]),refresh_buyer_tokens:e.Func([$],[Pe],[]),restore_dapp_controllers:e.Func([e.Record({})],[T],[])})};var os=({IDL:e})=>{let t=e.Record({dissolve_delay_interval_seconds:e.Nat64,count:e.Nat64}),s=e.Record({slope_numerator:e.Opt(e.Nat64),intercept_icp_e8s:e.Opt(e.Nat64),from_direct_participation_icp_e8s:e.Opt(e.Nat64),slope_denominator:e.Opt(e.Nat64),to_direct_participation_icp_e8s:e.Opt(e.Nat64)}),n=e.Record({serialized_representation:e.Opt(e.Text)}),r=e.Record({coefficient_intervals:e.Vec(s),max_neurons_fund_participation_icp_e8s:e.Opt(e.Nat64),min_direct_participation_threshold_icp_e8s:e.Opt(e.Nat64),ideal_matched_participation_function:e.Opt(n)}),a=e.Record({has_created_neuron_recipes:e.Opt(e.Bool),nns_neuron_id:e.Nat64,amount_icp_e8s:e.Nat64}),o=e.Record({hotkey_principal:e.Text,cf_neurons:e.Vec(a)}),c=e.Record({cf_participants:e.Vec(o)}),d=e.Record({iso_codes:e.Vec(e.Text)}),p=e.Record({nns_proposal_id:e.Opt(e.Nat64),sns_root_canister_id:e.Text,neurons_fund_participation:e.Opt(e.Bool),min_participant_icp_e8s:e.Opt(e.Nat64),neuron_basket_construction_parameters:e.Opt(t),fallback_controller_principal_ids:e.Vec(e.Text),max_icp_e8s:e.Opt(e.Nat64),neuron_minimum_stake_e8s:e.Opt(e.Nat64),confirmation_text:e.Opt(e.Text),swap_start_timestamp_seconds:e.Opt(e.Nat64),swap_due_timestamp_seconds:e.Opt(e.Nat64),min_participants:e.Opt(e.Nat32),sns_token_e8s:e.Opt(e.Nat64),nns_governance_canister_id:e.Text,transaction_fee_e8s:e.Opt(e.Nat64),icp_ledger_canister_id:e.Text,sns_ledger_canister_id:e.Text,neurons_fund_participation_constraints:e.Opt(r),neurons_fund_participants:e.Opt(c),should_auto_finalize:e.Opt(e.Bool),max_participant_icp_e8s:e.Opt(e.Nat64),sns_governance_canister_id:e.Text,min_direct_participation_icp_e8s:e.Opt(e.Nat64),restricted_countries:e.Opt(d),min_icp_e8s:e.Opt(e.Nat64),max_direct_participation_icp_e8s:e.Opt(e.Nat64)}),O=e.Record({source_principal_id:e.Opt(e.Principal)}),i=e.Record({block_height:e.Opt(e.Nat64)}),m=e.Record({description:e.Opt(e.Text),error_type:e.Opt(e.Int32)}),u=e.Variant({Ok:i,Err:m}),g=e.Record({result:e.Opt(u)}),l=e.Record({code:e.Opt(e.Int32),description:e.Text}),N=e.Record({err:e.Opt(l),dapp_canister_id:e.Opt(e.Principal)}),C=e.Record({failed_updates:e.Vec(N)}),v=e.Variant({Ok:C,Err:l}),T=e.Record({possibility:e.Opt(v)}),V=e.Record({failure:e.Nat32,skipped:e.Nat32,invalid:e.Nat32,success:e.Nat32,global_failures:e.Nat32}),H=e.Record({error_message:e.Text,error_type:e.Int32}),S=e.Record({governance_error:e.Opt(H)}),X=e.Variant({Ok:S,Err:l}),J=e.Record({possibility:e.Opt(X)}),K=e.Record({neurons_fund_participation_icp_e8s:e.Opt(e.Nat64),neurons_fund_neurons_count:e.Opt(e.Nat64)}),Z=e.Record({message:e.Opt(e.Text)}),M=e.Variant({Ok:K,Err:Z}),I=e.Record({possibility:e.Opt(M)}),D=e.Variant({Ok:e.Record({}),Err:l}),L=e.Record({possibility:e.Opt(D)}),F=e.Record({set_dapp_controllers_call_result:e.Opt(T),create_sns_neuron_recipes_result:e.Opt(V),settle_community_fund_participation_result:e.Opt(J),error_message:e.Opt(e.Text),settle_neurons_fund_participation_result:e.Opt(I),set_mode_call_result:e.Opt(L),sweep_icp_result:e.Opt(V),claim_neuron_result:e.Opt(V),sweep_sns_result:e.Opt(V)}),P=e.Record({auto_finalize_swap_response:e.Opt(F),has_auto_finalize_been_attempted:e.Opt(e.Bool),is_auto_finalize_enabled:e.Opt(e.Bool)}),ee=e.Record({principal_id:e.Opt(e.Principal)}),y=e.Record({transfer_fee_paid_e8s:e.Opt(e.Nat64),transfer_start_timestamp_seconds:e.Nat64,amount_e8s:e.Nat64,amount_transferred_e8s:e.Opt(e.Nat64),transfer_success_timestamp_seconds:e.Nat64}),h=e.Record({icp:e.Opt(y),has_created_neuron_recipes:e.Opt(e.Bool)}),k=e.Record({buyer_state:e.Opt(h)}),R=e.Record({buyers_total:e.Nat64}),A=e.Variant({stopped:e.Null,stopping:e.Null,running:e.Null}),te=e.Record({freezing_threshold:e.Nat,controllers:e.Vec(e.Principal),memory_allocation:e.Nat,compute_allocation:e.Nat}),se=e.Record({status:A,memory_size:e.Nat,cycles:e.Nat,settings:te,idle_cycles_burned_per_day:e.Nat,module_hash:e.Opt(e.Vec(e.Nat8))}),ne=e.Record({sns_tokens_per_icp:e.Opt(e.Float64),buyer_total_icp_e8s:e.Opt(e.Nat64),cf_participant_count:e.Opt(e.Nat64),neurons_fund_participation_icp_e8s:e.Opt(e.Nat64),direct_participation_icp_e8s:e.Opt(e.Nat64),direct_participant_count:e.Opt(e.Nat64),cf_neuron_count:e.Opt(e.Nat64)}),oe=e.Record({init:e.Opt(p)}),E=e.Record({decentralization_sale_open_timestamp_seconds:e.Opt(e.Nat64),lifecycle:e.Opt(e.Int32),decentralization_swap_termination_timestamp_seconds:e.Opt(e.Nat64)}),G=e.Record({owner:e.Opt(e.Principal),subaccount:e.Opt(e.Vec(e.Nat8))}),j=e.Record({creation_time:e.Nat64,ticket_id:e.Nat64,account:e.Opt(G),amount_icp_e8s:e.Nat64}),q=e.Record({ticket:e.Opt(j)}),re=e.Record({error_type:e.Opt(e.Int32)}),B=e.Variant({Ok:q,Err:re}),U=e.Record({result:e.Opt(B)}),b=e.Record({min_participant_icp_e8s:e.Nat64,neuron_basket_construction_parameters:e.Opt(t),max_icp_e8s:e.Nat64,swap_due_timestamp_seconds:e.Nat64,min_participants:e.Nat32,sns_token_e8s:e.Nat64,sale_delay_seconds:e.Opt(e.Nat64),max_participant_icp_e8s:e.Nat64,min_direct_participation_icp_e8s:e.Opt(e.Nat64),min_icp_e8s:e.Nat64,max_direct_participation_icp_e8s:e.Opt(e.Nat64)}),z=e.Record({params:e.Opt(b)}),ae=e.Record({id:e.Vec(e.Nat8)}),Q=e.Record({dissolve_delay_seconds:e.Nat64,memo:e.Nat64,followees:e.Vec(ae)}),ie=e.Record({hotkey_principal:e.Text,nns_neuron_id:e.Nat64}),ce=e.Record({buyer_principal:e.Text}),_e=e.Variant({CommunityFund:ie,Direct:ce}),Y=e.Record({sns:e.Opt(y),claimed_status:e.Opt(e.Int32),neuron_attributes:e.Opt(Q),investor:e.Opt(_e)}),pe=e.Record({auto_finalize_swap_response:e.Opt(F),neuron_recipes:e.Vec(Y),next_ticket_id:e.Opt(e.Nat64),decentralization_sale_open_timestamp_seconds:e.Opt(e.Nat64),finalize_swap_in_progress:e.Opt(e.Bool),cf_participants:e.Vec(o),init:e.Opt(p),already_tried_to_auto_finalize:e.Opt(e.Bool),neurons_fund_participation_icp_e8s:e.Opt(e.Nat64),purge_old_tickets_last_completion_timestamp_nanoseconds:e.Opt(e.Nat64),direct_participation_icp_e8s:e.Opt(e.Nat64),lifecycle:e.Int32,purge_old_tickets_next_principal:e.Opt(e.Vec(e.Nat8)),decentralization_swap_termination_timestamp_seconds:e.Opt(e.Nat64),buyers:e.Vec(e.Tuple(e.Text,h)),params:e.Opt(b),open_sns_token_swap_proposal_id:e.Opt(e.Nat64)}),f=e.Record({sns_tokens_per_icp:e.Float32,buyer_total_icp_e8s:e.Nat64,cf_participant_count:e.Opt(e.Nat64),neurons_fund_participation_icp_e8s:e.Opt(e.Nat64),direct_participation_icp_e8s:e.Opt(e.Nat64),direct_participant_count:e.Opt(e.Nat64),cf_neuron_count:e.Opt(e.Nat64)}),Ce=e.Record({swap:e.Opt(pe),derived:e.Opt(f)}),de=e.Record({offset:e.Opt(e.Nat64),limit:e.Opt(e.Nat32)}),ue=e.Record({offset:e.Opt(e.Nat32),limit:e.Opt(e.Nat32)}),le=e.Record({participation:e.Opt(h),participant_id:e.Opt(e.Principal)}),me=e.Record({participants:e.Vec(le)}),Ne=e.Record({offset:e.Opt(e.Nat64),limit:e.Opt(e.Nat32)}),Oe=e.Record({sns_neuron_recipes:e.Vec(Y)}),Re=e.Record({subaccount:e.Opt(e.Vec(e.Nat8)),amount_icp_e8s:e.Nat64}),ge=e.Record({min_amount_icp_e8s_included:e.Nat64,max_amount_icp_e8s_included:e.Nat64}),ye=e.Record({invalid_user_amount:e.Opt(ge),existing_ticket:e.Opt(j),error_type:e.Int32}),fe=e.Variant({Ok:q,Err:ye}),ve=e.Record({result:e.Opt(fe)}),Se=e.Record({cf_participants:e.Vec(o),params:e.Opt(b),open_sns_token_swap_proposal_id:e.Opt(e.Nat64)}),$=e.Record({confirmation_text:e.Opt(e.Text),buyer:e.Text}),Pe=e.Record({icp_accepted_participation_e8s:e.Nat64,icp_ledger_account_balance_e8s:e.Nat64});return e.Service({error_refund_icp:e.Func([O],[g],[]),finalize_swap:e.Func([e.Record({})],[F],[]),get_auto_finalization_status:e.Func([e.Record({})],[P],["query"]),get_buyer_state:e.Func([ee],[k],["query"]),get_buyers_total:e.Func([e.Record({})],[R],[]),get_canister_status:e.Func([e.Record({})],[se],[]),get_derived_state:e.Func([e.Record({})],[ne],["query"]),get_init:e.Func([e.Record({})],[oe],["query"]),get_lifecycle:e.Func([e.Record({})],[E],["query"]),get_open_ticket:e.Func([e.Record({})],[U],["query"]),get_sale_parameters:e.Func([e.Record({})],[z],["query"]),get_state:e.Func([e.Record({})],[Ce],["query"]),list_community_fund_participants:e.Func([de],[c],["query"]),list_direct_participants:e.Func([ue],[me],["query"]),list_sns_neuron_recipes:e.Func([Ne],[Oe],["query"]),new_sale_ticket:e.Func([Re],[ve],[]),notify_payment_failure:e.Func([e.Record({})],[q],[]),open:e.Func([Se],[e.Record({})],[]),refresh_buyer_tokens:e.Func([$],[Pe],[]),restore_dapp_controllers:e.Func([e.Record({})],[T],[])})};var rs=({subaccount:e,amount_icp_e8s:t})=>({subaccount:e===void 0?[]:[e],amount_icp_e8s:t});var as=require("@dfinity/utils"),is=e=>{if(typeof e=="object"&&(0,as.nonNullish)(e)&&"message"in e){let t=e.message;return t.includes("has no update method")||t.includes("has no query method")}return!1};var nt=class e extends W.Canister{constructor(){super(...arguments);this.state=s=>this.caller(s).get_state({});this.notifyPaymentFailure=async()=>{let{ticket:s}=await this.caller({certified:!0}).notify_payment_failure({});return(0,W.fromNullable)(s)};this.notifyParticipation=async s=>await this.caller({certified:!0}).refresh_buyer_tokens(s);this.getUserCommitment=async s=>{let{buyer_state:n}=await this.caller({certified:s.certified}).get_buyer_state({principal_id:s.principal_id});return(0,W.fromNullable)(n)};this.getDerivedState=async({certified:s})=>this.caller({certified:s}).get_derived_state({});this.getSaleParameters=async({certified:s})=>this.caller({certified:s}).get_sale_parameters({});this.getOpenTicket=async s=>{var o;let{result:n}=await this.caller({certified:s.certified}).get_open_ticket({}),r=(0,W.fromDefinedNullable)(n);if("Ok"in r)return(0,W.fromNullable)(r.Ok.ticket);let a=(0,W.fromDefinedNullable)((o=r==null?void 0:r.Err)==null?void 0:o.error_type);throw new it(a)};this.newSaleTicket=async s=>{let n=rs(s),{result:r}=await this.caller({certified:!0}).new_sale_ticket(n),a=(0,W.fromDefinedNullable)(r);if("Ok"in a)return(0,W.fromDefinedNullable)(a.Ok.ticket);let o=a.Err;throw new at({errorType:o.error_type,invalidUserAmount:(0,W.fromNullable)(o.invalid_user_amount??[]),existingTicket:(0,W.fromNullable)(o.existing_ticket??[])})};this.getLifecycle=async s=>this.caller(s).get_lifecycle({});this.getFinalizationStatus=async s=>{try{return await this.caller(s).get_auto_finalization_status({})}catch(n){throw is(n)?new rt("getFinalizationStatus"):n}}}static create(s){let{service:n,certifiedService:r,canisterId:a}=(0,W.createServices)({options:s,idlFactory:os,certifiedIdlFactory:ns});return new e(a,n,r)}};var As=async({agent:e,rootOptions:t,certified:s=!0})=>{let n=tt.create({...t,agent:e}),{ledger:r,swap:a,governance:o,index:c}=await n.listSnsCanisters({certified:s}),d=(0,xe.fromNullable)(o),p=(0,xe.fromNullable)(r),O=(0,xe.fromNullable)(a),i=(0,xe.fromNullable)(c);return(0,xe.assertNonNullish)(d),(0,xe.assertNonNullish)(p),(0,xe.assertNonNullish)(O),(0,xe.assertNonNullish)(i),new _t({root:n,governance:et.create({canisterId:d,agent:e}),ledger:Nt.IcrcLedgerCanister.create({canisterId:p,agent:e}),swap:nt.create({canisterId:O,agent:e}),index:Nt.IcrcIndexCanister.create({canisterId:i,agent:e}),certified:s})};0&&(module.exports={GetOpenTicketErrorType,NewSaleTicketResponseErrorType,SnsGovernanceCanister,SnsGovernanceError,SnsGovernanceTestCanister,SnsNeuronPermissionType,SnsProposalDecisionStatus,SnsProposalRewardStatus,SnsRootCanister,SnsSwapCanister,SnsSwapGetOpenTicketError,SnsSwapLifecycle,SnsSwapNewTicketError,SnsVote,SnsWrapper,UnsupportedMethodError,fromCandidAction,initSnsWrapper,neuronSubaccount});
2
2
  /*! Bundled license information:
3
3
 
4
4
  @noble/hashes/esm/utils.js: