@dfinity/nns 5.0.0 → 5.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/enums/governance.enums.ts", "../../src/governance_test.canister.ts", "../../candid/governance_test.certified.idl.js", "../../src/utils/neurons.utils.ts"],
4
- "sourcesContent": ["// The Candid files are generated from Proto. That's why the enums are currently lost in the conversion process.\n// These enums are used to map back numbers provided by the backend through the Candid declaration.\n// We use Pascal case for consistency reason.\n//\n// Proto source: https://github.com/dfinity/ic/blob/master/rs/nns/governance/proto/icNns_governance/pb/v1/governance.proto\n\nexport enum NeuronState {\n Unspecified = 0,\n Locked = 1,\n Dissolving = 2,\n Dissolved = 3,\n Spawning = 4,\n}\n\nexport enum Topic {\n Unspecified = 0,\n ManageNeuron = 1,\n ExchangeRate = 2,\n NetworkEconomics = 3,\n Governance = 4,\n NodeAdmin = 5,\n ParticipantManagement = 6,\n SubnetManagement = 7,\n NetworkCanisterManagement = 8,\n Kyc = 9,\n NodeProviderRewards = 10,\n /**\n * @deprecated\n */\n SnsDecentralizationSale = 11,\n SubnetReplicaVersionManagement = 12,\n ReplicaVersionManagement = 13,\n SnsAndCommunityFund = 14,\n ApiBoundaryNodeManagement = 15,\n}\n\n// The proposal status, with respect to reward distribution.\n// See also ProposalStatus.\nexport enum ProposalRewardStatus {\n Unknown = 0,\n\n // The proposal still accept votes, for the purpose of\n // vote rewards. This implies nothing on the ProposalStatus.\n AcceptVotes = 1,\n\n // The proposal no longer accepts votes. It is due to settle\n // at the next reward event.\n ReadyToSettle = 2,\n\n // The proposal has been taken into account in a reward event.\n Settled = 3,\n\n // The proposal is not eligible to be taken into account in a reward event.\n Ineligible = 4,\n}\n\n// The proposal status, with respect to decision making and execution.\n// See also ProposalRewardStatus.\nexport enum ProposalStatus {\n Unknown = 0,\n\n // A decision (accept/reject) has yet to be made.\n Open = 1,\n\n // The proposal has been rejected.\n Rejected = 2,\n\n // The proposal has been accepted. At this time, either execution\n // as not yet started, or it has but the outcome is not yet known.\n Accepted = 3,\n\n // The proposal was accepted and successfully executed.\n Executed = 4,\n\n // The proposal was accepted, but execution failed.\n Failed = 5,\n}\n\nexport enum Vote {\n Unspecified = 0,\n Yes = 1,\n No = 2,\n}\n\nexport enum NnsFunction {\n Unspecified = 0,\n CreateSubnet = 1,\n AddNodeToSubnet = 2,\n NnsCanisterInstall = 3,\n NnsCanisterUpgrade = 4,\n BlessReplicaVersion = 5,\n RecoverSubnet = 6,\n UpdateConfigOfSubnet = 7,\n AssignNoid = 8,\n NnsRootUpgrade = 9,\n IcpXdrConversionRate = 10,\n UpdateSubnetReplicaVersion = 11,\n ClearProvisionalWhitelist = 12,\n RemoveNodesFromSubnet = 13,\n SetAuthorizedSubnetworks = 14,\n SetFirewallConfig = 15,\n UpdateNodeOperatorConfig = 16,\n StopOrStartNnsCanister = 17,\n RemoveNodes = 18,\n UninstallCode = 19,\n UpdateNodeRewardsTable = 20,\n AddOrRemoveDataCenters = 21,\n UpdateUnassignedNodesConfig = 22,\n RemoveNodeOperators = 23,\n RerouteCanisterRanges = 24,\n AddFirewallRules = 25,\n RemoveFirewallRules = 26,\n UpdateFirewallRules = 27,\n PrepareCanisterMigration = 28,\n CompleteCanisterMigration = 29,\n AddSnsWasm = 30,\n ChangeSubnetMembership = 31,\n UpdateSubnetType = 32,\n ChangeSubnetTypeAssignment = 33,\n UpdateSnsWasmSnsSubnetIds = 34,\n UpdateAllowedPrincipals = 35,\n RetireReplicaVersion = 36,\n InsertSnsWasmUpgradePathEntries = 37,\n UpdateElectedReplicaVersions = 38,\n BitcoinSetConfig = 39,\n UpdateElectedHostosVersions = 40,\n UpdateNodesHostosVersion = 41,\n AddApiBoundaryNode = 43,\n RemoveApiBoundaryNodes = 44,\n UpdateApiBoundaryNodesVersion = 46,\n DeployGuestosToSomeApiBoundaryNodes = 47,\n DeployGuestosToAllUnassignedNodes = 48,\n UpdateSshReadOnlyAccessForAllUnassignedNodes = 49,\n ReviseElectedHostosVersions = 50,\n DeployHostosToSomeNodes = 51,\n}\n\n// Reference: https://github.com/dfinity/ic/blob/f4b2e28525ae9b030bd9edfc982e796417db2b80/rs/nns/governance/src/gen/ic_nns_governance.pb.v1.rs#L3286-L3287\nexport enum NeuronType {\n // Placeholder value due to the proto3 requirement for a zero default.\n // This is an invalid type; neurons should not be assigned this value.\n Unspecified = 0,\n // Represents neurons initially created for Seed accounts in the\n // Genesis Token Canister, or those descended from such neurons.\n Seed = 1,\n // Represents neurons initially created for Early Contributor Token (ECT)\n // accounts in the Genesis Token Canister, or those descended from such neurons.\n Ect = 2,\n}\n", "import type { ActorSubclass } from \"@dfinity/agent\";\nimport type { Principal } from \"@dfinity/principal\";\nimport { createServices, type CanisterOptions } from \"@dfinity/utils\";\nimport { idlFactory } from \"../candid/governance.idl\";\nimport type { _SERVICE as GovernanceService } from \"../candid/governance_test\";\nimport { idlFactory as certifiedIdlFactory } from \"../candid/governance_test.certified.idl\";\nimport { toRawNeuron } from \"./canisters/governance/response.converters\";\nimport { MAINNET_GOVERNANCE_CANISTER_ID } from \"./constants/canister_ids\";\nimport type { Neuron } from \"./types/governance_converters\";\n\nexport class GovernanceTestCanister {\n private constructor(\n private readonly certifiedService: ActorSubclass<GovernanceService>,\n ) {\n this.certifiedService = certifiedService;\n }\n\n public static create(options: CanisterOptions<GovernanceService> = {}) {\n const canisterId: Principal =\n options.canisterId ?? MAINNET_GOVERNANCE_CANISTER_ID;\n\n const { certifiedService } = createServices<GovernanceService>({\n options: {\n ...options,\n canisterId,\n },\n idlFactory,\n certifiedIdlFactory,\n });\n\n return new GovernanceTestCanister(certifiedService);\n }\n\n /**\n * Test method to update fields of a neuron.\n *\n * Only available in the governance test canister.\n */\n updateNeuron(neuron: Neuron) {\n this.certifiedService.update_neuron(toRawNeuron(neuron));\n }\n}\n", "/* Do not edit. Compiled with ./scripts/compile-idl-js from packages/nns/candid/governance_test.did */\nexport const idlFactory = ({ IDL }) => {\n const Proposal = IDL.Rec();\n const NeuronId = IDL.Record({ 'id' : IDL.Nat64 });\n const Followees = IDL.Record({ 'followees' : IDL.Vec(NeuronId) });\n const KnownNeuronData = IDL.Record({\n 'name' : IDL.Text,\n 'description' : IDL.Opt(IDL.Text),\n });\n const KnownNeuron = IDL.Record({\n 'id' : IDL.Opt(NeuronId),\n 'known_neuron_data' : IDL.Opt(KnownNeuronData),\n });\n const Spawn = IDL.Record({\n 'percentage_to_spawn' : IDL.Opt(IDL.Nat32),\n 'new_controller' : IDL.Opt(IDL.Principal),\n 'nonce' : IDL.Opt(IDL.Nat64),\n });\n const Split = IDL.Record({ 'amount_e8s' : IDL.Nat64 });\n const Follow = IDL.Record({\n 'topic' : IDL.Int32,\n 'followees' : IDL.Vec(NeuronId),\n });\n const ClaimOrRefreshNeuronFromAccount = IDL.Record({\n 'controller' : IDL.Opt(IDL.Principal),\n 'memo' : IDL.Nat64,\n });\n const By = IDL.Variant({\n 'NeuronIdOrSubaccount' : IDL.Record({}),\n 'MemoAndController' : ClaimOrRefreshNeuronFromAccount,\n 'Memo' : IDL.Nat64,\n });\n const ClaimOrRefresh = IDL.Record({ 'by' : IDL.Opt(By) });\n const RemoveHotKey = IDL.Record({\n 'hot_key_to_remove' : IDL.Opt(IDL.Principal),\n });\n const AddHotKey = IDL.Record({ 'new_hot_key' : IDL.Opt(IDL.Principal) });\n const ChangeAutoStakeMaturity = IDL.Record({\n 'requested_setting_for_auto_stake_maturity' : IDL.Bool,\n });\n const IncreaseDissolveDelay = IDL.Record({\n 'additional_dissolve_delay_seconds' : IDL.Nat32,\n });\n const SetDissolveTimestamp = IDL.Record({\n 'dissolve_timestamp_seconds' : IDL.Nat64,\n });\n const Operation = IDL.Variant({\n 'RemoveHotKey' : RemoveHotKey,\n 'AddHotKey' : AddHotKey,\n 'ChangeAutoStakeMaturity' : ChangeAutoStakeMaturity,\n 'StopDissolving' : IDL.Record({}),\n 'StartDissolving' : IDL.Record({}),\n 'IncreaseDissolveDelay' : IncreaseDissolveDelay,\n 'JoinCommunityFund' : IDL.Record({}),\n 'LeaveCommunityFund' : IDL.Record({}),\n 'SetDissolveTimestamp' : SetDissolveTimestamp,\n });\n const Configure = IDL.Record({ 'operation' : IDL.Opt(Operation) });\n const RegisterVote = IDL.Record({\n 'vote' : IDL.Int32,\n 'proposal' : IDL.Opt(NeuronId),\n });\n const Merge = IDL.Record({ 'source_neuron_id' : IDL.Opt(NeuronId) });\n const DisburseToNeuron = IDL.Record({\n 'dissolve_delay_seconds' : IDL.Nat64,\n 'kyc_verified' : IDL.Bool,\n 'amount_e8s' : IDL.Nat64,\n 'new_controller' : IDL.Opt(IDL.Principal),\n 'nonce' : IDL.Nat64,\n });\n const StakeMaturity = IDL.Record({\n 'percentage_to_stake' : IDL.Opt(IDL.Nat32),\n });\n const MergeMaturity = IDL.Record({ 'percentage_to_merge' : IDL.Nat32 });\n const AccountIdentifier = IDL.Record({ 'hash' : IDL.Vec(IDL.Nat8) });\n const Amount = IDL.Record({ 'e8s' : IDL.Nat64 });\n const Disburse = IDL.Record({\n 'to_account' : IDL.Opt(AccountIdentifier),\n 'amount' : IDL.Opt(Amount),\n });\n const Command = IDL.Variant({\n 'Spawn' : Spawn,\n 'Split' : Split,\n 'Follow' : Follow,\n 'ClaimOrRefresh' : ClaimOrRefresh,\n 'Configure' : Configure,\n 'RegisterVote' : RegisterVote,\n 'Merge' : Merge,\n 'DisburseToNeuron' : DisburseToNeuron,\n 'MakeProposal' : Proposal,\n 'StakeMaturity' : StakeMaturity,\n 'MergeMaturity' : MergeMaturity,\n 'Disburse' : Disburse,\n });\n const NeuronIdOrSubaccount = IDL.Variant({\n 'Subaccount' : IDL.Vec(IDL.Nat8),\n 'NeuronId' : NeuronId,\n });\n const ManageNeuron = IDL.Record({\n 'id' : IDL.Opt(NeuronId),\n 'command' : IDL.Opt(Command),\n 'neuron_id_or_subaccount' : IDL.Opt(NeuronIdOrSubaccount),\n });\n const Percentage = IDL.Record({ 'basis_points' : IDL.Opt(IDL.Nat64) });\n const Duration = IDL.Record({ 'seconds' : IDL.Opt(IDL.Nat64) });\n const Tokens = IDL.Record({ 'e8s' : IDL.Opt(IDL.Nat64) });\n const VotingRewardParameters = IDL.Record({\n 'reward_rate_transition_duration' : IDL.Opt(Duration),\n 'initial_reward_rate' : IDL.Opt(Percentage),\n 'final_reward_rate' : IDL.Opt(Percentage),\n });\n const GovernanceParameters = IDL.Record({\n 'neuron_maximum_dissolve_delay_bonus' : IDL.Opt(Percentage),\n 'neuron_maximum_age_for_age_bonus' : IDL.Opt(Duration),\n 'neuron_maximum_dissolve_delay' : IDL.Opt(Duration),\n 'neuron_minimum_dissolve_delay_to_vote' : IDL.Opt(Duration),\n 'neuron_maximum_age_bonus' : IDL.Opt(Percentage),\n 'neuron_minimum_stake' : IDL.Opt(Tokens),\n 'proposal_wait_for_quiet_deadline_increase' : IDL.Opt(Duration),\n 'proposal_initial_voting_period' : IDL.Opt(Duration),\n 'proposal_rejection_fee' : IDL.Opt(Tokens),\n 'voting_reward_parameters' : IDL.Opt(VotingRewardParameters),\n });\n const Image = IDL.Record({ 'base64_encoding' : IDL.Opt(IDL.Text) });\n const LedgerParameters = IDL.Record({\n 'transaction_fee' : IDL.Opt(Tokens),\n 'token_symbol' : IDL.Opt(IDL.Text),\n 'token_logo' : IDL.Opt(Image),\n 'token_name' : IDL.Opt(IDL.Text),\n });\n const Canister = IDL.Record({ 'id' : IDL.Opt(IDL.Principal) });\n const NeuronBasketConstructionParameters = IDL.Record({\n 'dissolve_delay_interval' : IDL.Opt(Duration),\n 'count' : IDL.Opt(IDL.Nat64),\n });\n const GlobalTimeOfDay = IDL.Record({\n 'seconds_after_utc_midnight' : IDL.Opt(IDL.Nat64),\n });\n const Countries = IDL.Record({ 'iso_codes' : IDL.Vec(IDL.Text) });\n const SwapParameters = IDL.Record({\n 'minimum_participants' : IDL.Opt(IDL.Nat64),\n 'neurons_fund_participation' : IDL.Opt(IDL.Bool),\n 'duration' : IDL.Opt(Duration),\n 'neuron_basket_construction_parameters' : IDL.Opt(\n NeuronBasketConstructionParameters\n ),\n 'confirmation_text' : IDL.Opt(IDL.Text),\n 'maximum_participant_icp' : IDL.Opt(Tokens),\n 'minimum_icp' : IDL.Opt(Tokens),\n 'minimum_direct_participation_icp' : IDL.Opt(Tokens),\n 'minimum_participant_icp' : IDL.Opt(Tokens),\n 'start_time' : IDL.Opt(GlobalTimeOfDay),\n 'maximum_direct_participation_icp' : IDL.Opt(Tokens),\n 'maximum_icp' : IDL.Opt(Tokens),\n 'neurons_fund_investment_icp' : IDL.Opt(Tokens),\n 'restricted_countries' : IDL.Opt(Countries),\n });\n const SwapDistribution = IDL.Record({ 'total' : IDL.Opt(Tokens) });\n const NeuronDistribution = IDL.Record({\n 'controller' : IDL.Opt(IDL.Principal),\n 'dissolve_delay' : IDL.Opt(Duration),\n 'memo' : IDL.Opt(IDL.Nat64),\n 'vesting_period' : IDL.Opt(Duration),\n 'stake' : IDL.Opt(Tokens),\n });\n const DeveloperDistribution = IDL.Record({\n 'developer_neurons' : IDL.Vec(NeuronDistribution),\n });\n const InitialTokenDistribution = IDL.Record({\n 'treasury_distribution' : IDL.Opt(SwapDistribution),\n 'developer_distribution' : IDL.Opt(DeveloperDistribution),\n 'swap_distribution' : IDL.Opt(SwapDistribution),\n });\n const CreateServiceNervousSystem = IDL.Record({\n 'url' : IDL.Opt(IDL.Text),\n 'governance_parameters' : IDL.Opt(GovernanceParameters),\n 'fallback_controller_principal_ids' : IDL.Vec(IDL.Principal),\n 'logo' : IDL.Opt(Image),\n 'name' : IDL.Opt(IDL.Text),\n 'ledger_parameters' : IDL.Opt(LedgerParameters),\n 'description' : IDL.Opt(IDL.Text),\n 'dapp_canisters' : IDL.Vec(Canister),\n 'swap_parameters' : IDL.Opt(SwapParameters),\n 'initial_token_distribution' : IDL.Opt(InitialTokenDistribution),\n });\n const ExecuteNnsFunction = IDL.Record({\n 'nns_function' : IDL.Int32,\n 'payload' : IDL.Vec(IDL.Nat8),\n });\n const NodeProvider = IDL.Record({\n 'id' : IDL.Opt(IDL.Principal),\n 'reward_account' : IDL.Opt(AccountIdentifier),\n });\n const RewardToNeuron = IDL.Record({ 'dissolve_delay_seconds' : IDL.Nat64 });\n const RewardToAccount = IDL.Record({\n 'to_account' : IDL.Opt(AccountIdentifier),\n });\n const RewardMode = IDL.Variant({\n 'RewardToNeuron' : RewardToNeuron,\n 'RewardToAccount' : RewardToAccount,\n });\n const RewardNodeProvider = IDL.Record({\n 'node_provider' : IDL.Opt(NodeProvider),\n 'reward_mode' : IDL.Opt(RewardMode),\n 'amount_e8s' : IDL.Nat64,\n });\n const NeuronBasketConstructionParameters_1 = IDL.Record({\n 'dissolve_delay_interval_seconds' : IDL.Nat64,\n 'count' : IDL.Nat64,\n });\n const Params = IDL.Record({\n 'min_participant_icp_e8s' : IDL.Nat64,\n 'neuron_basket_construction_parameters' : IDL.Opt(\n NeuronBasketConstructionParameters_1\n ),\n 'max_icp_e8s' : IDL.Nat64,\n 'swap_due_timestamp_seconds' : IDL.Nat64,\n 'min_participants' : IDL.Nat32,\n 'sns_token_e8s' : IDL.Nat64,\n 'sale_delay_seconds' : IDL.Opt(IDL.Nat64),\n 'max_participant_icp_e8s' : IDL.Nat64,\n 'min_direct_participation_icp_e8s' : IDL.Opt(IDL.Nat64),\n 'min_icp_e8s' : IDL.Nat64,\n 'max_direct_participation_icp_e8s' : IDL.Opt(IDL.Nat64),\n });\n const OpenSnsTokenSwap = IDL.Record({\n 'community_fund_investment_e8s' : IDL.Opt(IDL.Nat64),\n 'target_swap_canister_id' : IDL.Opt(IDL.Principal),\n 'params' : IDL.Opt(Params),\n });\n const TimeWindow = IDL.Record({\n 'start_timestamp_seconds' : IDL.Nat64,\n 'end_timestamp_seconds' : IDL.Nat64,\n });\n const SetOpenTimeWindowRequest = IDL.Record({\n 'open_time_window' : IDL.Opt(TimeWindow),\n });\n const SetSnsTokenSwapOpenTimeWindow = IDL.Record({\n 'request' : IDL.Opt(SetOpenTimeWindowRequest),\n 'swap_canister_id' : IDL.Opt(IDL.Principal),\n });\n const SetDefaultFollowees = IDL.Record({\n 'default_followees' : IDL.Vec(IDL.Tuple(IDL.Int32, Followees)),\n });\n const RewardNodeProviders = IDL.Record({\n 'use_registry_derived_rewards' : IDL.Opt(IDL.Bool),\n 'rewards' : IDL.Vec(RewardNodeProvider),\n });\n const Decimal = IDL.Record({ 'human_readable' : IDL.Opt(IDL.Text) });\n const NeuronsFundMatchedFundingCurveCoefficients = IDL.Record({\n 'contribution_threshold_xdr' : IDL.Opt(Decimal),\n 'one_third_participation_milestone_xdr' : IDL.Opt(Decimal),\n 'full_participation_milestone_xdr' : IDL.Opt(Decimal),\n });\n const NeuronsFundEconomics = IDL.Record({\n 'maximum_icp_xdr_rate' : IDL.Opt(Percentage),\n 'neurons_fund_matched_funding_curve_coefficients' : IDL.Opt(\n NeuronsFundMatchedFundingCurveCoefficients\n ),\n 'max_theoretical_neurons_fund_participation_amount_xdr' : IDL.Opt(Decimal),\n 'minimum_icp_xdr_rate' : IDL.Opt(Percentage),\n });\n const NetworkEconomics = IDL.Record({\n 'neuron_minimum_stake_e8s' : IDL.Nat64,\n 'max_proposals_to_keep_per_topic' : IDL.Nat32,\n 'neuron_management_fee_per_proposal_e8s' : IDL.Nat64,\n 'reject_cost_e8s' : IDL.Nat64,\n 'transaction_fee_e8s' : IDL.Nat64,\n 'neuron_spawn_dissolve_delay_seconds' : IDL.Nat64,\n 'minimum_icp_xdr_rate' : IDL.Nat64,\n 'maximum_node_provider_rewards_e8s' : IDL.Nat64,\n 'neurons_fund_economics' : IDL.Opt(NeuronsFundEconomics),\n });\n const ApproveGenesisKyc = IDL.Record({\n 'principals' : IDL.Vec(IDL.Principal),\n });\n const Change = IDL.Variant({\n 'ToRemove' : NodeProvider,\n 'ToAdd' : NodeProvider,\n });\n const AddOrRemoveNodeProvider = IDL.Record({ 'change' : IDL.Opt(Change) });\n const Motion = IDL.Record({ 'motion_text' : IDL.Text });\n const Action = IDL.Variant({\n 'RegisterKnownNeuron' : KnownNeuron,\n 'ManageNeuron' : ManageNeuron,\n 'CreateServiceNervousSystem' : CreateServiceNervousSystem,\n 'ExecuteNnsFunction' : ExecuteNnsFunction,\n 'RewardNodeProvider' : RewardNodeProvider,\n 'OpenSnsTokenSwap' : OpenSnsTokenSwap,\n 'SetSnsTokenSwapOpenTimeWindow' : SetSnsTokenSwapOpenTimeWindow,\n 'SetDefaultFollowees' : SetDefaultFollowees,\n 'RewardNodeProviders' : RewardNodeProviders,\n 'ManageNetworkEconomics' : NetworkEconomics,\n 'ApproveGenesisKyc' : ApproveGenesisKyc,\n 'AddOrRemoveNodeProvider' : AddOrRemoveNodeProvider,\n 'Motion' : Motion,\n });\n Proposal.fill(\n IDL.Record({\n 'url' : IDL.Text,\n 'title' : IDL.Opt(IDL.Text),\n 'action' : IDL.Opt(Action),\n 'summary' : IDL.Text,\n })\n );\n const MakingSnsProposal = IDL.Record({\n 'proposal' : IDL.Opt(Proposal),\n 'caller' : IDL.Opt(IDL.Principal),\n 'proposer_id' : IDL.Opt(NeuronId),\n });\n const MostRecentMonthlyNodeProviderRewards = IDL.Record({\n 'timestamp' : IDL.Nat64,\n 'rewards' : IDL.Vec(RewardNodeProvider),\n });\n const GovernanceCachedMetrics = IDL.Record({\n 'total_maturity_e8s_equivalent' : IDL.Nat64,\n 'not_dissolving_neurons_e8s_buckets' : IDL.Vec(\n IDL.Tuple(IDL.Nat64, IDL.Float64)\n ),\n 'dissolving_neurons_staked_maturity_e8s_equivalent_sum' : IDL.Nat64,\n 'garbage_collectable_neurons_count' : IDL.Nat64,\n 'dissolving_neurons_staked_maturity_e8s_equivalent_buckets' : IDL.Vec(\n IDL.Tuple(IDL.Nat64, IDL.Float64)\n ),\n 'neurons_with_invalid_stake_count' : IDL.Nat64,\n 'not_dissolving_neurons_count_buckets' : IDL.Vec(\n IDL.Tuple(IDL.Nat64, IDL.Nat64)\n ),\n 'ect_neuron_count' : IDL.Nat64,\n 'total_supply_icp' : IDL.Nat64,\n 'neurons_with_less_than_6_months_dissolve_delay_count' : IDL.Nat64,\n 'dissolved_neurons_count' : IDL.Nat64,\n 'community_fund_total_maturity_e8s_equivalent' : IDL.Nat64,\n 'total_staked_e8s_seed' : IDL.Nat64,\n 'total_staked_maturity_e8s_equivalent_ect' : IDL.Nat64,\n 'total_staked_e8s' : IDL.Nat64,\n 'not_dissolving_neurons_count' : IDL.Nat64,\n 'total_locked_e8s' : IDL.Nat64,\n 'neurons_fund_total_active_neurons' : IDL.Nat64,\n 'total_staked_maturity_e8s_equivalent' : IDL.Nat64,\n 'not_dissolving_neurons_e8s_buckets_ect' : IDL.Vec(\n IDL.Tuple(IDL.Nat64, IDL.Float64)\n ),\n 'total_staked_e8s_ect' : IDL.Nat64,\n 'not_dissolving_neurons_staked_maturity_e8s_equivalent_sum' : IDL.Nat64,\n 'dissolved_neurons_e8s' : IDL.Nat64,\n 'dissolving_neurons_e8s_buckets_seed' : IDL.Vec(\n IDL.Tuple(IDL.Nat64, IDL.Float64)\n ),\n 'neurons_with_less_than_6_months_dissolve_delay_e8s' : IDL.Nat64,\n 'not_dissolving_neurons_staked_maturity_e8s_equivalent_buckets' : IDL.Vec(\n IDL.Tuple(IDL.Nat64, IDL.Float64)\n ),\n 'dissolving_neurons_count_buckets' : IDL.Vec(\n IDL.Tuple(IDL.Nat64, IDL.Nat64)\n ),\n 'dissolving_neurons_e8s_buckets_ect' : IDL.Vec(\n IDL.Tuple(IDL.Nat64, IDL.Float64)\n ),\n 'dissolving_neurons_count' : IDL.Nat64,\n 'dissolving_neurons_e8s_buckets' : IDL.Vec(\n IDL.Tuple(IDL.Nat64, IDL.Float64)\n ),\n 'total_staked_maturity_e8s_equivalent_seed' : IDL.Nat64,\n 'community_fund_total_staked_e8s' : IDL.Nat64,\n 'not_dissolving_neurons_e8s_buckets_seed' : IDL.Vec(\n IDL.Tuple(IDL.Nat64, IDL.Float64)\n ),\n 'timestamp_seconds' : IDL.Nat64,\n 'seed_neuron_count' : IDL.Nat64,\n });\n const RewardEvent = IDL.Record({\n 'rounds_since_last_distribution' : IDL.Opt(IDL.Nat64),\n 'day_after_genesis' : IDL.Nat64,\n 'actual_timestamp_seconds' : IDL.Nat64,\n 'total_available_e8s_equivalent' : IDL.Nat64,\n 'latest_round_available_e8s_equivalent' : IDL.Opt(IDL.Nat64),\n 'distributed_e8s_equivalent' : IDL.Nat64,\n 'settled_proposals' : IDL.Vec(NeuronId),\n });\n const NeuronStakeTransfer = IDL.Record({\n 'to_subaccount' : IDL.Vec(IDL.Nat8),\n 'neuron_stake_e8s' : IDL.Nat64,\n 'from' : IDL.Opt(IDL.Principal),\n 'memo' : IDL.Nat64,\n 'from_subaccount' : IDL.Vec(IDL.Nat8),\n 'transfer_timestamp' : IDL.Nat64,\n 'block_height' : IDL.Nat64,\n });\n const Followers = IDL.Record({ 'followers' : IDL.Vec(NeuronId) });\n const FollowersMap = IDL.Record({\n 'followers_map' : IDL.Vec(IDL.Tuple(IDL.Nat64, Followers)),\n });\n const Progress = IDL.Variant({ 'LastNeuronId' : NeuronId });\n const Migration = IDL.Record({\n 'status' : IDL.Opt(IDL.Int32),\n 'failure_reason' : IDL.Opt(IDL.Text),\n 'progress' : IDL.Opt(Progress),\n });\n const Migrations = IDL.Record({\n 'neuron_indexes_migration' : IDL.Opt(Migration),\n 'copy_inactive_neurons_to_stable_memory_migration' : IDL.Opt(Migration),\n });\n const GovernanceError = IDL.Record({\n 'error_message' : IDL.Text,\n 'error_type' : IDL.Int32,\n });\n const CfNeuron = IDL.Record({\n 'has_created_neuron_recipes' : IDL.Opt(IDL.Bool),\n 'nns_neuron_id' : IDL.Nat64,\n 'amount_icp_e8s' : IDL.Nat64,\n });\n const CfParticipant = IDL.Record({\n 'hotkey_principal' : IDL.Text,\n 'cf_neurons' : IDL.Vec(CfNeuron),\n });\n const Ballot = IDL.Record({ 'vote' : IDL.Int32, 'voting_power' : IDL.Nat64 });\n const SwapParticipationLimits = IDL.Record({\n 'min_participant_icp_e8s' : IDL.Opt(IDL.Nat64),\n 'max_participant_icp_e8s' : IDL.Opt(IDL.Nat64),\n 'min_direct_participation_icp_e8s' : IDL.Opt(IDL.Nat64),\n 'max_direct_participation_icp_e8s' : IDL.Opt(IDL.Nat64),\n });\n const NeuronsFundNeuronPortion = IDL.Record({\n 'hotkey_principal' : IDL.Opt(IDL.Principal),\n 'is_capped' : IDL.Opt(IDL.Bool),\n 'maturity_equivalent_icp_e8s' : IDL.Opt(IDL.Nat64),\n 'nns_neuron_id' : IDL.Opt(NeuronId),\n 'amount_icp_e8s' : IDL.Opt(IDL.Nat64),\n });\n const NeuronsFundSnapshot = IDL.Record({\n 'neurons_fund_neuron_portions' : IDL.Vec(NeuronsFundNeuronPortion),\n });\n const IdealMatchedParticipationFunction = IDL.Record({\n 'serialized_representation' : IDL.Opt(IDL.Text),\n });\n const NeuronsFundParticipation = IDL.Record({\n 'total_maturity_equivalent_icp_e8s' : IDL.Opt(IDL.Nat64),\n 'intended_neurons_fund_participation_icp_e8s' : IDL.Opt(IDL.Nat64),\n 'direct_participation_icp_e8s' : IDL.Opt(IDL.Nat64),\n 'swap_participation_limits' : IDL.Opt(SwapParticipationLimits),\n 'max_neurons_fund_swap_participation_icp_e8s' : IDL.Opt(IDL.Nat64),\n 'neurons_fund_reserves' : IDL.Opt(NeuronsFundSnapshot),\n 'ideal_matched_participation_function' : IDL.Opt(\n IdealMatchedParticipationFunction\n ),\n 'allocated_neurons_fund_participation_icp_e8s' : IDL.Opt(IDL.Nat64),\n });\n const NeuronsFundData = IDL.Record({\n 'final_neurons_fund_participation' : IDL.Opt(NeuronsFundParticipation),\n 'initial_neurons_fund_participation' : IDL.Opt(NeuronsFundParticipation),\n 'neurons_fund_refunds' : IDL.Opt(NeuronsFundSnapshot),\n });\n const CanisterStatusResultV2 = IDL.Record({\n 'status' : IDL.Opt(IDL.Int32),\n 'freezing_threshold' : IDL.Opt(IDL.Nat64),\n 'controllers' : IDL.Vec(IDL.Principal),\n 'memory_size' : IDL.Opt(IDL.Nat64),\n 'cycles' : IDL.Opt(IDL.Nat64),\n 'idle_cycles_burned_per_day' : IDL.Opt(IDL.Nat64),\n 'module_hash' : IDL.Vec(IDL.Nat8),\n });\n const CanisterSummary = IDL.Record({\n 'status' : IDL.Opt(CanisterStatusResultV2),\n 'canister_id' : IDL.Opt(IDL.Principal),\n });\n const SwapBackgroundInformation = IDL.Record({\n 'ledger_index_canister_summary' : IDL.Opt(CanisterSummary),\n 'fallback_controller_principal_ids' : IDL.Vec(IDL.Principal),\n 'ledger_archive_canister_summaries' : IDL.Vec(CanisterSummary),\n 'ledger_canister_summary' : IDL.Opt(CanisterSummary),\n 'swap_canister_summary' : IDL.Opt(CanisterSummary),\n 'governance_canister_summary' : IDL.Opt(CanisterSummary),\n 'root_canister_summary' : IDL.Opt(CanisterSummary),\n 'dapp_canister_summaries' : IDL.Vec(CanisterSummary),\n });\n const DerivedProposalInformation = IDL.Record({\n 'swap_background_information' : IDL.Opt(SwapBackgroundInformation),\n });\n const Tally = IDL.Record({\n 'no' : IDL.Nat64,\n 'yes' : IDL.Nat64,\n 'total' : IDL.Nat64,\n 'timestamp_seconds' : IDL.Nat64,\n });\n const WaitForQuietState = IDL.Record({\n 'current_deadline_timestamp_seconds' : IDL.Nat64,\n });\n const ProposalData = IDL.Record({\n 'id' : IDL.Opt(NeuronId),\n 'failure_reason' : IDL.Opt(GovernanceError),\n 'cf_participants' : IDL.Vec(CfParticipant),\n 'ballots' : IDL.Vec(IDL.Tuple(IDL.Nat64, Ballot)),\n 'proposal_timestamp_seconds' : IDL.Nat64,\n 'reward_event_round' : IDL.Nat64,\n 'failed_timestamp_seconds' : IDL.Nat64,\n 'neurons_fund_data' : IDL.Opt(NeuronsFundData),\n 'reject_cost_e8s' : IDL.Nat64,\n 'derived_proposal_information' : IDL.Opt(DerivedProposalInformation),\n 'latest_tally' : IDL.Opt(Tally),\n 'sns_token_swap_lifecycle' : IDL.Opt(IDL.Int32),\n 'decided_timestamp_seconds' : IDL.Nat64,\n 'proposal' : IDL.Opt(Proposal),\n 'proposer' : IDL.Opt(NeuronId),\n 'wait_for_quiet_state' : IDL.Opt(WaitForQuietState),\n 'executed_timestamp_seconds' : IDL.Nat64,\n 'original_total_community_fund_maturity_e8s_equivalent' : IDL.Opt(\n IDL.Nat64\n ),\n });\n const XdrConversionRate = IDL.Record({\n 'xdr_permyriad_per_icp' : IDL.Opt(IDL.Nat64),\n 'timestamp_seconds' : IDL.Opt(IDL.Nat64),\n });\n const Command_2 = IDL.Variant({\n 'Spawn' : NeuronId,\n 'Split' : Split,\n 'Configure' : Configure,\n 'Merge' : Merge,\n 'DisburseToNeuron' : DisburseToNeuron,\n 'SyncCommand' : IDL.Record({}),\n 'ClaimOrRefreshNeuron' : ClaimOrRefresh,\n 'MergeMaturity' : MergeMaturity,\n 'Disburse' : Disburse,\n });\n const NeuronInFlightCommand = IDL.Record({\n 'command' : IDL.Opt(Command_2),\n 'timestamp' : IDL.Nat64,\n });\n const BallotInfo = IDL.Record({\n 'vote' : IDL.Int32,\n 'proposal_id' : IDL.Opt(NeuronId),\n });\n const DissolveState = IDL.Variant({\n 'DissolveDelaySeconds' : IDL.Nat64,\n 'WhenDissolvedTimestampSeconds' : IDL.Nat64,\n });\n const Neuron = IDL.Record({\n 'id' : IDL.Opt(NeuronId),\n 'staked_maturity_e8s_equivalent' : IDL.Opt(IDL.Nat64),\n 'controller' : IDL.Opt(IDL.Principal),\n 'recent_ballots' : IDL.Vec(BallotInfo),\n 'kyc_verified' : IDL.Bool,\n 'neuron_type' : IDL.Opt(IDL.Int32),\n 'not_for_profit' : IDL.Bool,\n 'maturity_e8s_equivalent' : IDL.Nat64,\n 'cached_neuron_stake_e8s' : IDL.Nat64,\n 'created_timestamp_seconds' : IDL.Nat64,\n 'auto_stake_maturity' : IDL.Opt(IDL.Bool),\n 'aging_since_timestamp_seconds' : IDL.Nat64,\n 'hot_keys' : IDL.Vec(IDL.Principal),\n 'account' : IDL.Vec(IDL.Nat8),\n 'joined_community_fund_timestamp_seconds' : IDL.Opt(IDL.Nat64),\n 'dissolve_state' : IDL.Opt(DissolveState),\n 'followees' : IDL.Vec(IDL.Tuple(IDL.Int32, Followees)),\n 'neuron_fees_e8s' : IDL.Nat64,\n 'transfer' : IDL.Opt(NeuronStakeTransfer),\n 'known_neuron_data' : IDL.Opt(KnownNeuronData),\n 'spawn_at_timestamp_seconds' : IDL.Opt(IDL.Nat64),\n });\n const Governance = IDL.Record({\n 'default_followees' : IDL.Vec(IDL.Tuple(IDL.Int32, Followees)),\n 'making_sns_proposal' : IDL.Opt(MakingSnsProposal),\n 'most_recent_monthly_node_provider_rewards' : IDL.Opt(\n MostRecentMonthlyNodeProviderRewards\n ),\n 'maturity_modulation_last_updated_at_timestamp_seconds' : IDL.Opt(\n IDL.Nat64\n ),\n 'wait_for_quiet_threshold_seconds' : IDL.Nat64,\n 'metrics' : IDL.Opt(GovernanceCachedMetrics),\n 'neuron_management_voting_period_seconds' : IDL.Opt(IDL.Nat64),\n 'node_providers' : IDL.Vec(NodeProvider),\n 'cached_daily_maturity_modulation_basis_points' : IDL.Opt(IDL.Int32),\n 'economics' : IDL.Opt(NetworkEconomics),\n 'spawning_neurons' : IDL.Opt(IDL.Bool),\n 'latest_reward_event' : IDL.Opt(RewardEvent),\n 'to_claim_transfers' : IDL.Vec(NeuronStakeTransfer),\n 'short_voting_period_seconds' : IDL.Nat64,\n 'topic_followee_index' : IDL.Vec(IDL.Tuple(IDL.Int32, FollowersMap)),\n 'migrations' : IDL.Opt(Migrations),\n 'proposals' : IDL.Vec(IDL.Tuple(IDL.Nat64, ProposalData)),\n 'xdr_conversion_rate' : IDL.Opt(XdrConversionRate),\n 'in_flight_commands' : IDL.Vec(IDL.Tuple(IDL.Nat64, NeuronInFlightCommand)),\n 'neurons' : IDL.Vec(IDL.Tuple(IDL.Nat64, Neuron)),\n 'genesis_timestamp_seconds' : IDL.Nat64,\n });\n const Result = IDL.Variant({ 'Ok' : IDL.Null, 'Err' : GovernanceError });\n const Result_1 = IDL.Variant({\n 'Error' : GovernanceError,\n 'NeuronId' : NeuronId,\n });\n const ClaimOrRefreshNeuronFromAccountResponse = IDL.Record({\n 'result' : IDL.Opt(Result_1),\n });\n const Result_2 = IDL.Variant({ 'Ok' : Neuron, 'Err' : GovernanceError });\n const Result_3 = IDL.Variant({\n 'Ok' : GovernanceCachedMetrics,\n 'Err' : GovernanceError,\n });\n const Result_4 = IDL.Variant({\n 'Ok' : RewardNodeProviders,\n 'Err' : GovernanceError,\n });\n const NeuronInfo = IDL.Record({\n 'dissolve_delay_seconds' : IDL.Nat64,\n 'recent_ballots' : IDL.Vec(BallotInfo),\n 'neuron_type' : IDL.Opt(IDL.Int32),\n 'created_timestamp_seconds' : IDL.Nat64,\n 'state' : IDL.Int32,\n 'stake_e8s' : IDL.Nat64,\n 'joined_community_fund_timestamp_seconds' : IDL.Opt(IDL.Nat64),\n 'retrieved_at_timestamp_seconds' : IDL.Nat64,\n 'known_neuron_data' : IDL.Opt(KnownNeuronData),\n 'voting_power' : IDL.Nat64,\n 'age_seconds' : IDL.Nat64,\n });\n const Result_5 = IDL.Variant({ 'Ok' : NeuronInfo, 'Err' : GovernanceError });\n const GetNeuronsFundAuditInfoRequest = IDL.Record({\n 'nns_proposal_id' : IDL.Opt(NeuronId),\n });\n const NeuronsFundAuditInfo = IDL.Record({\n 'final_neurons_fund_participation' : IDL.Opt(NeuronsFundParticipation),\n 'initial_neurons_fund_participation' : IDL.Opt(NeuronsFundParticipation),\n 'neurons_fund_refunds' : IDL.Opt(NeuronsFundSnapshot),\n });\n const Ok = IDL.Record({\n 'neurons_fund_audit_info' : IDL.Opt(NeuronsFundAuditInfo),\n });\n const Result_6 = IDL.Variant({ 'Ok' : Ok, 'Err' : GovernanceError });\n const GetNeuronsFundAuditInfoResponse = IDL.Record({\n 'result' : IDL.Opt(Result_6),\n });\n const Result_7 = IDL.Variant({\n 'Ok' : NodeProvider,\n 'Err' : GovernanceError,\n });\n const ProposalInfo = IDL.Record({\n 'id' : IDL.Opt(NeuronId),\n 'status' : IDL.Int32,\n 'topic' : IDL.Int32,\n 'failure_reason' : IDL.Opt(GovernanceError),\n 'ballots' : IDL.Vec(IDL.Tuple(IDL.Nat64, Ballot)),\n 'proposal_timestamp_seconds' : IDL.Nat64,\n 'reward_event_round' : IDL.Nat64,\n 'deadline_timestamp_seconds' : IDL.Opt(IDL.Nat64),\n 'failed_timestamp_seconds' : IDL.Nat64,\n 'reject_cost_e8s' : IDL.Nat64,\n 'derived_proposal_information' : IDL.Opt(DerivedProposalInformation),\n 'latest_tally' : IDL.Opt(Tally),\n 'reward_status' : IDL.Int32,\n 'decided_timestamp_seconds' : IDL.Nat64,\n 'proposal' : IDL.Opt(Proposal),\n 'proposer' : IDL.Opt(NeuronId),\n 'executed_timestamp_seconds' : IDL.Nat64,\n });\n const ListKnownNeuronsResponse = IDL.Record({\n 'known_neurons' : IDL.Vec(KnownNeuron),\n });\n const ListNeurons = IDL.Record({\n 'neuron_ids' : IDL.Vec(IDL.Nat64),\n 'include_neurons_readable_by_caller' : IDL.Bool,\n });\n const ListNeuronsResponse = IDL.Record({\n 'neuron_infos' : IDL.Vec(IDL.Tuple(IDL.Nat64, NeuronInfo)),\n 'full_neurons' : IDL.Vec(Neuron),\n });\n const ListNodeProvidersResponse = IDL.Record({\n 'node_providers' : IDL.Vec(NodeProvider),\n });\n const ListProposalInfo = IDL.Record({\n 'include_reward_status' : IDL.Vec(IDL.Int32),\n 'omit_large_fields' : IDL.Opt(IDL.Bool),\n 'before_proposal' : IDL.Opt(NeuronId),\n 'limit' : IDL.Nat32,\n 'exclude_topic' : IDL.Vec(IDL.Int32),\n 'include_all_manage_neuron_proposals' : IDL.Opt(IDL.Bool),\n 'include_status' : IDL.Vec(IDL.Int32),\n });\n const ListProposalInfoResponse = IDL.Record({\n 'proposal_info' : IDL.Vec(ProposalInfo),\n });\n const SpawnResponse = IDL.Record({ 'created_neuron_id' : IDL.Opt(NeuronId) });\n const ClaimOrRefreshResponse = IDL.Record({\n 'refreshed_neuron_id' : IDL.Opt(NeuronId),\n });\n const MergeResponse = IDL.Record({\n 'target_neuron' : IDL.Opt(Neuron),\n 'source_neuron' : IDL.Opt(Neuron),\n 'target_neuron_info' : IDL.Opt(NeuronInfo),\n 'source_neuron_info' : IDL.Opt(NeuronInfo),\n });\n const MakeProposalResponse = IDL.Record({\n 'message' : IDL.Opt(IDL.Text),\n 'proposal_id' : IDL.Opt(NeuronId),\n });\n const StakeMaturityResponse = IDL.Record({\n 'maturity_e8s' : IDL.Nat64,\n 'staked_maturity_e8s' : IDL.Nat64,\n });\n const MergeMaturityResponse = IDL.Record({\n 'merged_maturity_e8s' : IDL.Nat64,\n 'new_stake_e8s' : IDL.Nat64,\n });\n const DisburseResponse = IDL.Record({ 'transfer_block_height' : IDL.Nat64 });\n const Command_1 = IDL.Variant({\n 'Error' : GovernanceError,\n 'Spawn' : SpawnResponse,\n 'Split' : SpawnResponse,\n 'Follow' : IDL.Record({}),\n 'ClaimOrRefresh' : ClaimOrRefreshResponse,\n 'Configure' : IDL.Record({}),\n 'RegisterVote' : IDL.Record({}),\n 'Merge' : MergeResponse,\n 'DisburseToNeuron' : SpawnResponse,\n 'MakeProposal' : MakeProposalResponse,\n 'StakeMaturity' : StakeMaturityResponse,\n 'MergeMaturity' : MergeMaturityResponse,\n 'Disburse' : DisburseResponse,\n });\n const ManageNeuronResponse = IDL.Record({ 'command' : IDL.Opt(Command_1) });\n const Committed = IDL.Record({\n 'total_direct_contribution_icp_e8s' : IDL.Opt(IDL.Nat64),\n 'total_neurons_fund_contribution_icp_e8s' : IDL.Opt(IDL.Nat64),\n 'sns_governance_canister_id' : IDL.Opt(IDL.Principal),\n });\n const Result_8 = IDL.Variant({\n 'Committed' : Committed,\n 'Aborted' : IDL.Record({}),\n });\n const SettleCommunityFundParticipation = IDL.Record({\n 'result' : IDL.Opt(Result_8),\n 'open_sns_token_swap_proposal_id' : IDL.Opt(IDL.Nat64),\n });\n const Committed_1 = IDL.Record({\n 'total_direct_participation_icp_e8s' : IDL.Opt(IDL.Nat64),\n 'total_neurons_fund_participation_icp_e8s' : IDL.Opt(IDL.Nat64),\n 'sns_governance_canister_id' : IDL.Opt(IDL.Principal),\n });\n const Result_9 = IDL.Variant({\n 'Committed' : Committed_1,\n 'Aborted' : IDL.Record({}),\n });\n const SettleNeuronsFundParticipationRequest = IDL.Record({\n 'result' : IDL.Opt(Result_9),\n 'nns_proposal_id' : IDL.Opt(IDL.Nat64),\n });\n const NeuronsFundNeuron = IDL.Record({\n 'hotkey_principal' : IDL.Opt(IDL.Text),\n 'is_capped' : IDL.Opt(IDL.Bool),\n 'nns_neuron_id' : IDL.Opt(IDL.Nat64),\n 'amount_icp_e8s' : IDL.Opt(IDL.Nat64),\n });\n const Ok_1 = IDL.Record({\n 'neurons_fund_neuron_portions' : IDL.Vec(NeuronsFundNeuron),\n });\n const Result_10 = IDL.Variant({ 'Ok' : Ok_1, 'Err' : GovernanceError });\n const SettleNeuronsFundParticipationResponse = IDL.Record({\n 'result' : IDL.Opt(Result_10),\n });\n const UpdateNodeProvider = IDL.Record({\n 'reward_account' : IDL.Opt(AccountIdentifier),\n });\n return IDL.Service({\n 'claim_gtc_neurons' : IDL.Func(\n [IDL.Principal, IDL.Vec(NeuronId)],\n [Result],\n [],\n ),\n 'claim_or_refresh_neuron_from_account' : IDL.Func(\n [ClaimOrRefreshNeuronFromAccount],\n [ClaimOrRefreshNeuronFromAccountResponse],\n [],\n ),\n 'get_build_metadata' : IDL.Func([], [IDL.Text], []),\n 'get_full_neuron' : IDL.Func([IDL.Nat64], [Result_2], []),\n 'get_full_neuron_by_id_or_subaccount' : IDL.Func(\n [NeuronIdOrSubaccount],\n [Result_2],\n [],\n ),\n 'get_latest_reward_event' : IDL.Func([], [RewardEvent], []),\n 'get_metrics' : IDL.Func([], [Result_3], []),\n 'get_monthly_node_provider_rewards' : IDL.Func([], [Result_4], []),\n 'get_most_recent_monthly_node_provider_rewards' : IDL.Func(\n [],\n [IDL.Opt(MostRecentMonthlyNodeProviderRewards)],\n [],\n ),\n 'get_network_economics_parameters' : IDL.Func([], [NetworkEconomics], []),\n 'get_neuron_ids' : IDL.Func([], [IDL.Vec(IDL.Nat64)], []),\n 'get_neuron_info' : IDL.Func([IDL.Nat64], [Result_5], []),\n 'get_neuron_info_by_id_or_subaccount' : IDL.Func(\n [NeuronIdOrSubaccount],\n [Result_5],\n [],\n ),\n 'get_neurons_fund_audit_info' : IDL.Func(\n [GetNeuronsFundAuditInfoRequest],\n [GetNeuronsFundAuditInfoResponse],\n [],\n ),\n 'get_node_provider_by_caller' : IDL.Func([IDL.Null], [Result_7], []),\n 'get_pending_proposals' : IDL.Func([], [IDL.Vec(ProposalInfo)], []),\n 'get_proposal_info' : IDL.Func([IDL.Nat64], [IDL.Opt(ProposalInfo)], []),\n 'list_known_neurons' : IDL.Func([], [ListKnownNeuronsResponse], []),\n 'list_neurons' : IDL.Func([ListNeurons], [ListNeuronsResponse], []),\n 'list_node_providers' : IDL.Func([], [ListNodeProvidersResponse], []),\n 'list_proposals' : IDL.Func(\n [ListProposalInfo],\n [ListProposalInfoResponse],\n [],\n ),\n 'manage_neuron' : IDL.Func([ManageNeuron], [ManageNeuronResponse], []),\n 'settle_community_fund_participation' : IDL.Func(\n [SettleCommunityFundParticipation],\n [Result],\n [],\n ),\n 'settle_neurons_fund_participation' : IDL.Func(\n [SettleNeuronsFundParticipationRequest],\n [SettleNeuronsFundParticipationResponse],\n [],\n ),\n 'simulate_manage_neuron' : IDL.Func(\n [ManageNeuron],\n [ManageNeuronResponse],\n [],\n ),\n 'transfer_gtc_neuron' : IDL.Func([NeuronId, NeuronId], [Result], []),\n 'update_neuron' : IDL.Func([Neuron], [IDL.Opt(GovernanceError)], []),\n 'update_node_provider' : IDL.Func([UpdateNodeProvider], [Result], []),\n });\n};\nexport const init = ({ IDL }) => {\n const Proposal = IDL.Rec();\n const NeuronId = IDL.Record({ 'id' : IDL.Nat64 });\n const Followees = IDL.Record({ 'followees' : IDL.Vec(NeuronId) });\n const KnownNeuronData = IDL.Record({\n 'name' : IDL.Text,\n 'description' : IDL.Opt(IDL.Text),\n });\n const KnownNeuron = IDL.Record({\n 'id' : IDL.Opt(NeuronId),\n 'known_neuron_data' : IDL.Opt(KnownNeuronData),\n });\n const Spawn = IDL.Record({\n 'percentage_to_spawn' : IDL.Opt(IDL.Nat32),\n 'new_controller' : IDL.Opt(IDL.Principal),\n 'nonce' : IDL.Opt(IDL.Nat64),\n });\n const Split = IDL.Record({ 'amount_e8s' : IDL.Nat64 });\n const Follow = IDL.Record({\n 'topic' : IDL.Int32,\n 'followees' : IDL.Vec(NeuronId),\n });\n const ClaimOrRefreshNeuronFromAccount = IDL.Record({\n 'controller' : IDL.Opt(IDL.Principal),\n 'memo' : IDL.Nat64,\n });\n const By = IDL.Variant({\n 'NeuronIdOrSubaccount' : IDL.Record({}),\n 'MemoAndController' : ClaimOrRefreshNeuronFromAccount,\n 'Memo' : IDL.Nat64,\n });\n const ClaimOrRefresh = IDL.Record({ 'by' : IDL.Opt(By) });\n const RemoveHotKey = IDL.Record({\n 'hot_key_to_remove' : IDL.Opt(IDL.Principal),\n });\n const AddHotKey = IDL.Record({ 'new_hot_key' : IDL.Opt(IDL.Principal) });\n const ChangeAutoStakeMaturity = IDL.Record({\n 'requested_setting_for_auto_stake_maturity' : IDL.Bool,\n });\n const IncreaseDissolveDelay = IDL.Record({\n 'additional_dissolve_delay_seconds' : IDL.Nat32,\n });\n const SetDissolveTimestamp = IDL.Record({\n 'dissolve_timestamp_seconds' : IDL.Nat64,\n });\n const Operation = IDL.Variant({\n 'RemoveHotKey' : RemoveHotKey,\n 'AddHotKey' : AddHotKey,\n 'ChangeAutoStakeMaturity' : ChangeAutoStakeMaturity,\n 'StopDissolving' : IDL.Record({}),\n 'StartDissolving' : IDL.Record({}),\n 'IncreaseDissolveDelay' : IncreaseDissolveDelay,\n 'JoinCommunityFund' : IDL.Record({}),\n 'LeaveCommunityFund' : IDL.Record({}),\n 'SetDissolveTimestamp' : SetDissolveTimestamp,\n });\n const Configure = IDL.Record({ 'operation' : IDL.Opt(Operation) });\n const RegisterVote = IDL.Record({\n 'vote' : IDL.Int32,\n 'proposal' : IDL.Opt(NeuronId),\n });\n const Merge = IDL.Record({ 'source_neuron_id' : IDL.Opt(NeuronId) });\n const DisburseToNeuron = IDL.Record({\n 'dissolve_delay_seconds' : IDL.Nat64,\n 'kyc_verified' : IDL.Bool,\n 'amount_e8s' : IDL.Nat64,\n 'new_controller' : IDL.Opt(IDL.Principal),\n 'nonce' : IDL.Nat64,\n });\n const StakeMaturity = IDL.Record({\n 'percentage_to_stake' : IDL.Opt(IDL.Nat32),\n });\n const MergeMaturity = IDL.Record({ 'percentage_to_merge' : IDL.Nat32 });\n const AccountIdentifier = IDL.Record({ 'hash' : IDL.Vec(IDL.Nat8) });\n const Amount = IDL.Record({ 'e8s' : IDL.Nat64 });\n const Disburse = IDL.Record({\n 'to_account' : IDL.Opt(AccountIdentifier),\n 'amount' : IDL.Opt(Amount),\n });\n const Command = IDL.Variant({\n 'Spawn' : Spawn,\n 'Split' : Split,\n 'Follow' : Follow,\n 'ClaimOrRefresh' : ClaimOrRefresh,\n 'Configure' : Configure,\n 'RegisterVote' : RegisterVote,\n 'Merge' : Merge,\n 'DisburseToNeuron' : DisburseToNeuron,\n 'MakeProposal' : Proposal,\n 'StakeMaturity' : StakeMaturity,\n 'MergeMaturity' : MergeMaturity,\n 'Disburse' : Disburse,\n });\n const NeuronIdOrSubaccount = IDL.Variant({\n 'Subaccount' : IDL.Vec(IDL.Nat8),\n 'NeuronId' : NeuronId,\n });\n const ManageNeuron = IDL.Record({\n 'id' : IDL.Opt(NeuronId),\n 'command' : IDL.Opt(Command),\n 'neuron_id_or_subaccount' : IDL.Opt(NeuronIdOrSubaccount),\n });\n const Percentage = IDL.Record({ 'basis_points' : IDL.Opt(IDL.Nat64) });\n const Duration = IDL.Record({ 'seconds' : IDL.Opt(IDL.Nat64) });\n const Tokens = IDL.Record({ 'e8s' : IDL.Opt(IDL.Nat64) });\n const VotingRewardParameters = IDL.Record({\n 'reward_rate_transition_duration' : IDL.Opt(Duration),\n 'initial_reward_rate' : IDL.Opt(Percentage),\n 'final_reward_rate' : IDL.Opt(Percentage),\n });\n const GovernanceParameters = IDL.Record({\n 'neuron_maximum_dissolve_delay_bonus' : IDL.Opt(Percentage),\n 'neuron_maximum_age_for_age_bonus' : IDL.Opt(Duration),\n 'neuron_maximum_dissolve_delay' : IDL.Opt(Duration),\n 'neuron_minimum_dissolve_delay_to_vote' : IDL.Opt(Duration),\n 'neuron_maximum_age_bonus' : IDL.Opt(Percentage),\n 'neuron_minimum_stake' : IDL.Opt(Tokens),\n 'proposal_wait_for_quiet_deadline_increase' : IDL.Opt(Duration),\n 'proposal_initial_voting_period' : IDL.Opt(Duration),\n 'proposal_rejection_fee' : IDL.Opt(Tokens),\n 'voting_reward_parameters' : IDL.Opt(VotingRewardParameters),\n });\n const Image = IDL.Record({ 'base64_encoding' : IDL.Opt(IDL.Text) });\n const LedgerParameters = IDL.Record({\n 'transaction_fee' : IDL.Opt(Tokens),\n 'token_symbol' : IDL.Opt(IDL.Text),\n 'token_logo' : IDL.Opt(Image),\n 'token_name' : IDL.Opt(IDL.Text),\n });\n const Canister = IDL.Record({ 'id' : IDL.Opt(IDL.Principal) });\n const NeuronBasketConstructionParameters = IDL.Record({\n 'dissolve_delay_interval' : IDL.Opt(Duration),\n 'count' : IDL.Opt(IDL.Nat64),\n });\n const GlobalTimeOfDay = IDL.Record({\n 'seconds_after_utc_midnight' : IDL.Opt(IDL.Nat64),\n });\n const Countries = IDL.Record({ 'iso_codes' : IDL.Vec(IDL.Text) });\n const SwapParameters = IDL.Record({\n 'minimum_participants' : IDL.Opt(IDL.Nat64),\n 'neurons_fund_participation' : IDL.Opt(IDL.Bool),\n 'duration' : IDL.Opt(Duration),\n 'neuron_basket_construction_parameters' : IDL.Opt(\n NeuronBasketConstructionParameters\n ),\n 'confirmation_text' : IDL.Opt(IDL.Text),\n 'maximum_participant_icp' : IDL.Opt(Tokens),\n 'minimum_icp' : IDL.Opt(Tokens),\n 'minimum_direct_participation_icp' : IDL.Opt(Tokens),\n 'minimum_participant_icp' : IDL.Opt(Tokens),\n 'start_time' : IDL.Opt(GlobalTimeOfDay),\n 'maximum_direct_participation_icp' : IDL.Opt(Tokens),\n 'maximum_icp' : IDL.Opt(Tokens),\n 'neurons_fund_investment_icp' : IDL.Opt(Tokens),\n 'restricted_countries' : IDL.Opt(Countries),\n });\n const SwapDistribution = IDL.Record({ 'total' : IDL.Opt(Tokens) });\n const NeuronDistribution = IDL.Record({\n 'controller' : IDL.Opt(IDL.Principal),\n 'dissolve_delay' : IDL.Opt(Duration),\n 'memo' : IDL.Opt(IDL.Nat64),\n 'vesting_period' : IDL.Opt(Duration),\n 'stake' : IDL.Opt(Tokens),\n });\n const DeveloperDistribution = IDL.Record({\n 'developer_neurons' : IDL.Vec(NeuronDistribution),\n });\n const InitialTokenDistribution = IDL.Record({\n 'treasury_distribution' : IDL.Opt(SwapDistribution),\n 'developer_distribution' : IDL.Opt(DeveloperDistribution),\n 'swap_distribution' : IDL.Opt(SwapDistribution),\n });\n const CreateServiceNervousSystem = IDL.Record({\n 'url' : IDL.Opt(IDL.Text),\n 'governance_parameters' : IDL.Opt(GovernanceParameters),\n 'fallback_controller_principal_ids' : IDL.Vec(IDL.Principal),\n 'logo' : IDL.Opt(Image),\n 'name' : IDL.Opt(IDL.Text),\n 'ledger_parameters' : IDL.Opt(LedgerParameters),\n 'description' : IDL.Opt(IDL.Text),\n 'dapp_canisters' : IDL.Vec(Canister),\n 'swap_parameters' : IDL.Opt(SwapParameters),\n 'initial_token_distribution' : IDL.Opt(InitialTokenDistribution),\n });\n const ExecuteNnsFunction = IDL.Record({\n 'nns_function' : IDL.Int32,\n 'payload' : IDL.Vec(IDL.Nat8),\n });\n const NodeProvider = IDL.Record({\n 'id' : IDL.Opt(IDL.Principal),\n 'reward_account' : IDL.Opt(AccountIdentifier),\n });\n const RewardToNeuron = IDL.Record({ 'dissolve_delay_seconds' : IDL.Nat64 });\n const RewardToAccount = IDL.Record({\n 'to_account' : IDL.Opt(AccountIdentifier),\n });\n const RewardMode = IDL.Variant({\n 'RewardToNeuron' : RewardToNeuron,\n 'RewardToAccount' : RewardToAccount,\n });\n const RewardNodeProvider = IDL.Record({\n 'node_provider' : IDL.Opt(NodeProvider),\n 'reward_mode' : IDL.Opt(RewardMode),\n 'amount_e8s' : IDL.Nat64,\n });\n const NeuronBasketConstructionParameters_1 = IDL.Record({\n 'dissolve_delay_interval_seconds' : IDL.Nat64,\n 'count' : IDL.Nat64,\n });\n const Params = IDL.Record({\n 'min_participant_icp_e8s' : IDL.Nat64,\n 'neuron_basket_construction_parameters' : IDL.Opt(\n NeuronBasketConstructionParameters_1\n ),\n 'max_icp_e8s' : IDL.Nat64,\n 'swap_due_timestamp_seconds' : IDL.Nat64,\n 'min_participants' : IDL.Nat32,\n 'sns_token_e8s' : IDL.Nat64,\n 'sale_delay_seconds' : IDL.Opt(IDL.Nat64),\n 'max_participant_icp_e8s' : IDL.Nat64,\n 'min_direct_participation_icp_e8s' : IDL.Opt(IDL.Nat64),\n 'min_icp_e8s' : IDL.Nat64,\n 'max_direct_participation_icp_e8s' : IDL.Opt(IDL.Nat64),\n });\n const OpenSnsTokenSwap = IDL.Record({\n 'community_fund_investment_e8s' : IDL.Opt(IDL.Nat64),\n 'target_swap_canister_id' : IDL.Opt(IDL.Principal),\n 'params' : IDL.Opt(Params),\n });\n const TimeWindow = IDL.Record({\n 'start_timestamp_seconds' : IDL.Nat64,\n 'end_timestamp_seconds' : IDL.Nat64,\n });\n const SetOpenTimeWindowRequest = IDL.Record({\n 'open_time_window' : IDL.Opt(TimeWindow),\n });\n const SetSnsTokenSwapOpenTimeWindow = IDL.Record({\n 'request' : IDL.Opt(SetOpenTimeWindowRequest),\n 'swap_canister_id' : IDL.Opt(IDL.Principal),\n });\n const SetDefaultFollowees = IDL.Record({\n 'default_followees' : IDL.Vec(IDL.Tuple(IDL.Int32, Followees)),\n });\n const RewardNodeProviders = IDL.Record({\n 'use_registry_derived_rewards' : IDL.Opt(IDL.Bool),\n 'rewards' : IDL.Vec(RewardNodeProvider),\n });\n const Decimal = IDL.Record({ 'human_readable' : IDL.Opt(IDL.Text) });\n const NeuronsFundMatchedFundingCurveCoefficients = IDL.Record({\n 'contribution_threshold_xdr' : IDL.Opt(Decimal),\n 'one_third_participation_milestone_xdr' : IDL.Opt(Decimal),\n 'full_participation_milestone_xdr' : IDL.Opt(Decimal),\n });\n const NeuronsFundEconomics = IDL.Record({\n 'maximum_icp_xdr_rate' : IDL.Opt(Percentage),\n 'neurons_fund_matched_funding_curve_coefficients' : IDL.Opt(\n NeuronsFundMatchedFundingCurveCoefficients\n ),\n 'max_theoretical_neurons_fund_participation_amount_xdr' : IDL.Opt(Decimal),\n 'minimum_icp_xdr_rate' : IDL.Opt(Percentage),\n });\n const NetworkEconomics = IDL.Record({\n 'neuron_minimum_stake_e8s' : IDL.Nat64,\n 'max_proposals_to_keep_per_topic' : IDL.Nat32,\n 'neuron_management_fee_per_proposal_e8s' : IDL.Nat64,\n 'reject_cost_e8s' : IDL.Nat64,\n 'transaction_fee_e8s' : IDL.Nat64,\n 'neuron_spawn_dissolve_delay_seconds' : IDL.Nat64,\n 'minimum_icp_xdr_rate' : IDL.Nat64,\n 'maximum_node_provider_rewards_e8s' : IDL.Nat64,\n 'neurons_fund_economics' : IDL.Opt(NeuronsFundEconomics),\n });\n const ApproveGenesisKyc = IDL.Record({\n 'principals' : IDL.Vec(IDL.Principal),\n });\n const Change = IDL.Variant({\n 'ToRemove' : NodeProvider,\n 'ToAdd' : NodeProvider,\n });\n const AddOrRemoveNodeProvider = IDL.Record({ 'change' : IDL.Opt(Change) });\n const Motion = IDL.Record({ 'motion_text' : IDL.Text });\n const Action = IDL.Variant({\n 'RegisterKnownNeuron' : KnownNeuron,\n 'ManageNeuron' : ManageNeuron,\n 'CreateServiceNervousSystem' : CreateServiceNervousSystem,\n 'ExecuteNnsFunction' : ExecuteNnsFunction,\n 'RewardNodeProvider' : RewardNodeProvider,\n 'OpenSnsTokenSwap' : OpenSnsTokenSwap,\n 'SetSnsTokenSwapOpenTimeWindow' : SetSnsTokenSwapOpenTimeWindow,\n 'SetDefaultFollowees' : SetDefaultFollowees,\n 'RewardNodeProviders' : RewardNodeProviders,\n 'ManageNetworkEconomics' : NetworkEconomics,\n 'ApproveGenesisKyc' : ApproveGenesisKyc,\n 'AddOrRemoveNodeProvider' : AddOrRemoveNodeProvider,\n 'Motion' : Motion,\n });\n Proposal.fill(\n IDL.Record({\n 'url' : IDL.Text,\n 'title' : IDL.Opt(IDL.Text),\n 'action' : IDL.Opt(Action),\n 'summary' : IDL.Text,\n })\n );\n const MakingSnsProposal = IDL.Record({\n 'proposal' : IDL.Opt(Proposal),\n 'caller' : IDL.Opt(IDL.Principal),\n 'proposer_id' : IDL.Opt(NeuronId),\n });\n const MostRecentMonthlyNodeProviderRewards = IDL.Record({\n 'timestamp' : IDL.Nat64,\n 'rewards' : IDL.Vec(RewardNodeProvider),\n });\n const GovernanceCachedMetrics = IDL.Record({\n 'total_maturity_e8s_equivalent' : IDL.Nat64,\n 'not_dissolving_neurons_e8s_buckets' : IDL.Vec(\n IDL.Tuple(IDL.Nat64, IDL.Float64)\n ),\n 'dissolving_neurons_staked_maturity_e8s_equivalent_sum' : IDL.Nat64,\n 'garbage_collectable_neurons_count' : IDL.Nat64,\n 'dissolving_neurons_staked_maturity_e8s_equivalent_buckets' : IDL.Vec(\n IDL.Tuple(IDL.Nat64, IDL.Float64)\n ),\n 'neurons_with_invalid_stake_count' : IDL.Nat64,\n 'not_dissolving_neurons_count_buckets' : IDL.Vec(\n IDL.Tuple(IDL.Nat64, IDL.Nat64)\n ),\n 'ect_neuron_count' : IDL.Nat64,\n 'total_supply_icp' : IDL.Nat64,\n 'neurons_with_less_than_6_months_dissolve_delay_count' : IDL.Nat64,\n 'dissolved_neurons_count' : IDL.Nat64,\n 'community_fund_total_maturity_e8s_equivalent' : IDL.Nat64,\n 'total_staked_e8s_seed' : IDL.Nat64,\n 'total_staked_maturity_e8s_equivalent_ect' : IDL.Nat64,\n 'total_staked_e8s' : IDL.Nat64,\n 'not_dissolving_neurons_count' : IDL.Nat64,\n 'total_locked_e8s' : IDL.Nat64,\n 'neurons_fund_total_active_neurons' : IDL.Nat64,\n 'total_staked_maturity_e8s_equivalent' : IDL.Nat64,\n 'not_dissolving_neurons_e8s_buckets_ect' : IDL.Vec(\n IDL.Tuple(IDL.Nat64, IDL.Float64)\n ),\n 'total_staked_e8s_ect' : IDL.Nat64,\n 'not_dissolving_neurons_staked_maturity_e8s_equivalent_sum' : IDL.Nat64,\n 'dissolved_neurons_e8s' : IDL.Nat64,\n 'dissolving_neurons_e8s_buckets_seed' : IDL.Vec(\n IDL.Tuple(IDL.Nat64, IDL.Float64)\n ),\n 'neurons_with_less_than_6_months_dissolve_delay_e8s' : IDL.Nat64,\n 'not_dissolving_neurons_staked_maturity_e8s_equivalent_buckets' : IDL.Vec(\n IDL.Tuple(IDL.Nat64, IDL.Float64)\n ),\n 'dissolving_neurons_count_buckets' : IDL.Vec(\n IDL.Tuple(IDL.Nat64, IDL.Nat64)\n ),\n 'dissolving_neurons_e8s_buckets_ect' : IDL.Vec(\n IDL.Tuple(IDL.Nat64, IDL.Float64)\n ),\n 'dissolving_neurons_count' : IDL.Nat64,\n 'dissolving_neurons_e8s_buckets' : IDL.Vec(\n IDL.Tuple(IDL.Nat64, IDL.Float64)\n ),\n 'total_staked_maturity_e8s_equivalent_seed' : IDL.Nat64,\n 'community_fund_total_staked_e8s' : IDL.Nat64,\n 'not_dissolving_neurons_e8s_buckets_seed' : IDL.Vec(\n IDL.Tuple(IDL.Nat64, IDL.Float64)\n ),\n 'timestamp_seconds' : IDL.Nat64,\n 'seed_neuron_count' : IDL.Nat64,\n });\n const RewardEvent = IDL.Record({\n 'rounds_since_last_distribution' : IDL.Opt(IDL.Nat64),\n 'day_after_genesis' : IDL.Nat64,\n 'actual_timestamp_seconds' : IDL.Nat64,\n 'total_available_e8s_equivalent' : IDL.Nat64,\n 'latest_round_available_e8s_equivalent' : IDL.Opt(IDL.Nat64),\n 'distributed_e8s_equivalent' : IDL.Nat64,\n 'settled_proposals' : IDL.Vec(NeuronId),\n });\n const NeuronStakeTransfer = IDL.Record({\n 'to_subaccount' : IDL.Vec(IDL.Nat8),\n 'neuron_stake_e8s' : IDL.Nat64,\n 'from' : IDL.Opt(IDL.Principal),\n 'memo' : IDL.Nat64,\n 'from_subaccount' : IDL.Vec(IDL.Nat8),\n 'transfer_timestamp' : IDL.Nat64,\n 'block_height' : IDL.Nat64,\n });\n const Followers = IDL.Record({ 'followers' : IDL.Vec(NeuronId) });\n const FollowersMap = IDL.Record({\n 'followers_map' : IDL.Vec(IDL.Tuple(IDL.Nat64, Followers)),\n });\n const Progress = IDL.Variant({ 'LastNeuronId' : NeuronId });\n const Migration = IDL.Record({\n 'status' : IDL.Opt(IDL.Int32),\n 'failure_reason' : IDL.Opt(IDL.Text),\n 'progress' : IDL.Opt(Progress),\n });\n const Migrations = IDL.Record({\n 'neuron_indexes_migration' : IDL.Opt(Migration),\n 'copy_inactive_neurons_to_stable_memory_migration' : IDL.Opt(Migration),\n });\n const GovernanceError = IDL.Record({\n 'error_message' : IDL.Text,\n 'error_type' : IDL.Int32,\n });\n const CfNeuron = IDL.Record({\n 'has_created_neuron_recipes' : IDL.Opt(IDL.Bool),\n 'nns_neuron_id' : IDL.Nat64,\n 'amount_icp_e8s' : IDL.Nat64,\n });\n const CfParticipant = IDL.Record({\n 'hotkey_principal' : IDL.Text,\n 'cf_neurons' : IDL.Vec(CfNeuron),\n });\n const Ballot = IDL.Record({ 'vote' : IDL.Int32, 'voting_power' : IDL.Nat64 });\n const SwapParticipationLimits = IDL.Record({\n 'min_participant_icp_e8s' : IDL.Opt(IDL.Nat64),\n 'max_participant_icp_e8s' : IDL.Opt(IDL.Nat64),\n 'min_direct_participation_icp_e8s' : IDL.Opt(IDL.Nat64),\n 'max_direct_participation_icp_e8s' : IDL.Opt(IDL.Nat64),\n });\n const NeuronsFundNeuronPortion = IDL.Record({\n 'hotkey_principal' : IDL.Opt(IDL.Principal),\n 'is_capped' : IDL.Opt(IDL.Bool),\n 'maturity_equivalent_icp_e8s' : IDL.Opt(IDL.Nat64),\n 'nns_neuron_id' : IDL.Opt(NeuronId),\n 'amount_icp_e8s' : IDL.Opt(IDL.Nat64),\n });\n const NeuronsFundSnapshot = IDL.Record({\n 'neurons_fund_neuron_portions' : IDL.Vec(NeuronsFundNeuronPortion),\n });\n const IdealMatchedParticipationFunction = IDL.Record({\n 'serialized_representation' : IDL.Opt(IDL.Text),\n });\n const NeuronsFundParticipation = IDL.Record({\n 'total_maturity_equivalent_icp_e8s' : IDL.Opt(IDL.Nat64),\n 'intended_neurons_fund_participation_icp_e8s' : IDL.Opt(IDL.Nat64),\n 'direct_participation_icp_e8s' : IDL.Opt(IDL.Nat64),\n 'swap_participation_limits' : IDL.Opt(SwapParticipationLimits),\n 'max_neurons_fund_swap_participation_icp_e8s' : IDL.Opt(IDL.Nat64),\n 'neurons_fund_reserves' : IDL.Opt(NeuronsFundSnapshot),\n 'ideal_matched_participation_function' : IDL.Opt(\n IdealMatchedParticipationFunction\n ),\n 'allocated_neurons_fund_participation_icp_e8s' : IDL.Opt(IDL.Nat64),\n });\n const NeuronsFundData = IDL.Record({\n 'final_neurons_fund_participation' : IDL.Opt(NeuronsFundParticipation),\n 'initial_neurons_fund_participation' : IDL.Opt(NeuronsFundParticipation),\n 'neurons_fund_refunds' : IDL.Opt(NeuronsFundSnapshot),\n });\n const CanisterStatusResultV2 = IDL.Record({\n 'status' : IDL.Opt(IDL.Int32),\n 'freezing_threshold' : IDL.Opt(IDL.Nat64),\n 'controllers' : IDL.Vec(IDL.Principal),\n 'memory_size' : IDL.Opt(IDL.Nat64),\n 'cycles' : IDL.Opt(IDL.Nat64),\n 'idle_cycles_burned_per_day' : IDL.Opt(IDL.Nat64),\n 'module_hash' : IDL.Vec(IDL.Nat8),\n });\n const CanisterSummary = IDL.Record({\n 'status' : IDL.Opt(CanisterStatusResultV2),\n 'canister_id' : IDL.Opt(IDL.Principal),\n });\n const SwapBackgroundInformation = IDL.Record({\n 'ledger_index_canister_summary' : IDL.Opt(CanisterSummary),\n 'fallback_controller_principal_ids' : IDL.Vec(IDL.Principal),\n 'ledger_archive_canister_summaries' : IDL.Vec(CanisterSummary),\n 'ledger_canister_summary' : IDL.Opt(CanisterSummary),\n 'swap_canister_summary' : IDL.Opt(CanisterSummary),\n 'governance_canister_summary' : IDL.Opt(CanisterSummary),\n 'root_canister_summary' : IDL.Opt(CanisterSummary),\n 'dapp_canister_summaries' : IDL.Vec(CanisterSummary),\n });\n const DerivedProposalInformation = IDL.Record({\n 'swap_background_information' : IDL.Opt(SwapBackgroundInformation),\n });\n const Tally = IDL.Record({\n 'no' : IDL.Nat64,\n 'yes' : IDL.Nat64,\n 'total' : IDL.Nat64,\n 'timestamp_seconds' : IDL.Nat64,\n });\n const WaitForQuietState = IDL.Record({\n 'current_deadline_timestamp_seconds' : IDL.Nat64,\n });\n const ProposalData = IDL.Record({\n 'id' : IDL.Opt(NeuronId),\n 'failure_reason' : IDL.Opt(GovernanceError),\n 'cf_participants' : IDL.Vec(CfParticipant),\n 'ballots' : IDL.Vec(IDL.Tuple(IDL.Nat64, Ballot)),\n 'proposal_timestamp_seconds' : IDL.Nat64,\n 'reward_event_round' : IDL.Nat64,\n 'failed_timestamp_seconds' : IDL.Nat64,\n 'neurons_fund_data' : IDL.Opt(NeuronsFundData),\n 'reject_cost_e8s' : IDL.Nat64,\n 'derived_proposal_information' : IDL.Opt(DerivedProposalInformation),\n 'latest_tally' : IDL.Opt(Tally),\n 'sns_token_swap_lifecycle' : IDL.Opt(IDL.Int32),\n 'decided_timestamp_seconds' : IDL.Nat64,\n 'proposal' : IDL.Opt(Proposal),\n 'proposer' : IDL.Opt(NeuronId),\n 'wait_for_quiet_state' : IDL.Opt(WaitForQuietState),\n 'executed_timestamp_seconds' : IDL.Nat64,\n 'original_total_community_fund_maturity_e8s_equivalent' : IDL.Opt(\n IDL.Nat64\n ),\n });\n const XdrConversionRate = IDL.Record({\n 'xdr_permyriad_per_icp' : IDL.Opt(IDL.Nat64),\n 'timestamp_seconds' : IDL.Opt(IDL.Nat64),\n });\n const Command_2 = IDL.Variant({\n 'Spawn' : NeuronId,\n 'Split' : Split,\n 'Configure' : Configure,\n 'Merge' : Merge,\n 'DisburseToNeuron' : DisburseToNeuron,\n 'SyncCommand' : IDL.Record({}),\n 'ClaimOrRefreshNeuron' : ClaimOrRefresh,\n 'MergeMaturity' : MergeMaturity,\n 'Disburse' : Disburse,\n });\n const NeuronInFlightCommand = IDL.Record({\n 'command' : IDL.Opt(Command_2),\n 'timestamp' : IDL.Nat64,\n });\n const BallotInfo = IDL.Record({\n 'vote' : IDL.Int32,\n 'proposal_id' : IDL.Opt(NeuronId),\n });\n const DissolveState = IDL.Variant({\n 'DissolveDelaySeconds' : IDL.Nat64,\n 'WhenDissolvedTimestampSeconds' : IDL.Nat64,\n });\n const Neuron = IDL.Record({\n 'id' : IDL.Opt(NeuronId),\n 'staked_maturity_e8s_equivalent' : IDL.Opt(IDL.Nat64),\n 'controller' : IDL.Opt(IDL.Principal),\n 'recent_ballots' : IDL.Vec(BallotInfo),\n 'kyc_verified' : IDL.Bool,\n 'neuron_type' : IDL.Opt(IDL.Int32),\n 'not_for_profit' : IDL.Bool,\n 'maturity_e8s_equivalent' : IDL.Nat64,\n 'cached_neuron_stake_e8s' : IDL.Nat64,\n 'created_timestamp_seconds' : IDL.Nat64,\n 'auto_stake_maturity' : IDL.Opt(IDL.Bool),\n 'aging_since_timestamp_seconds' : IDL.Nat64,\n 'hot_keys' : IDL.Vec(IDL.Principal),\n 'account' : IDL.Vec(IDL.Nat8),\n 'joined_community_fund_timestamp_seconds' : IDL.Opt(IDL.Nat64),\n 'dissolve_state' : IDL.Opt(DissolveState),\n 'followees' : IDL.Vec(IDL.Tuple(IDL.Int32, Followees)),\n 'neuron_fees_e8s' : IDL.Nat64,\n 'transfer' : IDL.Opt(NeuronStakeTransfer),\n 'known_neuron_data' : IDL.Opt(KnownNeuronData),\n 'spawn_at_timestamp_seconds' : IDL.Opt(IDL.Nat64),\n });\n const Governance = IDL.Record({\n 'default_followees' : IDL.Vec(IDL.Tuple(IDL.Int32, Followees)),\n 'making_sns_proposal' : IDL.Opt(MakingSnsProposal),\n 'most_recent_monthly_node_provider_rewards' : IDL.Opt(\n MostRecentMonthlyNodeProviderRewards\n ),\n 'maturity_modulation_last_updated_at_timestamp_seconds' : IDL.Opt(\n IDL.Nat64\n ),\n 'wait_for_quiet_threshold_seconds' : IDL.Nat64,\n 'metrics' : IDL.Opt(GovernanceCachedMetrics),\n 'neuron_management_voting_period_seconds' : IDL.Opt(IDL.Nat64),\n 'node_providers' : IDL.Vec(NodeProvider),\n 'cached_daily_maturity_modulation_basis_points' : IDL.Opt(IDL.Int32),\n 'economics' : IDL.Opt(NetworkEconomics),\n 'spawning_neurons' : IDL.Opt(IDL.Bool),\n 'latest_reward_event' : IDL.Opt(RewardEvent),\n 'to_claim_transfers' : IDL.Vec(NeuronStakeTransfer),\n 'short_voting_period_seconds' : IDL.Nat64,\n 'topic_followee_index' : IDL.Vec(IDL.Tuple(IDL.Int32, FollowersMap)),\n 'migrations' : IDL.Opt(Migrations),\n 'proposals' : IDL.Vec(IDL.Tuple(IDL.Nat64, ProposalData)),\n 'xdr_conversion_rate' : IDL.Opt(XdrConversionRate),\n 'in_flight_commands' : IDL.Vec(IDL.Tuple(IDL.Nat64, NeuronInFlightCommand)),\n 'neurons' : IDL.Vec(IDL.Tuple(IDL.Nat64, Neuron)),\n 'genesis_timestamp_seconds' : IDL.Nat64,\n });\n return [Governance];\n};\n", "import type { Vote } from \"../enums/governance.enums\";\nimport type {\n Ballot,\n BallotInfo,\n NeuronInfo,\n ProposalId,\n ProposalInfo,\n} from \"../types/governance_converters\";\n\nconst voteForProposal = ({\n recentBallots,\n proposalId,\n}: {\n recentBallots: BallotInfo[];\n proposalId: ProposalId | undefined;\n}): Vote | undefined => {\n if (!proposalId) {\n return undefined;\n }\n\n const ballot: BallotInfo | undefined = recentBallots.find(\n ({ proposalId: id }: BallotInfo) => id === proposalId,\n );\n return ballot?.vote;\n};\n\n/**\n * Filter the neurons that are ineligible to vote to a proposal.\n *\n * This feature needs the ballots of the proposal to contains accurate data.\n * If the proposal has settled, as the ballots of the proposal are emptied for archive purpose, the function might return a list of ineligible neurons that are actually neurons that have not voted but would have been eligible.\n *\n * Long story short, check the status of the proposal before using this function.\n *\n * @param {neurons; proposal;} params\n * @param params.neurons The neurons to filter.\n * @param params.proposal The proposal to match against the selected neurons.\n */\nexport const ineligibleNeurons = ({\n neurons,\n proposal,\n}: {\n neurons: NeuronInfo[];\n proposal: ProposalInfo;\n}): NeuronInfo[] => {\n const { ballots, proposalTimestampSeconds } = proposal;\n\n return neurons.filter(({ createdTimestampSeconds, neuronId }: NeuronInfo) => {\n const createdSinceProposal: boolean =\n createdTimestampSeconds > proposalTimestampSeconds;\n\n const dissolveTooShort: boolean =\n ballots.find(\n ({ neuronId: ballotNeuronId }: Ballot) => ballotNeuronId === neuronId,\n ) === undefined;\n\n return createdSinceProposal || dissolveTooShort;\n });\n};\n\n/**\n * Filter the neurons that can vote for a proposal - i.e. the neurons that have not voted yet and are eligible\n *\n * @param {neurons; proposal;} params\n * @param params.neurons The neurons to filter.\n * @param params.proposal The proposal to match against the selected neurons.\n */\nexport const votableNeurons = ({\n neurons,\n proposal,\n}: {\n neurons: NeuronInfo[];\n proposal: ProposalInfo;\n}): NeuronInfo[] => {\n const { id: proposalId } = proposal;\n\n return neurons.filter(\n ({ recentBallots, neuronId }: NeuronInfo) =>\n voteForProposal({ recentBallots, proposalId }) === undefined &&\n ineligibleNeurons({ neurons, proposal }).find(\n ({ neuronId: ineligibleNeuronId }: NeuronInfo) =>\n ineligibleNeuronId === neuronId,\n ) === undefined,\n );\n};\n\n/**\n * Filter the neurons that have voted for a proposal.\n *\n * @param {neurons; proposal;} params\n * @param params.neurons The neurons to filter.\n * @param params.proposal The proposal for which some neurons might have already voted.\n */\nexport const votedNeurons = ({\n neurons,\n proposal: { id: proposalId },\n}: {\n neurons: NeuronInfo[];\n proposal: ProposalInfo;\n}): NeuronInfo[] =>\n neurons.filter(\n ({ recentBallots }: NeuronInfo) =>\n voteForProposal({ recentBallots, proposalId }) !== undefined,\n );\n"],
5
- "mappings": "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",
6
- "names": ["NeuronState", "Topic", "ProposalRewardStatus", "ProposalStatus", "Vote", "NnsFunction", "NeuronType", "createServices", "idlFactory", "IDL", "Proposal", "NeuronId", "Followees", "KnownNeuronData", "KnownNeuron", "Spawn", "Split", "Follow", "ClaimOrRefreshNeuronFromAccount", "By", "ClaimOrRefresh", "RemoveHotKey", "AddHotKey", "ChangeAutoStakeMaturity", "IncreaseDissolveDelay", "SetDissolveTimestamp", "Operation", "Configure", "RegisterVote", "Merge", "DisburseToNeuron", "StakeMaturity", "MergeMaturity", "AccountIdentifier", "Amount", "Disburse", "Command", "NeuronIdOrSubaccount", "ManageNeuron", "Percentage", "Duration", "Tokens", "VotingRewardParameters", "GovernanceParameters", "Image", "LedgerParameters", "Canister", "NeuronBasketConstructionParameters", "GlobalTimeOfDay", "Countries", "SwapParameters", "SwapDistribution", "NeuronDistribution", "DeveloperDistribution", "InitialTokenDistribution", "CreateServiceNervousSystem", "ExecuteNnsFunction", "NodeProvider", "RewardToNeuron", "RewardToAccount", "RewardMode", "RewardNodeProvider", "NeuronBasketConstructionParameters_1", "Params", "OpenSnsTokenSwap", "TimeWindow", "SetOpenTimeWindowRequest", "SetSnsTokenSwapOpenTimeWindow", "SetDefaultFollowees", "RewardNodeProviders", "Decimal", "NeuronsFundMatchedFundingCurveCoefficients", "NeuronsFundEconomics", "NetworkEconomics", "ApproveGenesisKyc", "Change", "AddOrRemoveNodeProvider", "Motion", "Action", "MakingSnsProposal", "MostRecentMonthlyNodeProviderRewards", "GovernanceCachedMetrics", "RewardEvent", "NeuronStakeTransfer", "Followers", "FollowersMap", "Progress", "Migration", "Migrations", "GovernanceError", "CfNeuron", "CfParticipant", "Ballot", "SwapParticipationLimits", "NeuronsFundNeuronPortion", "NeuronsFundSnapshot", "IdealMatchedParticipationFunction", "NeuronsFundParticipation", "NeuronsFundData", "CanisterStatusResultV2", "CanisterSummary", "SwapBackgroundInformation", "DerivedProposalInformation", "Tally", "WaitForQuietState", "ProposalData", "XdrConversionRate", "Command_2", "NeuronInFlightCommand", "BallotInfo", "DissolveState", "Neuron", "Governance", "Result", "Result_1", "ClaimOrRefreshNeuronFromAccountResponse", "Result_2", "Result_3", "Result_4", "NeuronInfo", "Result_5", "GetNeuronsFundAuditInfoRequest", "NeuronsFundAuditInfo", "Ok", "Result_6", "GetNeuronsFundAuditInfoResponse", "Result_7", "ProposalInfo", "ListKnownNeuronsResponse", "ListNeurons", "ListNeuronsResponse", "ListNodeProvidersResponse", "ListProposalInfo", "ListProposalInfoResponse", "SpawnResponse", "ClaimOrRefreshResponse", "MergeResponse", "MakeProposalResponse", "StakeMaturityResponse", "MergeMaturityResponse", "DisburseResponse", "Command_1", "ManageNeuronResponse", "Committed", "Result_8", "SettleCommunityFundParticipation", "Committed_1", "Result_9", "SettleNeuronsFundParticipationRequest", "NeuronsFundNeuron", "Ok_1", "Result_10", "SettleNeuronsFundParticipationResponse", "UpdateNodeProvider", "GovernanceTestCanister", "_GovernanceTestCanister", "certifiedService", "options", "canisterId", "MAINNET_GOVERNANCE_CANISTER_ID", "createServices", "idlFactory", "neuron", "toRawNeuron", "voteForProposal", "recentBallots", "proposalId", "id", "ineligibleNeurons", "neurons", "proposal", "ballots", "proposalTimestampSeconds", "createdTimestampSeconds", "neuronId", "createdSinceProposal", "dissolveTooShort", "ballotNeuronId", "votableNeurons", "ineligibleNeuronId", "votedNeurons"]
4
+ "sourcesContent": ["// The Candid files are generated from Proto. That's why the enums are currently lost in the conversion process.\n// These enums are used to map back numbers provided by the backend through the Candid declaration.\n// We use Pascal case for consistency reason.\n//\n// Proto source: https://github.com/dfinity/ic/blob/master/rs/nns/governance/proto/icNns_governance/pb/v1/governance.proto\n\nexport enum NeuronState {\n Unspecified = 0,\n Locked = 1,\n Dissolving = 2,\n Dissolved = 3,\n Spawning = 4,\n}\n\nexport enum Topic {\n Unspecified = 0,\n ManageNeuron = 1,\n ExchangeRate = 2,\n NetworkEconomics = 3,\n Governance = 4,\n NodeAdmin = 5,\n ParticipantManagement = 6,\n SubnetManagement = 7,\n NetworkCanisterManagement = 8,\n Kyc = 9,\n NodeProviderRewards = 10,\n /**\n * @deprecated\n */\n SnsDecentralizationSale = 11,\n SubnetReplicaVersionManagement = 12,\n ReplicaVersionManagement = 13,\n SnsAndCommunityFund = 14,\n ApiBoundaryNodeManagement = 15,\n SubnetRental = 16,\n}\n\n// The proposal status, with respect to reward distribution.\n// See also ProposalStatus.\nexport enum ProposalRewardStatus {\n Unknown = 0,\n\n // The proposal still accept votes, for the purpose of\n // vote rewards. This implies nothing on the ProposalStatus.\n AcceptVotes = 1,\n\n // The proposal no longer accepts votes. It is due to settle\n // at the next reward event.\n ReadyToSettle = 2,\n\n // The proposal has been taken into account in a reward event.\n Settled = 3,\n\n // The proposal is not eligible to be taken into account in a reward event.\n Ineligible = 4,\n}\n\n// The proposal status, with respect to decision making and execution.\n// See also ProposalRewardStatus.\nexport enum ProposalStatus {\n Unknown = 0,\n\n // A decision (accept/reject) has yet to be made.\n Open = 1,\n\n // The proposal has been rejected.\n Rejected = 2,\n\n // The proposal has been accepted. At this time, either execution\n // as not yet started, or it has but the outcome is not yet known.\n Accepted = 3,\n\n // The proposal was accepted and successfully executed.\n Executed = 4,\n\n // The proposal was accepted, but execution failed.\n Failed = 5,\n}\n\nexport enum Vote {\n Unspecified = 0,\n Yes = 1,\n No = 2,\n}\n\nexport enum NnsFunction {\n Unspecified = 0,\n CreateSubnet = 1,\n AddNodeToSubnet = 2,\n NnsCanisterInstall = 3,\n NnsCanisterUpgrade = 4,\n BlessReplicaVersion = 5,\n RecoverSubnet = 6,\n UpdateConfigOfSubnet = 7,\n AssignNoid = 8,\n NnsRootUpgrade = 9,\n IcpXdrConversionRate = 10,\n UpdateSubnetReplicaVersion = 11,\n ClearProvisionalWhitelist = 12,\n RemoveNodesFromSubnet = 13,\n SetAuthorizedSubnetworks = 14,\n SetFirewallConfig = 15,\n UpdateNodeOperatorConfig = 16,\n StopOrStartNnsCanister = 17,\n RemoveNodes = 18,\n UninstallCode = 19,\n UpdateNodeRewardsTable = 20,\n AddOrRemoveDataCenters = 21,\n UpdateUnassignedNodesConfig = 22,\n RemoveNodeOperators = 23,\n RerouteCanisterRanges = 24,\n AddFirewallRules = 25,\n RemoveFirewallRules = 26,\n UpdateFirewallRules = 27,\n PrepareCanisterMigration = 28,\n CompleteCanisterMigration = 29,\n AddSnsWasm = 30,\n ChangeSubnetMembership = 31,\n UpdateSubnetType = 32,\n ChangeSubnetTypeAssignment = 33,\n UpdateSnsWasmSnsSubnetIds = 34,\n UpdateAllowedPrincipals = 35,\n RetireReplicaVersion = 36,\n InsertSnsWasmUpgradePathEntries = 37,\n UpdateElectedReplicaVersions = 38,\n BitcoinSetConfig = 39,\n UpdateElectedHostosVersions = 40,\n UpdateNodesHostosVersion = 41,\n AddApiBoundaryNode = 43,\n RemoveApiBoundaryNodes = 44,\n UpdateApiBoundaryNodesVersion = 46,\n DeployGuestosToSomeApiBoundaryNodes = 47,\n DeployGuestosToAllUnassignedNodes = 48,\n UpdateSshReadOnlyAccessForAllUnassignedNodes = 49,\n ReviseElectedHostosVersions = 50,\n DeployHostosToSomeNodes = 51,\n SubnetRentalRequest = 52,\n}\n\n// Reference: https://github.com/dfinity/ic/blob/f4b2e28525ae9b030bd9edfc982e796417db2b80/rs/nns/governance/src/gen/ic_nns_governance.pb.v1.rs#L3286-L3287\nexport enum NeuronType {\n // Placeholder value due to the proto3 requirement for a zero default.\n // This is an invalid type; neurons should not be assigned this value.\n Unspecified = 0,\n // Represents neurons initially created for Seed accounts in the\n // Genesis Token Canister, or those descended from such neurons.\n Seed = 1,\n // Represents neurons initially created for Early Contributor Token (ECT)\n // accounts in the Genesis Token Canister, or those descended from such neurons.\n Ect = 2,\n}\n", "import type { ActorSubclass } from \"@dfinity/agent\";\nimport type { Principal } from \"@dfinity/principal\";\nimport { createServices, type CanisterOptions } from \"@dfinity/utils\";\nimport { idlFactory } from \"../candid/governance.idl\";\nimport type { _SERVICE as GovernanceService } from \"../candid/governance_test\";\nimport { idlFactory as certifiedIdlFactory } from \"../candid/governance_test.certified.idl\";\nimport { toRawNeuron } from \"./canisters/governance/response.converters\";\nimport { MAINNET_GOVERNANCE_CANISTER_ID } from \"./constants/canister_ids\";\nimport type { Neuron } from \"./types/governance_converters\";\n\nexport class GovernanceTestCanister {\n private constructor(\n private readonly certifiedService: ActorSubclass<GovernanceService>,\n ) {\n this.certifiedService = certifiedService;\n }\n\n public static create(options: CanisterOptions<GovernanceService> = {}) {\n const canisterId: Principal =\n options.canisterId ?? MAINNET_GOVERNANCE_CANISTER_ID;\n\n const { certifiedService } = createServices<GovernanceService>({\n options: {\n ...options,\n canisterId,\n },\n idlFactory,\n certifiedIdlFactory,\n });\n\n return new GovernanceTestCanister(certifiedService);\n }\n\n /**\n * Test method to update fields of a neuron.\n *\n * Only available in the governance test canister.\n */\n updateNeuron(neuron: Neuron) {\n this.certifiedService.update_neuron(toRawNeuron(neuron));\n }\n}\n", "/* Do not edit. Compiled with ./scripts/compile-idl-js from packages/nns/candid/governance_test.did */\nexport const idlFactory = ({ IDL }) => {\n const Proposal = IDL.Rec();\n const NeuronId = IDL.Record({ 'id' : IDL.Nat64 });\n const Followees = IDL.Record({ 'followees' : IDL.Vec(NeuronId) });\n const KnownNeuronData = IDL.Record({\n 'name' : IDL.Text,\n 'description' : IDL.Opt(IDL.Text),\n });\n const KnownNeuron = IDL.Record({\n 'id' : IDL.Opt(NeuronId),\n 'known_neuron_data' : IDL.Opt(KnownNeuronData),\n });\n const Spawn = IDL.Record({\n 'percentage_to_spawn' : IDL.Opt(IDL.Nat32),\n 'new_controller' : IDL.Opt(IDL.Principal),\n 'nonce' : IDL.Opt(IDL.Nat64),\n });\n const Split = IDL.Record({ 'amount_e8s' : IDL.Nat64 });\n const Follow = IDL.Record({\n 'topic' : IDL.Int32,\n 'followees' : IDL.Vec(NeuronId),\n });\n const ClaimOrRefreshNeuronFromAccount = IDL.Record({\n 'controller' : IDL.Opt(IDL.Principal),\n 'memo' : IDL.Nat64,\n });\n const By = IDL.Variant({\n 'NeuronIdOrSubaccount' : IDL.Record({}),\n 'MemoAndController' : ClaimOrRefreshNeuronFromAccount,\n 'Memo' : IDL.Nat64,\n });\n const ClaimOrRefresh = IDL.Record({ 'by' : IDL.Opt(By) });\n const RemoveHotKey = IDL.Record({\n 'hot_key_to_remove' : IDL.Opt(IDL.Principal),\n });\n const AddHotKey = IDL.Record({ 'new_hot_key' : IDL.Opt(IDL.Principal) });\n const ChangeAutoStakeMaturity = IDL.Record({\n 'requested_setting_for_auto_stake_maturity' : IDL.Bool,\n });\n const IncreaseDissolveDelay = IDL.Record({\n 'additional_dissolve_delay_seconds' : IDL.Nat32,\n });\n const SetDissolveTimestamp = IDL.Record({\n 'dissolve_timestamp_seconds' : IDL.Nat64,\n });\n const Operation = IDL.Variant({\n 'RemoveHotKey' : RemoveHotKey,\n 'AddHotKey' : AddHotKey,\n 'ChangeAutoStakeMaturity' : ChangeAutoStakeMaturity,\n 'StopDissolving' : IDL.Record({}),\n 'StartDissolving' : IDL.Record({}),\n 'IncreaseDissolveDelay' : IncreaseDissolveDelay,\n 'JoinCommunityFund' : IDL.Record({}),\n 'LeaveCommunityFund' : IDL.Record({}),\n 'SetDissolveTimestamp' : SetDissolveTimestamp,\n });\n const Configure = IDL.Record({ 'operation' : IDL.Opt(Operation) });\n const RegisterVote = IDL.Record({\n 'vote' : IDL.Int32,\n 'proposal' : IDL.Opt(NeuronId),\n });\n const Merge = IDL.Record({ 'source_neuron_id' : IDL.Opt(NeuronId) });\n const DisburseToNeuron = IDL.Record({\n 'dissolve_delay_seconds' : IDL.Nat64,\n 'kyc_verified' : IDL.Bool,\n 'amount_e8s' : IDL.Nat64,\n 'new_controller' : IDL.Opt(IDL.Principal),\n 'nonce' : IDL.Nat64,\n });\n const StakeMaturity = IDL.Record({\n 'percentage_to_stake' : IDL.Opt(IDL.Nat32),\n });\n const MergeMaturity = IDL.Record({ 'percentage_to_merge' : IDL.Nat32 });\n const AccountIdentifier = IDL.Record({ 'hash' : IDL.Vec(IDL.Nat8) });\n const Amount = IDL.Record({ 'e8s' : IDL.Nat64 });\n const Disburse = IDL.Record({\n 'to_account' : IDL.Opt(AccountIdentifier),\n 'amount' : IDL.Opt(Amount),\n });\n const Command = IDL.Variant({\n 'Spawn' : Spawn,\n 'Split' : Split,\n 'Follow' : Follow,\n 'ClaimOrRefresh' : ClaimOrRefresh,\n 'Configure' : Configure,\n 'RegisterVote' : RegisterVote,\n 'Merge' : Merge,\n 'DisburseToNeuron' : DisburseToNeuron,\n 'MakeProposal' : Proposal,\n 'StakeMaturity' : StakeMaturity,\n 'MergeMaturity' : MergeMaturity,\n 'Disburse' : Disburse,\n });\n const NeuronIdOrSubaccount = IDL.Variant({\n 'Subaccount' : IDL.Vec(IDL.Nat8),\n 'NeuronId' : NeuronId,\n });\n const ManageNeuron = IDL.Record({\n 'id' : IDL.Opt(NeuronId),\n 'command' : IDL.Opt(Command),\n 'neuron_id_or_subaccount' : IDL.Opt(NeuronIdOrSubaccount),\n });\n const Percentage = IDL.Record({ 'basis_points' : IDL.Opt(IDL.Nat64) });\n const Duration = IDL.Record({ 'seconds' : IDL.Opt(IDL.Nat64) });\n const Tokens = IDL.Record({ 'e8s' : IDL.Opt(IDL.Nat64) });\n const VotingRewardParameters = IDL.Record({\n 'reward_rate_transition_duration' : IDL.Opt(Duration),\n 'initial_reward_rate' : IDL.Opt(Percentage),\n 'final_reward_rate' : IDL.Opt(Percentage),\n });\n const GovernanceParameters = IDL.Record({\n 'neuron_maximum_dissolve_delay_bonus' : IDL.Opt(Percentage),\n 'neuron_maximum_age_for_age_bonus' : IDL.Opt(Duration),\n 'neuron_maximum_dissolve_delay' : IDL.Opt(Duration),\n 'neuron_minimum_dissolve_delay_to_vote' : IDL.Opt(Duration),\n 'neuron_maximum_age_bonus' : IDL.Opt(Percentage),\n 'neuron_minimum_stake' : IDL.Opt(Tokens),\n 'proposal_wait_for_quiet_deadline_increase' : IDL.Opt(Duration),\n 'proposal_initial_voting_period' : IDL.Opt(Duration),\n 'proposal_rejection_fee' : IDL.Opt(Tokens),\n 'voting_reward_parameters' : IDL.Opt(VotingRewardParameters),\n });\n const Image = IDL.Record({ 'base64_encoding' : IDL.Opt(IDL.Text) });\n const LedgerParameters = IDL.Record({\n 'transaction_fee' : IDL.Opt(Tokens),\n 'token_symbol' : IDL.Opt(IDL.Text),\n 'token_logo' : IDL.Opt(Image),\n 'token_name' : IDL.Opt(IDL.Text),\n });\n const Canister = IDL.Record({ 'id' : IDL.Opt(IDL.Principal) });\n const NeuronBasketConstructionParameters = IDL.Record({\n 'dissolve_delay_interval' : IDL.Opt(Duration),\n 'count' : IDL.Opt(IDL.Nat64),\n });\n const GlobalTimeOfDay = IDL.Record({\n 'seconds_after_utc_midnight' : IDL.Opt(IDL.Nat64),\n });\n const Countries = IDL.Record({ 'iso_codes' : IDL.Vec(IDL.Text) });\n const SwapParameters = IDL.Record({\n 'minimum_participants' : IDL.Opt(IDL.Nat64),\n 'neurons_fund_participation' : IDL.Opt(IDL.Bool),\n 'duration' : IDL.Opt(Duration),\n 'neuron_basket_construction_parameters' : IDL.Opt(\n NeuronBasketConstructionParameters\n ),\n 'confirmation_text' : IDL.Opt(IDL.Text),\n 'maximum_participant_icp' : IDL.Opt(Tokens),\n 'minimum_icp' : IDL.Opt(Tokens),\n 'minimum_direct_participation_icp' : IDL.Opt(Tokens),\n 'minimum_participant_icp' : IDL.Opt(Tokens),\n 'start_time' : IDL.Opt(GlobalTimeOfDay),\n 'maximum_direct_participation_icp' : IDL.Opt(Tokens),\n 'maximum_icp' : IDL.Opt(Tokens),\n 'neurons_fund_investment_icp' : IDL.Opt(Tokens),\n 'restricted_countries' : IDL.Opt(Countries),\n });\n const SwapDistribution = IDL.Record({ 'total' : IDL.Opt(Tokens) });\n const NeuronDistribution = IDL.Record({\n 'controller' : IDL.Opt(IDL.Principal),\n 'dissolve_delay' : IDL.Opt(Duration),\n 'memo' : IDL.Opt(IDL.Nat64),\n 'vesting_period' : IDL.Opt(Duration),\n 'stake' : IDL.Opt(Tokens),\n });\n const DeveloperDistribution = IDL.Record({\n 'developer_neurons' : IDL.Vec(NeuronDistribution),\n });\n const InitialTokenDistribution = IDL.Record({\n 'treasury_distribution' : IDL.Opt(SwapDistribution),\n 'developer_distribution' : IDL.Opt(DeveloperDistribution),\n 'swap_distribution' : IDL.Opt(SwapDistribution),\n });\n const CreateServiceNervousSystem = IDL.Record({\n 'url' : IDL.Opt(IDL.Text),\n 'governance_parameters' : IDL.Opt(GovernanceParameters),\n 'fallback_controller_principal_ids' : IDL.Vec(IDL.Principal),\n 'logo' : IDL.Opt(Image),\n 'name' : IDL.Opt(IDL.Text),\n 'ledger_parameters' : IDL.Opt(LedgerParameters),\n 'description' : IDL.Opt(IDL.Text),\n 'dapp_canisters' : IDL.Vec(Canister),\n 'swap_parameters' : IDL.Opt(SwapParameters),\n 'initial_token_distribution' : IDL.Opt(InitialTokenDistribution),\n });\n const ExecuteNnsFunction = IDL.Record({\n 'nns_function' : IDL.Int32,\n 'payload' : IDL.Vec(IDL.Nat8),\n });\n const NodeProvider = IDL.Record({\n 'id' : IDL.Opt(IDL.Principal),\n 'reward_account' : IDL.Opt(AccountIdentifier),\n });\n const RewardToNeuron = IDL.Record({ 'dissolve_delay_seconds' : IDL.Nat64 });\n const RewardToAccount = IDL.Record({\n 'to_account' : IDL.Opt(AccountIdentifier),\n });\n const RewardMode = IDL.Variant({\n 'RewardToNeuron' : RewardToNeuron,\n 'RewardToAccount' : RewardToAccount,\n });\n const RewardNodeProvider = IDL.Record({\n 'node_provider' : IDL.Opt(NodeProvider),\n 'reward_mode' : IDL.Opt(RewardMode),\n 'amount_e8s' : IDL.Nat64,\n });\n const NeuronBasketConstructionParameters_1 = IDL.Record({\n 'dissolve_delay_interval_seconds' : IDL.Nat64,\n 'count' : IDL.Nat64,\n });\n const Params = IDL.Record({\n 'min_participant_icp_e8s' : IDL.Nat64,\n 'neuron_basket_construction_parameters' : IDL.Opt(\n NeuronBasketConstructionParameters_1\n ),\n 'max_icp_e8s' : IDL.Nat64,\n 'swap_due_timestamp_seconds' : IDL.Nat64,\n 'min_participants' : IDL.Nat32,\n 'sns_token_e8s' : IDL.Nat64,\n 'sale_delay_seconds' : IDL.Opt(IDL.Nat64),\n 'max_participant_icp_e8s' : IDL.Nat64,\n 'min_direct_participation_icp_e8s' : IDL.Opt(IDL.Nat64),\n 'min_icp_e8s' : IDL.Nat64,\n 'max_direct_participation_icp_e8s' : IDL.Opt(IDL.Nat64),\n });\n const OpenSnsTokenSwap = IDL.Record({\n 'community_fund_investment_e8s' : IDL.Opt(IDL.Nat64),\n 'target_swap_canister_id' : IDL.Opt(IDL.Principal),\n 'params' : IDL.Opt(Params),\n });\n const TimeWindow = IDL.Record({\n 'start_timestamp_seconds' : IDL.Nat64,\n 'end_timestamp_seconds' : IDL.Nat64,\n });\n const SetOpenTimeWindowRequest = IDL.Record({\n 'open_time_window' : IDL.Opt(TimeWindow),\n });\n const SetSnsTokenSwapOpenTimeWindow = IDL.Record({\n 'request' : IDL.Opt(SetOpenTimeWindowRequest),\n 'swap_canister_id' : IDL.Opt(IDL.Principal),\n });\n const SetDefaultFollowees = IDL.Record({\n 'default_followees' : IDL.Vec(IDL.Tuple(IDL.Int32, Followees)),\n });\n const RewardNodeProviders = IDL.Record({\n 'use_registry_derived_rewards' : IDL.Opt(IDL.Bool),\n 'rewards' : IDL.Vec(RewardNodeProvider),\n });\n const Decimal = IDL.Record({ 'human_readable' : IDL.Opt(IDL.Text) });\n const NeuronsFundMatchedFundingCurveCoefficients = IDL.Record({\n 'contribution_threshold_xdr' : IDL.Opt(Decimal),\n 'one_third_participation_milestone_xdr' : IDL.Opt(Decimal),\n 'full_participation_milestone_xdr' : IDL.Opt(Decimal),\n });\n const NeuronsFundEconomics = IDL.Record({\n 'maximum_icp_xdr_rate' : IDL.Opt(Percentage),\n 'neurons_fund_matched_funding_curve_coefficients' : IDL.Opt(\n NeuronsFundMatchedFundingCurveCoefficients\n ),\n 'max_theoretical_neurons_fund_participation_amount_xdr' : IDL.Opt(Decimal),\n 'minimum_icp_xdr_rate' : IDL.Opt(Percentage),\n });\n const NetworkEconomics = IDL.Record({\n 'neuron_minimum_stake_e8s' : IDL.Nat64,\n 'max_proposals_to_keep_per_topic' : IDL.Nat32,\n 'neuron_management_fee_per_proposal_e8s' : IDL.Nat64,\n 'reject_cost_e8s' : IDL.Nat64,\n 'transaction_fee_e8s' : IDL.Nat64,\n 'neuron_spawn_dissolve_delay_seconds' : IDL.Nat64,\n 'minimum_icp_xdr_rate' : IDL.Nat64,\n 'maximum_node_provider_rewards_e8s' : IDL.Nat64,\n 'neurons_fund_economics' : IDL.Opt(NeuronsFundEconomics),\n });\n const ApproveGenesisKyc = IDL.Record({\n 'principals' : IDL.Vec(IDL.Principal),\n });\n const Change = IDL.Variant({\n 'ToRemove' : NodeProvider,\n 'ToAdd' : NodeProvider,\n });\n const AddOrRemoveNodeProvider = IDL.Record({ 'change' : IDL.Opt(Change) });\n const Motion = IDL.Record({ 'motion_text' : IDL.Text });\n const Action = IDL.Variant({\n 'RegisterKnownNeuron' : KnownNeuron,\n 'ManageNeuron' : ManageNeuron,\n 'CreateServiceNervousSystem' : CreateServiceNervousSystem,\n 'ExecuteNnsFunction' : ExecuteNnsFunction,\n 'RewardNodeProvider' : RewardNodeProvider,\n 'OpenSnsTokenSwap' : OpenSnsTokenSwap,\n 'SetSnsTokenSwapOpenTimeWindow' : SetSnsTokenSwapOpenTimeWindow,\n 'SetDefaultFollowees' : SetDefaultFollowees,\n 'RewardNodeProviders' : RewardNodeProviders,\n 'ManageNetworkEconomics' : NetworkEconomics,\n 'ApproveGenesisKyc' : ApproveGenesisKyc,\n 'AddOrRemoveNodeProvider' : AddOrRemoveNodeProvider,\n 'Motion' : Motion,\n });\n Proposal.fill(\n IDL.Record({\n 'url' : IDL.Text,\n 'title' : IDL.Opt(IDL.Text),\n 'action' : IDL.Opt(Action),\n 'summary' : IDL.Text,\n })\n );\n const MakingSnsProposal = IDL.Record({\n 'proposal' : IDL.Opt(Proposal),\n 'caller' : IDL.Opt(IDL.Principal),\n 'proposer_id' : IDL.Opt(NeuronId),\n });\n const MostRecentMonthlyNodeProviderRewards = IDL.Record({\n 'timestamp' : IDL.Nat64,\n 'rewards' : IDL.Vec(RewardNodeProvider),\n });\n const GovernanceCachedMetrics = IDL.Record({\n 'total_maturity_e8s_equivalent' : IDL.Nat64,\n 'not_dissolving_neurons_e8s_buckets' : IDL.Vec(\n IDL.Tuple(IDL.Nat64, IDL.Float64)\n ),\n 'dissolving_neurons_staked_maturity_e8s_equivalent_sum' : IDL.Nat64,\n 'garbage_collectable_neurons_count' : IDL.Nat64,\n 'dissolving_neurons_staked_maturity_e8s_equivalent_buckets' : IDL.Vec(\n IDL.Tuple(IDL.Nat64, IDL.Float64)\n ),\n 'neurons_with_invalid_stake_count' : IDL.Nat64,\n 'not_dissolving_neurons_count_buckets' : IDL.Vec(\n IDL.Tuple(IDL.Nat64, IDL.Nat64)\n ),\n 'ect_neuron_count' : IDL.Nat64,\n 'total_supply_icp' : IDL.Nat64,\n 'neurons_with_less_than_6_months_dissolve_delay_count' : IDL.Nat64,\n 'dissolved_neurons_count' : IDL.Nat64,\n 'community_fund_total_maturity_e8s_equivalent' : IDL.Nat64,\n 'total_staked_e8s_seed' : IDL.Nat64,\n 'total_staked_maturity_e8s_equivalent_ect' : IDL.Nat64,\n 'total_staked_e8s' : IDL.Nat64,\n 'not_dissolving_neurons_count' : IDL.Nat64,\n 'total_locked_e8s' : IDL.Nat64,\n 'neurons_fund_total_active_neurons' : IDL.Nat64,\n 'total_staked_maturity_e8s_equivalent' : IDL.Nat64,\n 'not_dissolving_neurons_e8s_buckets_ect' : IDL.Vec(\n IDL.Tuple(IDL.Nat64, IDL.Float64)\n ),\n 'total_staked_e8s_ect' : IDL.Nat64,\n 'not_dissolving_neurons_staked_maturity_e8s_equivalent_sum' : IDL.Nat64,\n 'dissolved_neurons_e8s' : IDL.Nat64,\n 'dissolving_neurons_e8s_buckets_seed' : IDL.Vec(\n IDL.Tuple(IDL.Nat64, IDL.Float64)\n ),\n 'neurons_with_less_than_6_months_dissolve_delay_e8s' : IDL.Nat64,\n 'not_dissolving_neurons_staked_maturity_e8s_equivalent_buckets' : IDL.Vec(\n IDL.Tuple(IDL.Nat64, IDL.Float64)\n ),\n 'dissolving_neurons_count_buckets' : IDL.Vec(\n IDL.Tuple(IDL.Nat64, IDL.Nat64)\n ),\n 'dissolving_neurons_e8s_buckets_ect' : IDL.Vec(\n IDL.Tuple(IDL.Nat64, IDL.Float64)\n ),\n 'dissolving_neurons_count' : IDL.Nat64,\n 'dissolving_neurons_e8s_buckets' : IDL.Vec(\n IDL.Tuple(IDL.Nat64, IDL.Float64)\n ),\n 'total_staked_maturity_e8s_equivalent_seed' : IDL.Nat64,\n 'community_fund_total_staked_e8s' : IDL.Nat64,\n 'not_dissolving_neurons_e8s_buckets_seed' : IDL.Vec(\n IDL.Tuple(IDL.Nat64, IDL.Float64)\n ),\n 'timestamp_seconds' : IDL.Nat64,\n 'seed_neuron_count' : IDL.Nat64,\n });\n const RestoreAgingNeuronGroup = IDL.Record({\n 'count' : IDL.Opt(IDL.Nat64),\n 'previous_total_stake_e8s' : IDL.Opt(IDL.Nat64),\n 'current_total_stake_e8s' : IDL.Opt(IDL.Nat64),\n 'group_type' : IDL.Int32,\n });\n const RestoreAgingSummary = IDL.Record({\n 'groups' : IDL.Vec(RestoreAgingNeuronGroup),\n 'timestamp_seconds' : IDL.Opt(IDL.Nat64),\n });\n const RewardEvent = IDL.Record({\n 'rounds_since_last_distribution' : IDL.Opt(IDL.Nat64),\n 'day_after_genesis' : IDL.Nat64,\n 'actual_timestamp_seconds' : IDL.Nat64,\n 'total_available_e8s_equivalent' : IDL.Nat64,\n 'latest_round_available_e8s_equivalent' : IDL.Opt(IDL.Nat64),\n 'distributed_e8s_equivalent' : IDL.Nat64,\n 'settled_proposals' : IDL.Vec(NeuronId),\n });\n const NeuronStakeTransfer = IDL.Record({\n 'to_subaccount' : IDL.Vec(IDL.Nat8),\n 'neuron_stake_e8s' : IDL.Nat64,\n 'from' : IDL.Opt(IDL.Principal),\n 'memo' : IDL.Nat64,\n 'from_subaccount' : IDL.Vec(IDL.Nat8),\n 'transfer_timestamp' : IDL.Nat64,\n 'block_height' : IDL.Nat64,\n });\n const Followers = IDL.Record({ 'followers' : IDL.Vec(NeuronId) });\n const FollowersMap = IDL.Record({\n 'followers_map' : IDL.Vec(IDL.Tuple(IDL.Nat64, Followers)),\n });\n const Progress = IDL.Variant({ 'LastNeuronId' : NeuronId });\n const Migration = IDL.Record({\n 'status' : IDL.Opt(IDL.Int32),\n 'failure_reason' : IDL.Opt(IDL.Text),\n 'progress' : IDL.Opt(Progress),\n });\n const Migrations = IDL.Record({\n 'neuron_indexes_migration' : IDL.Opt(Migration),\n 'copy_inactive_neurons_to_stable_memory_migration' : IDL.Opt(Migration),\n });\n const GovernanceError = IDL.Record({\n 'error_message' : IDL.Text,\n 'error_type' : IDL.Int32,\n });\n const CfNeuron = IDL.Record({\n 'has_created_neuron_recipes' : IDL.Opt(IDL.Bool),\n 'nns_neuron_id' : IDL.Nat64,\n 'amount_icp_e8s' : IDL.Nat64,\n });\n const CfParticipant = IDL.Record({\n 'hotkey_principal' : IDL.Text,\n 'cf_neurons' : IDL.Vec(CfNeuron),\n });\n const Ballot = IDL.Record({ 'vote' : IDL.Int32, 'voting_power' : IDL.Nat64 });\n const SwapParticipationLimits = IDL.Record({\n 'min_participant_icp_e8s' : IDL.Opt(IDL.Nat64),\n 'max_participant_icp_e8s' : IDL.Opt(IDL.Nat64),\n 'min_direct_participation_icp_e8s' : IDL.Opt(IDL.Nat64),\n 'max_direct_participation_icp_e8s' : IDL.Opt(IDL.Nat64),\n });\n const NeuronsFundNeuronPortion = IDL.Record({\n 'hotkey_principal' : IDL.Opt(IDL.Principal),\n 'is_capped' : IDL.Opt(IDL.Bool),\n 'maturity_equivalent_icp_e8s' : IDL.Opt(IDL.Nat64),\n 'nns_neuron_id' : IDL.Opt(NeuronId),\n 'amount_icp_e8s' : IDL.Opt(IDL.Nat64),\n });\n const NeuronsFundSnapshot = IDL.Record({\n 'neurons_fund_neuron_portions' : IDL.Vec(NeuronsFundNeuronPortion),\n });\n const IdealMatchedParticipationFunction = IDL.Record({\n 'serialized_representation' : IDL.Opt(IDL.Text),\n });\n const NeuronsFundParticipation = IDL.Record({\n 'total_maturity_equivalent_icp_e8s' : IDL.Opt(IDL.Nat64),\n 'intended_neurons_fund_participation_icp_e8s' : IDL.Opt(IDL.Nat64),\n 'direct_participation_icp_e8s' : IDL.Opt(IDL.Nat64),\n 'swap_participation_limits' : IDL.Opt(SwapParticipationLimits),\n 'max_neurons_fund_swap_participation_icp_e8s' : IDL.Opt(IDL.Nat64),\n 'neurons_fund_reserves' : IDL.Opt(NeuronsFundSnapshot),\n 'ideal_matched_participation_function' : IDL.Opt(\n IdealMatchedParticipationFunction\n ),\n 'allocated_neurons_fund_participation_icp_e8s' : IDL.Opt(IDL.Nat64),\n });\n const NeuronsFundData = IDL.Record({\n 'final_neurons_fund_participation' : IDL.Opt(NeuronsFundParticipation),\n 'initial_neurons_fund_participation' : IDL.Opt(NeuronsFundParticipation),\n 'neurons_fund_refunds' : IDL.Opt(NeuronsFundSnapshot),\n });\n const CanisterStatusResultV2 = IDL.Record({\n 'status' : IDL.Opt(IDL.Int32),\n 'freezing_threshold' : IDL.Opt(IDL.Nat64),\n 'controllers' : IDL.Vec(IDL.Principal),\n 'memory_size' : IDL.Opt(IDL.Nat64),\n 'cycles' : IDL.Opt(IDL.Nat64),\n 'idle_cycles_burned_per_day' : IDL.Opt(IDL.Nat64),\n 'module_hash' : IDL.Vec(IDL.Nat8),\n });\n const CanisterSummary = IDL.Record({\n 'status' : IDL.Opt(CanisterStatusResultV2),\n 'canister_id' : IDL.Opt(IDL.Principal),\n });\n const SwapBackgroundInformation = IDL.Record({\n 'ledger_index_canister_summary' : IDL.Opt(CanisterSummary),\n 'fallback_controller_principal_ids' : IDL.Vec(IDL.Principal),\n 'ledger_archive_canister_summaries' : IDL.Vec(CanisterSummary),\n 'ledger_canister_summary' : IDL.Opt(CanisterSummary),\n 'swap_canister_summary' : IDL.Opt(CanisterSummary),\n 'governance_canister_summary' : IDL.Opt(CanisterSummary),\n 'root_canister_summary' : IDL.Opt(CanisterSummary),\n 'dapp_canister_summaries' : IDL.Vec(CanisterSummary),\n });\n const DerivedProposalInformation = IDL.Record({\n 'swap_background_information' : IDL.Opt(SwapBackgroundInformation),\n });\n const Tally = IDL.Record({\n 'no' : IDL.Nat64,\n 'yes' : IDL.Nat64,\n 'total' : IDL.Nat64,\n 'timestamp_seconds' : IDL.Nat64,\n });\n const WaitForQuietState = IDL.Record({\n 'current_deadline_timestamp_seconds' : IDL.Nat64,\n });\n const ProposalData = IDL.Record({\n 'id' : IDL.Opt(NeuronId),\n 'failure_reason' : IDL.Opt(GovernanceError),\n 'cf_participants' : IDL.Vec(CfParticipant),\n 'ballots' : IDL.Vec(IDL.Tuple(IDL.Nat64, Ballot)),\n 'proposal_timestamp_seconds' : IDL.Nat64,\n 'reward_event_round' : IDL.Nat64,\n 'failed_timestamp_seconds' : IDL.Nat64,\n 'neurons_fund_data' : IDL.Opt(NeuronsFundData),\n 'reject_cost_e8s' : IDL.Nat64,\n 'derived_proposal_information' : IDL.Opt(DerivedProposalInformation),\n 'latest_tally' : IDL.Opt(Tally),\n 'sns_token_swap_lifecycle' : IDL.Opt(IDL.Int32),\n 'decided_timestamp_seconds' : IDL.Nat64,\n 'proposal' : IDL.Opt(Proposal),\n 'proposer' : IDL.Opt(NeuronId),\n 'wait_for_quiet_state' : IDL.Opt(WaitForQuietState),\n 'executed_timestamp_seconds' : IDL.Nat64,\n 'original_total_community_fund_maturity_e8s_equivalent' : IDL.Opt(\n IDL.Nat64\n ),\n });\n const XdrConversionRate = IDL.Record({\n 'xdr_permyriad_per_icp' : IDL.Opt(IDL.Nat64),\n 'timestamp_seconds' : IDL.Opt(IDL.Nat64),\n });\n const Command_2 = IDL.Variant({\n 'Spawn' : NeuronId,\n 'Split' : Split,\n 'Configure' : Configure,\n 'Merge' : Merge,\n 'DisburseToNeuron' : DisburseToNeuron,\n 'SyncCommand' : IDL.Record({}),\n 'ClaimOrRefreshNeuron' : ClaimOrRefresh,\n 'MergeMaturity' : MergeMaturity,\n 'Disburse' : Disburse,\n });\n const NeuronInFlightCommand = IDL.Record({\n 'command' : IDL.Opt(Command_2),\n 'timestamp' : IDL.Nat64,\n });\n const BallotInfo = IDL.Record({\n 'vote' : IDL.Int32,\n 'proposal_id' : IDL.Opt(NeuronId),\n });\n const DissolveState = IDL.Variant({\n 'DissolveDelaySeconds' : IDL.Nat64,\n 'WhenDissolvedTimestampSeconds' : IDL.Nat64,\n });\n const Neuron = IDL.Record({\n 'id' : IDL.Opt(NeuronId),\n 'staked_maturity_e8s_equivalent' : IDL.Opt(IDL.Nat64),\n 'controller' : IDL.Opt(IDL.Principal),\n 'recent_ballots' : IDL.Vec(BallotInfo),\n 'kyc_verified' : IDL.Bool,\n 'neuron_type' : IDL.Opt(IDL.Int32),\n 'not_for_profit' : IDL.Bool,\n 'maturity_e8s_equivalent' : IDL.Nat64,\n 'cached_neuron_stake_e8s' : IDL.Nat64,\n 'created_timestamp_seconds' : IDL.Nat64,\n 'auto_stake_maturity' : IDL.Opt(IDL.Bool),\n 'aging_since_timestamp_seconds' : IDL.Nat64,\n 'hot_keys' : IDL.Vec(IDL.Principal),\n 'account' : IDL.Vec(IDL.Nat8),\n 'joined_community_fund_timestamp_seconds' : IDL.Opt(IDL.Nat64),\n 'dissolve_state' : IDL.Opt(DissolveState),\n 'followees' : IDL.Vec(IDL.Tuple(IDL.Int32, Followees)),\n 'neuron_fees_e8s' : IDL.Nat64,\n 'transfer' : IDL.Opt(NeuronStakeTransfer),\n 'known_neuron_data' : IDL.Opt(KnownNeuronData),\n 'spawn_at_timestamp_seconds' : IDL.Opt(IDL.Nat64),\n });\n const Governance = IDL.Record({\n 'default_followees' : IDL.Vec(IDL.Tuple(IDL.Int32, Followees)),\n 'making_sns_proposal' : IDL.Opt(MakingSnsProposal),\n 'most_recent_monthly_node_provider_rewards' : IDL.Opt(\n MostRecentMonthlyNodeProviderRewards\n ),\n 'maturity_modulation_last_updated_at_timestamp_seconds' : IDL.Opt(\n IDL.Nat64\n ),\n 'wait_for_quiet_threshold_seconds' : IDL.Nat64,\n 'metrics' : IDL.Opt(GovernanceCachedMetrics),\n 'neuron_management_voting_period_seconds' : IDL.Opt(IDL.Nat64),\n 'node_providers' : IDL.Vec(NodeProvider),\n 'cached_daily_maturity_modulation_basis_points' : IDL.Opt(IDL.Int32),\n 'economics' : IDL.Opt(NetworkEconomics),\n 'restore_aging_summary' : IDL.Opt(RestoreAgingSummary),\n 'spawning_neurons' : IDL.Opt(IDL.Bool),\n 'latest_reward_event' : IDL.Opt(RewardEvent),\n 'to_claim_transfers' : IDL.Vec(NeuronStakeTransfer),\n 'short_voting_period_seconds' : IDL.Nat64,\n 'topic_followee_index' : IDL.Vec(IDL.Tuple(IDL.Int32, FollowersMap)),\n 'migrations' : IDL.Opt(Migrations),\n 'proposals' : IDL.Vec(IDL.Tuple(IDL.Nat64, ProposalData)),\n 'xdr_conversion_rate' : IDL.Opt(XdrConversionRate),\n 'in_flight_commands' : IDL.Vec(IDL.Tuple(IDL.Nat64, NeuronInFlightCommand)),\n 'neurons' : IDL.Vec(IDL.Tuple(IDL.Nat64, Neuron)),\n 'genesis_timestamp_seconds' : IDL.Nat64,\n });\n const Result = IDL.Variant({ 'Ok' : IDL.Null, 'Err' : GovernanceError });\n const Result_1 = IDL.Variant({\n 'Error' : GovernanceError,\n 'NeuronId' : NeuronId,\n });\n const ClaimOrRefreshNeuronFromAccountResponse = IDL.Record({\n 'result' : IDL.Opt(Result_1),\n });\n const Result_2 = IDL.Variant({ 'Ok' : Neuron, 'Err' : GovernanceError });\n const Result_3 = IDL.Variant({\n 'Ok' : GovernanceCachedMetrics,\n 'Err' : GovernanceError,\n });\n const Result_4 = IDL.Variant({\n 'Ok' : RewardNodeProviders,\n 'Err' : GovernanceError,\n });\n const NeuronInfo = IDL.Record({\n 'dissolve_delay_seconds' : IDL.Nat64,\n 'recent_ballots' : IDL.Vec(BallotInfo),\n 'neuron_type' : IDL.Opt(IDL.Int32),\n 'created_timestamp_seconds' : IDL.Nat64,\n 'state' : IDL.Int32,\n 'stake_e8s' : IDL.Nat64,\n 'joined_community_fund_timestamp_seconds' : IDL.Opt(IDL.Nat64),\n 'retrieved_at_timestamp_seconds' : IDL.Nat64,\n 'known_neuron_data' : IDL.Opt(KnownNeuronData),\n 'voting_power' : IDL.Nat64,\n 'age_seconds' : IDL.Nat64,\n });\n const Result_5 = IDL.Variant({ 'Ok' : NeuronInfo, 'Err' : GovernanceError });\n const GetNeuronsFundAuditInfoRequest = IDL.Record({\n 'nns_proposal_id' : IDL.Opt(NeuronId),\n });\n const NeuronsFundAuditInfo = IDL.Record({\n 'final_neurons_fund_participation' : IDL.Opt(NeuronsFundParticipation),\n 'initial_neurons_fund_participation' : IDL.Opt(NeuronsFundParticipation),\n 'neurons_fund_refunds' : IDL.Opt(NeuronsFundSnapshot),\n });\n const Ok = IDL.Record({\n 'neurons_fund_audit_info' : IDL.Opt(NeuronsFundAuditInfo),\n });\n const Result_6 = IDL.Variant({ 'Ok' : Ok, 'Err' : GovernanceError });\n const GetNeuronsFundAuditInfoResponse = IDL.Record({\n 'result' : IDL.Opt(Result_6),\n });\n const Result_7 = IDL.Variant({\n 'Ok' : NodeProvider,\n 'Err' : GovernanceError,\n });\n const ProposalInfo = IDL.Record({\n 'id' : IDL.Opt(NeuronId),\n 'status' : IDL.Int32,\n 'topic' : IDL.Int32,\n 'failure_reason' : IDL.Opt(GovernanceError),\n 'ballots' : IDL.Vec(IDL.Tuple(IDL.Nat64, Ballot)),\n 'proposal_timestamp_seconds' : IDL.Nat64,\n 'reward_event_round' : IDL.Nat64,\n 'deadline_timestamp_seconds' : IDL.Opt(IDL.Nat64),\n 'failed_timestamp_seconds' : IDL.Nat64,\n 'reject_cost_e8s' : IDL.Nat64,\n 'derived_proposal_information' : IDL.Opt(DerivedProposalInformation),\n 'latest_tally' : IDL.Opt(Tally),\n 'reward_status' : IDL.Int32,\n 'decided_timestamp_seconds' : IDL.Nat64,\n 'proposal' : IDL.Opt(Proposal),\n 'proposer' : IDL.Opt(NeuronId),\n 'executed_timestamp_seconds' : IDL.Nat64,\n });\n const ListKnownNeuronsResponse = IDL.Record({\n 'known_neurons' : IDL.Vec(KnownNeuron),\n });\n const ListNeurons = IDL.Record({\n 'neuron_ids' : IDL.Vec(IDL.Nat64),\n 'include_neurons_readable_by_caller' : IDL.Bool,\n });\n const ListNeuronsResponse = IDL.Record({\n 'neuron_infos' : IDL.Vec(IDL.Tuple(IDL.Nat64, NeuronInfo)),\n 'full_neurons' : IDL.Vec(Neuron),\n });\n const ListNodeProvidersResponse = IDL.Record({\n 'node_providers' : IDL.Vec(NodeProvider),\n });\n const ListProposalInfo = IDL.Record({\n 'include_reward_status' : IDL.Vec(IDL.Int32),\n 'omit_large_fields' : IDL.Opt(IDL.Bool),\n 'before_proposal' : IDL.Opt(NeuronId),\n 'limit' : IDL.Nat32,\n 'exclude_topic' : IDL.Vec(IDL.Int32),\n 'include_all_manage_neuron_proposals' : IDL.Opt(IDL.Bool),\n 'include_status' : IDL.Vec(IDL.Int32),\n });\n const ListProposalInfoResponse = IDL.Record({\n 'proposal_info' : IDL.Vec(ProposalInfo),\n });\n const SpawnResponse = IDL.Record({ 'created_neuron_id' : IDL.Opt(NeuronId) });\n const ClaimOrRefreshResponse = IDL.Record({\n 'refreshed_neuron_id' : IDL.Opt(NeuronId),\n });\n const MergeResponse = IDL.Record({\n 'target_neuron' : IDL.Opt(Neuron),\n 'source_neuron' : IDL.Opt(Neuron),\n 'target_neuron_info' : IDL.Opt(NeuronInfo),\n 'source_neuron_info' : IDL.Opt(NeuronInfo),\n });\n const MakeProposalResponse = IDL.Record({\n 'message' : IDL.Opt(IDL.Text),\n 'proposal_id' : IDL.Opt(NeuronId),\n });\n const StakeMaturityResponse = IDL.Record({\n 'maturity_e8s' : IDL.Nat64,\n 'staked_maturity_e8s' : IDL.Nat64,\n });\n const MergeMaturityResponse = IDL.Record({\n 'merged_maturity_e8s' : IDL.Nat64,\n 'new_stake_e8s' : IDL.Nat64,\n });\n const DisburseResponse = IDL.Record({ 'transfer_block_height' : IDL.Nat64 });\n const Command_1 = IDL.Variant({\n 'Error' : GovernanceError,\n 'Spawn' : SpawnResponse,\n 'Split' : SpawnResponse,\n 'Follow' : IDL.Record({}),\n 'ClaimOrRefresh' : ClaimOrRefreshResponse,\n 'Configure' : IDL.Record({}),\n 'RegisterVote' : IDL.Record({}),\n 'Merge' : MergeResponse,\n 'DisburseToNeuron' : SpawnResponse,\n 'MakeProposal' : MakeProposalResponse,\n 'StakeMaturity' : StakeMaturityResponse,\n 'MergeMaturity' : MergeMaturityResponse,\n 'Disburse' : DisburseResponse,\n });\n const ManageNeuronResponse = IDL.Record({ 'command' : IDL.Opt(Command_1) });\n const Committed = IDL.Record({\n 'total_direct_contribution_icp_e8s' : IDL.Opt(IDL.Nat64),\n 'total_neurons_fund_contribution_icp_e8s' : IDL.Opt(IDL.Nat64),\n 'sns_governance_canister_id' : IDL.Opt(IDL.Principal),\n });\n const Result_8 = IDL.Variant({\n 'Committed' : Committed,\n 'Aborted' : IDL.Record({}),\n });\n const SettleCommunityFundParticipation = IDL.Record({\n 'result' : IDL.Opt(Result_8),\n 'open_sns_token_swap_proposal_id' : IDL.Opt(IDL.Nat64),\n });\n const Committed_1 = IDL.Record({\n 'total_direct_participation_icp_e8s' : IDL.Opt(IDL.Nat64),\n 'total_neurons_fund_participation_icp_e8s' : IDL.Opt(IDL.Nat64),\n 'sns_governance_canister_id' : IDL.Opt(IDL.Principal),\n });\n const Result_9 = IDL.Variant({\n 'Committed' : Committed_1,\n 'Aborted' : IDL.Record({}),\n });\n const SettleNeuronsFundParticipationRequest = IDL.Record({\n 'result' : IDL.Opt(Result_9),\n 'nns_proposal_id' : IDL.Opt(IDL.Nat64),\n });\n const NeuronsFundNeuron = IDL.Record({\n 'hotkey_principal' : IDL.Opt(IDL.Text),\n 'is_capped' : IDL.Opt(IDL.Bool),\n 'nns_neuron_id' : IDL.Opt(IDL.Nat64),\n 'amount_icp_e8s' : IDL.Opt(IDL.Nat64),\n });\n const Ok_1 = IDL.Record({\n 'neurons_fund_neuron_portions' : IDL.Vec(NeuronsFundNeuron),\n });\n const Result_10 = IDL.Variant({ 'Ok' : Ok_1, 'Err' : GovernanceError });\n const SettleNeuronsFundParticipationResponse = IDL.Record({\n 'result' : IDL.Opt(Result_10),\n });\n const UpdateNodeProvider = IDL.Record({\n 'reward_account' : IDL.Opt(AccountIdentifier),\n });\n return IDL.Service({\n 'claim_gtc_neurons' : IDL.Func(\n [IDL.Principal, IDL.Vec(NeuronId)],\n [Result],\n [],\n ),\n 'claim_or_refresh_neuron_from_account' : IDL.Func(\n [ClaimOrRefreshNeuronFromAccount],\n [ClaimOrRefreshNeuronFromAccountResponse],\n [],\n ),\n 'get_build_metadata' : IDL.Func([], [IDL.Text], []),\n 'get_full_neuron' : IDL.Func([IDL.Nat64], [Result_2], []),\n 'get_full_neuron_by_id_or_subaccount' : IDL.Func(\n [NeuronIdOrSubaccount],\n [Result_2],\n [],\n ),\n 'get_latest_reward_event' : IDL.Func([], [RewardEvent], []),\n 'get_metrics' : IDL.Func([], [Result_3], []),\n 'get_monthly_node_provider_rewards' : IDL.Func([], [Result_4], []),\n 'get_most_recent_monthly_node_provider_rewards' : IDL.Func(\n [],\n [IDL.Opt(MostRecentMonthlyNodeProviderRewards)],\n [],\n ),\n 'get_network_economics_parameters' : IDL.Func([], [NetworkEconomics], []),\n 'get_neuron_ids' : IDL.Func([], [IDL.Vec(IDL.Nat64)], []),\n 'get_neuron_info' : IDL.Func([IDL.Nat64], [Result_5], []),\n 'get_neuron_info_by_id_or_subaccount' : IDL.Func(\n [NeuronIdOrSubaccount],\n [Result_5],\n [],\n ),\n 'get_neurons_fund_audit_info' : IDL.Func(\n [GetNeuronsFundAuditInfoRequest],\n [GetNeuronsFundAuditInfoResponse],\n [],\n ),\n 'get_node_provider_by_caller' : IDL.Func([IDL.Null], [Result_7], []),\n 'get_pending_proposals' : IDL.Func([], [IDL.Vec(ProposalInfo)], []),\n 'get_proposal_info' : IDL.Func([IDL.Nat64], [IDL.Opt(ProposalInfo)], []),\n 'get_restore_aging_summary' : IDL.Func([], [RestoreAgingSummary], []),\n 'list_known_neurons' : IDL.Func([], [ListKnownNeuronsResponse], []),\n 'list_neurons' : IDL.Func([ListNeurons], [ListNeuronsResponse], []),\n 'list_node_providers' : IDL.Func([], [ListNodeProvidersResponse], []),\n 'list_proposals' : IDL.Func(\n [ListProposalInfo],\n [ListProposalInfoResponse],\n [],\n ),\n 'manage_neuron' : IDL.Func([ManageNeuron], [ManageNeuronResponse], []),\n 'settle_community_fund_participation' : IDL.Func(\n [SettleCommunityFundParticipation],\n [Result],\n [],\n ),\n 'settle_neurons_fund_participation' : IDL.Func(\n [SettleNeuronsFundParticipationRequest],\n [SettleNeuronsFundParticipationResponse],\n [],\n ),\n 'simulate_manage_neuron' : IDL.Func(\n [ManageNeuron],\n [ManageNeuronResponse],\n [],\n ),\n 'transfer_gtc_neuron' : IDL.Func([NeuronId, NeuronId], [Result], []),\n 'update_neuron' : IDL.Func([Neuron], [IDL.Opt(GovernanceError)], []),\n 'update_node_provider' : IDL.Func([UpdateNodeProvider], [Result], []),\n });\n};\nexport const init = ({ IDL }) => {\n const Proposal = IDL.Rec();\n const NeuronId = IDL.Record({ 'id' : IDL.Nat64 });\n const Followees = IDL.Record({ 'followees' : IDL.Vec(NeuronId) });\n const KnownNeuronData = IDL.Record({\n 'name' : IDL.Text,\n 'description' : IDL.Opt(IDL.Text),\n });\n const KnownNeuron = IDL.Record({\n 'id' : IDL.Opt(NeuronId),\n 'known_neuron_data' : IDL.Opt(KnownNeuronData),\n });\n const Spawn = IDL.Record({\n 'percentage_to_spawn' : IDL.Opt(IDL.Nat32),\n 'new_controller' : IDL.Opt(IDL.Principal),\n 'nonce' : IDL.Opt(IDL.Nat64),\n });\n const Split = IDL.Record({ 'amount_e8s' : IDL.Nat64 });\n const Follow = IDL.Record({\n 'topic' : IDL.Int32,\n 'followees' : IDL.Vec(NeuronId),\n });\n const ClaimOrRefreshNeuronFromAccount = IDL.Record({\n 'controller' : IDL.Opt(IDL.Principal),\n 'memo' : IDL.Nat64,\n });\n const By = IDL.Variant({\n 'NeuronIdOrSubaccount' : IDL.Record({}),\n 'MemoAndController' : ClaimOrRefreshNeuronFromAccount,\n 'Memo' : IDL.Nat64,\n });\n const ClaimOrRefresh = IDL.Record({ 'by' : IDL.Opt(By) });\n const RemoveHotKey = IDL.Record({\n 'hot_key_to_remove' : IDL.Opt(IDL.Principal),\n });\n const AddHotKey = IDL.Record({ 'new_hot_key' : IDL.Opt(IDL.Principal) });\n const ChangeAutoStakeMaturity = IDL.Record({\n 'requested_setting_for_auto_stake_maturity' : IDL.Bool,\n });\n const IncreaseDissolveDelay = IDL.Record({\n 'additional_dissolve_delay_seconds' : IDL.Nat32,\n });\n const SetDissolveTimestamp = IDL.Record({\n 'dissolve_timestamp_seconds' : IDL.Nat64,\n });\n const Operation = IDL.Variant({\n 'RemoveHotKey' : RemoveHotKey,\n 'AddHotKey' : AddHotKey,\n 'ChangeAutoStakeMaturity' : ChangeAutoStakeMaturity,\n 'StopDissolving' : IDL.Record({}),\n 'StartDissolving' : IDL.Record({}),\n 'IncreaseDissolveDelay' : IncreaseDissolveDelay,\n 'JoinCommunityFund' : IDL.Record({}),\n 'LeaveCommunityFund' : IDL.Record({}),\n 'SetDissolveTimestamp' : SetDissolveTimestamp,\n });\n const Configure = IDL.Record({ 'operation' : IDL.Opt(Operation) });\n const RegisterVote = IDL.Record({\n 'vote' : IDL.Int32,\n 'proposal' : IDL.Opt(NeuronId),\n });\n const Merge = IDL.Record({ 'source_neuron_id' : IDL.Opt(NeuronId) });\n const DisburseToNeuron = IDL.Record({\n 'dissolve_delay_seconds' : IDL.Nat64,\n 'kyc_verified' : IDL.Bool,\n 'amount_e8s' : IDL.Nat64,\n 'new_controller' : IDL.Opt(IDL.Principal),\n 'nonce' : IDL.Nat64,\n });\n const StakeMaturity = IDL.Record({\n 'percentage_to_stake' : IDL.Opt(IDL.Nat32),\n });\n const MergeMaturity = IDL.Record({ 'percentage_to_merge' : IDL.Nat32 });\n const AccountIdentifier = IDL.Record({ 'hash' : IDL.Vec(IDL.Nat8) });\n const Amount = IDL.Record({ 'e8s' : IDL.Nat64 });\n const Disburse = IDL.Record({\n 'to_account' : IDL.Opt(AccountIdentifier),\n 'amount' : IDL.Opt(Amount),\n });\n const Command = IDL.Variant({\n 'Spawn' : Spawn,\n 'Split' : Split,\n 'Follow' : Follow,\n 'ClaimOrRefresh' : ClaimOrRefresh,\n 'Configure' : Configure,\n 'RegisterVote' : RegisterVote,\n 'Merge' : Merge,\n 'DisburseToNeuron' : DisburseToNeuron,\n 'MakeProposal' : Proposal,\n 'StakeMaturity' : StakeMaturity,\n 'MergeMaturity' : MergeMaturity,\n 'Disburse' : Disburse,\n });\n const NeuronIdOrSubaccount = IDL.Variant({\n 'Subaccount' : IDL.Vec(IDL.Nat8),\n 'NeuronId' : NeuronId,\n });\n const ManageNeuron = IDL.Record({\n 'id' : IDL.Opt(NeuronId),\n 'command' : IDL.Opt(Command),\n 'neuron_id_or_subaccount' : IDL.Opt(NeuronIdOrSubaccount),\n });\n const Percentage = IDL.Record({ 'basis_points' : IDL.Opt(IDL.Nat64) });\n const Duration = IDL.Record({ 'seconds' : IDL.Opt(IDL.Nat64) });\n const Tokens = IDL.Record({ 'e8s' : IDL.Opt(IDL.Nat64) });\n const VotingRewardParameters = IDL.Record({\n 'reward_rate_transition_duration' : IDL.Opt(Duration),\n 'initial_reward_rate' : IDL.Opt(Percentage),\n 'final_reward_rate' : IDL.Opt(Percentage),\n });\n const GovernanceParameters = IDL.Record({\n 'neuron_maximum_dissolve_delay_bonus' : IDL.Opt(Percentage),\n 'neuron_maximum_age_for_age_bonus' : IDL.Opt(Duration),\n 'neuron_maximum_dissolve_delay' : IDL.Opt(Duration),\n 'neuron_minimum_dissolve_delay_to_vote' : IDL.Opt(Duration),\n 'neuron_maximum_age_bonus' : IDL.Opt(Percentage),\n 'neuron_minimum_stake' : IDL.Opt(Tokens),\n 'proposal_wait_for_quiet_deadline_increase' : IDL.Opt(Duration),\n 'proposal_initial_voting_period' : IDL.Opt(Duration),\n 'proposal_rejection_fee' : IDL.Opt(Tokens),\n 'voting_reward_parameters' : IDL.Opt(VotingRewardParameters),\n });\n const Image = IDL.Record({ 'base64_encoding' : IDL.Opt(IDL.Text) });\n const LedgerParameters = IDL.Record({\n 'transaction_fee' : IDL.Opt(Tokens),\n 'token_symbol' : IDL.Opt(IDL.Text),\n 'token_logo' : IDL.Opt(Image),\n 'token_name' : IDL.Opt(IDL.Text),\n });\n const Canister = IDL.Record({ 'id' : IDL.Opt(IDL.Principal) });\n const NeuronBasketConstructionParameters = IDL.Record({\n 'dissolve_delay_interval' : IDL.Opt(Duration),\n 'count' : IDL.Opt(IDL.Nat64),\n });\n const GlobalTimeOfDay = IDL.Record({\n 'seconds_after_utc_midnight' : IDL.Opt(IDL.Nat64),\n });\n const Countries = IDL.Record({ 'iso_codes' : IDL.Vec(IDL.Text) });\n const SwapParameters = IDL.Record({\n 'minimum_participants' : IDL.Opt(IDL.Nat64),\n 'neurons_fund_participation' : IDL.Opt(IDL.Bool),\n 'duration' : IDL.Opt(Duration),\n 'neuron_basket_construction_parameters' : IDL.Opt(\n NeuronBasketConstructionParameters\n ),\n 'confirmation_text' : IDL.Opt(IDL.Text),\n 'maximum_participant_icp' : IDL.Opt(Tokens),\n 'minimum_icp' : IDL.Opt(Tokens),\n 'minimum_direct_participation_icp' : IDL.Opt(Tokens),\n 'minimum_participant_icp' : IDL.Opt(Tokens),\n 'start_time' : IDL.Opt(GlobalTimeOfDay),\n 'maximum_direct_participation_icp' : IDL.Opt(Tokens),\n 'maximum_icp' : IDL.Opt(Tokens),\n 'neurons_fund_investment_icp' : IDL.Opt(Tokens),\n 'restricted_countries' : IDL.Opt(Countries),\n });\n const SwapDistribution = IDL.Record({ 'total' : IDL.Opt(Tokens) });\n const NeuronDistribution = IDL.Record({\n 'controller' : IDL.Opt(IDL.Principal),\n 'dissolve_delay' : IDL.Opt(Duration),\n 'memo' : IDL.Opt(IDL.Nat64),\n 'vesting_period' : IDL.Opt(Duration),\n 'stake' : IDL.Opt(Tokens),\n });\n const DeveloperDistribution = IDL.Record({\n 'developer_neurons' : IDL.Vec(NeuronDistribution),\n });\n const InitialTokenDistribution = IDL.Record({\n 'treasury_distribution' : IDL.Opt(SwapDistribution),\n 'developer_distribution' : IDL.Opt(DeveloperDistribution),\n 'swap_distribution' : IDL.Opt(SwapDistribution),\n });\n const CreateServiceNervousSystem = IDL.Record({\n 'url' : IDL.Opt(IDL.Text),\n 'governance_parameters' : IDL.Opt(GovernanceParameters),\n 'fallback_controller_principal_ids' : IDL.Vec(IDL.Principal),\n 'logo' : IDL.Opt(Image),\n 'name' : IDL.Opt(IDL.Text),\n 'ledger_parameters' : IDL.Opt(LedgerParameters),\n 'description' : IDL.Opt(IDL.Text),\n 'dapp_canisters' : IDL.Vec(Canister),\n 'swap_parameters' : IDL.Opt(SwapParameters),\n 'initial_token_distribution' : IDL.Opt(InitialTokenDistribution),\n });\n const ExecuteNnsFunction = IDL.Record({\n 'nns_function' : IDL.Int32,\n 'payload' : IDL.Vec(IDL.Nat8),\n });\n const NodeProvider = IDL.Record({\n 'id' : IDL.Opt(IDL.Principal),\n 'reward_account' : IDL.Opt(AccountIdentifier),\n });\n const RewardToNeuron = IDL.Record({ 'dissolve_delay_seconds' : IDL.Nat64 });\n const RewardToAccount = IDL.Record({\n 'to_account' : IDL.Opt(AccountIdentifier),\n });\n const RewardMode = IDL.Variant({\n 'RewardToNeuron' : RewardToNeuron,\n 'RewardToAccount' : RewardToAccount,\n });\n const RewardNodeProvider = IDL.Record({\n 'node_provider' : IDL.Opt(NodeProvider),\n 'reward_mode' : IDL.Opt(RewardMode),\n 'amount_e8s' : IDL.Nat64,\n });\n const NeuronBasketConstructionParameters_1 = IDL.Record({\n 'dissolve_delay_interval_seconds' : IDL.Nat64,\n 'count' : IDL.Nat64,\n });\n const Params = IDL.Record({\n 'min_participant_icp_e8s' : IDL.Nat64,\n 'neuron_basket_construction_parameters' : IDL.Opt(\n NeuronBasketConstructionParameters_1\n ),\n 'max_icp_e8s' : IDL.Nat64,\n 'swap_due_timestamp_seconds' : IDL.Nat64,\n 'min_participants' : IDL.Nat32,\n 'sns_token_e8s' : IDL.Nat64,\n 'sale_delay_seconds' : IDL.Opt(IDL.Nat64),\n 'max_participant_icp_e8s' : IDL.Nat64,\n 'min_direct_participation_icp_e8s' : IDL.Opt(IDL.Nat64),\n 'min_icp_e8s' : IDL.Nat64,\n 'max_direct_participation_icp_e8s' : IDL.Opt(IDL.Nat64),\n });\n const OpenSnsTokenSwap = IDL.Record({\n 'community_fund_investment_e8s' : IDL.Opt(IDL.Nat64),\n 'target_swap_canister_id' : IDL.Opt(IDL.Principal),\n 'params' : IDL.Opt(Params),\n });\n const TimeWindow = IDL.Record({\n 'start_timestamp_seconds' : IDL.Nat64,\n 'end_timestamp_seconds' : IDL.Nat64,\n });\n const SetOpenTimeWindowRequest = IDL.Record({\n 'open_time_window' : IDL.Opt(TimeWindow),\n });\n const SetSnsTokenSwapOpenTimeWindow = IDL.Record({\n 'request' : IDL.Opt(SetOpenTimeWindowRequest),\n 'swap_canister_id' : IDL.Opt(IDL.Principal),\n });\n const SetDefaultFollowees = IDL.Record({\n 'default_followees' : IDL.Vec(IDL.Tuple(IDL.Int32, Followees)),\n });\n const RewardNodeProviders = IDL.Record({\n 'use_registry_derived_rewards' : IDL.Opt(IDL.Bool),\n 'rewards' : IDL.Vec(RewardNodeProvider),\n });\n const Decimal = IDL.Record({ 'human_readable' : IDL.Opt(IDL.Text) });\n const NeuronsFundMatchedFundingCurveCoefficients = IDL.Record({\n 'contribution_threshold_xdr' : IDL.Opt(Decimal),\n 'one_third_participation_milestone_xdr' : IDL.Opt(Decimal),\n 'full_participation_milestone_xdr' : IDL.Opt(Decimal),\n });\n const NeuronsFundEconomics = IDL.Record({\n 'maximum_icp_xdr_rate' : IDL.Opt(Percentage),\n 'neurons_fund_matched_funding_curve_coefficients' : IDL.Opt(\n NeuronsFundMatchedFundingCurveCoefficients\n ),\n 'max_theoretical_neurons_fund_participation_amount_xdr' : IDL.Opt(Decimal),\n 'minimum_icp_xdr_rate' : IDL.Opt(Percentage),\n });\n const NetworkEconomics = IDL.Record({\n 'neuron_minimum_stake_e8s' : IDL.Nat64,\n 'max_proposals_to_keep_per_topic' : IDL.Nat32,\n 'neuron_management_fee_per_proposal_e8s' : IDL.Nat64,\n 'reject_cost_e8s' : IDL.Nat64,\n 'transaction_fee_e8s' : IDL.Nat64,\n 'neuron_spawn_dissolve_delay_seconds' : IDL.Nat64,\n 'minimum_icp_xdr_rate' : IDL.Nat64,\n 'maximum_node_provider_rewards_e8s' : IDL.Nat64,\n 'neurons_fund_economics' : IDL.Opt(NeuronsFundEconomics),\n });\n const ApproveGenesisKyc = IDL.Record({\n 'principals' : IDL.Vec(IDL.Principal),\n });\n const Change = IDL.Variant({\n 'ToRemove' : NodeProvider,\n 'ToAdd' : NodeProvider,\n });\n const AddOrRemoveNodeProvider = IDL.Record({ 'change' : IDL.Opt(Change) });\n const Motion = IDL.Record({ 'motion_text' : IDL.Text });\n const Action = IDL.Variant({\n 'RegisterKnownNeuron' : KnownNeuron,\n 'ManageNeuron' : ManageNeuron,\n 'CreateServiceNervousSystem' : CreateServiceNervousSystem,\n 'ExecuteNnsFunction' : ExecuteNnsFunction,\n 'RewardNodeProvider' : RewardNodeProvider,\n 'OpenSnsTokenSwap' : OpenSnsTokenSwap,\n 'SetSnsTokenSwapOpenTimeWindow' : SetSnsTokenSwapOpenTimeWindow,\n 'SetDefaultFollowees' : SetDefaultFollowees,\n 'RewardNodeProviders' : RewardNodeProviders,\n 'ManageNetworkEconomics' : NetworkEconomics,\n 'ApproveGenesisKyc' : ApproveGenesisKyc,\n 'AddOrRemoveNodeProvider' : AddOrRemoveNodeProvider,\n 'Motion' : Motion,\n });\n Proposal.fill(\n IDL.Record({\n 'url' : IDL.Text,\n 'title' : IDL.Opt(IDL.Text),\n 'action' : IDL.Opt(Action),\n 'summary' : IDL.Text,\n })\n );\n const MakingSnsProposal = IDL.Record({\n 'proposal' : IDL.Opt(Proposal),\n 'caller' : IDL.Opt(IDL.Principal),\n 'proposer_id' : IDL.Opt(NeuronId),\n });\n const MostRecentMonthlyNodeProviderRewards = IDL.Record({\n 'timestamp' : IDL.Nat64,\n 'rewards' : IDL.Vec(RewardNodeProvider),\n });\n const GovernanceCachedMetrics = IDL.Record({\n 'total_maturity_e8s_equivalent' : IDL.Nat64,\n 'not_dissolving_neurons_e8s_buckets' : IDL.Vec(\n IDL.Tuple(IDL.Nat64, IDL.Float64)\n ),\n 'dissolving_neurons_staked_maturity_e8s_equivalent_sum' : IDL.Nat64,\n 'garbage_collectable_neurons_count' : IDL.Nat64,\n 'dissolving_neurons_staked_maturity_e8s_equivalent_buckets' : IDL.Vec(\n IDL.Tuple(IDL.Nat64, IDL.Float64)\n ),\n 'neurons_with_invalid_stake_count' : IDL.Nat64,\n 'not_dissolving_neurons_count_buckets' : IDL.Vec(\n IDL.Tuple(IDL.Nat64, IDL.Nat64)\n ),\n 'ect_neuron_count' : IDL.Nat64,\n 'total_supply_icp' : IDL.Nat64,\n 'neurons_with_less_than_6_months_dissolve_delay_count' : IDL.Nat64,\n 'dissolved_neurons_count' : IDL.Nat64,\n 'community_fund_total_maturity_e8s_equivalent' : IDL.Nat64,\n 'total_staked_e8s_seed' : IDL.Nat64,\n 'total_staked_maturity_e8s_equivalent_ect' : IDL.Nat64,\n 'total_staked_e8s' : IDL.Nat64,\n 'not_dissolving_neurons_count' : IDL.Nat64,\n 'total_locked_e8s' : IDL.Nat64,\n 'neurons_fund_total_active_neurons' : IDL.Nat64,\n 'total_staked_maturity_e8s_equivalent' : IDL.Nat64,\n 'not_dissolving_neurons_e8s_buckets_ect' : IDL.Vec(\n IDL.Tuple(IDL.Nat64, IDL.Float64)\n ),\n 'total_staked_e8s_ect' : IDL.Nat64,\n 'not_dissolving_neurons_staked_maturity_e8s_equivalent_sum' : IDL.Nat64,\n 'dissolved_neurons_e8s' : IDL.Nat64,\n 'dissolving_neurons_e8s_buckets_seed' : IDL.Vec(\n IDL.Tuple(IDL.Nat64, IDL.Float64)\n ),\n 'neurons_with_less_than_6_months_dissolve_delay_e8s' : IDL.Nat64,\n 'not_dissolving_neurons_staked_maturity_e8s_equivalent_buckets' : IDL.Vec(\n IDL.Tuple(IDL.Nat64, IDL.Float64)\n ),\n 'dissolving_neurons_count_buckets' : IDL.Vec(\n IDL.Tuple(IDL.Nat64, IDL.Nat64)\n ),\n 'dissolving_neurons_e8s_buckets_ect' : IDL.Vec(\n IDL.Tuple(IDL.Nat64, IDL.Float64)\n ),\n 'dissolving_neurons_count' : IDL.Nat64,\n 'dissolving_neurons_e8s_buckets' : IDL.Vec(\n IDL.Tuple(IDL.Nat64, IDL.Float64)\n ),\n 'total_staked_maturity_e8s_equivalent_seed' : IDL.Nat64,\n 'community_fund_total_staked_e8s' : IDL.Nat64,\n 'not_dissolving_neurons_e8s_buckets_seed' : IDL.Vec(\n IDL.Tuple(IDL.Nat64, IDL.Float64)\n ),\n 'timestamp_seconds' : IDL.Nat64,\n 'seed_neuron_count' : IDL.Nat64,\n });\n const RestoreAgingNeuronGroup = IDL.Record({\n 'count' : IDL.Opt(IDL.Nat64),\n 'previous_total_stake_e8s' : IDL.Opt(IDL.Nat64),\n 'current_total_stake_e8s' : IDL.Opt(IDL.Nat64),\n 'group_type' : IDL.Int32,\n });\n const RestoreAgingSummary = IDL.Record({\n 'groups' : IDL.Vec(RestoreAgingNeuronGroup),\n 'timestamp_seconds' : IDL.Opt(IDL.Nat64),\n });\n const RewardEvent = IDL.Record({\n 'rounds_since_last_distribution' : IDL.Opt(IDL.Nat64),\n 'day_after_genesis' : IDL.Nat64,\n 'actual_timestamp_seconds' : IDL.Nat64,\n 'total_available_e8s_equivalent' : IDL.Nat64,\n 'latest_round_available_e8s_equivalent' : IDL.Opt(IDL.Nat64),\n 'distributed_e8s_equivalent' : IDL.Nat64,\n 'settled_proposals' : IDL.Vec(NeuronId),\n });\n const NeuronStakeTransfer = IDL.Record({\n 'to_subaccount' : IDL.Vec(IDL.Nat8),\n 'neuron_stake_e8s' : IDL.Nat64,\n 'from' : IDL.Opt(IDL.Principal),\n 'memo' : IDL.Nat64,\n 'from_subaccount' : IDL.Vec(IDL.Nat8),\n 'transfer_timestamp' : IDL.Nat64,\n 'block_height' : IDL.Nat64,\n });\n const Followers = IDL.Record({ 'followers' : IDL.Vec(NeuronId) });\n const FollowersMap = IDL.Record({\n 'followers_map' : IDL.Vec(IDL.Tuple(IDL.Nat64, Followers)),\n });\n const Progress = IDL.Variant({ 'LastNeuronId' : NeuronId });\n const Migration = IDL.Record({\n 'status' : IDL.Opt(IDL.Int32),\n 'failure_reason' : IDL.Opt(IDL.Text),\n 'progress' : IDL.Opt(Progress),\n });\n const Migrations = IDL.Record({\n 'neuron_indexes_migration' : IDL.Opt(Migration),\n 'copy_inactive_neurons_to_stable_memory_migration' : IDL.Opt(Migration),\n });\n const GovernanceError = IDL.Record({\n 'error_message' : IDL.Text,\n 'error_type' : IDL.Int32,\n });\n const CfNeuron = IDL.Record({\n 'has_created_neuron_recipes' : IDL.Opt(IDL.Bool),\n 'nns_neuron_id' : IDL.Nat64,\n 'amount_icp_e8s' : IDL.Nat64,\n });\n const CfParticipant = IDL.Record({\n 'hotkey_principal' : IDL.Text,\n 'cf_neurons' : IDL.Vec(CfNeuron),\n });\n const Ballot = IDL.Record({ 'vote' : IDL.Int32, 'voting_power' : IDL.Nat64 });\n const SwapParticipationLimits = IDL.Record({\n 'min_participant_icp_e8s' : IDL.Opt(IDL.Nat64),\n 'max_participant_icp_e8s' : IDL.Opt(IDL.Nat64),\n 'min_direct_participation_icp_e8s' : IDL.Opt(IDL.Nat64),\n 'max_direct_participation_icp_e8s' : IDL.Opt(IDL.Nat64),\n });\n const NeuronsFundNeuronPortion = IDL.Record({\n 'hotkey_principal' : IDL.Opt(IDL.Principal),\n 'is_capped' : IDL.Opt(IDL.Bool),\n 'maturity_equivalent_icp_e8s' : IDL.Opt(IDL.Nat64),\n 'nns_neuron_id' : IDL.Opt(NeuronId),\n 'amount_icp_e8s' : IDL.Opt(IDL.Nat64),\n });\n const NeuronsFundSnapshot = IDL.Record({\n 'neurons_fund_neuron_portions' : IDL.Vec(NeuronsFundNeuronPortion),\n });\n const IdealMatchedParticipationFunction = IDL.Record({\n 'serialized_representation' : IDL.Opt(IDL.Text),\n });\n const NeuronsFundParticipation = IDL.Record({\n 'total_maturity_equivalent_icp_e8s' : IDL.Opt(IDL.Nat64),\n 'intended_neurons_fund_participation_icp_e8s' : IDL.Opt(IDL.Nat64),\n 'direct_participation_icp_e8s' : IDL.Opt(IDL.Nat64),\n 'swap_participation_limits' : IDL.Opt(SwapParticipationLimits),\n 'max_neurons_fund_swap_participation_icp_e8s' : IDL.Opt(IDL.Nat64),\n 'neurons_fund_reserves' : IDL.Opt(NeuronsFundSnapshot),\n 'ideal_matched_participation_function' : IDL.Opt(\n IdealMatchedParticipationFunction\n ),\n 'allocated_neurons_fund_participation_icp_e8s' : IDL.Opt(IDL.Nat64),\n });\n const NeuronsFundData = IDL.Record({\n 'final_neurons_fund_participation' : IDL.Opt(NeuronsFundParticipation),\n 'initial_neurons_fund_participation' : IDL.Opt(NeuronsFundParticipation),\n 'neurons_fund_refunds' : IDL.Opt(NeuronsFundSnapshot),\n });\n const CanisterStatusResultV2 = IDL.Record({\n 'status' : IDL.Opt(IDL.Int32),\n 'freezing_threshold' : IDL.Opt(IDL.Nat64),\n 'controllers' : IDL.Vec(IDL.Principal),\n 'memory_size' : IDL.Opt(IDL.Nat64),\n 'cycles' : IDL.Opt(IDL.Nat64),\n 'idle_cycles_burned_per_day' : IDL.Opt(IDL.Nat64),\n 'module_hash' : IDL.Vec(IDL.Nat8),\n });\n const CanisterSummary = IDL.Record({\n 'status' : IDL.Opt(CanisterStatusResultV2),\n 'canister_id' : IDL.Opt(IDL.Principal),\n });\n const SwapBackgroundInformation = IDL.Record({\n 'ledger_index_canister_summary' : IDL.Opt(CanisterSummary),\n 'fallback_controller_principal_ids' : IDL.Vec(IDL.Principal),\n 'ledger_archive_canister_summaries' : IDL.Vec(CanisterSummary),\n 'ledger_canister_summary' : IDL.Opt(CanisterSummary),\n 'swap_canister_summary' : IDL.Opt(CanisterSummary),\n 'governance_canister_summary' : IDL.Opt(CanisterSummary),\n 'root_canister_summary' : IDL.Opt(CanisterSummary),\n 'dapp_canister_summaries' : IDL.Vec(CanisterSummary),\n });\n const DerivedProposalInformation = IDL.Record({\n 'swap_background_information' : IDL.Opt(SwapBackgroundInformation),\n });\n const Tally = IDL.Record({\n 'no' : IDL.Nat64,\n 'yes' : IDL.Nat64,\n 'total' : IDL.Nat64,\n 'timestamp_seconds' : IDL.Nat64,\n });\n const WaitForQuietState = IDL.Record({\n 'current_deadline_timestamp_seconds' : IDL.Nat64,\n });\n const ProposalData = IDL.Record({\n 'id' : IDL.Opt(NeuronId),\n 'failure_reason' : IDL.Opt(GovernanceError),\n 'cf_participants' : IDL.Vec(CfParticipant),\n 'ballots' : IDL.Vec(IDL.Tuple(IDL.Nat64, Ballot)),\n 'proposal_timestamp_seconds' : IDL.Nat64,\n 'reward_event_round' : IDL.Nat64,\n 'failed_timestamp_seconds' : IDL.Nat64,\n 'neurons_fund_data' : IDL.Opt(NeuronsFundData),\n 'reject_cost_e8s' : IDL.Nat64,\n 'derived_proposal_information' : IDL.Opt(DerivedProposalInformation),\n 'latest_tally' : IDL.Opt(Tally),\n 'sns_token_swap_lifecycle' : IDL.Opt(IDL.Int32),\n 'decided_timestamp_seconds' : IDL.Nat64,\n 'proposal' : IDL.Opt(Proposal),\n 'proposer' : IDL.Opt(NeuronId),\n 'wait_for_quiet_state' : IDL.Opt(WaitForQuietState),\n 'executed_timestamp_seconds' : IDL.Nat64,\n 'original_total_community_fund_maturity_e8s_equivalent' : IDL.Opt(\n IDL.Nat64\n ),\n });\n const XdrConversionRate = IDL.Record({\n 'xdr_permyriad_per_icp' : IDL.Opt(IDL.Nat64),\n 'timestamp_seconds' : IDL.Opt(IDL.Nat64),\n });\n const Command_2 = IDL.Variant({\n 'Spawn' : NeuronId,\n 'Split' : Split,\n 'Configure' : Configure,\n 'Merge' : Merge,\n 'DisburseToNeuron' : DisburseToNeuron,\n 'SyncCommand' : IDL.Record({}),\n 'ClaimOrRefreshNeuron' : ClaimOrRefresh,\n 'MergeMaturity' : MergeMaturity,\n 'Disburse' : Disburse,\n });\n const NeuronInFlightCommand = IDL.Record({\n 'command' : IDL.Opt(Command_2),\n 'timestamp' : IDL.Nat64,\n });\n const BallotInfo = IDL.Record({\n 'vote' : IDL.Int32,\n 'proposal_id' : IDL.Opt(NeuronId),\n });\n const DissolveState = IDL.Variant({\n 'DissolveDelaySeconds' : IDL.Nat64,\n 'WhenDissolvedTimestampSeconds' : IDL.Nat64,\n });\n const Neuron = IDL.Record({\n 'id' : IDL.Opt(NeuronId),\n 'staked_maturity_e8s_equivalent' : IDL.Opt(IDL.Nat64),\n 'controller' : IDL.Opt(IDL.Principal),\n 'recent_ballots' : IDL.Vec(BallotInfo),\n 'kyc_verified' : IDL.Bool,\n 'neuron_type' : IDL.Opt(IDL.Int32),\n 'not_for_profit' : IDL.Bool,\n 'maturity_e8s_equivalent' : IDL.Nat64,\n 'cached_neuron_stake_e8s' : IDL.Nat64,\n 'created_timestamp_seconds' : IDL.Nat64,\n 'auto_stake_maturity' : IDL.Opt(IDL.Bool),\n 'aging_since_timestamp_seconds' : IDL.Nat64,\n 'hot_keys' : IDL.Vec(IDL.Principal),\n 'account' : IDL.Vec(IDL.Nat8),\n 'joined_community_fund_timestamp_seconds' : IDL.Opt(IDL.Nat64),\n 'dissolve_state' : IDL.Opt(DissolveState),\n 'followees' : IDL.Vec(IDL.Tuple(IDL.Int32, Followees)),\n 'neuron_fees_e8s' : IDL.Nat64,\n 'transfer' : IDL.Opt(NeuronStakeTransfer),\n 'known_neuron_data' : IDL.Opt(KnownNeuronData),\n 'spawn_at_timestamp_seconds' : IDL.Opt(IDL.Nat64),\n });\n const Governance = IDL.Record({\n 'default_followees' : IDL.Vec(IDL.Tuple(IDL.Int32, Followees)),\n 'making_sns_proposal' : IDL.Opt(MakingSnsProposal),\n 'most_recent_monthly_node_provider_rewards' : IDL.Opt(\n MostRecentMonthlyNodeProviderRewards\n ),\n 'maturity_modulation_last_updated_at_timestamp_seconds' : IDL.Opt(\n IDL.Nat64\n ),\n 'wait_for_quiet_threshold_seconds' : IDL.Nat64,\n 'metrics' : IDL.Opt(GovernanceCachedMetrics),\n 'neuron_management_voting_period_seconds' : IDL.Opt(IDL.Nat64),\n 'node_providers' : IDL.Vec(NodeProvider),\n 'cached_daily_maturity_modulation_basis_points' : IDL.Opt(IDL.Int32),\n 'economics' : IDL.Opt(NetworkEconomics),\n 'restore_aging_summary' : IDL.Opt(RestoreAgingSummary),\n 'spawning_neurons' : IDL.Opt(IDL.Bool),\n 'latest_reward_event' : IDL.Opt(RewardEvent),\n 'to_claim_transfers' : IDL.Vec(NeuronStakeTransfer),\n 'short_voting_period_seconds' : IDL.Nat64,\n 'topic_followee_index' : IDL.Vec(IDL.Tuple(IDL.Int32, FollowersMap)),\n 'migrations' : IDL.Opt(Migrations),\n 'proposals' : IDL.Vec(IDL.Tuple(IDL.Nat64, ProposalData)),\n 'xdr_conversion_rate' : IDL.Opt(XdrConversionRate),\n 'in_flight_commands' : IDL.Vec(IDL.Tuple(IDL.Nat64, NeuronInFlightCommand)),\n 'neurons' : IDL.Vec(IDL.Tuple(IDL.Nat64, Neuron)),\n 'genesis_timestamp_seconds' : IDL.Nat64,\n });\n return [Governance];\n};\n", "import type { Vote } from \"../enums/governance.enums\";\nimport type {\n Ballot,\n BallotInfo,\n NeuronInfo,\n ProposalId,\n ProposalInfo,\n} from \"../types/governance_converters\";\n\nconst voteForProposal = ({\n recentBallots,\n proposalId,\n}: {\n recentBallots: BallotInfo[];\n proposalId: ProposalId | undefined;\n}): Vote | undefined => {\n if (!proposalId) {\n return undefined;\n }\n\n const ballot: BallotInfo | undefined = recentBallots.find(\n ({ proposalId: id }: BallotInfo) => id === proposalId,\n );\n return ballot?.vote;\n};\n\n/**\n * Filter the neurons that are ineligible to vote to a proposal.\n *\n * This feature needs the ballots of the proposal to contains accurate data.\n * If the proposal has settled, as the ballots of the proposal are emptied for archive purpose, the function might return a list of ineligible neurons that are actually neurons that have not voted but would have been eligible.\n *\n * Long story short, check the status of the proposal before using this function.\n *\n * @param {neurons; proposal;} params\n * @param params.neurons The neurons to filter.\n * @param params.proposal The proposal to match against the selected neurons.\n */\nexport const ineligibleNeurons = ({\n neurons,\n proposal,\n}: {\n neurons: NeuronInfo[];\n proposal: ProposalInfo;\n}): NeuronInfo[] => {\n const { ballots, proposalTimestampSeconds } = proposal;\n\n return neurons.filter(({ createdTimestampSeconds, neuronId }: NeuronInfo) => {\n const createdSinceProposal: boolean =\n createdTimestampSeconds > proposalTimestampSeconds;\n\n const dissolveTooShort: boolean =\n ballots.find(\n ({ neuronId: ballotNeuronId }: Ballot) => ballotNeuronId === neuronId,\n ) === undefined;\n\n return createdSinceProposal || dissolveTooShort;\n });\n};\n\n/**\n * Filter the neurons that can vote for a proposal - i.e. the neurons that have not voted yet and are eligible\n *\n * @param {neurons; proposal;} params\n * @param params.neurons The neurons to filter.\n * @param params.proposal The proposal to match against the selected neurons.\n */\nexport const votableNeurons = ({\n neurons,\n proposal,\n}: {\n neurons: NeuronInfo[];\n proposal: ProposalInfo;\n}): NeuronInfo[] => {\n const { id: proposalId } = proposal;\n\n return neurons.filter(\n ({ recentBallots, neuronId }: NeuronInfo) =>\n voteForProposal({ recentBallots, proposalId }) === undefined &&\n ineligibleNeurons({ neurons, proposal }).find(\n ({ neuronId: ineligibleNeuronId }: NeuronInfo) =>\n ineligibleNeuronId === neuronId,\n ) === undefined,\n );\n};\n\n/**\n * Filter the neurons that have voted for a proposal.\n *\n * @param {neurons; proposal;} params\n * @param params.neurons The neurons to filter.\n * @param params.proposal The proposal for which some neurons might have already voted.\n */\nexport const votedNeurons = ({\n neurons,\n proposal: { id: proposalId },\n}: {\n neurons: NeuronInfo[];\n proposal: ProposalInfo;\n}): NeuronInfo[] =>\n neurons.filter(\n ({ recentBallots }: NeuronInfo) =>\n voteForProposal({ recentBallots, proposalId }) !== undefined,\n );\n"],
5
+ "mappings": "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",
6
+ "names": ["NeuronState", "Topic", "ProposalRewardStatus", "ProposalStatus", "Vote", "NnsFunction", "NeuronType", "createServices", "idlFactory", "IDL", "Proposal", "NeuronId", "Followees", "KnownNeuronData", "KnownNeuron", "Spawn", "Split", "Follow", "ClaimOrRefreshNeuronFromAccount", "By", "ClaimOrRefresh", "RemoveHotKey", "AddHotKey", "ChangeAutoStakeMaturity", "IncreaseDissolveDelay", "SetDissolveTimestamp", "Operation", "Configure", "RegisterVote", "Merge", "DisburseToNeuron", "StakeMaturity", "MergeMaturity", "AccountIdentifier", "Amount", "Disburse", "Command", "NeuronIdOrSubaccount", "ManageNeuron", "Percentage", "Duration", "Tokens", "VotingRewardParameters", "GovernanceParameters", "Image", "LedgerParameters", "Canister", "NeuronBasketConstructionParameters", "GlobalTimeOfDay", "Countries", "SwapParameters", "SwapDistribution", "NeuronDistribution", "DeveloperDistribution", "InitialTokenDistribution", "CreateServiceNervousSystem", "ExecuteNnsFunction", "NodeProvider", "RewardToNeuron", "RewardToAccount", "RewardMode", "RewardNodeProvider", "NeuronBasketConstructionParameters_1", "Params", "OpenSnsTokenSwap", "TimeWindow", "SetOpenTimeWindowRequest", "SetSnsTokenSwapOpenTimeWindow", "SetDefaultFollowees", "RewardNodeProviders", "Decimal", "NeuronsFundMatchedFundingCurveCoefficients", "NeuronsFundEconomics", "NetworkEconomics", "ApproveGenesisKyc", "Change", "AddOrRemoveNodeProvider", "Motion", "Action", "MakingSnsProposal", "MostRecentMonthlyNodeProviderRewards", "GovernanceCachedMetrics", "RestoreAgingNeuronGroup", "RestoreAgingSummary", "RewardEvent", "NeuronStakeTransfer", "Followers", "FollowersMap", "Progress", "Migration", "Migrations", "GovernanceError", "CfNeuron", "CfParticipant", "Ballot", "SwapParticipationLimits", "NeuronsFundNeuronPortion", "NeuronsFundSnapshot", "IdealMatchedParticipationFunction", "NeuronsFundParticipation", "NeuronsFundData", "CanisterStatusResultV2", "CanisterSummary", "SwapBackgroundInformation", "DerivedProposalInformation", "Tally", "WaitForQuietState", "ProposalData", "XdrConversionRate", "Command_2", "NeuronInFlightCommand", "BallotInfo", "DissolveState", "Neuron", "Governance", "Result", "Result_1", "ClaimOrRefreshNeuronFromAccountResponse", "Result_2", "Result_3", "Result_4", "NeuronInfo", "Result_5", "GetNeuronsFundAuditInfoRequest", "NeuronsFundAuditInfo", "Ok", "Result_6", "GetNeuronsFundAuditInfoResponse", "Result_7", "ProposalInfo", "ListKnownNeuronsResponse", "ListNeurons", "ListNeuronsResponse", "ListNodeProvidersResponse", "ListProposalInfo", "ListProposalInfoResponse", "SpawnResponse", "ClaimOrRefreshResponse", "MergeResponse", "MakeProposalResponse", "StakeMaturityResponse", "MergeMaturityResponse", "DisburseResponse", "Command_1", "ManageNeuronResponse", "Committed", "Result_8", "SettleCommunityFundParticipation", "Committed_1", "Result_9", "SettleNeuronsFundParticipationRequest", "NeuronsFundNeuron", "Ok_1", "Result_10", "SettleNeuronsFundParticipationResponse", "UpdateNodeProvider", "GovernanceTestCanister", "_GovernanceTestCanister", "certifiedService", "options", "canisterId", "MAINNET_GOVERNANCE_CANISTER_ID", "createServices", "idlFactory", "neuron", "toRawNeuron", "voteForProposal", "recentBallots", "proposalId", "id", "ineligibleNeurons", "neurons", "proposal", "ballots", "proposalTimestampSeconds", "createdTimestampSeconds", "neuronId", "createdSinceProposal", "dissolveTooShort", "ballotNeuronId", "votableNeurons", "ineligibleNeuronId", "votedNeurons"]
7
7
  }
@@ -1,2 +1,2 @@
1
- import{a}from"./chunk-4ZPVMCGL.js";import"./chunk-KCY3PAEP.js";export{a as SnsWasmCanister};
1
+ import{a}from"./chunk-43F2UA4Z.js";import"./chunk-KCY3PAEP.js";export{a as SnsWasmCanister};
2
2
  //# sourceMappingURL=sns_wasm.canister.js.map
@@ -24,7 +24,8 @@ export declare enum Topic {
24
24
  SubnetReplicaVersionManagement = 12,
25
25
  ReplicaVersionManagement = 13,
26
26
  SnsAndCommunityFund = 14,
27
- ApiBoundaryNodeManagement = 15
27
+ ApiBoundaryNodeManagement = 15,
28
+ SubnetRental = 16
28
29
  }
29
30
  export declare enum ProposalRewardStatus {
30
31
  Unknown = 0,
@@ -96,7 +97,8 @@ export declare enum NnsFunction {
96
97
  DeployGuestosToAllUnassignedNodes = 48,
97
98
  UpdateSshReadOnlyAccessForAllUnassignedNodes = 49,
98
99
  ReviseElectedHostosVersions = 50,
99
- DeployHostosToSomeNodes = 51
100
+ DeployHostosToSomeNodes = 51,
101
+ SubnetRentalRequest = 52
100
102
  }
101
103
  export declare enum NeuronType {
102
104
  Unspecified = 0,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dfinity/nns",
3
- "version": "5.0.0",
3
+ "version": "5.1.0",
4
4
  "description": "A library for interfacing with the Internet Computer's Network Nervous System.",
5
5
  "license": "Apache-2.0",
6
6
  "main": "dist/cjs/index.cjs.js",
@@ -51,10 +51,10 @@
51
51
  "network-nervous-system"
52
52
  ],
53
53
  "peerDependencies": {
54
- "@dfinity/agent": "^1.2.1",
55
- "@dfinity/candid": "^1.2.1",
56
- "@dfinity/ledger-icp": "^2.2.3",
57
- "@dfinity/principal": "^1.2.1",
58
- "@dfinity/utils": "^2.2.0"
54
+ "@dfinity/agent": "^1.3.0",
55
+ "@dfinity/candid": "^1.3.0",
56
+ "@dfinity/ledger-icp": "^2.2.4",
57
+ "@dfinity/principal": "^1.3.0",
58
+ "@dfinity/utils": "^2.3.0"
59
59
  }
60
60
  }
@@ -1,2 +0,0 @@
1
- import{e as L}from"./chunk-KCY3PAEP.js";import{createServices as ne}from"@dfinity/utils";var ee=({IDL:e})=>{let i=e.Record({allowed_principals:e.Vec(e.Principal),access_controls_enabled:e.Bool,sns_subnet_ids:e.Vec(e.Principal)}),n=e.Record({wasm:e.Vec(e.Nat8),canister_type:e.Int32}),r=e.Record({hash:e.Vec(e.Nat8),wasm:e.Opt(n)}),t=e.Record({message:e.Text}),_=e.Variant({Error:t,Hash:e.Vec(e.Nat8)}),d=e.Record({result:e.Opt(_)}),l=e.Record({dissolve_delay_interval_seconds:e.Nat64,count:e.Nat64}),a=e.Record({id:e.Opt(e.Principal)}),u=e.Record({canisters:e.Vec(a)}),O=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)}),R=e.Record({serialized_representation:e.Opt(e.Text)}),m=e.Record({coefficient_intervals:e.Vec(O),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(R)}),N=e.Record({has_created_neuron_recipes:e.Opt(e.Bool),nns_neuron_id:e.Nat64,amount_icp_e8s:e.Nat64}),P=e.Record({hotkey_principal:e.Text,cf_neurons:e.Vec(N)}),w=e.Record({participants:e.Vec(P)}),y=e.Record({total_e8s:e.Nat64}),o=e.Record({controller:e.Opt(e.Principal),dissolve_delay_seconds:e.Nat64,memo:e.Nat64,stake_e8s:e.Nat64,vesting_period_seconds:e.Opt(e.Nat64)}),V=e.Record({developer_neurons:e.Vec(o)}),v=e.Record({airdrop_neurons:e.Vec(o)}),S=e.Record({total_e8s:e.Nat64,initial_swap_amount_e8s:e.Nat64}),h=e.Record({treasury_distribution:e.Opt(y),developer_distribution:e.Opt(V),airdrop_distribution:e.Opt(v),swap_distribution:e.Opt(S)}),x=e.Variant({FractionalDeveloperVotingPower:h}),g=e.Record({iso_codes:e.Vec(e.Text)}),b=e.Record({url:e.Opt(e.Text),max_dissolve_delay_seconds:e.Opt(e.Nat64),max_dissolve_delay_bonus_percentage:e.Opt(e.Nat64),nns_proposal_id:e.Opt(e.Nat64),neurons_fund_participation:e.Opt(e.Bool),min_participant_icp_e8s:e.Opt(e.Nat64),neuron_basket_construction_parameters:e.Opt(l),fallback_controller_principal_ids:e.Vec(e.Text),token_symbol:e.Opt(e.Text),final_reward_rate_basis_points:e.Opt(e.Nat64),max_icp_e8s:e.Opt(e.Nat64),neuron_minimum_stake_e8s:e.Opt(e.Nat64),confirmation_text:e.Opt(e.Text),logo:e.Opt(e.Text),name:e.Opt(e.Text),swap_start_timestamp_seconds:e.Opt(e.Nat64),swap_due_timestamp_seconds:e.Opt(e.Nat64),initial_voting_period_seconds:e.Opt(e.Nat64),neuron_minimum_dissolve_delay_to_vote_seconds:e.Opt(e.Nat64),description:e.Opt(e.Text),max_neuron_age_seconds_for_age_bonus:e.Opt(e.Nat64),min_participants:e.Opt(e.Nat64),initial_reward_rate_basis_points:e.Opt(e.Nat64),wait_for_quiet_deadline_increase_seconds:e.Opt(e.Nat64),transaction_fee_e8s:e.Opt(e.Nat64),dapp_canisters:e.Opt(u),neurons_fund_participation_constraints:e.Opt(m),neurons_fund_participants:e.Opt(w),max_age_bonus_percentage:e.Opt(e.Nat64),initial_token_distribution:e.Opt(x),reward_rate_transition_duration_seconds:e.Opt(e.Nat64),token_logo:e.Opt(e.Text),token_name:e.Opt(e.Text),max_participant_icp_e8s:e.Opt(e.Nat64),min_direct_participation_icp_e8s:e.Opt(e.Nat64),proposal_reject_cost_e8s:e.Opt(e.Nat64),restricted_countries:e.Opt(g),min_icp_e8s:e.Opt(e.Nat64),max_direct_participation_icp_e8s:e.Opt(e.Nat64)}),f=e.Record({sns_init_payload:e.Opt(b)}),T=e.Record({restored_dapp_canisters:e.Vec(a),nns_controlled_dapp_canisters:e.Vec(a),sns_controlled_dapp_canisters:e.Vec(a)}),F=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)}),C=e.Record({dapp_canisters_transfer_result:e.Opt(T),subnet_id:e.Opt(e.Principal),error:e.Opt(t),canisters:e.Opt(F)}),c=e.Record({allowed_principals:e.Vec(e.Principal)}),q=e.Record({proposal_id:e.Nat64}),p=e.Record({root_canister_id:e.Opt(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)}),W=e.Variant({Error:t,DeployedSns:p}),k=e.Record({get_deployed_sns_by_proposal_id_result:e.Opt(W)}),s=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({governance_canister_id:e.Opt(e.Principal),current_version:e.Opt(s)}),A=e.Record({next_version:e.Opt(s)}),G=e.Record({sns_subnet_ids:e.Vec(e.Principal)}),B=e.Record({hash:e.Vec(e.Nat8)}),E=e.Record({wasm:e.Opt(n)}),M=e.Record({next_version:e.Opt(s),current_version:e.Opt(s)}),j=e.Record({upgrade_path:e.Vec(M),sns_governance_canister_id:e.Opt(e.Principal)}),z=e.Record({error:e.Opt(t)}),H=e.Record({instances:e.Vec(p)}),J=e.Record({limit:e.Nat32,starting_at:e.Opt(s),sns_governance_canister_id:e.Opt(e.Principal)}),K=e.Record({archive_wasm_hash:e.Text,root_wasm_hash:e.Text,swap_wasm_hash:e.Text,ledger_wasm_hash:e.Text,governance_wasm_hash:e.Text,index_wasm_hash:e.Text}),Q=e.Record({pretty_version:e.Opt(K),version:e.Opt(s)}),X=e.Record({steps:e.Vec(Q)}),Y=e.Record({added_principals:e.Vec(e.Principal),removed_principals:e.Vec(e.Principal)}),Z=e.Variant({Error:t,AllowedPrincipals:c}),$=e.Record({update_allowed_principals_result:e.Opt(Z)}),D=e.Record({sns_subnet_ids_to_add:e.Vec(e.Principal),sns_subnet_ids_to_remove:e.Vec(e.Principal)}),I=e.Record({error:e.Opt(t)});return e.Service({add_wasm:e.Func([r],[d],[]),deploy_new_sns:e.Func([f],[C],[]),get_allowed_principals:e.Func([e.Record({})],[c],[]),get_deployed_sns_by_proposal_id:e.Func([q],[k],[]),get_latest_sns_version_pretty:e.Func([e.Null],[e.Vec(e.Tuple(e.Text,e.Text))],[]),get_next_sns_version:e.Func([U],[A],[]),get_sns_subnet_ids:e.Func([e.Record({})],[G],[]),get_wasm:e.Func([B],[E],[]),insert_upgrade_path_entries:e.Func([j],[z],[]),list_deployed_snses:e.Func([e.Record({})],[H],[]),list_upgrade_steps:e.Func([J],[X],[]),update_allowed_principals:e.Func([Y],[$],[]),update_sns_subnet_list:e.Func([D],[I],[])})};var te=({IDL:e})=>{let i=e.Record({allowed_principals:e.Vec(e.Principal),access_controls_enabled:e.Bool,sns_subnet_ids:e.Vec(e.Principal)}),n=e.Record({wasm:e.Vec(e.Nat8),canister_type:e.Int32}),r=e.Record({hash:e.Vec(e.Nat8),wasm:e.Opt(n)}),t=e.Record({message:e.Text}),_=e.Variant({Error:t,Hash:e.Vec(e.Nat8)}),d=e.Record({result:e.Opt(_)}),l=e.Record({dissolve_delay_interval_seconds:e.Nat64,count:e.Nat64}),a=e.Record({id:e.Opt(e.Principal)}),u=e.Record({canisters:e.Vec(a)}),O=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)}),R=e.Record({serialized_representation:e.Opt(e.Text)}),m=e.Record({coefficient_intervals:e.Vec(O),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(R)}),N=e.Record({has_created_neuron_recipes:e.Opt(e.Bool),nns_neuron_id:e.Nat64,amount_icp_e8s:e.Nat64}),P=e.Record({hotkey_principal:e.Text,cf_neurons:e.Vec(N)}),w=e.Record({participants:e.Vec(P)}),y=e.Record({total_e8s:e.Nat64}),o=e.Record({controller:e.Opt(e.Principal),dissolve_delay_seconds:e.Nat64,memo:e.Nat64,stake_e8s:e.Nat64,vesting_period_seconds:e.Opt(e.Nat64)}),V=e.Record({developer_neurons:e.Vec(o)}),v=e.Record({airdrop_neurons:e.Vec(o)}),S=e.Record({total_e8s:e.Nat64,initial_swap_amount_e8s:e.Nat64}),h=e.Record({treasury_distribution:e.Opt(y),developer_distribution:e.Opt(V),airdrop_distribution:e.Opt(v),swap_distribution:e.Opt(S)}),x=e.Variant({FractionalDeveloperVotingPower:h}),g=e.Record({iso_codes:e.Vec(e.Text)}),b=e.Record({url:e.Opt(e.Text),max_dissolve_delay_seconds:e.Opt(e.Nat64),max_dissolve_delay_bonus_percentage:e.Opt(e.Nat64),nns_proposal_id:e.Opt(e.Nat64),neurons_fund_participation:e.Opt(e.Bool),min_participant_icp_e8s:e.Opt(e.Nat64),neuron_basket_construction_parameters:e.Opt(l),fallback_controller_principal_ids:e.Vec(e.Text),token_symbol:e.Opt(e.Text),final_reward_rate_basis_points:e.Opt(e.Nat64),max_icp_e8s:e.Opt(e.Nat64),neuron_minimum_stake_e8s:e.Opt(e.Nat64),confirmation_text:e.Opt(e.Text),logo:e.Opt(e.Text),name:e.Opt(e.Text),swap_start_timestamp_seconds:e.Opt(e.Nat64),swap_due_timestamp_seconds:e.Opt(e.Nat64),initial_voting_period_seconds:e.Opt(e.Nat64),neuron_minimum_dissolve_delay_to_vote_seconds:e.Opt(e.Nat64),description:e.Opt(e.Text),max_neuron_age_seconds_for_age_bonus:e.Opt(e.Nat64),min_participants:e.Opt(e.Nat64),initial_reward_rate_basis_points:e.Opt(e.Nat64),wait_for_quiet_deadline_increase_seconds:e.Opt(e.Nat64),transaction_fee_e8s:e.Opt(e.Nat64),dapp_canisters:e.Opt(u),neurons_fund_participation_constraints:e.Opt(m),neurons_fund_participants:e.Opt(w),max_age_bonus_percentage:e.Opt(e.Nat64),initial_token_distribution:e.Opt(x),reward_rate_transition_duration_seconds:e.Opt(e.Nat64),token_logo:e.Opt(e.Text),token_name:e.Opt(e.Text),max_participant_icp_e8s:e.Opt(e.Nat64),min_direct_participation_icp_e8s:e.Opt(e.Nat64),proposal_reject_cost_e8s:e.Opt(e.Nat64),restricted_countries:e.Opt(g),min_icp_e8s:e.Opt(e.Nat64),max_direct_participation_icp_e8s:e.Opt(e.Nat64)}),f=e.Record({sns_init_payload:e.Opt(b)}),T=e.Record({restored_dapp_canisters:e.Vec(a),nns_controlled_dapp_canisters:e.Vec(a),sns_controlled_dapp_canisters:e.Vec(a)}),F=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)}),C=e.Record({dapp_canisters_transfer_result:e.Opt(T),subnet_id:e.Opt(e.Principal),error:e.Opt(t),canisters:e.Opt(F)}),c=e.Record({allowed_principals:e.Vec(e.Principal)}),q=e.Record({proposal_id:e.Nat64}),p=e.Record({root_canister_id:e.Opt(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)}),W=e.Variant({Error:t,DeployedSns:p}),k=e.Record({get_deployed_sns_by_proposal_id_result:e.Opt(W)}),s=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({governance_canister_id:e.Opt(e.Principal),current_version:e.Opt(s)}),A=e.Record({next_version:e.Opt(s)}),G=e.Record({sns_subnet_ids:e.Vec(e.Principal)}),B=e.Record({hash:e.Vec(e.Nat8)}),E=e.Record({wasm:e.Opt(n)}),M=e.Record({next_version:e.Opt(s),current_version:e.Opt(s)}),j=e.Record({upgrade_path:e.Vec(M),sns_governance_canister_id:e.Opt(e.Principal)}),z=e.Record({error:e.Opt(t)}),H=e.Record({instances:e.Vec(p)}),J=e.Record({limit:e.Nat32,starting_at:e.Opt(s),sns_governance_canister_id:e.Opt(e.Principal)}),K=e.Record({archive_wasm_hash:e.Text,root_wasm_hash:e.Text,swap_wasm_hash:e.Text,ledger_wasm_hash:e.Text,governance_wasm_hash:e.Text,index_wasm_hash:e.Text}),Q=e.Record({pretty_version:e.Opt(K),version:e.Opt(s)}),X=e.Record({steps:e.Vec(Q)}),Y=e.Record({added_principals:e.Vec(e.Principal),removed_principals:e.Vec(e.Principal)}),Z=e.Variant({Error:t,AllowedPrincipals:c}),$=e.Record({update_allowed_principals_result:e.Opt(Z)}),D=e.Record({sns_subnet_ids_to_add:e.Vec(e.Principal),sns_subnet_ids_to_remove:e.Vec(e.Principal)}),I=e.Record({error:e.Opt(t)});return e.Service({add_wasm:e.Func([r],[d],[]),deploy_new_sns:e.Func([f],[C],[]),get_allowed_principals:e.Func([e.Record({})],[c],["query"]),get_deployed_sns_by_proposal_id:e.Func([q],[k],["query"]),get_latest_sns_version_pretty:e.Func([e.Null],[e.Vec(e.Tuple(e.Text,e.Text))],["query"]),get_next_sns_version:e.Func([U],[A],["query"]),get_sns_subnet_ids:e.Func([e.Record({})],[G],["query"]),get_wasm:e.Func([B],[E],["query"]),insert_upgrade_path_entries:e.Func([j],[z],[]),list_deployed_snses:e.Func([e.Record({})],[H],["query"]),list_upgrade_steps:e.Func([J],[X],["query"]),update_allowed_principals:e.Func([Y],[$],[]),update_sns_subnet_list:e.Func([D],[I],[])})};var se=class e{constructor(i,n){this.service=i;this.certifiedService=n;this.listSnses=async({certified:i=!0})=>{let n=i?this.certifiedService:this.service,{instances:r}=await n.list_deployed_snses({});return r}}static create(i={}){let{service:n,certifiedService:r}=ne({options:{...i,canisterId:i.canisterId??L},idlFactory:te,certifiedIdlFactory:ee});return new e(n,r)}};export{se as a};
2
- //# sourceMappingURL=chunk-4ZPVMCGL.js.map