import type { AccountIdentifier as AccountIdentifierClass } from "@dfinity/ledger-icp";
import { Principal } from "@dfinity/principal";
import type { ListProposalInfo, NeuronSubaccount, ManageNeuronCommandRequest as RawCommand, ListNeurons as RawListNeurons, ManageNeuronRequest as RawManageNeuron, Operation as RawOperation } from "../../../candid/governance";
import type { NeuronVisibility, Vote } from "../../enums/governance.enums";
import type { E8s, NeuronId } from "../../types/common";
import type { ClaimOrRefreshNeuronRequest, DisburseToNeuronRequest, FollowRequest, ListProposalsRequest, MakeProposalRequest, ManageNeuronRequest, ProposalId } from "../../types/governance_converters";
export declare const fromListNeurons: ({ neuronIds, includeEmptyNeurons, includePublicNeurons, neuronSubaccounts, pageNumber, pageSize, }: {
    neuronIds?: NeuronId[];
    includeEmptyNeurons?: boolean;
    includePublicNeurons?: boolean;
    neuronSubaccounts?: NeuronSubaccount[];
    pageNumber?: bigint;
    pageSize?: bigint;
}) => RawListNeurons;
export declare const fromManageNeuron: ({ id, command, neuronIdOrSubaccount, }: ManageNeuronRequest) => RawManageNeuron;
export declare const fromListProposalsRequest: ({ includeRewardStatus, beforeProposal, excludeTopic, includeStatus, limit, includeAllManageNeuronProposals, omitLargeFields, }: ListProposalsRequest) => ListProposalInfo;
export declare const fromClaimOrRefreshNeuronRequest: (request: ClaimOrRefreshNeuronRequest) => RawManageNeuron;
export declare const toClaimOrRefreshRequest: ({ memo, controller, }: {
    memo: bigint;
    controller?: Principal;
}) => RawManageNeuron;
export declare const toSplitRawRequest: ({ neuronId, amount, }: {
    neuronId: NeuronId;
    amount: E8s;
}) => RawManageNeuron;
export declare const fromDisburseToNeuronRequest: (request: DisburseToNeuronRequest) => RawManageNeuron;
export declare const fromMakeProposalRequest: (request: MakeProposalRequest) => RawManageNeuron;
export declare const toRegisterVoteRequest: ({ neuronId, vote, proposalId, }: {
    neuronId: NeuronId;
    vote: Vote;
    proposalId: ProposalId;
}) => RawManageNeuron;
export declare const toMakeProposalRawRequest: (request: MakeProposalRequest) => RawManageNeuron;
export declare const toManageNeuronsFollowRequest: ({ neuronId, topic, followees, }: FollowRequest) => RawManageNeuron;
export declare const toDisburseNeuronRequest: ({ neuronId, toAccountIdentifier, amount, }: {
    neuronId: NeuronId;
    toAccountIdentifier?: AccountIdentifierClass;
    amount?: E8s;
}) => RawManageNeuron;
export declare const toDisburseMaturityRequest: ({ neuronId, percentageToDisburse, }: {
    neuronId: NeuronId;
    percentageToDisburse: number;
}) => RawManageNeuron;
export declare const toRefreshVotingPowerRequest: ({ neuronId, }: {
    neuronId: NeuronId;
}) => RawManageNeuron;
export declare const toMergeMaturityRequest: ({ neuronId, percentageToMerge, }: {
    neuronId: NeuronId;
    percentageToMerge: number;
}) => RawManageNeuron;
export declare const toStakeMaturityRequest: ({ neuronId, percentageToStake, }: {
    neuronId: NeuronId;
    percentageToStake?: number;
}) => RawManageNeuron;
export declare const toSpawnNeuronRequest: ({ neuronId, percentageToSpawn, newController, nonce, }: {
    neuronId: NeuronId;
    percentageToSpawn?: number;
    newController?: Principal;
    nonce?: bigint;
}) => RawManageNeuron;
export declare const toAddHotkeyRequest: ({ neuronId, principal, }: {
    neuronId: NeuronId;
    principal: Principal;
}) => RawManageNeuron;
export declare const toRemoveHotkeyRequest: ({ neuronId, principal, }: {
    neuronId: NeuronId;
    principal: Principal;
}) => RawManageNeuron;
export declare const toIncreaseDissolveDelayRequest: ({ neuronId, additionalDissolveDelaySeconds, }: {
    neuronId: NeuronId;
    additionalDissolveDelaySeconds: number;
}) => RawManageNeuron;
export declare const toSetDissolveDelayRequest: ({ neuronId, dissolveDelaySeconds, }: {
    neuronId: NeuronId;
    dissolveDelaySeconds: number;
}) => RawManageNeuron;
export declare const toJoinCommunityFundRequest: (neuronId: NeuronId) => RawManageNeuron;
export declare const toAutoStakeMaturityRequest: ({ neuronId, autoStake, }: {
    neuronId: NeuronId;
    autoStake: boolean;
}) => RawManageNeuron;
export declare const toLeaveCommunityFundRequest: (neuronId: NeuronId) => RawManageNeuron;
export declare const toSetVisibilityRequest: ({ neuronId, visibility, }: {
    neuronId: NeuronId;
    visibility: NeuronVisibility;
}) => RawManageNeuron;
export declare const toMergeRequest: ({ sourceNeuronId, targetNeuronId, }: {
    sourceNeuronId: NeuronId;
    targetNeuronId: NeuronId;
}) => RawManageNeuron;
export declare const toStartDissolvingRequest: (neuronId: NeuronId) => RawManageNeuron;
export declare const toStopDissolvingRequest: (neuronId: NeuronId) => RawManageNeuron;
export declare const toCommand: ({ neuronId, command, }: {
    neuronId: NeuronId;
    command: RawCommand;
}) => RawManageNeuron;
export declare const toConfigureOperation: ({ neuronId, operation, }: {
    neuronId: NeuronId;
    operation: RawOperation;
}) => RawManageNeuron;
