import type { InitParams } from "@sk-widget/domain/types/init-params";
import type { PositionsData } from "@sk-widget/domain/types/positions";
import type { YieldDto } from "@stakekit/api-hooks";
import { type QueryClient } from "@tanstack/react-query";
import type { BigNumber } from "bignumber.js";
import { EitherAsync } from "purify-ts";
import { Observable } from "rxjs";
import type { SKWallet } from "../../domain/types";
export declare const useMultiYields: (yieldIds: string[]) => YieldDto[];
export declare const getFirstEligibleYield: (params: Parameters<typeof firstEligibleYield$>[0]) => EitherAsync<Error, YieldDto | null>;
declare const firstEligibleYield$: (args: {
    isLedgerLive: boolean;
    queryClient: QueryClient;
    isConnected: boolean;
    network: SKWallet["network"];
    yieldIds: string[];
    initParams: InitParams;
    positionsData: PositionsData;
    tokenBalanceAmount: BigNumber;
}) => Observable<YieldDto | null>;
export declare const getCachedFirstEligibleYield: ({ queryClient, yieldIds, }: {
    queryClient: QueryClient;
    yieldIds: string[];
}) => import("purify-ts/Maybe").Maybe<YieldDto>;
export {};
