import type { TokenDto } from "@stakekit/api-hooks";
import BigNumber from "bignumber.js";
import { Maybe } from "purify-ts";
export declare const usePositionDetails: () => {
    integrationData: Maybe<import("@stakekit/api-hooks/dist/yieldYields200-6PERGfk7").o>;
    reducedStakedOrLiquidBalance: Maybe<{
        amount: BigNumber;
        token: TokenDto;
        pricePerShare: string;
    }>;
    positionBalancesByType: Maybe<import("../../../domain/types/positions").PositionBalancesByType>;
    canUnstake: boolean;
    unstakeAmount: BigNumber;
    onUnstakeAmountChange: (value: BigNumber) => void;
    unstakeFormattedAmount: string;
    onMaxClick: () => void;
    canChangeUnstakeAmount: Maybe<boolean>;
    onUnstakeClick: import("@tanstack/react-query/build/legacy/types").UseMutateFunction<null, Error, void, unknown>;
    unstakeDisabled: boolean;
    isLoading: boolean;
    onPendingActionClick: ({ yieldBalance, pendingActionDto, }: {
        pendingActionDto: import("@stakekit/api-hooks/dist/yieldYields200-6PERGfk7").Z;
        yieldBalance: import("@stakekit/api-hooks/dist/yieldYields200-6PERGfk7").q;
    }) => void;
    providersDetails: Maybe<{
        logo: string | undefined;
        name: string;
        rewardRateFormatted: string;
        rewardRate: number | undefined;
        rewardType: import("@stakekit/api-hooks/dist/yieldYields200-6PERGfk7").a3;
        address?: string | undefined;
        stakedBalance?: string | undefined;
        votingPower?: number | undefined;
        commission?: number | undefined;
        website?: string | undefined;
        status?: import("@stakekit/api-hooks/dist/yieldYields200-6PERGfk7").aa | undefined;
        preferred?: boolean | undefined;
    }[]>;
    pendingActions: import("purify-ts/Maybe").Maybe<{
        amount: BigNumber | null;
        formattedAmount: string;
        pendingActionDto: import("@stakekit/api-hooks/dist/yieldYields200-6PERGfk7").Z;
        yieldBalance: import("@stakekit/api-hooks/dist/yieldYields200-6PERGfk7").q & {
            tokenPriceInUsd: BigNumber;
        };
    }[]>;
    liquidTokensToNativeConversion: import("purify-ts/Maybe").Maybe<Map<string, string>>;
    validatorAddressesHandling: {
        modalState: {
            isOpen: boolean;
            setOpen: (val: boolean) => void;
        };
        closeModal: () => void;
        openModal: (args: {
            yieldBalance: import("@stakekit/api-hooks/dist/yieldYields200-6PERGfk7").q;
            pendingActionDto: import("@stakekit/api-hooks/dist/yieldYields200-6PERGfk7").Z;
        }) => void;
        onItemClick: (validator: string) => void;
        submitDisabled: boolean;
        selectedValidators: Set<string>;
        multiSelect: boolean;
        showValidatorsModal: true;
        yieldBalance: import("@stakekit/api-hooks/dist/yieldYields200-6PERGfk7").q;
        pendingActionDto: import("@stakekit/api-hooks/dist/yieldYields200-6PERGfk7").Z;
    } | {
        modalState: {
            isOpen: boolean;
            setOpen: (val: boolean) => void;
        };
        closeModal: () => void;
        openModal: (args: {
            yieldBalance: import("@stakekit/api-hooks/dist/yieldYields200-6PERGfk7").q;
            pendingActionDto: import("@stakekit/api-hooks/dist/yieldYields200-6PERGfk7").Z;
        }) => void;
        onItemClick: (validator: string) => void;
        submitDisabled: boolean;
        selectedValidators: Set<string>;
        multiSelect: boolean;
        showValidatorsModal: false;
        yieldBalance: null;
        pendingActionDto: null;
    };
    onValidatorsSubmit: (selectedValidators: string[]) => import("purify-ts").Either<Error, {
        yieldDto: import("@stakekit/api-hooks/dist/yieldYields200-6PERGfk7").o;
        selectedValidators: string[];
        pendingActionDto: import("@stakekit/api-hooks/dist/yieldYields200-6PERGfk7").Z;
        yieldBalance: import("@stakekit/api-hooks/dist/yieldYields200-6PERGfk7").q;
    }>;
    onPendingActionAmountChange: (data: {
        balanceType: import("@stakekit/api-hooks/dist/yieldYields200-6PERGfk7").H;
        token: TokenDto;
        actionType: import("@stakekit/api-hooks/dist/yieldYields200-6PERGfk7").c;
        amount: BigNumber;
    }) => void;
    unstakeToken: Maybe<TokenDto>;
    positionLabel: import("purify-ts/Maybe").Maybe<import("@stakekit/api-hooks/dist/yieldYields200-6PERGfk7").ab>;
    unstakeAmountError: boolean;
    unstakeMaxAmount: import("purify-ts/Maybe").Maybe<number>;
    unstakeMinAmount: import("purify-ts/Maybe").Maybe<number>;
    unstakeIsGreaterOrLessIntegrationLimitError: boolean;
};
