/** @entrypointCategory ERCs */ // biome-ignore lint/complexity/noUselessEmptyExport: tsdoc export type {} /** * Utility functions for working with [ERC-8021 Transaction Attribution](https://eip.tools/eip/8021). * * @example * ### Converting an Attribution to Data Suffix * * ```ts twoslash * import { Attribution } from 'ox/erc8021' * * const dataSuffix1 = Attribution.toDataSuffix({ * codes: ['baseapp'] * }) * * const dataSuffix2 = Attribution.toDataSuffix({ * codes: ['baseapp', 'morpho'], * codeRegistry: { address: '0x0000000000000000000000000000000000000000', chainId: 1 }, * }) * * const dataSuffix3 = Attribution.toDataSuffix({ * appCode: 'baseapp', * walletCode: 'privy', * }) * ``` * * @example * ### Extracting an Attribution from Calldata * * ```ts twoslash * import { Attribution } from 'ox/erc8021' * * const attribution = Attribution.fromData('0x...') * * console.log(attribution) * // @log: { codes: ['baseapp', 'morpho'], codeRegistry: { address: '0x...', chainId: 1 } } * ``` * * @category ERC-8021 */ export * as Attribution from './Attribution.js'