import { type Address, type EncodeAbiParametersErrorType, type Hex, type Keccak256ErrorType, type PadErrorType, type ToBytesErrorType, type ToHexErrorType } from 'viem'; import { type NamehashErrorType } from 'viem/ens'; import { CampaignReferenceTooLargeError, type ErrorType } from '../../errors/utils.js'; export type L2RegistrationParameters = { /** Name's label (the thing before .eth) to register */ label: string; /** Address to set owner to */ owner: Address; /** Duration of registration */ duration: number; /** Random 32 bytes to use for registration */ secret: Hex; /** Subregistry address to use for registration */ subregistryAddress?: Address; /** Custom resolver address, defaults to current public resolver deployment */ resolverAddress?: Address; /** Referrer address. Optional */ referrer?: Hex; /** Payment token. USDC is used by default */ paymentToken?: Address; }; export type L2CommitmentTuple = [ label: string, owner: Address, secret: Hex, subregistry: Address, resolver: Address, duration: bigint, referrer: Hex ]; export type RandomSecretErrorType = ToBytesErrorType | NamehashErrorType | CampaignReferenceTooLargeError | PadErrorType | ToHexErrorType | ErrorType; export declare const randomSecret: ({ platformDomain, campaign, }?: { platformDomain?: string; campaign?: number; }) => `0x${string}`; export type MakeL2CommitmentTupleErrorType = ErrorType; export declare const makeL2CommitmentTuple: ({ label, owner, duration, secret, subregistryAddress, resolverAddress, referrer, }: L2RegistrationParameters) => L2CommitmentTuple; export type MakeL2CommitmentFromTupleErrorType = Keccak256ErrorType | EncodeAbiParametersErrorType; export declare const makeL2CommitmentFromTuple: (params: L2CommitmentTuple) => Hex; export type MakeL2CommitmentErrorType = MakeL2CommitmentTupleErrorType | MakeL2CommitmentFromTupleErrorType; export declare const makeL2Commitment: (params: L2RegistrationParameters) => Hex; //# sourceMappingURL=registerHelpers.d.ts.map