@dfinity/sns 3.2.2 → 3.2.3

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