import type { Address, Chain, GetChainContractAddressErrorType, ReadContractErrorType } from 'viem'; import { type RequireClientContracts } from '../../../clients/chain.js'; export type GetRegisterPriceParameters = { /** Label to get price for. Must be a bare label (e.g. `"foo"`), not a name (`"foo.eth"`). */ label: string; /** Duration in seconds to get price for */ duration: bigint; /** Payment token address */ paymentToken: Address; }; export type GetRegisterPriceReturnType = { /** Price base value */ base: bigint; /** Price premium */ premium: bigint; }; export type GetRegisterPriceErrorType = ReadContractErrorType | GetChainContractAddressErrorType | TypeError; /** * Gets the registration price of a label for a given duration. * * Internally calls `ETHRegistrar.getRegisterPrice(label, duration, paymentToken)`. The * registrar derives the `available` period (time elapsed since `expiry + GRACE_PERIOD`) * from on-chain state and passes it to the rent price oracle; this means the returned * `premium` already reflects the post-expiry exponential-decay premium curve. * * @param client - {@link Client} * @param parameters - {@link GetRegisterPriceParameters} * @returns Price data object. {@link GetRegisterPriceReturnType} */ export declare function getRegisterPrice(client: RequireClientContracts, { label, duration, paymentToken }: GetRegisterPriceParameters): Promise; //# sourceMappingURL=getRegisterPrice.d.ts.map