viem
Version:
28 lines • 1.95 kB
TypeScript
import type { Address } from 'abitype';
import type { ErrorType } from '../../errors/utils.js';
import type { ByteArray, Hex } from '../../types/misc.js';
type To = 'bytes' | 'hex';
export type SerializeErc6492SignatureParameters<to extends To = 'hex'> = {
/** The ERC-4337 Account Factory address to use for counterfactual verification. */
address: Address;
/** Calldata to pass to deploy account (if not deployed) for counterfactual verification. */
data: Hex;
/** The original signature. */
signature: Hex;
to?: to | To | undefined;
};
export type SerializeErc6492SignatureReturnType<to extends To = 'hex'> = (to extends 'hex' ? Hex : never) | (to extends 'bytes' ? ByteArray : never);
export type SerializeErc6492SignatureErrorType = ErrorType;
/**
* @description Serializes a ERC-6492 flavoured signature into hex format.
*
* @param signature ERC-6492 signature in object format.
* @returns ERC-6492 signature in hex format.
*
* @example
* serializeSignature({ address: '0x...', data: '0x...', signature: '0x...' })
* // '0x000000000000000000000000cafebabecafebabecafebabecafebabecafebabe000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000004deadbeef000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000041a461f509887bd19e312c0c58467ce8ff8e300d3c1a90b608a760c5b80318eaf15fe57c96f9175d6cd4daad4663763baa7e78836e067d0163e9a2ccf2ff753f5b1b000000000000000000000000000000000000000000000000000000000000006492649264926492649264926492649264926492649264926492649264926492'
*/
export declare function serializeErc6492Signature<to extends To = 'hex'>(parameters: SerializeErc6492SignatureParameters<to>): SerializeErc6492SignatureReturnType<to>;
export {};
//# sourceMappingURL=serializeErc6492Signature.d.ts.map