@dfinity/sns 0.0.4-next-2022-09-26 → 0.0.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -75,6 +75,8 @@ console.log("Summary data:", metadata, token);
75
75
  ### :toolbox: Functions
76
76
 
77
77
  - [initSnsWrapper](#gear-initsnswrapper)
78
+ - [encodeSnsAccount](#gear-encodesnsaccount)
79
+ - [decodeSnsAccount](#gear-decodesnsaccount)
78
80
 
79
81
  #### :gear: initSnsWrapper
80
82
 
@@ -84,6 +86,32 @@ Lookup for the canister ids of a Sns and initialize the wrapper to access its fe
84
86
  | ---------------- | ---------------- |
85
87
  | `initSnsWrapper` | `InitSnsWrapper` |
86
88
 
89
+ #### :gear: encodeSnsAccount
90
+
91
+ Encodes an SNS account into a string.
92
+ Formatting Reference: https://github.com/dfinity/ICRC-1/pull/55/files#diff-b335630551682c19a781afebcf4d07bf978fb1f8ac04c6bf87428ed5106870f5R238
93
+
94
+ | Function | Type |
95
+ | ------------------ | ----------------------------------------------- |
96
+ | `encodeSnsAccount` | `({ owner, subaccount }: SnsAccount) => string` |
97
+
98
+ Parameters:
99
+
100
+ - `snsAccount`: : Principal, subaccount?: Uint8Array }
101
+
102
+ #### :gear: decodeSnsAccount
103
+
104
+ Decodes a string into an SNS account.
105
+ Formatting Reference: https://github.com/dfinity/ICRC-1/pull/55/files#diff-b335630551682c19a781afebcf4d07bf978fb1f8ac04c6bf87428ed5106870f5R268
106
+
107
+ | Function | Type |
108
+ | ------------------ | --------------------------------------- |
109
+ | `decodeSnsAccount` | `(accountString: string) => SnsAccount` |
110
+
111
+ Parameters:
112
+
113
+ - `snsAccountString`: string
114
+
87
115
  ### :factory: SnsGovernanceCanister
88
116
 
89
117
  #### Constructors
@@ -105,6 +133,7 @@ Parameters:
105
133
  - [manageNeuron](#gear-manageneuron)
106
134
  - [addNeuronPermissions](#gear-addneuronpermissions)
107
135
  - [removeNeuronPermissions](#gear-removeneuronpermissions)
136
+ - [disburse](#gear-disburse)
108
137
 
109
138
  ##### :gear: create
110
139
 
@@ -166,6 +195,14 @@ Remove permissions to a neuron for a specific principal
166
195
  | ------------------------- | ------------------------------------------------------- |
167
196
  | `removeNeuronPermissions` | `(params: SnsNeuronPermissionsParams) => Promise<void>` |
168
197
 
198
+ ##### :gear: disburse
199
+
200
+ Disburse neuron on Account
201
+
202
+ | Method | Type |
203
+ | ---------- | ---------------------------------------------------- |
204
+ | `disburse` | `(params: SnsDisburseNeuronParams) => Promise<void>` |
205
+
169
206
  ### :factory: SnsLedgerCanister
170
207
 
171
208
  #### Constructors
@@ -315,6 +352,7 @@ Parameters:
315
352
  - [getNeuron](#gear-getneuron)
316
353
  - [addNeuronPermissions](#gear-addneuronpermissions)
317
354
  - [removeNeuronPermissions](#gear-removeneuronpermissions)
355
+ - [disburse](#gear-disburse)
318
356
  - [swapState](#gear-swapstate)
319
357
  - [notifyParticipation](#gear-notifyparticipation)
320
358
  - [getUserCommitment](#gear-getusercommitment)
@@ -361,6 +399,12 @@ Parameters:
361
399
  | ------------------------- | ------------------------------------------------------- |
362
400
  | `removeNeuronPermissions` | `(params: SnsNeuronPermissionsParams) => Promise<void>` |
363
401
 
402
+ ##### :gear: disburse
403
+
404
+ | Method | Type |
405
+ | ---------- | ---------------------------------------------------- |
406
+ | `disburse` | `(params: SnsDisburseNeuronParams) => Promise<void>` |
407
+
364
408
  ##### :gear: swapState
365
409
 
366
410
  | Method | Type |
@@ -1,2 +1,2 @@
1
- "use strict";var ke=Object.defineProperty;var Ze=Object.getOwnPropertyDescriptor;var $e=Object.getOwnPropertyNames;var Ie=Object.prototype.hasOwnProperty;var De=(e,o)=>{for(var s in o)ke(e,s,{get:o[s],enumerable:!0})},Le=(e,o,s,r)=>{if(o&&typeof o=="object"||typeof o=="function")for(let a of $e(o))!Ie.call(e,a)&&a!==s&&ke(e,a,{get:()=>o[a],enumerable:!(r=Ze(o,a))||r.enumerable});return e};var et=e=>Le(ke({},"__esModule",{value:!0}),e);var ot={};De(ot,{SnsGovernanceCanister:()=>C,SnsGovernanceError:()=>X,SnsLedgerCanister:()=>F,SnsMetadataResponseEntries:()=>Je,SnsNeuronPermissionType:()=>Ee,SnsRootCanister:()=>M,SnsSwapCanister:()=>k,SnsSwapLifecycle:()=>Ge,SnsWrapper:()=>D,initSnsWrapper:()=>st});module.exports=et(ot);var Ee=(n=>(n[n.NEURON_PERMISSION_TYPE_UNSPECIFIED=0]="NEURON_PERMISSION_TYPE_UNSPECIFIED",n[n.NEURON_PERMISSION_TYPE_CONFIGURE_DISSOLVE_STATE=1]="NEURON_PERMISSION_TYPE_CONFIGURE_DISSOLVE_STATE",n[n.NEURON_PERMISSION_TYPE_MANAGE_PRINCIPALS=2]="NEURON_PERMISSION_TYPE_MANAGE_PRINCIPALS",n[n.NEURON_PERMISSION_TYPE_SUBMIT_PROPOSAL=3]="NEURON_PERMISSION_TYPE_SUBMIT_PROPOSAL",n[n.NEURON_PERMISSION_TYPE_VOTE=4]="NEURON_PERMISSION_TYPE_VOTE",n[n.NEURON_PERMISSION_TYPE_DISBURSE=5]="NEURON_PERMISSION_TYPE_DISBURSE",n[n.NEURON_PERMISSION_TYPE_SPLIT=6]="NEURON_PERMISSION_TYPE_SPLIT",n[n.NEURON_PERMISSION_TYPE_MERGE_MATURITY=7]="NEURON_PERMISSION_TYPE_MERGE_MATURITY",n[n.NEURON_PERMISSION_TYPE_DISBURSE_MATURITY=8]="NEURON_PERMISSION_TYPE_DISBURSE_MATURITY",n))(Ee||{});var Ge=(t=>(t[t.Unspecified=0]="Unspecified",t[t.Pending=1]="Pending",t[t.Open=2]="Open",t[t.Committed=3]="Committed",t[t.Aborted=4]="Aborted",t))(Ge||{});var X=class extends Error{};var w=require("@dfinity/utils");var qe=({IDL:e})=>{let o=e.Record({validator_canister_id:e.Opt(e.Principal),target_canister_id:e.Opt(e.Principal),validator_method_name:e.Opt(e.Text),target_method_name:e.Opt(e.Text)}),s=e.Variant({NativeNervousSystemFunction:e.Record({}),GenericNervousSystemFunction:o}),r=e.Record({id:e.Nat64,name:e.Text,description:e.Opt(e.Text),function_type:e.Opt(s)}),a=e.Record({not_dissolving_neurons_e8s_buckets:e.Vec(e.Tuple(e.Nat64,e.Float64)),garbage_collectable_neurons_count:e.Nat64,neurons_with_invalid_stake_count:e.Nat64,not_dissolving_neurons_count_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),neurons_with_less_than_6_months_dissolve_delay_count:e.Nat64,dissolved_neurons_count:e.Nat64,total_staked_e8s:e.Nat64,total_supply_governance_tokens:e.Nat64,not_dissolving_neurons_count:e.Nat64,dissolved_neurons_e8s:e.Nat64,neurons_with_less_than_6_months_dissolve_delay_e8s:e.Nat64,dissolving_neurons_count_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),dissolving_neurons_count:e.Nat64,dissolving_neurons_e8s_buckets:e.Vec(e.Tuple(e.Nat64,e.Float64)),timestamp_seconds:e.Nat64}),t=e.Record({id:e.Vec(e.Nat8)}),c=e.Record({followees:e.Vec(t)}),d=e.Record({followees:e.Vec(e.Tuple(e.Nat64,c))}),i=e.Record({permissions:e.Vec(e.Int32)}),n=e.Record({start_timestamp_seconds:e.Opt(e.Nat64),final_reward_rate_basis_points:e.Opt(e.Nat64),initial_reward_rate_basis_points:e.Opt(e.Nat64),reward_rate_transition_duration_seconds:e.Opt(e.Nat64),round_duration_seconds:e.Opt(e.Nat64)}),_=e.Record({default_followees:e.Opt(d),max_dissolve_delay_seconds:e.Opt(e.Nat64),max_followees_per_function:e.Opt(e.Nat64),neuron_claimer_permissions:e.Opt(i),neuron_minimum_stake_e8s:e.Opt(e.Nat64),max_neuron_age_for_age_bonus:e.Opt(e.Nat64),initial_voting_period_seconds:e.Opt(e.Nat64),neuron_minimum_dissolve_delay_to_vote_seconds:e.Opt(e.Nat64),reject_cost_e8s:e.Opt(e.Nat64),max_proposals_to_keep_per_action:e.Opt(e.Nat32),wait_for_quiet_deadline_increase_seconds:e.Opt(e.Nat64),max_number_of_neurons:e.Opt(e.Nat64),transaction_fee_e8s:e.Opt(e.Nat64),max_number_of_proposals_with_ballots:e.Opt(e.Nat64),neuron_grantable_permissions:e.Opt(i),voting_rewards_parameters:e.Opt(n),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)}),p=e.Record({id:e.Nat64}),N=e.Record({actual_timestamp_seconds:e.Nat64,distributed_e8s_equivalent:e.Nat64,round:e.Nat64,settled_proposals:e.Vec(p)}),l=e.Record({mark_failed_at_seconds:e.Nat64,checking_upgrade_lock:e.Nat64,proposal_id:e.Nat64,target_version:e.Opt(m)}),u=e.Record({error_message:e.Text,error_type:e.Int32}),R=e.Record({vote:e.Int32,cast_timestamp_seconds:e.Nat64,voting_power:e.Nat64}),S=e.Record({no:e.Nat64,yes:e.Nat64,total:e.Nat64,timestamp_seconds:e.Nat64}),P=e.Record({new_canister_wasm:e.Vec(e.Nat8),canister_id:e.Opt(e.Principal)}),V=e.Record({url:e.Opt(e.Text),logo:e.Opt(e.Text),name:e.Opt(e.Text),description:e.Opt(e.Text)}),G=e.Record({function_id:e.Nat64,payload:e.Vec(e.Nat8)}),q=e.Record({motion_text:e.Text}),A=e.Variant({ManageNervousSystemParameters:_,AddGenericNervousSystemFunction:r,RemoveGenericNervousSystemFunction:e.Nat64,UpgradeSnsToNextVersion:e.Record({}),UpgradeSnsControlledCanister:P,Unspecified:e.Record({}),ManageSnsMetadata:V,ExecuteGenericNervousSystemFunction:G,Motion:q}),O=e.Record({url:e.Text,title:e.Text,action:e.Opt(A),summary:e.Text}),B=e.Record({current_deadline_timestamp_seconds:e.Nat64}),g=e.Record({id:e.Opt(p),payload_text_rendering:e.Opt(e.Text),action:e.Nat64,failure_reason:e.Opt(u),ballots:e.Vec(e.Tuple(e.Text,R)),reward_event_round:e.Nat64,failed_timestamp_seconds:e.Nat64,proposal_creation_timestamp_seconds:e.Nat64,initial_voting_period_seconds:e.Nat64,reject_cost_e8s:e.Nat64,latest_tally:e.Opt(S),wait_for_quiet_deadline_increase_seconds:e.Nat64,decided_timestamp_seconds:e.Nat64,proposal:e.Opt(O),proposer:e.Opt(t),wait_for_quiet_state:e.Opt(B),is_eligible_for_rewards:e.Bool,executed_timestamp_seconds:e.Nat64}),T=e.Record({memo:e.Nat64,amount_e8s:e.Nat64}),x=e.Record({function_id:e.Nat64,followees:e.Vec(t)}),U=e.Record({subaccount:e.Vec(e.Nat8)}),y=e.Record({owner:e.Opt(e.Principal),subaccount:e.Opt(U)}),v=e.Record({to_account:e.Opt(y),percentage_to_disburse:e.Nat32}),z=e.Record({additional_dissolve_delay_seconds:e.Nat32}),Q=e.Record({dissolve_timestamp_seconds:e.Nat64}),W=e.Variant({StopDissolving:e.Record({}),StartDissolving:e.Record({}),IncreaseDissolveDelay:z,SetDissolveTimestamp:Q}),h=e.Record({operation:e.Opt(W)}),b=e.Record({vote:e.Int32,proposal:e.Opt(p)}),Y=e.Record({controller:e.Opt(e.Principal),memo:e.Nat64}),te=e.Variant({MemoAndController:Y,NeuronId:e.Record({})}),H=e.Record({by:e.Opt(te)}),J=e.Record({permissions_to_remove:e.Opt(i),principal_id:e.Opt(e.Principal)}),K=e.Record({permissions_to_add:e.Opt(i),principal_id:e.Opt(e.Principal)}),Z=e.Record({percentage_to_merge:e.Nat32}),se=e.Record({e8s:e.Nat64}),$=e.Record({to_account:e.Opt(y),amount:e.Opt(se)}),oe=e.Variant({Split:T,Follow:x,DisburseMaturity:v,Configure:h,RegisterVote:b,MakeProposal:O,ClaimOrRefreshNeuron:H,RemoveNeuronPermissions:J,AddNeuronPermissions:K,MergeMaturity:Z,Disburse:$}),re=e.Record({command:e.Opt(oe),timestamp:e.Nat64}),ne=e.Record({principal:e.Opt(e.Principal),permission_type:e.Vec(e.Int32)}),ae=e.Variant({DissolveDelaySeconds:e.Nat64,WhenDissolvedTimestampSeconds:e.Nat64}),j=e.Record({id:e.Opt(t),permissions:e.Vec(ne),maturity_e8s_equivalent:e.Nat64,cached_neuron_stake_e8s:e.Nat64,created_timestamp_seconds:e.Nat64,aging_since_timestamp_seconds:e.Nat64,dissolve_state:e.Opt(ae),voting_power_percentage_multiplier:e.Nat64,followees:e.Vec(e.Tuple(e.Nat64,c)),neuron_fees_e8s:e.Nat64}),Ke=e.Record({root_canister_id:e.Opt(e.Principal),id_to_nervous_system_functions:e.Vec(e.Tuple(e.Nat64,r)),metrics:e.Opt(a),mode:e.Int32,parameters:e.Opt(_),deployed_version:e.Opt(m),sns_initialization_parameters:e.Text,latest_reward_event:e.Opt(N),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,g)),in_flight_commands:e.Vec(e.Tuple(e.Text,re)),sns_metadata:e.Opt(V),neurons:e.Vec(e.Tuple(e.Text,j)),genesis_timestamp_seconds:e.Nat64}),ie=e.Record({url:e.Opt(e.Text),logo:e.Opt(e.Text),name:e.Opt(e.Text),description:e.Opt(e.Text)}),ce=e.Record({neuron_id:e.Opt(t)}),_e=e.Variant({Error:u,Neuron:j}),pe=e.Record({result:e.Opt(_e)}),I=e.Record({proposal_id:e.Opt(p)}),de=e.Variant({Error:u,Proposal:g}),le=e.Record({result:e.Opt(de)}),ue=e.Variant({stopped:e.Null,stopping:e.Null,running:e.Null}),me=e.Record({controller:e.Principal,freezing_threshold:e.Nat,controllers:e.Vec(e.Principal),memory_allocation:e.Nat,compute_allocation:e.Nat}),Ne=e.Record({controller:e.Principal,status:ue,freezing_threshold:e.Nat,balance:e.Vec(e.Tuple(e.Vec(e.Nat8),e.Nat)),memory_size:e.Nat,cycles:e.Nat,settings:me,idle_cycles_burned_per_day:e.Nat,module_hash:e.Opt(e.Vec(e.Nat8))}),Re=e.Record({deployed_version:e.Opt(m),pending_version:e.Opt(l)}),Oe=e.Record({sns_initialization_parameters:e.Text}),ge=e.Record({reserved_ids:e.Vec(e.Nat64),functions:e.Vec(r)}),ye=e.Record({of_principal:e.Opt(e.Principal),limit:e.Nat32,start_page_at:e.Opt(t)}),ve=e.Record({neurons:e.Vec(j)}),fe=e.Record({include_reward_status:e.Vec(e.Int32),before_proposal:e.Opt(p),limit:e.Nat32,exclude_type:e.Vec(e.Nat64),include_status:e.Vec(e.Int32)}),Se=e.Record({proposals:e.Vec(g)}),Pe=e.Variant({Split:T,Follow:x,DisburseMaturity:v,ClaimOrRefresh:H,Configure:h,RegisterVote:b,MakeProposal:O,RemoveNeuronPermissions:J,AddNeuronPermissions:K,MergeMaturity:Z,Disburse:$}),Ve=e.Record({subaccount:e.Vec(e.Nat8),command:e.Opt(Pe)}),Te=e.Record({created_neuron_id:e.Opt(t)}),xe=e.Record({transfer_block_height:e.Nat64,amount_disbursed_e8s:e.Nat64}),he=e.Record({refreshed_neuron_id:e.Opt(t)}),be=e.Record({merged_maturity_e8s:e.Nat64,new_stake_e8s:e.Nat64}),we=e.Record({transfer_block_height:e.Nat64}),Ce=e.Variant({Error:u,Split:Te,Follow:e.Record({}),DisburseMaturity:xe,ClaimOrRefresh:he,Configure:e.Record({}),RegisterVote:e.Record({}),MakeProposal:I,RemoveNeuronPermission:e.Record({}),MergeMaturity:be,Disburse:we,AddNeuronPermission:e.Record({})}),Fe=e.Record({command:e.Opt(Ce)}),Me=e.Record({mode:e.Int32});return e.Service({get_build_metadata:e.Func([],[e.Text],[]),get_metadata:e.Func([e.Record({})],[ie],[]),get_nervous_system_parameters:e.Func([e.Null],[_],[]),get_neuron:e.Func([ce],[pe],[]),get_proposal:e.Func([I],[le],[]),get_root_canister_status:e.Func([e.Null],[Ne],[]),get_running_sns_version:e.Func([e.Record({})],[Re],[]),get_sns_initialization_parameters:e.Func([e.Record({})],[Oe],[]),list_nervous_system_functions:e.Func([],[ge],[]),list_neurons:e.Func([ye],[ve],[]),list_proposals:e.Func([fe],[Se],[]),manage_neuron:e.Func([Ve],[Fe],[]),set_mode:e.Func([Me],[e.Record({})],[])})};var Ae=({IDL:e})=>{let o=e.Record({validator_canister_id:e.Opt(e.Principal),target_canister_id:e.Opt(e.Principal),validator_method_name:e.Opt(e.Text),target_method_name:e.Opt(e.Text)}),s=e.Variant({NativeNervousSystemFunction:e.Record({}),GenericNervousSystemFunction:o}),r=e.Record({id:e.Nat64,name:e.Text,description:e.Opt(e.Text),function_type:e.Opt(s)}),a=e.Record({not_dissolving_neurons_e8s_buckets:e.Vec(e.Tuple(e.Nat64,e.Float64)),garbage_collectable_neurons_count:e.Nat64,neurons_with_invalid_stake_count:e.Nat64,not_dissolving_neurons_count_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),neurons_with_less_than_6_months_dissolve_delay_count:e.Nat64,dissolved_neurons_count:e.Nat64,total_staked_e8s:e.Nat64,total_supply_governance_tokens:e.Nat64,not_dissolving_neurons_count:e.Nat64,dissolved_neurons_e8s:e.Nat64,neurons_with_less_than_6_months_dissolve_delay_e8s:e.Nat64,dissolving_neurons_count_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),dissolving_neurons_count:e.Nat64,dissolving_neurons_e8s_buckets:e.Vec(e.Tuple(e.Nat64,e.Float64)),timestamp_seconds:e.Nat64}),t=e.Record({id:e.Vec(e.Nat8)}),c=e.Record({followees:e.Vec(t)}),d=e.Record({followees:e.Vec(e.Tuple(e.Nat64,c))}),i=e.Record({permissions:e.Vec(e.Int32)}),n=e.Record({start_timestamp_seconds:e.Opt(e.Nat64),final_reward_rate_basis_points:e.Opt(e.Nat64),initial_reward_rate_basis_points:e.Opt(e.Nat64),reward_rate_transition_duration_seconds:e.Opt(e.Nat64),round_duration_seconds:e.Opt(e.Nat64)}),_=e.Record({default_followees:e.Opt(d),max_dissolve_delay_seconds:e.Opt(e.Nat64),max_followees_per_function:e.Opt(e.Nat64),neuron_claimer_permissions:e.Opt(i),neuron_minimum_stake_e8s:e.Opt(e.Nat64),max_neuron_age_for_age_bonus:e.Opt(e.Nat64),initial_voting_period_seconds:e.Opt(e.Nat64),neuron_minimum_dissolve_delay_to_vote_seconds:e.Opt(e.Nat64),reject_cost_e8s:e.Opt(e.Nat64),max_proposals_to_keep_per_action:e.Opt(e.Nat32),wait_for_quiet_deadline_increase_seconds:e.Opt(e.Nat64),max_number_of_neurons:e.Opt(e.Nat64),transaction_fee_e8s:e.Opt(e.Nat64),max_number_of_proposals_with_ballots:e.Opt(e.Nat64),neuron_grantable_permissions:e.Opt(i),voting_rewards_parameters:e.Opt(n),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)}),p=e.Record({id:e.Nat64}),N=e.Record({actual_timestamp_seconds:e.Nat64,distributed_e8s_equivalent:e.Nat64,round:e.Nat64,settled_proposals:e.Vec(p)}),l=e.Record({mark_failed_at_seconds:e.Nat64,checking_upgrade_lock:e.Nat64,proposal_id:e.Nat64,target_version:e.Opt(m)}),u=e.Record({error_message:e.Text,error_type:e.Int32}),R=e.Record({vote:e.Int32,cast_timestamp_seconds:e.Nat64,voting_power:e.Nat64}),S=e.Record({no:e.Nat64,yes:e.Nat64,total:e.Nat64,timestamp_seconds:e.Nat64}),P=e.Record({new_canister_wasm:e.Vec(e.Nat8),canister_id:e.Opt(e.Principal)}),V=e.Record({url:e.Opt(e.Text),logo:e.Opt(e.Text),name:e.Opt(e.Text),description:e.Opt(e.Text)}),G=e.Record({function_id:e.Nat64,payload:e.Vec(e.Nat8)}),q=e.Record({motion_text:e.Text}),A=e.Variant({ManageNervousSystemParameters:_,AddGenericNervousSystemFunction:r,RemoveGenericNervousSystemFunction:e.Nat64,UpgradeSnsToNextVersion:e.Record({}),UpgradeSnsControlledCanister:P,Unspecified:e.Record({}),ManageSnsMetadata:V,ExecuteGenericNervousSystemFunction:G,Motion:q}),O=e.Record({url:e.Text,title:e.Text,action:e.Opt(A),summary:e.Text}),B=e.Record({current_deadline_timestamp_seconds:e.Nat64}),g=e.Record({id:e.Opt(p),payload_text_rendering:e.Opt(e.Text),action:e.Nat64,failure_reason:e.Opt(u),ballots:e.Vec(e.Tuple(e.Text,R)),reward_event_round:e.Nat64,failed_timestamp_seconds:e.Nat64,proposal_creation_timestamp_seconds:e.Nat64,initial_voting_period_seconds:e.Nat64,reject_cost_e8s:e.Nat64,latest_tally:e.Opt(S),wait_for_quiet_deadline_increase_seconds:e.Nat64,decided_timestamp_seconds:e.Nat64,proposal:e.Opt(O),proposer:e.Opt(t),wait_for_quiet_state:e.Opt(B),is_eligible_for_rewards:e.Bool,executed_timestamp_seconds:e.Nat64}),T=e.Record({memo:e.Nat64,amount_e8s:e.Nat64}),x=e.Record({function_id:e.Nat64,followees:e.Vec(t)}),U=e.Record({subaccount:e.Vec(e.Nat8)}),y=e.Record({owner:e.Opt(e.Principal),subaccount:e.Opt(U)}),v=e.Record({to_account:e.Opt(y),percentage_to_disburse:e.Nat32}),z=e.Record({additional_dissolve_delay_seconds:e.Nat32}),Q=e.Record({dissolve_timestamp_seconds:e.Nat64}),W=e.Variant({StopDissolving:e.Record({}),StartDissolving:e.Record({}),IncreaseDissolveDelay:z,SetDissolveTimestamp:Q}),h=e.Record({operation:e.Opt(W)}),b=e.Record({vote:e.Int32,proposal:e.Opt(p)}),Y=e.Record({controller:e.Opt(e.Principal),memo:e.Nat64}),te=e.Variant({MemoAndController:Y,NeuronId:e.Record({})}),H=e.Record({by:e.Opt(te)}),J=e.Record({permissions_to_remove:e.Opt(i),principal_id:e.Opt(e.Principal)}),K=e.Record({permissions_to_add:e.Opt(i),principal_id:e.Opt(e.Principal)}),Z=e.Record({percentage_to_merge:e.Nat32}),se=e.Record({e8s:e.Nat64}),$=e.Record({to_account:e.Opt(y),amount:e.Opt(se)}),oe=e.Variant({Split:T,Follow:x,DisburseMaturity:v,Configure:h,RegisterVote:b,MakeProposal:O,ClaimOrRefreshNeuron:H,RemoveNeuronPermissions:J,AddNeuronPermissions:K,MergeMaturity:Z,Disburse:$}),re=e.Record({command:e.Opt(oe),timestamp:e.Nat64}),ne=e.Record({principal:e.Opt(e.Principal),permission_type:e.Vec(e.Int32)}),ae=e.Variant({DissolveDelaySeconds:e.Nat64,WhenDissolvedTimestampSeconds:e.Nat64}),j=e.Record({id:e.Opt(t),permissions:e.Vec(ne),maturity_e8s_equivalent:e.Nat64,cached_neuron_stake_e8s:e.Nat64,created_timestamp_seconds:e.Nat64,aging_since_timestamp_seconds:e.Nat64,dissolve_state:e.Opt(ae),voting_power_percentage_multiplier:e.Nat64,followees:e.Vec(e.Tuple(e.Nat64,c)),neuron_fees_e8s:e.Nat64}),Ke=e.Record({root_canister_id:e.Opt(e.Principal),id_to_nervous_system_functions:e.Vec(e.Tuple(e.Nat64,r)),metrics:e.Opt(a),mode:e.Int32,parameters:e.Opt(_),deployed_version:e.Opt(m),sns_initialization_parameters:e.Text,latest_reward_event:e.Opt(N),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,g)),in_flight_commands:e.Vec(e.Tuple(e.Text,re)),sns_metadata:e.Opt(V),neurons:e.Vec(e.Tuple(e.Text,j)),genesis_timestamp_seconds:e.Nat64}),ie=e.Record({url:e.Opt(e.Text),logo:e.Opt(e.Text),name:e.Opt(e.Text),description:e.Opt(e.Text)}),ce=e.Record({neuron_id:e.Opt(t)}),_e=e.Variant({Error:u,Neuron:j}),pe=e.Record({result:e.Opt(_e)}),I=e.Record({proposal_id:e.Opt(p)}),de=e.Variant({Error:u,Proposal:g}),le=e.Record({result:e.Opt(de)}),ue=e.Variant({stopped:e.Null,stopping:e.Null,running:e.Null}),me=e.Record({controller:e.Principal,freezing_threshold:e.Nat,controllers:e.Vec(e.Principal),memory_allocation:e.Nat,compute_allocation:e.Nat}),Ne=e.Record({controller:e.Principal,status:ue,freezing_threshold:e.Nat,balance:e.Vec(e.Tuple(e.Vec(e.Nat8),e.Nat)),memory_size:e.Nat,cycles:e.Nat,settings:me,idle_cycles_burned_per_day:e.Nat,module_hash:e.Opt(e.Vec(e.Nat8))}),Re=e.Record({deployed_version:e.Opt(m),pending_version:e.Opt(l)}),Oe=e.Record({sns_initialization_parameters:e.Text}),ge=e.Record({reserved_ids:e.Vec(e.Nat64),functions:e.Vec(r)}),ye=e.Record({of_principal:e.Opt(e.Principal),limit:e.Nat32,start_page_at:e.Opt(t)}),ve=e.Record({neurons:e.Vec(j)}),fe=e.Record({include_reward_status:e.Vec(e.Int32),before_proposal:e.Opt(p),limit:e.Nat32,exclude_type:e.Vec(e.Nat64),include_status:e.Vec(e.Int32)}),Se=e.Record({proposals:e.Vec(g)}),Pe=e.Variant({Split:T,Follow:x,DisburseMaturity:v,ClaimOrRefresh:H,Configure:h,RegisterVote:b,MakeProposal:O,RemoveNeuronPermissions:J,AddNeuronPermissions:K,MergeMaturity:Z,Disburse:$}),Ve=e.Record({subaccount:e.Vec(e.Nat8),command:e.Opt(Pe)}),Te=e.Record({created_neuron_id:e.Opt(t)}),xe=e.Record({transfer_block_height:e.Nat64,amount_disbursed_e8s:e.Nat64}),he=e.Record({refreshed_neuron_id:e.Opt(t)}),be=e.Record({merged_maturity_e8s:e.Nat64,new_stake_e8s:e.Nat64}),we=e.Record({transfer_block_height:e.Nat64}),Ce=e.Variant({Error:u,Split:Te,Follow:e.Record({}),DisburseMaturity:xe,ClaimOrRefresh:he,Configure:e.Record({}),RegisterVote:e.Record({}),MakeProposal:I,RemoveNeuronPermission:e.Record({}),MergeMaturity:be,Disburse:we,AddNeuronPermission:e.Record({})}),Fe=e.Record({command:e.Opt(Ce)}),Me=e.Record({mode:e.Int32});return e.Service({get_build_metadata:e.Func([],[e.Text],["query"]),get_metadata:e.Func([e.Record({})],[ie],["query"]),get_nervous_system_parameters:e.Func([e.Null],[_],["query"]),get_neuron:e.Func([ce],[pe],["query"]),get_proposal:e.Func([I],[le],["query"]),get_root_canister_status:e.Func([e.Null],[Ne],[]),get_running_sns_version:e.Func([e.Record({})],[Re],["query"]),get_sns_initialization_parameters:e.Func([e.Record({})],[Oe],["query"]),list_nervous_system_functions:e.Func([],[ge],["query"]),list_neurons:e.Func([ye],[ve],["query"]),list_proposals:e.Func([fe],[Se],["query"]),manage_neuron:e.Func([Ve],[Fe],[]),set_mode:e.Func([Me],[e.Record({})],[])})};var Be=({neuronId:e,permissions:o,principal:s})=>({subaccount:e.id,command:[{AddNeuronPermissions:{permissions_to_add:[{permissions:Int32Array.from(o)}],principal_id:[s]}}]}),Ue=({neuronId:e,permissions:o,principal:s})=>({subaccount:e.id,command:[{RemoveNeuronPermissions:{permissions_to_remove:[{permissions:Int32Array.from(o)}],principal_id:[s]}}]});var f=class{constructor(o,s,r){this.id=o;this.service=s;this.certifiedService=r;this.caller=({certified:o=!0})=>o?this.certifiedService:this.service}get canisterId(){return this.id}};var C=class extends f{constructor(){super(...arguments);this.listNeurons=async s=>{let{principal:r,limit:a,beforeNeuronId:t}=s,{neurons:c}=await this.caller(s).list_neurons({of_principal:(0,w.toNullable)(r),limit:a??100,start_page_at:(0,w.toNullable)(t)});return c};this.metadata=s=>this.caller(s).get_metadata({});this.getNeuron=async s=>{let{neuronId:r}=s,{result:a}=await this.caller(s).get_neuron({neuron_id:(0,w.toNullable)(r)}),t=(0,w.fromNullable)(a);if(t===void 0||"Error"in t)throw new X((t==null?void 0:t.Error.error_message)??"Response type not supported");return t.Neuron};this.manageNeuron=async s=>{let r=await this.caller({certified:!0}).manage_neuron(s);return this.assertManageNeuronError(r),r};this.addNeuronPermissions=async s=>{let r=Be(s);await this.manageNeuron(r)};this.removeNeuronPermissions=async s=>{let r=Ue(s);await this.manageNeuron(r)};this.assertManageNeuronError=({command:s})=>{let r=s[0];if(r!==void 0&&"Error"in r)throw new X(r.Error.error_message)}}static create(s){let{service:r,certifiedService:a,canisterId:t}=(0,w.createServices)({options:s,idlFactory:Ae,certifiedIdlFactory:qe});return new C(t,r,a)}};var L=require("@dfinity/utils");var ze=({IDL:e})=>{let o=e.Variant({Int:e.Int,Nat:e.Nat,Blob:e.Vec(e.Nat8),Text:e.Text}),s=e.Vec(e.Nat8),r=e.Record({owner:e.Principal,subaccount:e.Opt(s)}),a=e.Record({token_symbol:e.Text,transfer_fee:e.Nat64,metadata:e.Vec(e.Tuple(e.Text,o)),minting_account:r,initial_balances:e.Vec(e.Tuple(r,e.Nat64)),archive_options:e.Record({num_blocks_to_archive:e.Nat64,trigger_threshold:e.Nat64,max_message_size_bytes:e.Opt(e.Nat64),cycles_for_archive_creation:e.Opt(e.Nat64),node_max_memory_size_bytes:e.Opt(e.Nat64),controller_id:e.Principal}),token_name:e.Text}),t=e.Nat,c=e.Nat64,d=e.Record({to:r,fee:e.Opt(t),memo:e.Opt(e.Vec(e.Nat8)),from_subaccount:e.Opt(s),created_at_time:e.Opt(c),amount:t}),i=e.Nat,n=e.Variant({GenericError:e.Record({message:e.Text,error_code:e.Nat}),TemporarilyUnavailable:e.Null,BadBurn:e.Record({min_burn_amount:t}),Duplicate:e.Record({duplicate_of:i}),BadFee:e.Record({expected_fee:t}),CreatedInFuture:e.Record({ledger_time:e.Nat64}),TooOld:e.Null,InsufficientFunds:e.Record({balance:t})}),_=e.Variant({Ok:i,Err:n});return e.Service({icrc1_balance_of:e.Func([r],[t],[]),icrc1_decimals:e.Func([],[e.Nat8],[]),icrc1_fee:e.Func([],[t],[]),icrc1_metadata:e.Func([],[e.Vec(e.Tuple(e.Text,o))],[]),icrc1_minting_account:e.Func([],[e.Opt(r)],[]),icrc1_name:e.Func([],[e.Text],[]),icrc1_supported_standards:e.Func([],[e.Vec(e.Record({url:e.Text,name:e.Text}))],[]),icrc1_symbol:e.Func([],[e.Text],[]),icrc1_total_supply:e.Func([],[t],[]),icrc1_transfer:e.Func([d],[_],[])})};var Qe=({IDL:e})=>{let o=e.Variant({Int:e.Int,Nat:e.Nat,Blob:e.Vec(e.Nat8),Text:e.Text}),s=e.Vec(e.Nat8),r=e.Record({owner:e.Principal,subaccount:e.Opt(s)}),a=e.Record({token_symbol:e.Text,transfer_fee:e.Nat64,metadata:e.Vec(e.Tuple(e.Text,o)),minting_account:r,initial_balances:e.Vec(e.Tuple(r,e.Nat64)),archive_options:e.Record({num_blocks_to_archive:e.Nat64,trigger_threshold:e.Nat64,max_message_size_bytes:e.Opt(e.Nat64),cycles_for_archive_creation:e.Opt(e.Nat64),node_max_memory_size_bytes:e.Opt(e.Nat64),controller_id:e.Principal}),token_name:e.Text}),t=e.Nat,c=e.Nat64,d=e.Record({to:r,fee:e.Opt(t),memo:e.Opt(e.Vec(e.Nat8)),from_subaccount:e.Opt(s),created_at_time:e.Opt(c),amount:t}),i=e.Nat,n=e.Variant({GenericError:e.Record({message:e.Text,error_code:e.Nat}),TemporarilyUnavailable:e.Null,BadBurn:e.Record({min_burn_amount:t}),Duplicate:e.Record({duplicate_of:i}),BadFee:e.Record({expected_fee:t}),CreatedInFuture:e.Record({ledger_time:e.Nat64}),TooOld:e.Null,InsufficientFunds:e.Record({balance:t})}),_=e.Variant({Ok:i,Err:n});return e.Service({icrc1_balance_of:e.Func([r],[t],["query"]),icrc1_decimals:e.Func([],[e.Nat8],["query"]),icrc1_fee:e.Func([],[t],["query"]),icrc1_metadata:e.Func([],[e.Vec(e.Tuple(e.Text,o))],["query"]),icrc1_minting_account:e.Func([],[e.Opt(r)],["query"]),icrc1_name:e.Func([],[e.Text],["query"]),icrc1_supported_standards:e.Func([],[e.Vec(e.Record({url:e.Text,name:e.Text}))],["query"]),icrc1_symbol:e.Func([],[e.Text],["query"]),icrc1_total_supply:e.Func([],[t],["query"]),icrc1_transfer:e.Func([d],[_],[])})};var F=class extends f{constructor(){super(...arguments);this.metadata=s=>this.caller(s).icrc1_metadata();this.balance=s=>this.caller({certified:s.certified}).icrc1_balance_of({owner:s.owner,subaccount:(0,L.toNullable)(s.subaccount)})}static create(s){let{service:r,certifiedService:a,canisterId:t}=(0,L.createServices)({options:s,idlFactory:Qe,certifiedIdlFactory:ze});return new F(t,r,a)}};var je=require("@dfinity/utils");var We=({IDL:e})=>{let o=e.Record({dapp_canister_ids:e.Vec(e.Principal),latest_ledger_archive_poll_timestamp_seconds:e.Opt(e.Nat64),archive_canister_ids:e.Vec(e.Principal),governance_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}),r=e.Variant({stopped:e.Null,stopping:e.Null,running:e.Null}),a=e.Record({controller:e.Principal,status:r,memory_size:e.Nat,module_hash:e.Opt(e.Vec(e.Nat8))}),t=e.Record({update_canister_list:e.Opt(e.Bool)}),c=e.Variant({stopped:e.Null,stopping:e.Null,running:e.Null}),d=e.Record({controller:e.Principal,freezing_threshold:e.Nat,controllers:e.Vec(e.Principal),memory_allocation:e.Nat,compute_allocation:e.Nat}),i=e.Record({controller:e.Principal,status:c,freezing_threshold:e.Nat,balance:e.Vec(e.Tuple(e.Vec(e.Nat8),e.Nat)),memory_size:e.Nat,cycles:e.Nat,settings:d,idle_cycles_burned_per_day:e.Nat,module_hash:e.Opt(e.Vec(e.Nat8))}),n=e.Record({status:e.Opt(i),canister_id:e.Opt(e.Principal)}),_=e.Record({root:e.Opt(n),swap:e.Opt(n),ledger:e.Opt(n),governance:e.Opt(n),dapps:e.Vec(n),archives:e.Vec(n)}),m=e.Record({root:e.Opt(e.Principal),swap:e.Opt(e.Principal),ledger:e.Opt(e.Principal),governance:e.Opt(e.Principal),dapps:e.Vec(e.Principal),archives:e.Vec(e.Principal)}),p=e.Record({canister_id:e.Opt(e.Principal)}),N=e.Record({controller_principal_ids:e.Vec(e.Principal)}),l=e.Record({code:e.Opt(e.Int32),description:e.Text}),u=e.Record({err:e.Opt(l),dapp_canister_id:e.Opt(e.Principal)}),R=e.Record({failed_updates:e.Vec(u)});return e.Service({canister_status:e.Func([s],[a],[]),get_build_metadata:e.Func([],[e.Text],[]),get_sns_canisters_summary:e.Func([t],[_],[]),list_sns_canisters:e.Func([e.Record({})],[m],[]),register_dapp_canister:e.Func([p],[e.Record({})],[]),set_dapp_controllers:e.Func([N],[R],[])})};var Ye=({IDL:e})=>{let o=e.Record({dapp_canister_ids:e.Vec(e.Principal),latest_ledger_archive_poll_timestamp_seconds:e.Opt(e.Nat64),archive_canister_ids:e.Vec(e.Principal),governance_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}),r=e.Variant({stopped:e.Null,stopping:e.Null,running:e.Null}),a=e.Record({controller:e.Principal,status:r,memory_size:e.Nat,module_hash:e.Opt(e.Vec(e.Nat8))}),t=e.Record({update_canister_list:e.Opt(e.Bool)}),c=e.Variant({stopped:e.Null,stopping:e.Null,running:e.Null}),d=e.Record({controller:e.Principal,freezing_threshold:e.Nat,controllers:e.Vec(e.Principal),memory_allocation:e.Nat,compute_allocation:e.Nat}),i=e.Record({controller:e.Principal,status:c,freezing_threshold:e.Nat,balance:e.Vec(e.Tuple(e.Vec(e.Nat8),e.Nat)),memory_size:e.Nat,cycles:e.Nat,settings:d,idle_cycles_burned_per_day:e.Nat,module_hash:e.Opt(e.Vec(e.Nat8))}),n=e.Record({status:e.Opt(i),canister_id:e.Opt(e.Principal)}),_=e.Record({root:e.Opt(n),swap:e.Opt(n),ledger:e.Opt(n),governance:e.Opt(n),dapps:e.Vec(n),archives:e.Vec(n)}),m=e.Record({root:e.Opt(e.Principal),swap:e.Opt(e.Principal),ledger:e.Opt(e.Principal),governance:e.Opt(e.Principal),dapps:e.Vec(e.Principal),archives:e.Vec(e.Principal)}),p=e.Record({canister_id:e.Opt(e.Principal)}),N=e.Record({controller_principal_ids:e.Vec(e.Principal)}),l=e.Record({code:e.Opt(e.Int32),description:e.Text}),u=e.Record({err:e.Opt(l),dapp_canister_id:e.Opt(e.Principal)}),R=e.Record({failed_updates:e.Vec(u)});return e.Service({canister_status:e.Func([s],[a],[]),get_build_metadata:e.Func([],[e.Text],["query"]),get_sns_canisters_summary:e.Func([t],[_],[]),list_sns_canisters:e.Func([e.Record({})],[m],["query"]),register_dapp_canister:e.Func([p],[e.Record({})],[]),set_dapp_controllers:e.Func([N],[R],[])})};var M=class extends f{constructor(){super(...arguments);this.listSnsCanisters=async({certified:s=!0})=>this.caller({certified:s}).list_sns_canisters({})}static create(s){let{service:r,certifiedService:a,canisterId:t}=(0,je.createServices)({options:s,idlFactory:Ye,certifiedIdlFactory:We});return new M(t,r,a)}};var E=require("@dfinity/utils");var D=class{constructor({root:o,governance:s,ledger:r,swap:a,certified:t}){this.listNeurons=o=>this.governance.listNeurons(this.mergeParams(o));this.metadata=o=>Promise.all([this.governance.metadata(this.mergeParams(o)),this.ledger.metadata(this.mergeParams(o))]);this.ledgerMetadata=o=>this.ledger.metadata(this.mergeParams(o));this.balance=o=>this.ledger.balance(this.mergeParams(o));this.getNeuron=o=>this.governance.getNeuron(this.mergeParams(o));this.addNeuronPermissions=o=>this.governance.addNeuronPermissions(o);this.removeNeuronPermissions=o=>this.governance.removeNeuronPermissions(o);this.swapState=o=>this.swap.state(this.mergeParams(o));this.notifyParticipation=o=>this.swap.notifyParticipation(o);this.getUserCommitment=o=>this.swap.getUserCommitment(this.mergeParams(o));this.root=o,this.governance=s,this.ledger=r,this.swap=a,this.certified=t}get canisterIds(){return{rootCanisterId:this.root.canisterId,ledgerCanisterId:this.ledger.canisterId,governanceCanisterId:this.governance.canisterId,swapCanisterId:this.swap.canisterId}}mergeParams(o){return{...o,certified:this.certified}}};var ee=require("@dfinity/utils");var Xe=({IDL:e})=>{let o=e.Record({sns_root_canister_id:e.Text,fallback_controller_principal_ids:e.Vec(e.Text),nns_governance_canister_id:e.Text,icp_ledger_canister_id:e.Text,sns_ledger_canister_id:e.Text,sns_governance_canister_id:e.Text}),s=e.Record({icp_e8s:e.Nat64,fee_override_e8s:e.Nat64}),r=e.Record({error_message:e.Text,error_type:e.Int32}),a=e.Record({governance_error:e.Opt(r)}),t=e.Record({code:e.Opt(e.Int32),description:e.Text}),c=e.Variant({Ok:a,Err:t}),d=e.Record({possibility:e.Opt(c)}),i=e.Record({err:e.Opt(t),dapp_canister_id:e.Opt(e.Principal)}),n=e.Record({failed_updates:e.Vec(i)}),_=e.Variant({Ok:n,Err:t}),m=e.Record({possibility:e.Opt(_)}),p=e.Variant({Err:t}),N=e.Record({possibility:e.Opt(p)}),l=e.Record({failure:e.Nat32,skipped:e.Nat32,success:e.Nat32}),u=e.Record({settle_community_fund_participation_result:e.Opt(d),set_dapp_controllers_result:e.Opt(m),sns_governance_normal_mode_enabled:e.Opt(N),sweep_icp:e.Opt(l),sweep_sns:e.Opt(l),create_neuron:e.Opt(l)}),R=e.Record({principal_id:e.Opt(e.Principal)}),S=e.Record({transfer_start_timestamp_seconds:e.Nat64,amount_e8s:e.Nat64,transfer_success_timestamp_seconds:e.Nat64}),P=e.Record({icp:e.Opt(S)}),V=e.Record({buyer_state:e.Opt(P)}),G=e.Record({buyers_total:e.Nat64}),q=e.Variant({stopped:e.Null,stopping:e.Null,running:e.Null}),A=e.Record({controller:e.Principal,freezing_threshold:e.Nat,controllers:e.Vec(e.Principal),memory_allocation:e.Nat,compute_allocation:e.Nat}),O=e.Record({controller:e.Principal,status:q,freezing_threshold:e.Nat,balance:e.Vec(e.Tuple(e.Vec(e.Nat8),e.Nat)),memory_size:e.Nat,cycles:e.Nat,settings:A,idle_cycles_burned_per_day:e.Nat,module_hash:e.Opt(e.Vec(e.Nat8))}),B=e.Record({hotkey_principal:e.Text,nns_neuron_id:e.Nat64}),g=e.Record({buyer_principal:e.Text}),T=e.Variant({CommunityFund:B,Direct:g}),x=e.Record({sns:e.Opt(S),investor:e.Opt(T)}),U=e.Record({nns_neuron_id:e.Nat64,amount_icp_e8s:e.Nat64}),y=e.Record({hotkey_principal:e.Text,cf_neurons:e.Vec(U)}),v=e.Record({min_participant_icp_e8s:e.Nat64,max_icp_e8s:e.Nat64,swap_due_timestamp_seconds:e.Nat64,min_participants:e.Nat32,sns_token_e8s:e.Nat64,max_participant_icp_e8s:e.Nat64,min_icp_e8s:e.Nat64}),z=e.Record({neuron_recipes:e.Vec(x),cf_participants:e.Vec(y),init:e.Opt(o),lifecycle:e.Int32,buyers:e.Vec(e.Tuple(e.Text,P)),params:e.Opt(v),open_sns_token_swap_proposal_id:e.Opt(e.Nat64)}),Q=e.Record({sns_tokens_per_icp:e.Float32,buyer_total_icp_e8s:e.Nat64}),W=e.Record({swap:e.Opt(z),derived:e.Opt(Q)}),h=e.Record({cf_participants:e.Vec(y),params:e.Opt(v),open_sns_token_swap_proposal_id:e.Opt(e.Nat64)}),b=e.Record({buyer:e.Text}),Y=e.Record({icp_accepted_participation_e8s:e.Nat64,icp_ledger_account_balance_e8s:e.Nat64});return e.Service({error_refund_icp:e.Func([s],[e.Record({})],[]),finalize_swap:e.Func([e.Record({})],[u],[]),get_buyer_state:e.Func([R],[V],[]),get_buyers_total:e.Func([e.Record({})],[G],[]),get_canister_status:e.Func([e.Record({})],[O],[]),get_state:e.Func([e.Record({})],[W],[]),open:e.Func([h],[e.Record({})],[]),refresh_buyer_tokens:e.Func([b],[Y],[])})};var He=({IDL:e})=>{let o=e.Record({sns_root_canister_id:e.Text,fallback_controller_principal_ids:e.Vec(e.Text),nns_governance_canister_id:e.Text,icp_ledger_canister_id:e.Text,sns_ledger_canister_id:e.Text,sns_governance_canister_id:e.Text}),s=e.Record({icp_e8s:e.Nat64,fee_override_e8s:e.Nat64}),r=e.Record({error_message:e.Text,error_type:e.Int32}),a=e.Record({governance_error:e.Opt(r)}),t=e.Record({code:e.Opt(e.Int32),description:e.Text}),c=e.Variant({Ok:a,Err:t}),d=e.Record({possibility:e.Opt(c)}),i=e.Record({err:e.Opt(t),dapp_canister_id:e.Opt(e.Principal)}),n=e.Record({failed_updates:e.Vec(i)}),_=e.Variant({Ok:n,Err:t}),m=e.Record({possibility:e.Opt(_)}),p=e.Variant({Err:t}),N=e.Record({possibility:e.Opt(p)}),l=e.Record({failure:e.Nat32,skipped:e.Nat32,success:e.Nat32}),u=e.Record({settle_community_fund_participation_result:e.Opt(d),set_dapp_controllers_result:e.Opt(m),sns_governance_normal_mode_enabled:e.Opt(N),sweep_icp:e.Opt(l),sweep_sns:e.Opt(l),create_neuron:e.Opt(l)}),R=e.Record({principal_id:e.Opt(e.Principal)}),S=e.Record({transfer_start_timestamp_seconds:e.Nat64,amount_e8s:e.Nat64,transfer_success_timestamp_seconds:e.Nat64}),P=e.Record({icp:e.Opt(S)}),V=e.Record({buyer_state:e.Opt(P)}),G=e.Record({buyers_total:e.Nat64}),q=e.Variant({stopped:e.Null,stopping:e.Null,running:e.Null}),A=e.Record({controller:e.Principal,freezing_threshold:e.Nat,controllers:e.Vec(e.Principal),memory_allocation:e.Nat,compute_allocation:e.Nat}),O=e.Record({controller:e.Principal,status:q,freezing_threshold:e.Nat,balance:e.Vec(e.Tuple(e.Vec(e.Nat8),e.Nat)),memory_size:e.Nat,cycles:e.Nat,settings:A,idle_cycles_burned_per_day:e.Nat,module_hash:e.Opt(e.Vec(e.Nat8))}),B=e.Record({hotkey_principal:e.Text,nns_neuron_id:e.Nat64}),g=e.Record({buyer_principal:e.Text}),T=e.Variant({CommunityFund:B,Direct:g}),x=e.Record({sns:e.Opt(S),investor:e.Opt(T)}),U=e.Record({nns_neuron_id:e.Nat64,amount_icp_e8s:e.Nat64}),y=e.Record({hotkey_principal:e.Text,cf_neurons:e.Vec(U)}),v=e.Record({min_participant_icp_e8s:e.Nat64,max_icp_e8s:e.Nat64,swap_due_timestamp_seconds:e.Nat64,min_participants:e.Nat32,sns_token_e8s:e.Nat64,max_participant_icp_e8s:e.Nat64,min_icp_e8s:e.Nat64}),z=e.Record({neuron_recipes:e.Vec(x),cf_participants:e.Vec(y),init:e.Opt(o),lifecycle:e.Int32,buyers:e.Vec(e.Tuple(e.Text,P)),params:e.Opt(v),open_sns_token_swap_proposal_id:e.Opt(e.Nat64)}),Q=e.Record({sns_tokens_per_icp:e.Float32,buyer_total_icp_e8s:e.Nat64}),W=e.Record({swap:e.Opt(z),derived:e.Opt(Q)}),h=e.Record({cf_participants:e.Vec(y),params:e.Opt(v),open_sns_token_swap_proposal_id:e.Opt(e.Nat64)}),b=e.Record({buyer:e.Text}),Y=e.Record({icp_accepted_participation_e8s:e.Nat64,icp_ledger_account_balance_e8s:e.Nat64});return e.Service({error_refund_icp:e.Func([s],[e.Record({})],[]),finalize_swap:e.Func([e.Record({})],[u],[]),get_buyer_state:e.Func([R],[V],["query"]),get_buyers_total:e.Func([e.Record({})],[G],[]),get_canister_status:e.Func([e.Record({})],[O],[]),get_state:e.Func([e.Record({})],[W],["query"]),open:e.Func([h],[e.Record({})],[]),refresh_buyer_tokens:e.Func([b],[Y],[])})};var k=class extends f{constructor(){super(...arguments);this.state=s=>this.caller(s).get_state({});this.notifyParticipation=async s=>{await this.caller({certified:!0}).refresh_buyer_tokens(s)};this.getUserCommitment=async s=>{let{buyer_state:r}=await this.caller({certified:s.certified}).get_buyer_state({principal_id:s.principal_id});return(0,ee.fromNullable)(r)}}static create(s){let{service:r,certifiedService:a,canisterId:t}=(0,ee.createServices)({options:s,idlFactory:He,certifiedIdlFactory:Xe});return new k(t,r,a)}};var st=async({agent:e,rootOptions:o,certified:s=!0})=>{let r=M.create({...o,agent:e}),{ledger:a,swap:t,governance:c}=await r.listSnsCanisters({certified:s}),d=(0,E.fromNullable)(c),i=(0,E.fromNullable)(a),n=(0,E.fromNullable)(t);return(0,E.assertNonNullish)(d),(0,E.assertNonNullish)(i),(0,E.assertNonNullish)(n),new D({root:r,governance:C.create({canisterId:d,agent:e}),ledger:F.create({canisterId:i,agent:e}),swap:k.create({canisterId:n,agent:e}),certified:s})};var Je=(a=>(a.SYMBOL="icrc1:symbol",a.NAME="icrc1:name",a.DECIMALS="icrc1:decimals",a.FEE="icrc1:fee",a))(Je||{});0&&(module.exports={SnsGovernanceCanister,SnsGovernanceError,SnsLedgerCanister,SnsMetadataResponseEntries,SnsNeuronPermissionType,SnsRootCanister,SnsSwapCanister,SnsSwapLifecycle,SnsWrapper,initSnsWrapper});
1
+ "use strict";var Ee=Object.defineProperty;var Le=Object.getOwnPropertyDescriptor;var et=Object.getOwnPropertyNames;var tt=Object.prototype.hasOwnProperty;var st=(e,r)=>{for(var s in r)Ee(e,s,{get:r[s],enumerable:!0})},rt=(e,r,s,o)=>{if(r&&typeof r=="object"||typeof r=="function")for(let a of et(r))!tt.call(e,a)&&a!==s&&Ee(e,a,{get:()=>r[a],enumerable:!(o=Le(r,a))||o.enumerable});return e};var ot=e=>rt(Ee({},"__esModule",{value:!0}),e);var pt={};st(pt,{SnsGovernanceCanister:()=>C,SnsGovernanceError:()=>X,SnsLedgerCanister:()=>F,SnsMetadataResponseEntries:()=>Ke,SnsNeuronPermissionType:()=>Ge,SnsRootCanister:()=>M,SnsSwapCanister:()=>k,SnsSwapLifecycle:()=>Ae,SnsWrapper:()=>D,decodeSnsAccount:()=>_t,encodeSnsAccount:()=>ct,initSnsWrapper:()=>at});module.exports=ot(pt);var Ge=(n=>(n[n.NEURON_PERMISSION_TYPE_UNSPECIFIED=0]="NEURON_PERMISSION_TYPE_UNSPECIFIED",n[n.NEURON_PERMISSION_TYPE_CONFIGURE_DISSOLVE_STATE=1]="NEURON_PERMISSION_TYPE_CONFIGURE_DISSOLVE_STATE",n[n.NEURON_PERMISSION_TYPE_MANAGE_PRINCIPALS=2]="NEURON_PERMISSION_TYPE_MANAGE_PRINCIPALS",n[n.NEURON_PERMISSION_TYPE_SUBMIT_PROPOSAL=3]="NEURON_PERMISSION_TYPE_SUBMIT_PROPOSAL",n[n.NEURON_PERMISSION_TYPE_VOTE=4]="NEURON_PERMISSION_TYPE_VOTE",n[n.NEURON_PERMISSION_TYPE_DISBURSE=5]="NEURON_PERMISSION_TYPE_DISBURSE",n[n.NEURON_PERMISSION_TYPE_SPLIT=6]="NEURON_PERMISSION_TYPE_SPLIT",n[n.NEURON_PERMISSION_TYPE_MERGE_MATURITY=7]="NEURON_PERMISSION_TYPE_MERGE_MATURITY",n[n.NEURON_PERMISSION_TYPE_DISBURSE_MATURITY=8]="NEURON_PERMISSION_TYPE_DISBURSE_MATURITY",n))(Ge||{});var Ae=(t=>(t[t.Unspecified=0]="Unspecified",t[t.Pending=1]="Pending",t[t.Open=2]="Open",t[t.Committed=3]="Committed",t[t.Aborted=4]="Aborted",t))(Ae||{});var X=class extends Error{};var w=require("@dfinity/utils");var qe=({IDL:e})=>{let r=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:r}),o=e.Record({id:e.Nat64,name:e.Text,description:e.Opt(e.Text),function_type:e.Opt(s)}),a=e.Record({not_dissolving_neurons_e8s_buckets:e.Vec(e.Tuple(e.Nat64,e.Float64)),garbage_collectable_neurons_count:e.Nat64,neurons_with_invalid_stake_count:e.Nat64,not_dissolving_neurons_count_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),neurons_with_less_than_6_months_dissolve_delay_count:e.Nat64,dissolved_neurons_count:e.Nat64,total_staked_e8s:e.Nat64,total_supply_governance_tokens:e.Nat64,not_dissolving_neurons_count:e.Nat64,dissolved_neurons_e8s:e.Nat64,neurons_with_less_than_6_months_dissolve_delay_e8s:e.Nat64,dissolving_neurons_count_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),dissolving_neurons_count:e.Nat64,dissolving_neurons_e8s_buckets:e.Vec(e.Tuple(e.Nat64,e.Float64)),timestamp_seconds:e.Nat64}),t=e.Record({id:e.Vec(e.Nat8)}),c=e.Record({followees:e.Vec(t)}),_=e.Record({followees:e.Vec(e.Tuple(e.Nat64,c))}),i=e.Record({permissions:e.Vec(e.Int32)}),n=e.Record({start_timestamp_seconds:e.Opt(e.Nat64),final_reward_rate_basis_points:e.Opt(e.Nat64),initial_reward_rate_basis_points:e.Opt(e.Nat64),reward_rate_transition_duration_seconds:e.Opt(e.Nat64),round_duration_seconds:e.Opt(e.Nat64)}),p=e.Record({default_followees:e.Opt(_),max_dissolve_delay_seconds:e.Opt(e.Nat64),max_followees_per_function:e.Opt(e.Nat64),neuron_claimer_permissions:e.Opt(i),neuron_minimum_stake_e8s:e.Opt(e.Nat64),max_neuron_age_for_age_bonus:e.Opt(e.Nat64),initial_voting_period_seconds:e.Opt(e.Nat64),neuron_minimum_dissolve_delay_to_vote_seconds:e.Opt(e.Nat64),reject_cost_e8s:e.Opt(e.Nat64),max_proposals_to_keep_per_action:e.Opt(e.Nat32),wait_for_quiet_deadline_increase_seconds:e.Opt(e.Nat64),max_number_of_neurons:e.Opt(e.Nat64),transaction_fee_e8s:e.Opt(e.Nat64),max_number_of_proposals_with_ballots:e.Opt(e.Nat64),neuron_grantable_permissions:e.Opt(i),voting_rewards_parameters:e.Opt(n),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)}),d=e.Record({id:e.Nat64}),N=e.Record({actual_timestamp_seconds:e.Nat64,distributed_e8s_equivalent:e.Nat64,round:e.Nat64,settled_proposals:e.Vec(d)}),l=e.Record({mark_failed_at_seconds:e.Nat64,checking_upgrade_lock:e.Nat64,proposal_id:e.Nat64,target_version:e.Opt(m)}),u=e.Record({error_message:e.Text,error_type:e.Int32}),R=e.Record({vote:e.Int32,cast_timestamp_seconds:e.Nat64,voting_power:e.Nat64}),S=e.Record({no:e.Nat64,yes:e.Nat64,total:e.Nat64,timestamp_seconds:e.Nat64}),P=e.Record({new_canister_wasm:e.Vec(e.Nat8),canister_id:e.Opt(e.Principal)}),T=e.Record({url:e.Opt(e.Text),logo:e.Opt(e.Text),name:e.Opt(e.Text),description:e.Opt(e.Text)}),G=e.Record({function_id:e.Nat64,payload:e.Vec(e.Nat8)}),A=e.Record({motion_text:e.Text}),q=e.Variant({ManageNervousSystemParameters:p,AddGenericNervousSystemFunction:o,RemoveGenericNervousSystemFunction:e.Nat64,UpgradeSnsToNextVersion:e.Record({}),UpgradeSnsControlledCanister:P,Unspecified:e.Record({}),ManageSnsMetadata:T,ExecuteGenericNervousSystemFunction:G,Motion:A}),g=e.Record({url:e.Text,title:e.Text,action:e.Opt(q),summary:e.Text}),B=e.Record({current_deadline_timestamp_seconds:e.Nat64}),O=e.Record({id:e.Opt(d),payload_text_rendering:e.Opt(e.Text),action:e.Nat64,failure_reason:e.Opt(u),ballots:e.Vec(e.Tuple(e.Text,R)),reward_event_round:e.Nat64,failed_timestamp_seconds:e.Nat64,proposal_creation_timestamp_seconds:e.Nat64,initial_voting_period_seconds:e.Nat64,reject_cost_e8s:e.Nat64,latest_tally:e.Opt(S),wait_for_quiet_deadline_increase_seconds:e.Nat64,decided_timestamp_seconds:e.Nat64,proposal:e.Opt(g),proposer:e.Opt(t),wait_for_quiet_state:e.Opt(B),is_eligible_for_rewards:e.Bool,executed_timestamp_seconds:e.Nat64}),V=e.Record({memo:e.Nat64,amount_e8s:e.Nat64}),x=e.Record({function_id:e.Nat64,followees:e.Vec(t)}),U=e.Record({subaccount:e.Vec(e.Nat8)}),y=e.Record({owner:e.Opt(e.Principal),subaccount:e.Opt(U)}),v=e.Record({to_account:e.Opt(y),percentage_to_disburse:e.Nat32}),z=e.Record({additional_dissolve_delay_seconds:e.Nat32}),Q=e.Record({dissolve_timestamp_seconds:e.Nat64}),W=e.Variant({StopDissolving:e.Record({}),StartDissolving:e.Record({}),IncreaseDissolveDelay:z,SetDissolveTimestamp:Q}),h=e.Record({operation:e.Opt(W)}),b=e.Record({vote:e.Int32,proposal:e.Opt(d)}),Y=e.Record({controller:e.Opt(e.Principal),memo:e.Nat64}),se=e.Variant({MemoAndController:Y,NeuronId:e.Record({})}),H=e.Record({by:e.Opt(se)}),Z=e.Record({permissions_to_remove:e.Opt(i),principal_id:e.Opt(e.Principal)}),J=e.Record({permissions_to_add:e.Opt(i),principal_id:e.Opt(e.Principal)}),K=e.Record({percentage_to_merge:e.Nat32}),re=e.Record({e8s:e.Nat64}),$=e.Record({to_account:e.Opt(y),amount:e.Opt(re)}),oe=e.Variant({Split:V,Follow:x,DisburseMaturity:v,Configure:h,RegisterVote:b,MakeProposal:g,ClaimOrRefreshNeuron:H,RemoveNeuronPermissions:Z,AddNeuronPermissions:J,MergeMaturity:K,Disburse:$}),ne=e.Record({command:e.Opt(oe),timestamp:e.Nat64}),ae=e.Record({principal:e.Opt(e.Principal),permission_type:e.Vec(e.Int32)}),ie=e.Variant({DissolveDelaySeconds:e.Nat64,WhenDissolvedTimestampSeconds:e.Nat64}),j=e.Record({id:e.Opt(t),permissions:e.Vec(ae),maturity_e8s_equivalent:e.Nat64,cached_neuron_stake_e8s:e.Nat64,created_timestamp_seconds:e.Nat64,aging_since_timestamp_seconds:e.Nat64,dissolve_state:e.Opt(ie),voting_power_percentage_multiplier:e.Nat64,followees:e.Vec(e.Tuple(e.Nat64,c)),neuron_fees_e8s:e.Nat64}),De=e.Record({root_canister_id:e.Opt(e.Principal),id_to_nervous_system_functions:e.Vec(e.Tuple(e.Nat64,o)),metrics:e.Opt(a),mode:e.Int32,parameters:e.Opt(p),deployed_version:e.Opt(m),sns_initialization_parameters:e.Text,latest_reward_event:e.Opt(N),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,O)),in_flight_commands:e.Vec(e.Tuple(e.Text,ne)),sns_metadata:e.Opt(T),neurons:e.Vec(e.Tuple(e.Text,j)),genesis_timestamp_seconds:e.Nat64}),ce=e.Record({url:e.Opt(e.Text),logo:e.Opt(e.Text),name:e.Opt(e.Text),description:e.Opt(e.Text)}),_e=e.Record({neuron_id:e.Opt(t)}),pe=e.Variant({Error:u,Neuron:j}),de=e.Record({result:e.Opt(pe)}),I=e.Record({proposal_id:e.Opt(d)}),le=e.Variant({Error:u,Proposal:O}),ue=e.Record({result:e.Opt(le)}),me=e.Variant({stopped:e.Null,stopping:e.Null,running:e.Null}),Ne=e.Record({controller:e.Principal,freezing_threshold:e.Nat,controllers:e.Vec(e.Principal),memory_allocation:e.Nat,compute_allocation:e.Nat}),Re=e.Record({controller:e.Principal,status:me,freezing_threshold:e.Nat,balance:e.Vec(e.Tuple(e.Vec(e.Nat8),e.Nat)),memory_size:e.Nat,cycles:e.Nat,settings:Ne,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)}),Oe=e.Record({sns_initialization_parameters:e.Text}),ye=e.Record({reserved_ids:e.Vec(e.Nat64),functions:e.Vec(o)}),ve=e.Record({of_principal:e.Opt(e.Principal),limit:e.Nat32,start_page_at:e.Opt(t)}),fe=e.Record({neurons:e.Vec(j)}),Se=e.Record({include_reward_status:e.Vec(e.Int32),before_proposal:e.Opt(d),limit:e.Nat32,exclude_type:e.Vec(e.Nat64),include_status:e.Vec(e.Int32)}),Pe=e.Record({proposals:e.Vec(O)}),Te=e.Variant({Split:V,Follow:x,DisburseMaturity:v,ClaimOrRefresh:H,Configure:h,RegisterVote:b,MakeProposal:g,RemoveNeuronPermissions:Z,AddNeuronPermissions:J,MergeMaturity:K,Disburse:$}),Ve=e.Record({subaccount:e.Vec(e.Nat8),command:e.Opt(Te)}),xe=e.Record({created_neuron_id:e.Opt(t)}),he=e.Record({transfer_block_height:e.Nat64,amount_disbursed_e8s:e.Nat64}),be=e.Record({refreshed_neuron_id:e.Opt(t)}),we=e.Record({merged_maturity_e8s:e.Nat64,new_stake_e8s:e.Nat64}),Ce=e.Record({transfer_block_height:e.Nat64}),Fe=e.Variant({Error:u,Split:xe,Follow:e.Record({}),DisburseMaturity:he,ClaimOrRefresh:be,Configure:e.Record({}),RegisterVote:e.Record({}),MakeProposal:I,RemoveNeuronPermission:e.Record({}),MergeMaturity:we,Disburse:Ce,AddNeuronPermission:e.Record({})}),Me=e.Record({command:e.Opt(Fe)}),ke=e.Record({mode:e.Int32});return e.Service({get_build_metadata:e.Func([],[e.Text],[]),get_metadata:e.Func([e.Record({})],[ce],[]),get_nervous_system_parameters:e.Func([e.Null],[p],[]),get_neuron:e.Func([_e],[de],[]),get_proposal:e.Func([I],[ue],[]),get_root_canister_status:e.Func([e.Null],[Re],[]),get_running_sns_version:e.Func([e.Record({})],[ge],[]),get_sns_initialization_parameters:e.Func([e.Record({})],[Oe],[]),list_nervous_system_functions:e.Func([],[ye],[]),list_neurons:e.Func([ve],[fe],[]),list_proposals:e.Func([Se],[Pe],[]),manage_neuron:e.Func([Ve],[Me],[]),set_mode:e.Func([ke],[e.Record({})],[])})};var Be=({IDL:e})=>{let r=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:r}),o=e.Record({id:e.Nat64,name:e.Text,description:e.Opt(e.Text),function_type:e.Opt(s)}),a=e.Record({not_dissolving_neurons_e8s_buckets:e.Vec(e.Tuple(e.Nat64,e.Float64)),garbage_collectable_neurons_count:e.Nat64,neurons_with_invalid_stake_count:e.Nat64,not_dissolving_neurons_count_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),neurons_with_less_than_6_months_dissolve_delay_count:e.Nat64,dissolved_neurons_count:e.Nat64,total_staked_e8s:e.Nat64,total_supply_governance_tokens:e.Nat64,not_dissolving_neurons_count:e.Nat64,dissolved_neurons_e8s:e.Nat64,neurons_with_less_than_6_months_dissolve_delay_e8s:e.Nat64,dissolving_neurons_count_buckets:e.Vec(e.Tuple(e.Nat64,e.Nat64)),dissolving_neurons_count:e.Nat64,dissolving_neurons_e8s_buckets:e.Vec(e.Tuple(e.Nat64,e.Float64)),timestamp_seconds:e.Nat64}),t=e.Record({id:e.Vec(e.Nat8)}),c=e.Record({followees:e.Vec(t)}),_=e.Record({followees:e.Vec(e.Tuple(e.Nat64,c))}),i=e.Record({permissions:e.Vec(e.Int32)}),n=e.Record({start_timestamp_seconds:e.Opt(e.Nat64),final_reward_rate_basis_points:e.Opt(e.Nat64),initial_reward_rate_basis_points:e.Opt(e.Nat64),reward_rate_transition_duration_seconds:e.Opt(e.Nat64),round_duration_seconds:e.Opt(e.Nat64)}),p=e.Record({default_followees:e.Opt(_),max_dissolve_delay_seconds:e.Opt(e.Nat64),max_followees_per_function:e.Opt(e.Nat64),neuron_claimer_permissions:e.Opt(i),neuron_minimum_stake_e8s:e.Opt(e.Nat64),max_neuron_age_for_age_bonus:e.Opt(e.Nat64),initial_voting_period_seconds:e.Opt(e.Nat64),neuron_minimum_dissolve_delay_to_vote_seconds:e.Opt(e.Nat64),reject_cost_e8s:e.Opt(e.Nat64),max_proposals_to_keep_per_action:e.Opt(e.Nat32),wait_for_quiet_deadline_increase_seconds:e.Opt(e.Nat64),max_number_of_neurons:e.Opt(e.Nat64),transaction_fee_e8s:e.Opt(e.Nat64),max_number_of_proposals_with_ballots:e.Opt(e.Nat64),neuron_grantable_permissions:e.Opt(i),voting_rewards_parameters:e.Opt(n),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)}),d=e.Record({id:e.Nat64}),N=e.Record({actual_timestamp_seconds:e.Nat64,distributed_e8s_equivalent:e.Nat64,round:e.Nat64,settled_proposals:e.Vec(d)}),l=e.Record({mark_failed_at_seconds:e.Nat64,checking_upgrade_lock:e.Nat64,proposal_id:e.Nat64,target_version:e.Opt(m)}),u=e.Record({error_message:e.Text,error_type:e.Int32}),R=e.Record({vote:e.Int32,cast_timestamp_seconds:e.Nat64,voting_power:e.Nat64}),S=e.Record({no:e.Nat64,yes:e.Nat64,total:e.Nat64,timestamp_seconds:e.Nat64}),P=e.Record({new_canister_wasm:e.Vec(e.Nat8),canister_id:e.Opt(e.Principal)}),T=e.Record({url:e.Opt(e.Text),logo:e.Opt(e.Text),name:e.Opt(e.Text),description:e.Opt(e.Text)}),G=e.Record({function_id:e.Nat64,payload:e.Vec(e.Nat8)}),A=e.Record({motion_text:e.Text}),q=e.Variant({ManageNervousSystemParameters:p,AddGenericNervousSystemFunction:o,RemoveGenericNervousSystemFunction:e.Nat64,UpgradeSnsToNextVersion:e.Record({}),UpgradeSnsControlledCanister:P,Unspecified:e.Record({}),ManageSnsMetadata:T,ExecuteGenericNervousSystemFunction:G,Motion:A}),g=e.Record({url:e.Text,title:e.Text,action:e.Opt(q),summary:e.Text}),B=e.Record({current_deadline_timestamp_seconds:e.Nat64}),O=e.Record({id:e.Opt(d),payload_text_rendering:e.Opt(e.Text),action:e.Nat64,failure_reason:e.Opt(u),ballots:e.Vec(e.Tuple(e.Text,R)),reward_event_round:e.Nat64,failed_timestamp_seconds:e.Nat64,proposal_creation_timestamp_seconds:e.Nat64,initial_voting_period_seconds:e.Nat64,reject_cost_e8s:e.Nat64,latest_tally:e.Opt(S),wait_for_quiet_deadline_increase_seconds:e.Nat64,decided_timestamp_seconds:e.Nat64,proposal:e.Opt(g),proposer:e.Opt(t),wait_for_quiet_state:e.Opt(B),is_eligible_for_rewards:e.Bool,executed_timestamp_seconds:e.Nat64}),V=e.Record({memo:e.Nat64,amount_e8s:e.Nat64}),x=e.Record({function_id:e.Nat64,followees:e.Vec(t)}),U=e.Record({subaccount:e.Vec(e.Nat8)}),y=e.Record({owner:e.Opt(e.Principal),subaccount:e.Opt(U)}),v=e.Record({to_account:e.Opt(y),percentage_to_disburse:e.Nat32}),z=e.Record({additional_dissolve_delay_seconds:e.Nat32}),Q=e.Record({dissolve_timestamp_seconds:e.Nat64}),W=e.Variant({StopDissolving:e.Record({}),StartDissolving:e.Record({}),IncreaseDissolveDelay:z,SetDissolveTimestamp:Q}),h=e.Record({operation:e.Opt(W)}),b=e.Record({vote:e.Int32,proposal:e.Opt(d)}),Y=e.Record({controller:e.Opt(e.Principal),memo:e.Nat64}),se=e.Variant({MemoAndController:Y,NeuronId:e.Record({})}),H=e.Record({by:e.Opt(se)}),Z=e.Record({permissions_to_remove:e.Opt(i),principal_id:e.Opt(e.Principal)}),J=e.Record({permissions_to_add:e.Opt(i),principal_id:e.Opt(e.Principal)}),K=e.Record({percentage_to_merge:e.Nat32}),re=e.Record({e8s:e.Nat64}),$=e.Record({to_account:e.Opt(y),amount:e.Opt(re)}),oe=e.Variant({Split:V,Follow:x,DisburseMaturity:v,Configure:h,RegisterVote:b,MakeProposal:g,ClaimOrRefreshNeuron:H,RemoveNeuronPermissions:Z,AddNeuronPermissions:J,MergeMaturity:K,Disburse:$}),ne=e.Record({command:e.Opt(oe),timestamp:e.Nat64}),ae=e.Record({principal:e.Opt(e.Principal),permission_type:e.Vec(e.Int32)}),ie=e.Variant({DissolveDelaySeconds:e.Nat64,WhenDissolvedTimestampSeconds:e.Nat64}),j=e.Record({id:e.Opt(t),permissions:e.Vec(ae),maturity_e8s_equivalent:e.Nat64,cached_neuron_stake_e8s:e.Nat64,created_timestamp_seconds:e.Nat64,aging_since_timestamp_seconds:e.Nat64,dissolve_state:e.Opt(ie),voting_power_percentage_multiplier:e.Nat64,followees:e.Vec(e.Tuple(e.Nat64,c)),neuron_fees_e8s:e.Nat64}),De=e.Record({root_canister_id:e.Opt(e.Principal),id_to_nervous_system_functions:e.Vec(e.Tuple(e.Nat64,o)),metrics:e.Opt(a),mode:e.Int32,parameters:e.Opt(p),deployed_version:e.Opt(m),sns_initialization_parameters:e.Text,latest_reward_event:e.Opt(N),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,O)),in_flight_commands:e.Vec(e.Tuple(e.Text,ne)),sns_metadata:e.Opt(T),neurons:e.Vec(e.Tuple(e.Text,j)),genesis_timestamp_seconds:e.Nat64}),ce=e.Record({url:e.Opt(e.Text),logo:e.Opt(e.Text),name:e.Opt(e.Text),description:e.Opt(e.Text)}),_e=e.Record({neuron_id:e.Opt(t)}),pe=e.Variant({Error:u,Neuron:j}),de=e.Record({result:e.Opt(pe)}),I=e.Record({proposal_id:e.Opt(d)}),le=e.Variant({Error:u,Proposal:O}),ue=e.Record({result:e.Opt(le)}),me=e.Variant({stopped:e.Null,stopping:e.Null,running:e.Null}),Ne=e.Record({controller:e.Principal,freezing_threshold:e.Nat,controllers:e.Vec(e.Principal),memory_allocation:e.Nat,compute_allocation:e.Nat}),Re=e.Record({controller:e.Principal,status:me,freezing_threshold:e.Nat,balance:e.Vec(e.Tuple(e.Vec(e.Nat8),e.Nat)),memory_size:e.Nat,cycles:e.Nat,settings:Ne,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)}),Oe=e.Record({sns_initialization_parameters:e.Text}),ye=e.Record({reserved_ids:e.Vec(e.Nat64),functions:e.Vec(o)}),ve=e.Record({of_principal:e.Opt(e.Principal),limit:e.Nat32,start_page_at:e.Opt(t)}),fe=e.Record({neurons:e.Vec(j)}),Se=e.Record({include_reward_status:e.Vec(e.Int32),before_proposal:e.Opt(d),limit:e.Nat32,exclude_type:e.Vec(e.Nat64),include_status:e.Vec(e.Int32)}),Pe=e.Record({proposals:e.Vec(O)}),Te=e.Variant({Split:V,Follow:x,DisburseMaturity:v,ClaimOrRefresh:H,Configure:h,RegisterVote:b,MakeProposal:g,RemoveNeuronPermissions:Z,AddNeuronPermissions:J,MergeMaturity:K,Disburse:$}),Ve=e.Record({subaccount:e.Vec(e.Nat8),command:e.Opt(Te)}),xe=e.Record({created_neuron_id:e.Opt(t)}),he=e.Record({transfer_block_height:e.Nat64,amount_disbursed_e8s:e.Nat64}),be=e.Record({refreshed_neuron_id:e.Opt(t)}),we=e.Record({merged_maturity_e8s:e.Nat64,new_stake_e8s:e.Nat64}),Ce=e.Record({transfer_block_height:e.Nat64}),Fe=e.Variant({Error:u,Split:xe,Follow:e.Record({}),DisburseMaturity:he,ClaimOrRefresh:be,Configure:e.Record({}),RegisterVote:e.Record({}),MakeProposal:I,RemoveNeuronPermission:e.Record({}),MergeMaturity:we,Disburse:Ce,AddNeuronPermission:e.Record({})}),Me=e.Record({command:e.Opt(Fe)}),ke=e.Record({mode:e.Int32});return e.Service({get_build_metadata:e.Func([],[e.Text],["query"]),get_metadata:e.Func([e.Record({})],[ce],["query"]),get_nervous_system_parameters:e.Func([e.Null],[p],["query"]),get_neuron:e.Func([_e],[de],["query"]),get_proposal:e.Func([I],[ue],["query"]),get_root_canister_status:e.Func([e.Null],[Re],[]),get_running_sns_version:e.Func([e.Record({})],[ge],["query"]),get_sns_initialization_parameters:e.Func([e.Record({})],[Oe],["query"]),list_nervous_system_functions:e.Func([],[ye],["query"]),list_neurons:e.Func([ve],[fe],["query"]),list_proposals:e.Func([Se],[Pe],["query"]),manage_neuron:e.Func([Ve],[Me],[]),set_mode:e.Func([ke],[e.Record({})],[])})};var Ue=({neuronId:e,permissions:r,principal:s})=>({subaccount:e.id,command:[{AddNeuronPermissions:{permissions_to_add:[{permissions:Int32Array.from(r)}],principal_id:[s]}}]}),ze=({neuronId:e,permissions:r,principal:s})=>({subaccount:e.id,command:[{RemoveNeuronPermissions:{permissions_to_remove:[{permissions:Int32Array.from(r)}],principal_id:[s]}}]}),Qe=({neuronId:{id:e},amount:r})=>({subaccount:e,command:[{Disburse:{to_account:[],amount:r===void 0?[]:[{e8s:r}]}}]});var f=class{constructor(r,s,o){this.id=r;this.service=s;this.certifiedService=o;this.caller=({certified:r=!0})=>r?this.certifiedService:this.service}get canisterId(){return this.id}};var C=class extends f{constructor(){super(...arguments);this.listNeurons=async s=>{let{principal:o,limit:a,beforeNeuronId:t}=s,{neurons:c}=await this.caller(s).list_neurons({of_principal:(0,w.toNullable)(o),limit:a??100,start_page_at:(0,w.toNullable)(t)});return c};this.metadata=s=>this.caller(s).get_metadata({});this.getNeuron=async s=>{let{neuronId:o}=s,{result:a}=await this.caller(s).get_neuron({neuron_id:(0,w.toNullable)(o)}),t=(0,w.fromNullable)(a);if(t===void 0||"Error"in t)throw new X((t==null?void 0:t.Error.error_message)??"Response type not supported");return t.Neuron};this.manageNeuron=async s=>{let o=await this.caller({certified:!0}).manage_neuron(s);return this.assertManageNeuronError(o),o};this.addNeuronPermissions=async s=>{let o=Ue(s);await this.manageNeuron(o)};this.removeNeuronPermissions=async s=>{let o=ze(s);await this.manageNeuron(o)};this.disburse=async s=>{let o=Qe(s);await this.manageNeuron(o)};this.assertManageNeuronError=({command:s})=>{let o=s[0];if(o!==void 0&&"Error"in o)throw new X(o.Error.error_message)}}static create(s){let{service:o,certifiedService:a,canisterId:t}=(0,w.createServices)({options:s,idlFactory:Be,certifiedIdlFactory:qe});return new C(t,o,a)}};var ee=require("@dfinity/utils");var We=({IDL:e})=>{let r=e.Variant({Int:e.Int,Nat:e.Nat,Blob:e.Vec(e.Nat8),Text:e.Text}),s=e.Vec(e.Nat8),o=e.Record({owner:e.Principal,subaccount:e.Opt(s)}),a=e.Record({token_symbol:e.Text,transfer_fee:e.Nat64,metadata:e.Vec(e.Tuple(e.Text,r)),minting_account:o,initial_balances:e.Vec(e.Tuple(o,e.Nat64)),archive_options:e.Record({num_blocks_to_archive:e.Nat64,trigger_threshold:e.Nat64,max_message_size_bytes:e.Opt(e.Nat64),cycles_for_archive_creation:e.Opt(e.Nat64),node_max_memory_size_bytes:e.Opt(e.Nat64),controller_id:e.Principal}),token_name:e.Text}),t=e.Nat,c=e.Nat64,_=e.Record({to:o,fee:e.Opt(t),memo:e.Opt(e.Vec(e.Nat8)),from_subaccount:e.Opt(s),created_at_time:e.Opt(c),amount:t}),i=e.Nat,n=e.Variant({GenericError:e.Record({message:e.Text,error_code:e.Nat}),TemporarilyUnavailable:e.Null,BadBurn:e.Record({min_burn_amount:t}),Duplicate:e.Record({duplicate_of:i}),BadFee:e.Record({expected_fee:t}),CreatedInFuture:e.Record({ledger_time:e.Nat64}),TooOld:e.Null,InsufficientFunds:e.Record({balance:t})}),p=e.Variant({Ok:i,Err:n});return e.Service({icrc1_balance_of:e.Func([o],[t],[]),icrc1_decimals:e.Func([],[e.Nat8],[]),icrc1_fee:e.Func([],[t],[]),icrc1_metadata:e.Func([],[e.Vec(e.Tuple(e.Text,r))],[]),icrc1_minting_account:e.Func([],[e.Opt(o)],[]),icrc1_name:e.Func([],[e.Text],[]),icrc1_supported_standards:e.Func([],[e.Vec(e.Record({url:e.Text,name:e.Text}))],[]),icrc1_symbol:e.Func([],[e.Text],[]),icrc1_total_supply:e.Func([],[t],[]),icrc1_transfer:e.Func([_],[p],[])})};var Ye=({IDL:e})=>{let r=e.Variant({Int:e.Int,Nat:e.Nat,Blob:e.Vec(e.Nat8),Text:e.Text}),s=e.Vec(e.Nat8),o=e.Record({owner:e.Principal,subaccount:e.Opt(s)}),a=e.Record({token_symbol:e.Text,transfer_fee:e.Nat64,metadata:e.Vec(e.Tuple(e.Text,r)),minting_account:o,initial_balances:e.Vec(e.Tuple(o,e.Nat64)),archive_options:e.Record({num_blocks_to_archive:e.Nat64,trigger_threshold:e.Nat64,max_message_size_bytes:e.Opt(e.Nat64),cycles_for_archive_creation:e.Opt(e.Nat64),node_max_memory_size_bytes:e.Opt(e.Nat64),controller_id:e.Principal}),token_name:e.Text}),t=e.Nat,c=e.Nat64,_=e.Record({to:o,fee:e.Opt(t),memo:e.Opt(e.Vec(e.Nat8)),from_subaccount:e.Opt(s),created_at_time:e.Opt(c),amount:t}),i=e.Nat,n=e.Variant({GenericError:e.Record({message:e.Text,error_code:e.Nat}),TemporarilyUnavailable:e.Null,BadBurn:e.Record({min_burn_amount:t}),Duplicate:e.Record({duplicate_of:i}),BadFee:e.Record({expected_fee:t}),CreatedInFuture:e.Record({ledger_time:e.Nat64}),TooOld:e.Null,InsufficientFunds:e.Record({balance:t})}),p=e.Variant({Ok:i,Err:n});return e.Service({icrc1_balance_of:e.Func([o],[t],["query"]),icrc1_decimals:e.Func([],[e.Nat8],["query"]),icrc1_fee:e.Func([],[t],["query"]),icrc1_metadata:e.Func([],[e.Vec(e.Tuple(e.Text,r))],["query"]),icrc1_minting_account:e.Func([],[e.Opt(o)],["query"]),icrc1_name:e.Func([],[e.Text],["query"]),icrc1_supported_standards:e.Func([],[e.Vec(e.Record({url:e.Text,name:e.Text}))],["query"]),icrc1_symbol:e.Func([],[e.Text],["query"]),icrc1_total_supply:e.Func([],[t],["query"]),icrc1_transfer:e.Func([_],[p],[])})};var F=class extends f{constructor(){super(...arguments);this.metadata=s=>this.caller(s).icrc1_metadata();this.balance=s=>this.caller({certified:s.certified}).icrc1_balance_of({owner:s.owner,subaccount:(0,ee.toNullable)(s.subaccount)})}static create(s){let{service:o,certifiedService:a,canisterId:t}=(0,ee.createServices)({options:s,idlFactory:Ye,certifiedIdlFactory:We});return new F(t,o,a)}};var He=require("@dfinity/utils");var je=({IDL:e})=>{let r=e.Record({dapp_canister_ids:e.Vec(e.Principal),latest_ledger_archive_poll_timestamp_seconds:e.Opt(e.Nat64),archive_canister_ids:e.Vec(e.Principal),governance_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}),o=e.Variant({stopped:e.Null,stopping:e.Null,running:e.Null}),a=e.Record({controller:e.Principal,status:o,memory_size:e.Nat,module_hash:e.Opt(e.Vec(e.Nat8))}),t=e.Record({update_canister_list:e.Opt(e.Bool)}),c=e.Variant({stopped:e.Null,stopping:e.Null,running:e.Null}),_=e.Record({controller:e.Principal,freezing_threshold:e.Nat,controllers:e.Vec(e.Principal),memory_allocation:e.Nat,compute_allocation:e.Nat}),i=e.Record({controller:e.Principal,status:c,freezing_threshold:e.Nat,balance:e.Vec(e.Tuple(e.Vec(e.Nat8),e.Nat)),memory_size:e.Nat,cycles:e.Nat,settings:_,idle_cycles_burned_per_day:e.Nat,module_hash:e.Opt(e.Vec(e.Nat8))}),n=e.Record({status:e.Opt(i),canister_id:e.Opt(e.Principal)}),p=e.Record({root:e.Opt(n),swap:e.Opt(n),ledger:e.Opt(n),governance:e.Opt(n),dapps:e.Vec(n),archives:e.Vec(n)}),m=e.Record({root:e.Opt(e.Principal),swap:e.Opt(e.Principal),ledger:e.Opt(e.Principal),governance:e.Opt(e.Principal),dapps:e.Vec(e.Principal),archives:e.Vec(e.Principal)}),d=e.Record({canister_id:e.Opt(e.Principal)}),N=e.Record({controller_principal_ids:e.Vec(e.Principal)}),l=e.Record({code:e.Opt(e.Int32),description:e.Text}),u=e.Record({err:e.Opt(l),dapp_canister_id:e.Opt(e.Principal)}),R=e.Record({failed_updates:e.Vec(u)});return e.Service({canister_status:e.Func([s],[a],[]),get_build_metadata:e.Func([],[e.Text],[]),get_sns_canisters_summary:e.Func([t],[p],[]),list_sns_canisters:e.Func([e.Record({})],[m],[]),register_dapp_canister:e.Func([d],[e.Record({})],[]),set_dapp_controllers:e.Func([N],[R],[])})};var Xe=({IDL:e})=>{let r=e.Record({dapp_canister_ids:e.Vec(e.Principal),latest_ledger_archive_poll_timestamp_seconds:e.Opt(e.Nat64),archive_canister_ids:e.Vec(e.Principal),governance_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}),o=e.Variant({stopped:e.Null,stopping:e.Null,running:e.Null}),a=e.Record({controller:e.Principal,status:o,memory_size:e.Nat,module_hash:e.Opt(e.Vec(e.Nat8))}),t=e.Record({update_canister_list:e.Opt(e.Bool)}),c=e.Variant({stopped:e.Null,stopping:e.Null,running:e.Null}),_=e.Record({controller:e.Principal,freezing_threshold:e.Nat,controllers:e.Vec(e.Principal),memory_allocation:e.Nat,compute_allocation:e.Nat}),i=e.Record({controller:e.Principal,status:c,freezing_threshold:e.Nat,balance:e.Vec(e.Tuple(e.Vec(e.Nat8),e.Nat)),memory_size:e.Nat,cycles:e.Nat,settings:_,idle_cycles_burned_per_day:e.Nat,module_hash:e.Opt(e.Vec(e.Nat8))}),n=e.Record({status:e.Opt(i),canister_id:e.Opt(e.Principal)}),p=e.Record({root:e.Opt(n),swap:e.Opt(n),ledger:e.Opt(n),governance:e.Opt(n),dapps:e.Vec(n),archives:e.Vec(n)}),m=e.Record({root:e.Opt(e.Principal),swap:e.Opt(e.Principal),ledger:e.Opt(e.Principal),governance:e.Opt(e.Principal),dapps:e.Vec(e.Principal),archives:e.Vec(e.Principal)}),d=e.Record({canister_id:e.Opt(e.Principal)}),N=e.Record({controller_principal_ids:e.Vec(e.Principal)}),l=e.Record({code:e.Opt(e.Int32),description:e.Text}),u=e.Record({err:e.Opt(l),dapp_canister_id:e.Opt(e.Principal)}),R=e.Record({failed_updates:e.Vec(u)});return e.Service({canister_status:e.Func([s],[a],[]),get_build_metadata:e.Func([],[e.Text],["query"]),get_sns_canisters_summary:e.Func([t],[p],[]),list_sns_canisters:e.Func([e.Record({})],[m],["query"]),register_dapp_canister:e.Func([d],[e.Record({})],[]),set_dapp_controllers:e.Func([N],[R],[])})};var M=class extends f{constructor(){super(...arguments);this.listSnsCanisters=async({certified:s=!0})=>this.caller({certified:s}).list_sns_canisters({})}static create(s){let{service:o,certifiedService:a,canisterId:t}=(0,He.createServices)({options:s,idlFactory:Xe,certifiedIdlFactory:je});return new M(t,o,a)}};var E=require("@dfinity/utils");var D=class{constructor({root:r,governance:s,ledger:o,swap:a,certified:t}){this.listNeurons=r=>this.governance.listNeurons(this.mergeParams(r));this.metadata=r=>Promise.all([this.governance.metadata(this.mergeParams(r)),this.ledger.metadata(this.mergeParams(r))]);this.ledgerMetadata=r=>this.ledger.metadata(this.mergeParams(r));this.balance=r=>this.ledger.balance(this.mergeParams(r));this.getNeuron=r=>this.governance.getNeuron(this.mergeParams(r));this.addNeuronPermissions=r=>this.governance.addNeuronPermissions(r);this.removeNeuronPermissions=r=>this.governance.removeNeuronPermissions(r);this.disburse=r=>this.governance.disburse(r);this.swapState=r=>this.swap.state(this.mergeParams(r));this.notifyParticipation=r=>this.swap.notifyParticipation(r);this.getUserCommitment=r=>this.swap.getUserCommitment(this.mergeParams(r));this.root=r,this.governance=s,this.ledger=o,this.swap=a,this.certified=t}get canisterIds(){return{rootCanisterId:this.root.canisterId,ledgerCanisterId:this.ledger.canisterId,governanceCanisterId:this.governance.canisterId,swapCanisterId:this.swap.canisterId}}mergeParams(r){return{...r,certified:this.certified}}};var te=require("@dfinity/utils");var Ze=({IDL:e})=>{let r=e.Record({sns_root_canister_id:e.Text,fallback_controller_principal_ids:e.Vec(e.Text),nns_governance_canister_id:e.Text,icp_ledger_canister_id:e.Text,sns_ledger_canister_id:e.Text,sns_governance_canister_id:e.Text}),s=e.Record({icp_e8s:e.Nat64,fee_override_e8s:e.Nat64}),o=e.Record({error_message:e.Text,error_type:e.Int32}),a=e.Record({governance_error:e.Opt(o)}),t=e.Record({code:e.Opt(e.Int32),description:e.Text}),c=e.Variant({Ok:a,Err:t}),_=e.Record({possibility:e.Opt(c)}),i=e.Record({err:e.Opt(t),dapp_canister_id:e.Opt(e.Principal)}),n=e.Record({failed_updates:e.Vec(i)}),p=e.Variant({Ok:n,Err:t}),m=e.Record({possibility:e.Opt(p)}),d=e.Variant({Err:t}),N=e.Record({possibility:e.Opt(d)}),l=e.Record({failure:e.Nat32,skipped:e.Nat32,success:e.Nat32}),u=e.Record({settle_community_fund_participation_result:e.Opt(_),set_dapp_controllers_result:e.Opt(m),sns_governance_normal_mode_enabled:e.Opt(N),sweep_icp:e.Opt(l),sweep_sns:e.Opt(l),create_neuron:e.Opt(l)}),R=e.Record({principal_id:e.Opt(e.Principal)}),S=e.Record({transfer_start_timestamp_seconds:e.Nat64,amount_e8s:e.Nat64,transfer_success_timestamp_seconds:e.Nat64}),P=e.Record({icp:e.Opt(S)}),T=e.Record({buyer_state:e.Opt(P)}),G=e.Record({buyers_total:e.Nat64}),A=e.Variant({stopped:e.Null,stopping:e.Null,running:e.Null}),q=e.Record({controller:e.Principal,freezing_threshold:e.Nat,controllers:e.Vec(e.Principal),memory_allocation:e.Nat,compute_allocation:e.Nat}),g=e.Record({controller:e.Principal,status:A,freezing_threshold:e.Nat,balance:e.Vec(e.Tuple(e.Vec(e.Nat8),e.Nat)),memory_size:e.Nat,cycles:e.Nat,settings:q,idle_cycles_burned_per_day:e.Nat,module_hash:e.Opt(e.Vec(e.Nat8))}),B=e.Record({hotkey_principal:e.Text,nns_neuron_id:e.Nat64}),O=e.Record({buyer_principal:e.Text}),V=e.Variant({CommunityFund:B,Direct:O}),x=e.Record({sns:e.Opt(S),investor:e.Opt(V)}),U=e.Record({nns_neuron_id:e.Nat64,amount_icp_e8s:e.Nat64}),y=e.Record({hotkey_principal:e.Text,cf_neurons:e.Vec(U)}),v=e.Record({min_participant_icp_e8s:e.Nat64,max_icp_e8s:e.Nat64,swap_due_timestamp_seconds:e.Nat64,min_participants:e.Nat32,sns_token_e8s:e.Nat64,max_participant_icp_e8s:e.Nat64,min_icp_e8s:e.Nat64}),z=e.Record({neuron_recipes:e.Vec(x),cf_participants:e.Vec(y),init:e.Opt(r),lifecycle:e.Int32,buyers:e.Vec(e.Tuple(e.Text,P)),params:e.Opt(v),open_sns_token_swap_proposal_id:e.Opt(e.Nat64)}),Q=e.Record({sns_tokens_per_icp:e.Float32,buyer_total_icp_e8s:e.Nat64}),W=e.Record({swap:e.Opt(z),derived:e.Opt(Q)}),h=e.Record({cf_participants:e.Vec(y),params:e.Opt(v),open_sns_token_swap_proposal_id:e.Opt(e.Nat64)}),b=e.Record({buyer:e.Text}),Y=e.Record({icp_accepted_participation_e8s:e.Nat64,icp_ledger_account_balance_e8s:e.Nat64});return e.Service({error_refund_icp:e.Func([s],[e.Record({})],[]),finalize_swap:e.Func([e.Record({})],[u],[]),get_buyer_state:e.Func([R],[T],[]),get_buyers_total:e.Func([e.Record({})],[G],[]),get_canister_status:e.Func([e.Record({})],[g],[]),get_state:e.Func([e.Record({})],[W],[]),open:e.Func([h],[e.Record({})],[]),refresh_buyer_tokens:e.Func([b],[Y],[])})};var Je=({IDL:e})=>{let r=e.Record({sns_root_canister_id:e.Text,fallback_controller_principal_ids:e.Vec(e.Text),nns_governance_canister_id:e.Text,icp_ledger_canister_id:e.Text,sns_ledger_canister_id:e.Text,sns_governance_canister_id:e.Text}),s=e.Record({icp_e8s:e.Nat64,fee_override_e8s:e.Nat64}),o=e.Record({error_message:e.Text,error_type:e.Int32}),a=e.Record({governance_error:e.Opt(o)}),t=e.Record({code:e.Opt(e.Int32),description:e.Text}),c=e.Variant({Ok:a,Err:t}),_=e.Record({possibility:e.Opt(c)}),i=e.Record({err:e.Opt(t),dapp_canister_id:e.Opt(e.Principal)}),n=e.Record({failed_updates:e.Vec(i)}),p=e.Variant({Ok:n,Err:t}),m=e.Record({possibility:e.Opt(p)}),d=e.Variant({Err:t}),N=e.Record({possibility:e.Opt(d)}),l=e.Record({failure:e.Nat32,skipped:e.Nat32,success:e.Nat32}),u=e.Record({settle_community_fund_participation_result:e.Opt(_),set_dapp_controllers_result:e.Opt(m),sns_governance_normal_mode_enabled:e.Opt(N),sweep_icp:e.Opt(l),sweep_sns:e.Opt(l),create_neuron:e.Opt(l)}),R=e.Record({principal_id:e.Opt(e.Principal)}),S=e.Record({transfer_start_timestamp_seconds:e.Nat64,amount_e8s:e.Nat64,transfer_success_timestamp_seconds:e.Nat64}),P=e.Record({icp:e.Opt(S)}),T=e.Record({buyer_state:e.Opt(P)}),G=e.Record({buyers_total:e.Nat64}),A=e.Variant({stopped:e.Null,stopping:e.Null,running:e.Null}),q=e.Record({controller:e.Principal,freezing_threshold:e.Nat,controllers:e.Vec(e.Principal),memory_allocation:e.Nat,compute_allocation:e.Nat}),g=e.Record({controller:e.Principal,status:A,freezing_threshold:e.Nat,balance:e.Vec(e.Tuple(e.Vec(e.Nat8),e.Nat)),memory_size:e.Nat,cycles:e.Nat,settings:q,idle_cycles_burned_per_day:e.Nat,module_hash:e.Opt(e.Vec(e.Nat8))}),B=e.Record({hotkey_principal:e.Text,nns_neuron_id:e.Nat64}),O=e.Record({buyer_principal:e.Text}),V=e.Variant({CommunityFund:B,Direct:O}),x=e.Record({sns:e.Opt(S),investor:e.Opt(V)}),U=e.Record({nns_neuron_id:e.Nat64,amount_icp_e8s:e.Nat64}),y=e.Record({hotkey_principal:e.Text,cf_neurons:e.Vec(U)}),v=e.Record({min_participant_icp_e8s:e.Nat64,max_icp_e8s:e.Nat64,swap_due_timestamp_seconds:e.Nat64,min_participants:e.Nat32,sns_token_e8s:e.Nat64,max_participant_icp_e8s:e.Nat64,min_icp_e8s:e.Nat64}),z=e.Record({neuron_recipes:e.Vec(x),cf_participants:e.Vec(y),init:e.Opt(r),lifecycle:e.Int32,buyers:e.Vec(e.Tuple(e.Text,P)),params:e.Opt(v),open_sns_token_swap_proposal_id:e.Opt(e.Nat64)}),Q=e.Record({sns_tokens_per_icp:e.Float32,buyer_total_icp_e8s:e.Nat64}),W=e.Record({swap:e.Opt(z),derived:e.Opt(Q)}),h=e.Record({cf_participants:e.Vec(y),params:e.Opt(v),open_sns_token_swap_proposal_id:e.Opt(e.Nat64)}),b=e.Record({buyer:e.Text}),Y=e.Record({icp_accepted_participation_e8s:e.Nat64,icp_ledger_account_balance_e8s:e.Nat64});return e.Service({error_refund_icp:e.Func([s],[e.Record({})],[]),finalize_swap:e.Func([e.Record({})],[u],[]),get_buyer_state:e.Func([R],[T],["query"]),get_buyers_total:e.Func([e.Record({})],[G],[]),get_canister_status:e.Func([e.Record({})],[g],[]),get_state:e.Func([e.Record({})],[W],["query"]),open:e.Func([h],[e.Record({})],[]),refresh_buyer_tokens:e.Func([b],[Y],[])})};var k=class extends f{constructor(){super(...arguments);this.state=s=>this.caller(s).get_state({});this.notifyParticipation=async s=>{await this.caller({certified:!0}).refresh_buyer_tokens(s)};this.getUserCommitment=async s=>{let{buyer_state:o}=await this.caller({certified:s.certified}).get_buyer_state({principal_id:s.principal_id});return(0,te.fromNullable)(o)}}static create(s){let{service:o,certifiedService:a,canisterId:t}=(0,te.createServices)({options:s,idlFactory:Je,certifiedIdlFactory:Ze});return new k(t,o,a)}};var at=async({agent:e,rootOptions:r,certified:s=!0})=>{let o=M.create({...r,agent:e}),{ledger:a,swap:t,governance:c}=await o.listSnsCanisters({certified:s}),_=(0,E.fromNullable)(c),i=(0,E.fromNullable)(a),n=(0,E.fromNullable)(t);return(0,E.assertNonNullish)(_),(0,E.assertNonNullish)(i),(0,E.assertNonNullish)(n),new D({root:o,governance:C.create({canisterId:_,agent:e}),ledger:F.create({canisterId:i,agent:e}),swap:k.create({canisterId:n,agent:e}),certified:s})};var Ke=(a=>(a.SYMBOL="icrc1:symbol",a.NAME="icrc1:name",a.DECIMALS="icrc1:decimals",a.FEE="icrc1:fee",a))(Ke||{});var L=require("@dfinity/principal"),Ie=parseInt("FF",16),$e=32,it=e=>{let r=Array.from(e);for(;r[0]===0;)r.shift();return Uint8Array.from(r)},ct=({owner:e,subaccount:r})=>{if(r===void 0)return e.toText();let s=it(r);if(s.length===0)return e.toText();let o=Uint8Array.from([...e.toUint8Array(),...s,s.length,Ie]);return L.Principal.fromUint8Array(o).toText()},_t=e=>{let r=L.Principal.fromText(e),[s,o,...a]=r.toUint8Array().reverse();if(s!==Ie)return{owner:L.Principal.fromText(e)};if(o>$e||o===0||o===void 0)throw new Error("Invalid account string");let t=a.slice(0,o);if(t[0]===0||t.length!==o)throw new Error("Invalid account string");for(;t.length<$e;)t.push(0);let c=Uint8Array.from(t.reverse()),_=a.reverse().filter((i,n)=>n<a.length-o);return{owner:L.Principal.fromUint8Array(Uint8Array.from(_)),subaccount:c}};0&&(module.exports={SnsGovernanceCanister,SnsGovernanceError,SnsLedgerCanister,SnsMetadataResponseEntries,SnsNeuronPermissionType,SnsRootCanister,SnsSwapCanister,SnsSwapLifecycle,SnsWrapper,decodeSnsAccount,encodeSnsAccount,initSnsWrapper});
2
2
  //# sourceMappingURL=index.cjs.js.map