@0xsplits/splits-sdk
Version:
SDK for the 0xSplits protocol
1,094 lines • 902 kB
TypeScript
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