import { type Address, type EncodeAbiParametersErrorType, type Hex, type Keccak256ErrorType, type LabelhashErrorType, type PadErrorType, type ToBytesErrorType, type ToHexErrorType } from 'viem'; import { type NamehashErrorType } from 'viem/ens'; import { CampaignReferenceTooLargeError, type ErrorType, ResolverAddressRequiredError } from '../../../errors/utils.js'; import { type EncodeChildFusesInputObject, type EncodeFusesErrorType } from '../nameWrapper/fuses.js'; import { type RecordOptions } from '../resolver/resolverMulticallParameters.js'; export type RegistrationParameters = { /** Name to register */ name: string; /** Address to set owner to */ owner: Address; /** Duration of registration */ duration: number; /** Random 32 bytes to use for registration */ secret: Hex; /** Custom resolver address, defaults to current public resolver deployment */ resolverAddress?: Address; /** Records to set upon registration */ records?: RecordOptions; /** Sets primary name upon registration */ reverseRecord?: boolean; /** Fuses to set upon registration */ fuses?: EncodeChildFusesInputObject; }; export type CommitmentTuple = [ labelHash: Hex, owner: Address, duration: bigint, secret: Hex, resolver: Address, data: Hex[], reverseRecord: boolean, ownerControlledFuses: number ]; export type RegistrationTuple = [ label: string, owner: Address, duration: bigint, secret: Hex, resolver: Address, data: Hex[], reverseRecord: boolean, ownerControlledFuses: number ]; export type RandomSecretErrorType = ToBytesErrorType | NamehashErrorType | CampaignReferenceTooLargeError | PadErrorType | ToHexErrorType | ErrorType; export declare const randomSecret: ({ platformDomain, campaign, }?: { platformDomain?: string; campaign?: number; }) => `0x${string}`; export type MakeCommitmentTupleErrorType = LabelhashErrorType | NamehashErrorType | EncodeFusesErrorType | ResolverAddressRequiredError; export declare const makeCommitmentTuple: ({ name, owner, duration, resolverAddress, records: { coins, ...records }, reverseRecord, fuses, secret, }: RegistrationParameters) => Promise; export type MakeRegistrationTupleErrorType = MakeCommitmentTupleErrorType; export declare const makeRegistrationTuple: (params: RegistrationParameters) => Promise; export type MakeCommitmentFromTupleErrorType = Keccak256ErrorType | EncodeAbiParametersErrorType; export declare const makeCommitmentFromTuple: (params: CommitmentTuple) => Hex; export type MakeCommitmentErrorType = MakeCommitmentTupleErrorType | MakeCommitmentFromTupleErrorType; export declare const makeCommitment: (params: RegistrationParameters) => Promise; //# sourceMappingURL=registerHelpers.d.ts.map