UNPKG

@0xsplits/splits-sdk

Version:

SDK for the 0xSplits protocol

1,094 lines 902 kB
import { Address, GetContractReturnType, Hash, Hex, Log, TypedDataDomain } from 'viem'; import { SplitV2CreatedLogType, SplitV2UpdatedLogType } from '../constants'; import { splitV2ABI } from '../constants/abi/splitV2'; import { CallData, CreateSplitV2Config, DistributeSplitConfig, FormattedSplitEarnings, SetPausedConfig, Split, SplitV2ExecCallsConfig, SplitV2Type, SplitsClientConfig, SplitsPublicClient, TransactionConfig, TransactionFormat, TransferOwnershipConfig, UpdateSplitV2Config } from '../types'; import { BaseClientMixin, BaseGasEstimatesMixin, BaseTransactions } from './base'; import { SplitV2Versions } from '../subgraph/types'; type SplitV2ABI = typeof splitV2ABI; declare class SplitV2Transactions extends BaseTransactions { constructor(transactionClientArgs: SplitsClientConfig & TransactionConfig); protected _getSplitV2FactoryContract(splitType: SplitV2Type, chainId: number, version: SplitV2Versions): { read: { isDeployed: (args: readonly [{ recipients: readonly `0x${string}`[]; allocations: readonly bigint[]; totalAllocation: bigint; distributionIncentive: number; }, `0x${string}`, `0x${string}`], options?: import("viem").Prettify<import("viem").UnionOmit<import("viem").ReadContractParameters<readonly [{ readonly type: "constructor"; readonly inputs: readonly [{ readonly name: "_splitsWarehouse"; readonly type: "address"; readonly internalType: "address"; }]; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly name: "SPLIT_WALLET_IMPLEMENTATION"; readonly inputs: readonly []; readonly outputs: readonly [{ readonly name: ""; readonly type: "address"; readonly internalType: "address"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly name: "createSplit"; readonly inputs: readonly [{ readonly name: "_splitParams"; readonly type: "tuple"; readonly internalType: "struct SplitV2Lib.Split"; readonly components: readonly [{ readonly name: "recipients"; readonly type: "address[]"; readonly internalType: "address[]"; }, { readonly name: "allocations"; readonly type: "uint256[]"; readonly internalType: "uint256[]"; }, { readonly name: "totalAllocation"; readonly type: "uint256"; readonly internalType: "uint256"; }, { readonly name: "distributionIncentive"; readonly type: "uint16"; readonly internalType: "uint16"; }]; }, { readonly name: "_owner"; readonly type: "address"; readonly internalType: "address"; }, { readonly name: "_creator"; readonly type: "address"; readonly internalType: "address"; }]; readonly outputs: readonly [{ readonly name: "split"; readonly type: "address"; readonly internalType: "address"; }]; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly name: "createSplitDeterministic"; readonly inputs: readonly [{ readonly name: "_splitParams"; readonly type: "tuple"; readonly internalType: "struct SplitV2Lib.Split"; readonly components: readonly [{ readonly name: "recipients"; readonly type: "address[]"; readonly internalType: "address[]"; }, { readonly name: "allocations"; readonly type: "uint256[]"; readonly internalType: "uint256[]"; }, { readonly name: "totalAllocation"; readonly type: "uint256"; readonly internalType: "uint256"; }, { readonly name: "distributionIncentive"; readonly type: "uint16"; readonly internalType: "uint16"; }]; }, { readonly name: "_owner"; readonly type: "address"; readonly internalType: "address"; }, { readonly name: "_creator"; readonly type: "address"; readonly internalType: "address"; }, { readonly name: "_salt"; readonly type: "bytes32"; readonly internalType: "bytes32"; }]; readonly outputs: readonly [{ readonly name: "split"; readonly type: "address"; readonly internalType: "address"; }]; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly name: "isDeployed"; readonly inputs: readonly [{ readonly name: "_splitParams"; readonly type: "tuple"; readonly internalType: "struct SplitV2Lib.Split"; readonly components: readonly [{ readonly name: "recipients"; readonly type: "address[]"; readonly internalType: "address[]"; }, { readonly name: "allocations"; readonly type: "uint256[]"; readonly internalType: "uint256[]"; }, { readonly name: "totalAllocation"; readonly type: "uint256"; readonly internalType: "uint256"; }, { readonly name: "distributionIncentive"; readonly type: "uint16"; readonly internalType: "uint16"; }]; }, { readonly name: "_owner"; readonly type: "address"; readonly internalType: "address"; }, { readonly name: "_salt"; readonly type: "bytes32"; readonly internalType: "bytes32"; }]; readonly outputs: readonly [{ readonly name: "split"; readonly type: "address"; readonly internalType: "address"; }, { readonly name: "exists"; readonly type: "bool"; readonly internalType: "bool"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly name: "nonces"; readonly inputs: readonly [{ readonly name: "_hash"; readonly type: "bytes32"; readonly internalType: "bytes32"; }]; readonly outputs: readonly [{ readonly name: ""; readonly type: "uint256"; readonly internalType: "uint256"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly name: "predictDeterministicAddress"; readonly inputs: readonly [{ readonly name: "_splitParams"; readonly type: "tuple"; readonly internalType: "struct SplitV2Lib.Split"; readonly components: readonly [{ readonly name: "recipients"; readonly type: "address[]"; readonly internalType: "address[]"; }, { readonly name: "allocations"; readonly type: "uint256[]"; readonly internalType: "uint256[]"; }, { readonly name: "totalAllocation"; readonly type: "uint256"; readonly internalType: "uint256"; }, { readonly name: "distributionIncentive"; readonly type: "uint16"; readonly internalType: "uint16"; }]; }, { readonly name: "_owner"; readonly type: "address"; readonly internalType: "address"; }]; readonly outputs: readonly [{ readonly name: ""; readonly type: "address"; readonly internalType: "address"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly name: "predictDeterministicAddress"; readonly inputs: readonly [{ readonly name: "_splitParams"; readonly type: "tuple"; readonly internalType: "struct SplitV2Lib.Split"; readonly components: readonly [{ readonly name: "recipients"; readonly type: "address[]"; readonly internalType: "address[]"; }, { readonly name: "allocations"; readonly type: "uint256[]"; readonly internalType: "uint256[]"; }, { readonly name: "totalAllocation"; readonly type: "uint256"; readonly internalType: "uint256"; }, { readonly name: "distributionIncentive"; readonly type: "uint16"; readonly internalType: "uint16"; }]; }, { readonly name: "_owner"; readonly type: "address"; readonly internalType: "address"; }, { readonly name: "_salt"; readonly type: "bytes32"; readonly internalType: "bytes32"; }]; readonly outputs: readonly [{ readonly name: ""; readonly type: "address"; readonly internalType: "address"; }]; readonly stateMutability: "view"; }, { readonly type: "event"; readonly name: "SplitCreated"; readonly inputs: readonly [{ readonly name: "split"; readonly type: "address"; readonly indexed: true; readonly internalType: "address"; }, { readonly name: "splitParams"; readonly type: "tuple"; readonly indexed: false; readonly internalType: "struct SplitV2Lib.Split"; readonly components: readonly [{ readonly name: "recipients"; readonly type: "address[]"; readonly internalType: "address[]"; }, { readonly name: "allocations"; readonly type: "uint256[]"; readonly internalType: "uint256[]"; }, { readonly name: "totalAllocation"; readonly type: "uint256"; readonly internalType: "uint256"; }, { readonly name: "distributionIncentive"; readonly type: "uint16"; readonly internalType: "uint16"; }]; }, { readonly name: "owner"; readonly type: "address"; readonly indexed: false; readonly internalType: "address"; }, { readonly name: "creator"; readonly type: "address"; readonly indexed: false; readonly internalType: "address"; }]; readonly anonymous: false; }], "isDeployed", readonly [{ recipients: readonly `0x${string}`[]; allocations: readonly bigint[]; totalAllocation: bigint; distributionIncentive: number; }, `0x${string}`, `0x${string}`]>, "address" | "abi" | "functionName" | "args">> | undefined) => Promise<readonly [`0x${string}`, boolean]>; SPLIT_WALLET_IMPLEMENTATION: (options?: import("viem").Prettify<import("viem").UnionOmit<import("viem").ReadContractParameters<readonly [{ readonly type: "constructor"; readonly inputs: readonly [{ readonly name: "_splitsWarehouse"; readonly type: "address"; readonly internalType: "address"; }]; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly name: "SPLIT_WALLET_IMPLEMENTATION"; readonly inputs: readonly []; readonly outputs: readonly [{ readonly name: ""; readonly type: "address"; readonly internalType: "address"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly name: "createSplit"; readonly inputs: readonly [{ readonly name: "_splitParams"; readonly type: "tuple"; readonly internalType: "struct SplitV2Lib.Split"; readonly components: readonly [{ readonly name: "recipients"; readonly type: "address[]"; readonly internalType: "address[]"; }, { readonly name: "allocations"; readonly type: "uint256[]"; readonly internalType: "uint256[]"; }, { readonly name: "totalAllocation"; readonly type: "uint256"; readonly internalType: "uint256"; }, { readonly name: "distributionIncentive"; readonly type: "uint16"; readonly internalType: "uint16"; }]; }, { readonly name: "_owner"; readonly type: "address"; readonly internalType: "address"; }, { readonly name: "_creator"; readonly type: "address"; readonly internalType: "address"; }]; readonly outputs: readonly [{ readonly name: "split"; readonly type: "address"; readonly internalType: "address"; }]; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly name: "createSplitDeterministic"; readonly inputs: readonly [{ readonly name: "_splitParams"; readonly type: "tuple"; readonly internalType: "struct SplitV2Lib.Split"; readonly components: readonly [{ readonly name: "recipients"; readonly type: "address[]"; readonly internalType: "address[]"; }, { readonly name: "allocations"; readonly type: "uint256[]"; readonly internalType: "uint256[]"; }, { readonly name: "totalAllocation"; readonly type: "uint256"; readonly internalType: "uint256"; }, { readonly name: "distributionIncentive"; readonly type: "uint16"; readonly internalType: "uint16"; }]; }, { readonly name: "_owner"; readonly type: "address"; readonly internalType: "address"; }, { readonly name: "_creator"; readonly type: "address"; readonly internalType: "address"; }, { readonly name: "_salt"; readonly type: "bytes32"; readonly internalType: "bytes32"; }]; readonly outputs: readonly [{ readonly name: "split"; readonly type: "address"; readonly internalType: "address"; }]; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly name: "isDeployed"; readonly inputs: readonly [{ readonly name: "_splitParams"; readonly type: "tuple"; readonly internalType: "struct SplitV2Lib.Split"; readonly components: readonly [{ readonly name: "recipients"; readonly type: "address[]"; readonly internalType: "address[]"; }, { readonly name: "allocations"; readonly type: "uint256[]"; readonly internalType: "uint256[]"; }, { readonly name: "totalAllocation"; readonly type: "uint256"; readonly internalType: "uint256"; }, { readonly name: "distributionIncentive"; readonly type: "uint16"; readonly internalType: "uint16"; }]; }, { readonly name: "_owner"; readonly type: "address"; readonly internalType: "address"; }, { readonly name: "_salt"; readonly type: "bytes32"; readonly internalType: "bytes32"; }]; readonly outputs: readonly [{ readonly name: "split"; readonly type: "address"; readonly internalType: "address"; }, { readonly name: "exists"; readonly type: "bool"; readonly internalType: "bool"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly name: "nonces"; readonly inputs: readonly [{ readonly name: "_hash"; readonly type: "bytes32"; readonly internalType: "bytes32"; }]; readonly outputs: readonly [{ readonly name: ""; readonly type: "uint256"; readonly internalType: "uint256"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly name: "predictDeterministicAddress"; readonly inputs: readonly [{ readonly name: "_splitParams"; readonly type: "tuple"; readonly internalType: "struct SplitV2Lib.Split"; readonly components: readonly [{ readonly name: "recipients"; readonly type: "address[]"; readonly internalType: "address[]"; }, { readonly name: "allocations"; readonly type: "uint256[]"; readonly internalType: "uint256[]"; }, { readonly name: "totalAllocation"; readonly type: "uint256"; readonly internalType: "uint256"; }, { readonly name: "distributionIncentive"; readonly type: "uint16"; readonly internalType: "uint16"; }]; }, { readonly name: "_owner"; readonly type: "address"; readonly internalType: "address"; }]; readonly outputs: readonly [{ readonly name: ""; readonly type: "address"; readonly internalType: "address"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly name: "predictDeterministicAddress"; readonly inputs: readonly [{ readonly name: "_splitParams"; readonly type: "tuple"; readonly internalType: "struct SplitV2Lib.Split"; readonly components: readonly [{ readonly name: "recipients"; readonly type: "address[]"; readonly internalType: "address[]"; }, { readonly name: "allocations"; readonly type: "uint256[]"; readonly internalType: "uint256[]"; }, { readonly name: "totalAllocation"; readonly type: "uint256"; readonly internalType: "uint256"; }, { readonly name: "distributionIncentive"; readonly type: "uint16"; readonly internalType: "uint16"; }]; }, { readonly name: "_owner"; readonly type: "address"; readonly internalType: "address"; }, { readonly name: "_salt"; readonly type: "bytes32"; readonly internalType: "bytes32"; }]; readonly outputs: readonly [{ readonly name: ""; readonly type: "address"; readonly internalType: "address"; }]; readonly stateMutability: "view"; }, { readonly type: "event"; readonly name: "SplitCreated"; readonly inputs: readonly [{ readonly name: "split"; readonly type: "address"; readonly indexed: true; readonly internalType: "address"; }, { readonly name: "splitParams"; readonly type: "tuple"; readonly indexed: false; readonly internalType: "struct SplitV2Lib.Split"; readonly components: readonly [{ readonly name: "recipients"; readonly type: "address[]"; readonly internalType: "address[]"; }, { readonly name: "allocations"; readonly type: "uint256[]"; readonly internalType: "uint256[]"; }, { readonly name: "totalAllocation"; readonly type: "uint256"; readonly internalType: "uint256"; }, { readonly name: "distributionIncentive"; readonly type: "uint16"; readonly internalType: "uint16"; }]; }, { readonly name: "owner"; readonly type: "address"; readonly indexed: false; readonly internalType: "address"; }, { readonly name: "creator"; readonly type: "address"; readonly indexed: false; readonly internalType: "address"; }]; readonly anonymous: false; }], "SPLIT_WALLET_IMPLEMENTATION", readonly []>, "address" | "abi" | "functionName" | "args">> | undefined) => Promise<`0x${string}`>; nonces: (args: readonly [`0x${string}`], options?: import("viem").Prettify<import("viem").UnionOmit<import("viem").ReadContractParameters<readonly [{ readonly type: "constructor"; readonly inputs: readonly [{ readonly name: "_splitsWarehouse"; readonly type: "address"; readonly internalType: "address"; }]; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly name: "SPLIT_WALLET_IMPLEMENTATION"; readonly inputs: readonly []; readonly outputs: readonly [{ readonly name: ""; readonly type: "address"; readonly internalType: "address"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly name: "createSplit"; readonly inputs: readonly [{ readonly name: "_splitParams"; readonly type: "tuple"; readonly internalType: "struct SplitV2Lib.Split"; readonly components: readonly [{ readonly name: "recipients"; readonly type: "address[]"; readonly internalType: "address[]"; }, { readonly name: "allocations"; readonly type: "uint256[]"; readonly internalType: "uint256[]"; }, { readonly name: "totalAllocation"; readonly type: "uint256"; readonly internalType: "uint256"; }, { readonly name: "distributionIncentive"; readonly type: "uint16"; readonly internalType: "uint16"; }]; }, { readonly name: "_owner"; readonly type: "address"; readonly internalType: "address"; }, { readonly name: "_creator"; readonly type: "address"; readonly internalType: "address"; }]; readonly outputs: readonly [{ readonly name: "split"; readonly type: "address"; readonly internalType: "address"; }]; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly name: "createSplitDeterministic"; readonly inputs: readonly [{ readonly name: "_splitParams"; readonly type: "tuple"; readonly internalType: "struct SplitV2Lib.Split"; readonly components: readonly [{ readonly name: "recipients"; readonly type: "address[]"; readonly internalType: "address[]"; }, { readonly name: "allocations"; readonly type: "uint256[]"; readonly internalType: "uint256[]"; }, { readonly name: "totalAllocation"; readonly type: "uint256"; readonly internalType: "uint256"; }, { readonly name: "distributionIncentive"; readonly type: "uint16"; readonly internalType: "uint16"; }]; }, { readonly name: "_owner"; readonly type: "address"; readonly internalType: "address"; }, { readonly name: "_creator"; readonly type: "address"; readonly internalType: "address"; }, { readonly name: "_salt"; readonly type: "bytes32"; readonly internalType: "bytes32"; }]; readonly outputs: readonly [{ readonly name: "split"; readonly type: "address"; readonly internalType: "address"; }]; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly name: "isDeployed"; readonly inputs: readonly [{ readonly name: "_splitParams"; readonly type: "tuple"; readonly internalType: "struct SplitV2Lib.Split"; readonly components: readonly [{ readonly name: "recipients"; readonly type: "address[]"; readonly internalType: "address[]"; }, { readonly name: "allocations"; readonly type: "uint256[]"; readonly internalType: "uint256[]"; }, { readonly name: "totalAllocation"; readonly type: "uint256"; readonly internalType: "uint256"; }, { readonly name: "distributionIncentive"; readonly type: "uint16"; readonly internalType: "uint16"; }]; }, { readonly name: "_owner"; readonly type: "address"; readonly internalType: "address"; }, { readonly name: "_salt"; readonly type: "bytes32"; readonly internalType: "bytes32"; }]; readonly outputs: readonly [{ readonly name: "split"; readonly type: "address"; readonly internalType: "address"; }, { readonly name: "exists"; readonly type: "bool"; readonly internalType: "bool"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly name: "nonces"; readonly inputs: readonly [{ readonly name: "_hash"; readonly type: "bytes32"; readonly internalType: "bytes32"; }]; readonly outputs: readonly [{ readonly name: ""; readonly type: "uint256"; readonly internalType: "uint256"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly name: "predictDeterministicAddress"; readonly inputs: readonly [{ readonly name: "_splitParams"; readonly type: "tuple"; readonly internalType: "struct SplitV2Lib.Split"; readonly components: readonly [{ readonly name: "recipients"; readonly type: "address[]"; readonly internalType: "address[]"; }, { readonly name: "allocations"; readonly type: "uint256[]"; readonly internalType: "uint256[]"; }, { readonly name: "totalAllocation"; readonly type: "uint256"; readonly internalType: "uint256"; }, { readonly name: "distributionIncentive"; readonly type: "uint16"; readonly internalType: "uint16"; }]; }, { readonly name: "_owner"; readonly type: "address"; readonly internalType: "address"; }]; readonly outputs: readonly [{ readonly name: ""; readonly type: "address"; readonly internalType: "address"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly name: "predictDeterministicAddress"; readonly inputs: readonly [{ readonly name: "_splitParams"; readonly type: "tuple"; readonly internalType: "struct SplitV2Lib.Split"; readonly components: readonly [{ readonly name: "recipients"; readonly type: "address[]"; readonly internalType: "address[]"; }, { readonly name: "allocations"; readonly type: "uint256[]"; readonly internalType: "uint256[]"; }, { readonly name: "totalAllocation"; readonly type: "uint256"; readonly internalType: "uint256"; }, { readonly name: "distributionIncentive"; readonly type: "uint16"; readonly internalType: "uint16"; }]; }, { readonly name: "_owner"; readonly type: "address"; readonly internalType: "address"; }, { readonly name: "_salt"; readonly type: "bytes32"; readonly internalType: "bytes32"; }]; readonly outputs: readonly [{ readonly name: ""; readonly type: "address"; readonly internalType: "address"; }]; readonly stateMutability: "view"; }, { readonly type: "event"; readonly name: "SplitCreated"; readonly inputs: readonly [{ readonly name: "split"; readonly type: "address"; readonly indexed: true; readonly internalType: "address"; }, { readonly name: "splitParams"; readonly type: "tuple"; readonly indexed: false; readonly internalType: "struct SplitV2Lib.Split"; readonly components: readonly [{ readonly name: "recipients"; readonly type: "address[]"; readonly internalType: "address[]"; }, { readonly name: "allocations"; readonly type: "uint256[]"; readonly internalType: "uint256[]"; }, { readonly name: "totalAllocation"; readonly type: "uint256"; readonly internalType: "uint256"; }, { readonly name: "distributionIncentive"; readonly type: "uint16"; readonly internalType: "uint16"; }]; }, { readonly name: "owner"; readonly type: "address"; readonly indexed: false; readonly internalType: "address"; }, { readonly name: "creator"; readonly type: "address"; readonly indexed: false; readonly internalType: "address"; }]; readonly anonymous: false; }], "nonces", readonly [`0x${string}`]>, "address" | "abi" | "functionName" | "args">> | undefined) => Promise<bigint>; predictDeterministicAddress: (...parameters: [args: readonly [{ recipients: readonly `0x${string}`[]; allocations: readonly bigint[]; totalAllocation: bigint; distributionIncentive: number; }, `0x${string}`], options?: import("viem").Prettify<import("viem").UnionOmit<import("viem").ReadContractParameters<readonly [{ readonly type: "constructor"; readonly inputs: readonly [{ readonly name: "_splitsWarehouse"; readonly type: "address"; readonly internalType: "address"; }]; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly name: "SPLIT_WALLET_IMPLEMENTATION"; readonly inputs: readonly []; readonly outputs: readonly [{ readonly name: ""; readonly type: "address"; readonly internalType: "address"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly name: "createSplit"; readonly inputs: readonly [{ readonly name: "_splitParams"; readonly type: "tuple"; readonly internalType: "struct SplitV2Lib.Split"; readonly components: readonly [{ readonly name: "recipients"; readonly type: "address[]"; readonly internalType: "address[]"; }, { readonly name: "allocations"; readonly type: "uint256[]"; readonly internalType: "uint256[]"; }, { readonly name: "totalAllocation"; readonly type: "uint256"; readonly internalType: "uint256"; }, { readonly name: "distributionIncentive"; readonly type: "uint16"; readonly internalType: "uint16"; }]; }, { readonly name: "_owner"; readonly type: "address"; readonly internalType: "address"; }, { readonly name: "_creator"; readonly type: "address"; readonly internalType: "address"; }]; readonly outputs: readonly [{ readonly name: "split"; readonly type: "address"; readonly internalType: "address"; }]; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly name: "createSplitDeterministic"; readonly inputs: readonly [{ readonly name: "_splitParams"; readonly type: "tuple"; readonly internalType: "struct SplitV2Lib.Split"; readonly components: readonly [{ readonly name: "recipients"; readonly type: "address[]"; readonly internalType: "address[]"; }, { readonly name: "allocations"; readonly type: "uint256[]"; readonly internalType: "uint256[]"; }, { readonly name: "totalAllocation"; readonly type: "uint256"; readonly internalType: "uint256"; }, { readonly name: "distributionIncentive"; readonly type: "uint16"; readonly internalType: "uint16"; }]; }, { readonly name: "_owner"; readonly type: "address"; readonly internalType: "address"; }, { readonly name: "_creator"; readonly type: "address"; readonly internalType: "address"; }, { readonly name: "_salt"; readonly type: "bytes32"; readonly internalType: "bytes32"; }]; readonly outputs: readonly [{ readonly name: "split"; readonly type: "address"; readonly internalType: "address"; }]; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly name: "isDeployed"; readonly inputs: readonly [{ readonly name: "_splitParams"; readonly type: "tuple"; readonly internalType: "struct SplitV2Lib.Split"; readonly components: readonly [{ readonly name: "recipients"; readonly type: "address[]"; readonly internalType: "address[]"; }, { readonly name: "allocations"; readonly type: "uint256[]"; readonly internalType: "uint256[]"; }, { readonly name: "totalAllocation"; readonly type: "uint256"; readonly internalType: "uint256"; }, { readonly name: "distributionIncentive"; readonly type: "uint16"; readonly internalType: "uint16"; }]; }, { readonly name: "_owner"; readonly type: "address"; readonly internalType: "address"; }, { readonly name: "_salt"; readonly type: "bytes32"; readonly internalType: "bytes32"; }]; readonly outputs: readonly [{ readonly name: "split"; readonly type: "address"; readonly internalType: "address"; }, { readonly name: "exists"; readonly type: "bool"; readonly internalType: "bool"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly name: "nonces"; readonly inputs: readonly [{ readonly name: "_hash"; readonly type: "bytes32"; readonly internalType: "bytes32"; }]; readonly outputs: readonly [{ readonly name: ""; readonly type: "uint256"; readonly internalType: "uint256"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly name: "predictDeterministicAddress"; readonly inputs: readonly [{ readonly name: "_splitParams"; readonly type: "tuple"; readonly internalType: "struct SplitV2Lib.Split"; readonly components: readonly [{ readonly name: "recipients"; readonly type: "address[]"; readonly internalType: "address[]"; }, { readonly name: "allocations"; readonly type: "uint256[]"; readonly internalType: "uint256[]"; }, { readonly name: "totalAllocation"; readonly type: "uint256"; readonly internalType: "uint256"; }, { readonly name: "distributionIncentive"; readonly type: "uint16"; readonly internalType: "uint16"; }]; }, { readonly name: "_owner"; readonly type: "address"; readonly internalType: "address"; }]; readonly outputs: readonly [{ readonly name: ""; readonly type: "address"; readonly internalType: "address"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly name: "predictDeterministicAddress"; readonly inputs: readonly [{ readonly name: "_splitParams"; readonly type: "tuple"; readonly internalType: "struct SplitV2Lib.Split"; readonly components: readonly [{ readonly name: "recipients"; readonly type: "address[]"; readonly internalType: "address[]"; }, { readonly name: "allocations"; readonly type: "uint256[]"; readonly internalType: "uint256[]"; }, { readonly name: "totalAllocation"; readonly type: "uint256"; readonly internalType: "uint256"; }, { readonly name: "distributionIncentive"; readonly type: "uint16"; readonly internalType: "uint16"; }]; }, { readonly name: "_owner"; readonly type: "address"; readonly internalType: "address"; }, { readonly name: "_salt"; readonly type: "bytes32"; readonly internalType: "bytes32"; }]; readonly outputs: readonly [{ readonly name: ""; readonly type: "address"; readonly internalType: "address"; }]; readonly stateMutability: "view"; }, { readonly type: "event"; readonly name: "SplitCreated"; readonly inputs: readonly [{ readonly name: "split"; readonly type: "address"; readonly indexed: true; readonly internalType: "address"; }, { readonly name: "splitParams"; readonly type: "tuple"; readonly indexed: false; readonly internalType: "struct SplitV2Lib.Split"; readonly components: readonly [{ readonly name