import { type Account, type Hash, type Transport } from 'viem'; import type { ChainWithPns, ClientWithAccount } from '../../contracts/consts.js'; import type { Prettify, SimpleTransactionRequest, WriteTransactionParameters } from '../../types.js'; import { type RegistrationParameters } from '../../utils/registerHelpers.js'; export type CommitNameDataParameters = RegistrationParameters; export type CommitNameDataReturnType = SimpleTransactionRequest; export type CommitNameParameters = Prettify>; export type CommitNameReturnType = Hash; export declare const makeFunctionData: (wallet: ClientWithAccount, args: CommitNameDataParameters) => CommitNameDataReturnType; /** * Commits a name to be registered * @param wallet - {@link ClientWithAccount} * @param parameters - {@link CommitNameParameters} * @returns Transaction hash. {@link CommitNameReturnType} * * @example * import { createWalletClient, custom } from 'viem' * import { mainnet } from 'viem/chains' * import { addPnsContracts } from '@pnsdomains/pnsjs' * import { commitName } from '@pnsdomains/pnsjs/wallet' * import { randomSecret } from '@pnsdomains/pnsjs/utils' * * const wallet = createWalletClient({ * chain: addPnsContracts(mainnet), * transport: custom(window.ethereum), * }) * const secret = randomSecret() * const hash = await commitName(wallet, { * name: 'example.pls', * owner: '0xFe89cc7aBB2C4183683ab71653C4cdc9B02D44b7', * duration: 31536000, // 1 year * secret, * }) * // 0x... */ declare function commitName(wallet: ClientWithAccount, { name, owner, duration, secret, resolverAddress, records, reverseRecord, fuses, ...txArgs }: CommitNameParameters): Promise; declare namespace commitName { var makeFunctionData: (wallet: ClientWithAccount, args: RegistrationParameters) => SimpleTransactionRequest; } export default commitName; //# sourceMappingURL=commitName.d.ts.map