import type { YieldDto, YieldType } from "@stakekit/api-hooks";
import type { TFunction } from "i18next";
import type { SupportedSKChains } from "./chains";
export type ExtendedYieldType = YieldType | "native_staking" | "pooled_staking";
type YieldTypeLabelsMap = {
    [Key in ExtendedYieldType]: {
        type: Key;
        title: string;
        review: string;
        cta: string;
    };
};
export type ValidatorsConfig = Map<SupportedSKChains | "*", {
    allowed?: Set<string>;
    blocked?: Set<string>;
    preferred?: Set<string>;
    mergePreferredWithDefault: boolean;
    preferredOnly: boolean;
}>;
export declare const filterMapValidators: (validatorsConfig: ValidatorsConfig, yieldDto: YieldDto) => YieldDto;
export declare const getExtendedYieldType: (yieldDto: YieldDto) => YieldType | "native_staking" | "pooled_staking";
export declare const getYieldTypeLabels: (yieldDto: YieldDto, t: TFunction) => YieldTypeLabelsMap[keyof YieldTypeLabelsMap];
export declare const getYieldTypesSortRank: (yieldDto: YieldDto) => number;
export declare const isYieldWithProviderOptions: (yieldDto: YieldDto) => boolean;
export declare const getYieldProviderYieldIds: (yieldDto: YieldDto) => string[];
export declare const isEthenaUsdeStaking: (yieldId: string) => yieldId is "ethena-usde-staking";
export declare const isBittensorStaking: (yieldId: string) => yieldId is "bittensor-native-staking";
export declare const getComputedRewardRate: (yieldDto: YieldDto) => number;
export declare const isERC4626: (yieldDto: YieldDto) => boolean;
export {};
