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'; export type DeleteSubnameDataParameters = { /** Subname to delete */ name: string; /** Contract to delete subname on */ contract: 'registry' | 'nameWrapper'; /** If true, deletes via owner methods, otherwise will delete via parent owner methods */ asOwner?: boolean; }; export type DeleteSubnameDataReturnType = SimpleTransactionRequest; export type DeleteSubnameParameters = Prettify>; export type DeleteSubnameReturnType = Hash; export declare const makeFunctionData: (wallet: ClientWithAccount, { name, contract, asOwner }: DeleteSubnameDataParameters) => DeleteSubnameDataReturnType; /** * Deletes a subname * @param wallet - {@link ClientWithAccount} * @param parameters - {@link DeleteSubnameParameters} * @returns Transaction hash. {@link DeleteSubnameReturnType} * * @example * import { createWalletClient, custom } from 'viem' * import { mainnet } from 'viem/chains' * import { addPnsContracts } from '@pnsdomains/pnsjs' * import { deleteSubname } from '@pnsdomains/pnsjs/wallet' * * const wallet = createWalletClient({ * chain: mainnetWithPns, * transport: custom(window.ethereum), * }) * const hash = await deleteSubname(wallet, { * name: 'sub.pns.pls', * contract: 'registry', * }) * // 0x... */ declare function deleteSubname(wallet: ClientWithAccount, { name, contract, asOwner, ...txArgs }: DeleteSubnameParameters): Promise; declare namespace deleteSubname { var makeFunctionData: (wallet: ClientWithAccount, { name, contract, asOwner }: DeleteSubnameDataParameters) => SimpleTransactionRequest; } export default deleteSubname; //# sourceMappingURL=deleteSubname.d.ts.map