Skip to content

Commit 63bd4db

Browse files
PaymentSplitter ABI (#243)
1 parent 8a86c1d commit 63bd4db

File tree

3 files changed

+363
-1
lines changed

3 files changed

+363
-1
lines changed

abi/generated.ts

Lines changed: 350 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2416,3 +2416,353 @@ export const immutableErc721MintByIdAbi = [
24162416
name: 'TransferToNotInAllowlist',
24172417
},
24182418
] as const
2419+
2420+
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
2421+
// PaymentSplitter
2422+
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
2423+
2424+
export const paymentSplitterAbi = [
2425+
{
2426+
type: 'constructor',
2427+
inputs: [
2428+
{ name: 'admin', internalType: 'address', type: 'address' },
2429+
{ name: 'registrar', internalType: 'address', type: 'address' },
2430+
{ name: 'fundsAdmin', internalType: 'address', type: 'address' },
2431+
],
2432+
stateMutability: 'nonpayable',
2433+
},
2434+
{ type: 'receive', stateMutability: 'payable' },
2435+
{
2436+
type: 'function',
2437+
inputs: [],
2438+
name: 'DEFAULT_ADMIN_ROLE',
2439+
outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],
2440+
stateMutability: 'view',
2441+
},
2442+
{
2443+
type: 'function',
2444+
inputs: [],
2445+
name: 'RELEASE_FUNDS_ROLE',
2446+
outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],
2447+
stateMutability: 'view',
2448+
},
2449+
{
2450+
type: 'function',
2451+
inputs: [],
2452+
name: 'TOKEN_REGISTRAR_ROLE',
2453+
outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],
2454+
stateMutability: 'view',
2455+
},
2456+
{
2457+
type: 'function',
2458+
inputs: [
2459+
{ name: 'tokens', internalType: 'contract IERC20[]', type: 'address[]' },
2460+
],
2461+
name: 'addToAllowlist',
2462+
outputs: [],
2463+
stateMutability: 'nonpayable',
2464+
},
2465+
{
2466+
type: 'function',
2467+
inputs: [],
2468+
name: 'erc20Allowlist',
2469+
outputs: [
2470+
{ name: '', internalType: 'contract IERC20[]', type: 'address[]' },
2471+
],
2472+
stateMutability: 'view',
2473+
},
2474+
{
2475+
type: 'function',
2476+
inputs: [{ name: 'role', internalType: 'bytes32', type: 'bytes32' }],
2477+
name: 'getRoleAdmin',
2478+
outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],
2479+
stateMutability: 'view',
2480+
},
2481+
{
2482+
type: 'function',
2483+
inputs: [
2484+
{ name: 'role', internalType: 'bytes32', type: 'bytes32' },
2485+
{ name: 'index', internalType: 'uint256', type: 'uint256' },
2486+
],
2487+
name: 'getRoleMember',
2488+
outputs: [{ name: '', internalType: 'address', type: 'address' }],
2489+
stateMutability: 'view',
2490+
},
2491+
{
2492+
type: 'function',
2493+
inputs: [{ name: 'role', internalType: 'bytes32', type: 'bytes32' }],
2494+
name: 'getRoleMemberCount',
2495+
outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
2496+
stateMutability: 'view',
2497+
},
2498+
{
2499+
type: 'function',
2500+
inputs: [{ name: 'user', internalType: 'address', type: 'address' }],
2501+
name: 'grantReleaseFundsRole',
2502+
outputs: [],
2503+
stateMutability: 'nonpayable',
2504+
},
2505+
{
2506+
type: 'function',
2507+
inputs: [
2508+
{ name: 'role', internalType: 'bytes32', type: 'bytes32' },
2509+
{ name: 'account', internalType: 'address', type: 'address' },
2510+
],
2511+
name: 'grantRole',
2512+
outputs: [],
2513+
stateMutability: 'nonpayable',
2514+
},
2515+
{
2516+
type: 'function',
2517+
inputs: [
2518+
{ name: 'role', internalType: 'bytes32', type: 'bytes32' },
2519+
{ name: 'account', internalType: 'address', type: 'address' },
2520+
],
2521+
name: 'hasRole',
2522+
outputs: [{ name: '', internalType: 'bool', type: 'bool' }],
2523+
stateMutability: 'view',
2524+
},
2525+
{
2526+
type: 'function',
2527+
inputs: [
2528+
{ name: 'payees', internalType: 'address payable[]', type: 'address[]' },
2529+
{ name: 'shares_', internalType: 'uint256[]', type: 'uint256[]' },
2530+
],
2531+
name: 'overridePayees',
2532+
outputs: [],
2533+
stateMutability: 'nonpayable',
2534+
},
2535+
{
2536+
type: 'function',
2537+
inputs: [{ name: 'index', internalType: 'uint256', type: 'uint256' }],
2538+
name: 'payee',
2539+
outputs: [{ name: '', internalType: 'address', type: 'address' }],
2540+
stateMutability: 'view',
2541+
},
2542+
{
2543+
type: 'function',
2544+
inputs: [{ name: 'account', internalType: 'address', type: 'address' }],
2545+
name: 'releasable',
2546+
outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
2547+
stateMutability: 'view',
2548+
},
2549+
{
2550+
type: 'function',
2551+
inputs: [
2552+
{ name: 'token', internalType: 'contract IERC20', type: 'address' },
2553+
{ name: 'account', internalType: 'address', type: 'address' },
2554+
],
2555+
name: 'releasable',
2556+
outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
2557+
stateMutability: 'view',
2558+
},
2559+
{
2560+
type: 'function',
2561+
inputs: [],
2562+
name: 'releaseAll',
2563+
outputs: [],
2564+
stateMutability: 'nonpayable',
2565+
},
2566+
{
2567+
type: 'function',
2568+
inputs: [
2569+
{ name: 'token', internalType: 'contract IERC20', type: 'address' },
2570+
],
2571+
name: 'removeFromAllowlist',
2572+
outputs: [],
2573+
stateMutability: 'nonpayable',
2574+
},
2575+
{
2576+
type: 'function',
2577+
inputs: [
2578+
{ name: 'role', internalType: 'bytes32', type: 'bytes32' },
2579+
{ name: 'account', internalType: 'address', type: 'address' },
2580+
],
2581+
name: 'renounceRole',
2582+
outputs: [],
2583+
stateMutability: 'nonpayable',
2584+
},
2585+
{
2586+
type: 'function',
2587+
inputs: [{ name: 'user', internalType: 'address', type: 'address' }],
2588+
name: 'revokeReleaseFundsRole',
2589+
outputs: [],
2590+
stateMutability: 'nonpayable',
2591+
},
2592+
{
2593+
type: 'function',
2594+
inputs: [
2595+
{ name: 'role', internalType: 'bytes32', type: 'bytes32' },
2596+
{ name: 'account', internalType: 'address', type: 'address' },
2597+
],
2598+
name: 'revokeRole',
2599+
outputs: [],
2600+
stateMutability: 'nonpayable',
2601+
},
2602+
{
2603+
type: 'function',
2604+
inputs: [{ name: 'account', internalType: 'address', type: 'address' }],
2605+
name: 'shares',
2606+
outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
2607+
stateMutability: 'view',
2608+
},
2609+
{
2610+
type: 'function',
2611+
inputs: [{ name: 'interfaceId', internalType: 'bytes4', type: 'bytes4' }],
2612+
name: 'supportsInterface',
2613+
outputs: [{ name: '', internalType: 'bool', type: 'bool' }],
2614+
stateMutability: 'view',
2615+
},
2616+
{
2617+
type: 'function',
2618+
inputs: [],
2619+
name: 'totalShares',
2620+
outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
2621+
stateMutability: 'view',
2622+
},
2623+
{
2624+
type: 'event',
2625+
anonymous: false,
2626+
inputs: [
2627+
{
2628+
name: 'token',
2629+
internalType: 'contract IERC20',
2630+
type: 'address',
2631+
indexed: true,
2632+
},
2633+
{ name: 'to', internalType: 'address', type: 'address', indexed: false },
2634+
{
2635+
name: 'amount',
2636+
internalType: 'uint256',
2637+
type: 'uint256',
2638+
indexed: false,
2639+
},
2640+
],
2641+
name: 'ERC20PaymentReleased',
2642+
},
2643+
{
2644+
type: 'event',
2645+
anonymous: false,
2646+
inputs: [
2647+
{
2648+
name: 'account',
2649+
internalType: 'address',
2650+
type: 'address',
2651+
indexed: false,
2652+
},
2653+
{
2654+
name: 'shares',
2655+
internalType: 'uint256',
2656+
type: 'uint256',
2657+
indexed: false,
2658+
},
2659+
],
2660+
name: 'PayeeAdded',
2661+
},
2662+
{
2663+
type: 'event',
2664+
anonymous: false,
2665+
inputs: [
2666+
{
2667+
name: 'from',
2668+
internalType: 'address',
2669+
type: 'address',
2670+
indexed: false,
2671+
},
2672+
{
2673+
name: 'amount',
2674+
internalType: 'uint256',
2675+
type: 'uint256',
2676+
indexed: false,
2677+
},
2678+
],
2679+
name: 'PaymentReceived',
2680+
},
2681+
{
2682+
type: 'event',
2683+
anonymous: false,
2684+
inputs: [
2685+
{ name: 'to', internalType: 'address', type: 'address', indexed: false },
2686+
{
2687+
name: 'amount',
2688+
internalType: 'uint256',
2689+
type: 'uint256',
2690+
indexed: false,
2691+
},
2692+
],
2693+
name: 'PaymentReleased',
2694+
},
2695+
{
2696+
type: 'event',
2697+
anonymous: false,
2698+
inputs: [
2699+
{ name: 'role', internalType: 'bytes32', type: 'bytes32', indexed: true },
2700+
{
2701+
name: 'previousAdminRole',
2702+
internalType: 'bytes32',
2703+
type: 'bytes32',
2704+
indexed: true,
2705+
},
2706+
{
2707+
name: 'newAdminRole',
2708+
internalType: 'bytes32',
2709+
type: 'bytes32',
2710+
indexed: true,
2711+
},
2712+
],
2713+
name: 'RoleAdminChanged',
2714+
},
2715+
{
2716+
type: 'event',
2717+
anonymous: false,
2718+
inputs: [
2719+
{ name: 'role', internalType: 'bytes32', type: 'bytes32', indexed: true },
2720+
{
2721+
name: 'account',
2722+
internalType: 'address',
2723+
type: 'address',
2724+
indexed: true,
2725+
},
2726+
{
2727+
name: 'sender',
2728+
internalType: 'address',
2729+
type: 'address',
2730+
indexed: true,
2731+
},
2732+
],
2733+
name: 'RoleGranted',
2734+
},
2735+
{
2736+
type: 'event',
2737+
anonymous: false,
2738+
inputs: [
2739+
{ name: 'role', internalType: 'bytes32', type: 'bytes32', indexed: true },
2740+
{
2741+
name: 'account',
2742+
internalType: 'address',
2743+
type: 'address',
2744+
indexed: true,
2745+
},
2746+
{
2747+
name: 'sender',
2748+
internalType: 'address',
2749+
type: 'address',
2750+
indexed: true,
2751+
},
2752+
],
2753+
name: 'RoleRevoked',
2754+
},
2755+
{
2756+
type: 'error',
2757+
inputs: [],
2758+
name: 'PaymentSplitterLengthMismatchSharesPayees',
2759+
},
2760+
{ type: 'error', inputs: [], name: 'PaymentSplitterNoPayeesAdded' },
2761+
{ type: 'error', inputs: [], name: 'PaymentSplitterPayeeZeroShares' },
2762+
{ type: 'error', inputs: [], name: 'PaymentSplitterPayeeZerothAddress' },
2763+
{
2764+
type: 'error',
2765+
inputs: [],
2766+
name: 'PaymentSplitterSharesAlreadyExistForPayee',
2767+
},
2768+
] as const

abi/index.ts

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,13 @@ import {
33
immutableErc721Abi as ImmutableERC721Abi,
44
immutableErc721MintByIdAbi as ImmutableERC721MintByIdAbi,
55
immutableErc1155Abi as ImmutableERC1155Abi,
6+
paymentSplitterAbi as PaymentSplitterAbi,
67
} from "./generated";
78

8-
export { GuardedMulticallerAbi, ImmutableERC721Abi, ImmutableERC721MintByIdAbi, ImmutableERC1155Abi };
9+
export {
10+
GuardedMulticallerAbi,
11+
ImmutableERC721Abi,
12+
ImmutableERC721MintByIdAbi,
13+
ImmutableERC1155Abi,
14+
PaymentSplitterAbi,
15+
};

wagmi.config.ts

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ import GuardedMulticaller from "./foundry-out/GuardedMulticaller.sol/GuardedMult
55
import ImmutableERC721 from "./foundry-out/ImmutableERC721.sol/ImmutableERC721.json";
66
import ImmutableERC721MintByID from "./foundry-out/ImmutableERC721MintByID.sol/ImmutableERC721MintByID.json";
77
import ImmutableERC1155 from "./foundry-out/ImmutableERC1155.sol/ImmutableERC1155.json";
8+
import PaymentSplitter from "./foundry-out/PaymentSplitter.sol/PaymentSplitter.json";
89

910
// https://github.com/wevm/viem/discussions/1009
1011
export default defineConfig({
@@ -26,5 +27,9 @@ export default defineConfig({
2627
name: "ImmutableERC1155",
2728
abi: ImmutableERC1155.abi as Abi,
2829
},
30+
{
31+
name: "PaymentSplitter",
32+
abi: PaymentSplitter.abi as Abi,
33+
},
2934
],
3035
});

0 commit comments

Comments
 (0)