import type { Address } from "abitype"; import type { Hex } from "../../../utils/encoding/hex.js"; import type { Account } from "../../../wallets/interfaces/wallet.js"; /** * @extension FARCASTER */ export type RegisterMessage = { /** FID custody address */ to: Address; /** FID recovery address */ recovery: Address; /** IdGateway nonce for signer address */ nonce: bigint; /** Unix timestamp when this message expires */ deadline: bigint; }; /** * @extension FARCASTER */ export type SignRegisterOptions = { account: Account; message: RegisterMessage; }; /** * Constructs the data required for signing a register message in the Farcaster ID Gateway. * This includes the EIP-712 domain, types, and the message to be signed. * @param message - The register message containing the necessary information for the signature. * @returns An object containing the EIP-712 domain, types, and the message, ready to be signed. * @extension FARCASTER * @example * ```ts * import { getRegisterData } from "thirdweb/extensions/farcaster"; * * const data = getRegisterData(message); * ``` */ export declare function getRegisterData(message: RegisterMessage): { message: RegisterMessage; primaryType: "Register"; domain: { readonly chainId: 10; readonly name: "Farcaster IdGateway"; readonly verifyingContract: "0x00000000Fc25870C6eD6b6c7E41Fb078b7656f69"; readonly version: "1"; }; types: { readonly Register: readonly [{ readonly name: "to"; readonly type: "address"; }, { readonly name: "recovery"; readonly type: "address"; }, { readonly name: "nonce"; readonly type: "uint256"; }, { readonly name: "deadline"; readonly type: "uint256"; }]; }; }; /** * Signs the register message for Farcaster ID Gateway. * @param options - The signing options. * @param options.account - The account to sign the message with. * @param options.message - The message to be signed. * @returns A promise that resolves to the signature. * @extension FARCASTER * @example * ```ts * const signature = await signRegister({ account, message }); * ``` */ export declare function signRegister({ account, message, }: SignRegisterOptions): Promise; //# sourceMappingURL=registerSignature.d.ts.map