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: "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;
            }], "predictDeterministicAddress", readonly [{
                recipients: readonly `0x${string}`[];
                allocations: readonly bigint[];
                totalAllocation: bigint;
                distributionIncentive: number;
            }, `0x${string}`] | readonly [{
                recipients: readonly `0x${string}`[];
                allocations: readonly bigint[];
                totalAllocation: bigint;
                distributionIncentive: number;
            }, `0x${string}`, `0x${string}`]>, "address" | "abi" | "functionName" | "args">> | undefined] | [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;
            }], "predictDeterministicAddress", readonly [{
                recipients: readonly `0x${string}`[];
                allocations: readonly bigint[];
                totalAllocation: bigint;
                distributionIncentive: number;
            }, `0x${string}`] | readonly [{
                recipients: readonly `0x${string}`[];
                allocations: readonly bigint[];
                totalAllocation: bigint;
                distributionIncentive: number;
            }, `0x${string}`, `0x${string}`]>, "address" | "abi" | "functionName" | "args">> | undefined]) => Promise<never>;
        };
        estimateGas: {
            createSplit: (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").EstimateContractGasParameters<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;
            }], "createSplit", readonly [{
                recipients: readonly `0x${string}`[];
                allocations: readonly bigint[];
                totalAllocation: bigint;
                distributionIncentive: number;
            }, `0x${string}`, `0x${string}`], any>, "address" | "abi" | "functionName" | "args">>) => Promise<import("viem").EstimateContractGasReturnType>;
            createSplitDeterministic: (args: readonly [{
                recipients: readonly `0x${string}`[];
                allocations: readonly bigint[];
                totalAllocation: bigint;
                distributionIncentive: number;
            }, `0x${string}`, `0x${string}`, `0x${string}`], options: import("viem").Prettify<import("viem").UnionOmit<import("viem").EstimateContractGasParameters<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;
            }], "createSplitDeterministic", readonly [{
                recipients: readonly `0x${string}`[];
                allocations: readonly bigint[];
                totalAllocation: bigint;
                distributionIncentive: number;
            }, `0x${string}`, `0x${string}`, `0x${string}`], any>, "address" | "abi" | "functionName" | "args">>) => Promise<import("viem").EstimateContractGasReturnType>;
        } & {
            createSplit: (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").EstimateContractGasParameters<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;
            }], "createSplit", readonly [{
                recipients: readonly `0x${string}`[];
                allocations: readonly bigint[];
                totalAllocation: bigint;
                distributionIncentive: number;
            }, `0x${string}`, `0x${string}`], any>, "address" | "abi" | "functionName" | "args">>) => Promise<import("viem").EstimateContractGasReturnType>;
            createSplitDeterministic: (args: readonly [{
                recipients: readonly `0x${string}`[];
                allocations: readonly bigint[];
                totalAllocation: bigint;
                distributionIncentive: number;
            }, `0x${string}`, `0x${string}`, `0x${string}`], options: import("viem").Prettify<import("viem").UnionOmit<import("viem").EstimateContractGasParameters<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;
            }], "createSplitDeterministic", readonly [{
                recipients: readonly `0x${string}`[];
                allocations: readonly bigint[];
                totalAllocation: bigint;
                distributionIncentive: number;
            }, `0x${string}`, `0x${string}`, `0x${string}`], any>, "address" | "abi" | "functionName" | "args">>) => Promise<import("viem").EstimateContractGasReturnType>;
        };
        simulate: {
            createSplit: <chainOverride extends import("viem").Chain | undefined = undefined, accountOverride extends import("viem").Account | Address | undefined = undefined>(args: readonly [{
                recipients: readonly `0x${string}`[];
                allocations: readonly bigint[];
                totalAllocation: bigint;
                distributionIncentive: number;
            }, `0x${string}`, `0x${string}`], options?: Omit<import("viem").SimulateContractParameters<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;
            }], "createSplit", readonly [{
                recipients: readonly `0x${string}`[];
                allocations: readonly bigint[];
                totalAllocation: bigint;
                distributionIncentive: number;
            }, `0x${string}`, `0x${string}`], any, chainOverride, accountOverride>, "address" | "abi" | "functionName" | "args"> | undefined) => Promise<import("viem").SimulateContractReturnType<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;
            }], "createSplit", readonly [{
                recipients: readonly `0x${string}`[];
                allocations: readonly bigint[];
                totalAllocation: bigint;
                distributionIncentive: number;
            }, `0x${string}`, `0x${string}`], any, undefined, chainOverride, accountOverride>>;
            createSplitDeterministic: <chainOverride extends import("viem").Chain | undefined = undefined, accountOverride extends import("viem").Account | Address | undefined = undefined>(args: readonly [{
                recipients: readonly `0x${string}`[];
                allocations: readonly bigint[];
                totalAllocation: bigint;
                distributionIncentive: number;
            }, `0x${string}`, `0x${string}`, `0x${string}`], options?: Omit<import("viem").SimulateContractParameters<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;
            }], "createSplitDeterministic", readonly [{
                recipients: readonly `0x${string}`[];
                allocations: readonly bigint[];
                totalAllocation: bigint;
                distributionIncentive: number;
            }, `0x${string}`, `0x${string}`, `0x${string}`], any, chainOverride, accountOverride>, "address" | "abi" | "functionName" | "args"> | undefined) => Promise<import("viem").SimulateContractReturnType<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;
            }], "createSplitDeterministic", readonly [{
                recipients: readonly `0x${string}`[];
                allocations: readonly bigint[];
                totalAllocation: bigint;
                distributionIncentive: number;
            }, `0x${string}`, `0x${string}`, `0x${string}`], any, undefined, chainOverride, accountOverride>>;
        };
        createEventFilter: {
            SplitCreated: <const args extends {
                split?: `0x${string}` | `0x${string}`[] | null | undefined;
            } | undefined, strict extends boolean | undefined = undefined>(args: {
                split?: `0x${string}` | `0x${string}`[] | null | undefined;
            } | ({
                split?: `0x${string}` | `0x${string}`[] | null | undefined;
            } extends infer T ? T extends {
                split?: `0x${string}` | `0x${string}`[] | null | undefined;
            } ? T extends args ? Readonly<args> : never : never : never), options?: ({
                fromBlock?: bigint | import("viem").BlockTag | undefined;
                toBlock?: bigint | import("viem").BlockTag | undefined;
            } & {
                strict?: strict | undefined;
            }) | undefined) => Promise<import("viem").CreateContractEventFilterReturnType<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;
            }], "SplitCreated", args, strict>>;
        };
        getEvents: {
            SplitCreated: (args?: {
                split?: `0x${string}` | `0x${string}`[] | null | undefined;
            } | undefined, options?: {
                strict?: boolean | undefined;
                blockHash?: `0x${string}` | undefined;
                fromBlock?: bigint | import("viem").BlockTag | undefined;
                toBlock?: bigint | import("viem").BlockTag | undefined;
            } | undefined) => Promise<import("viem").GetContractEventsReturnType<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;
            }], "SplitCreated">>;
        };
        watchEvent: {
            SplitCreated: (args: {
                split?: `0x${string}` | `0x${string}`[] | null | undefined;
            }, options: {
                batch?: boolean | undefined | undefined;
                pollingInterval?: number | undefined | undefined;
                strict?: boolean | undefined;
                fromBlock?: bigint | undefined;
                onError?: ((error: Error) => void) | undefined | undefined;
                onLogs: import("viem").WatchContractEventOnLogsFn<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;
                }], "SplitCreated", undefined>;
                poll?: true | undefined | undefined;
            }) => import("viem").WatchContractEventReturnType;
        };
        write: {
            createSplit: <chainOverride extends import("viem").Chain | undefined, options extends import("viem").UnionOmit<import("viem").WriteContractParameters<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;
            }], "createSplit", readonly [{
                recipients: readonly `0x${string}`[];
                allocations: readonly bigint[];
                totalAllocation: bigint;
                distributionIncentive: number;
            }, `0x${string}`, `0x${string}`], any, undefined, chainOverride>, "address" | "abi" | "functionName" | "args"> extends infer T ? { [K in keyof T]: import("viem").UnionOmit<import("viem").WriteContractParameters<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;
            }], "createSplit", readonly [{
                recipients: readonly `0x${string}`[];
                allocations: readonly bigint[];
                totalAllocation: bigint;
                distributionIncentive: number;
            }, `0x${string}`, `0x${string}`], any, undefined, chainOverride>, "address" | "abi" | "functionName" | "args">[K]; } : never>(args: readonly [{
                recipients: readonly `0x${string}`[];
                allocations: readonly bigint[];
                totalAllocation: bigint;
                distributionIncentive: number;
            }, `0x${string}`, `0x${string}`], options: options) => Promise<import("viem").WriteContractReturnType>;
            createSplitDeterministic: <chainOverride extends import("viem").Chain | undefined, options extends import("viem").UnionOmit<import("viem").WriteContractParameters<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;
            }], "createSplitDeterministic", readonly [{
                recipients: readonly `0x${string}`[];
                allocations: readonly bigint[];
                totalAllocation: bigint;
                distributionIncentive: number;
            }, `0x${string}`, `0x${string}`, `0x${string}`], any, undefined, chainOverride>, "address" | "abi" | "functionName" | "args"> extends infer T ? { [K in keyof T]: import("viem").UnionOmit<import("viem").WriteContractParameters<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;
            }], "createSplitDeterministic", readonly [{
                recipients: readonly `0x${string}`[];
                allocations: readonly bigint[];
                totalAllocation: bigint;
                distributionIncentive: number;
            }, `0x${string}`, `0x${string}`, `0x${string}`], any, undefined, chainOverride>, "address" | "abi" | "functionName" | "args">[K]; } : never>(args: readonly [{
                recipients: readonly `0x${string}`[];
                allocations: readonly bigint[];
                totalAllocation: bigint;
                distributionIncentive: number;
            }, `0x${string}`, `0x${string}`, `0x${string}`], options: options) => Promise<import("viem").WriteContractReturnType>;
        };
        address: `0x${string}`;
        abi: 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;
        }];
    } | {
        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: "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 name: "salt";
                    readonly type: "bytes32";
                    readonly indexed: false;
                    readonly internalType: "bytes32";
                }];
                readonly anonymous: false;
            }, {
                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: "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 name: "salt";
                    readonly type: "bytes32";
                    readonly indexed: false;
                    readonly internalType: "bytes32";
                }];
                readonly anonymous: false;
            }, {
                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: "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 name: "salt";
                    readonly type: "bytes32";
                    readonly indexed: false;
                    readonly internalType: "bytes32";
                }];
                readonly anonymous: false;
            }, {
                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: "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 name: "salt";
                    readonly type: "bytes32";
                    readonly indexed: false;
                    readonly internalType: "bytes32";
                }];
                readonly anonymous: false;
            }, {
                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;
            }], "predictDeterministicAddress", readonly [{
                recipients: readonly `0x${string}`[];
                allocations: readonly bigint[];
                totalAllocation: bigint;
                distributionIncentive: number;
            }, `0x${string}`] | readonly [{
                recipients: readonly `0x${string}`[];
                allocations: readonly bigint[];
                totalAllocation: bigint;
                distributionIncentive: number;
            }, `0x${string}`, `0x${string}`]>, "address" | "abi" | "functionName" | "args">> | undefined] | [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: "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 name: "salt";
                    readonly type: "bytes32";
                    readonly indexed: false;
                    readonly internalType: "bytes32";
                }];
                readonly anonymous: false;
            }, {
                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;
            }], "predictDeterministicAddress", readonly [{
                recipients: readonly `0x${string}`[];
                allocations: readonly bigint[];
                totalAllocation: bigint;
                distributionIncentive: number;
            }, `0x${string}`] | readonly [{
                recipients: readonly `0x${string}`[];
                allocations: readonly bigint[];
                totalAllocation: bigint;
                distributionIncentive: number;
            }, `0x${string}`, `0x${string}`]>, "address" | "abi" | "functionName" | "args">> | undefined]) => Promise<never>;
        };
        estimateGas: {
            createSplit: (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").EstimateContractGasParameters<readonly [{
                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 name: "salt";
                    readonly type: "bytes32";
                    readonly indexed: false;
                    readonly internalType: "bytes32";
                }];
                readonly anonymous: false;
            }, {
                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;
            }], "createSplit", readonly [{
                recipients: readonly `0x${string}`[];
                allocations: readonly bigint[];
                totalAllocation: bigint;
                distributionIncentive: number;
            }, `0x${string}`, `0x${string}`], any>, "address" | "abi" | "functionName" | "args">>) => Promise<import("viem").EstimateContractGasReturnType>;
            createSplitDeterministic: (args: readonly [{
                recipients: readonly `0x${string}`[];
                allocations: readonly bigint[];
                totalAllocation: bigint;
                distributionIncentive: number;
            }, `0x${string}`, `0x${string}`, `0x${string}`], options: import("viem").Prettify<import("viem").UnionOmit<import("viem").EstimateContractGasParameters<readonly [{
                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 name: "salt";
                    readonly type: "bytes32";
                    readonly indexed: false;
                    readonly internalType: "bytes32";
                }];
                readonly anonymous: false;
            }, {
                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;
            }], "createSplitDeterministic", readonly [{
                recipients: readonly `0x${string}`[];
                allocations: readonly bigint[];
                totalAllocation: bigint;
                distributionIncentive: number;
            }, `0x${string}`, `0x${string}`, `0x${string}`], any>, "address" | "abi" | "functionName" | "args">>) => Promise<import("viem").EstimateContractGasReturnType>;
        } & {
            createSplit: (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").EstimateContractGasParameters<readonly [{
                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 name: "salt";
                    readonly type: "bytes32";
                    readonly indexed: false;
                    readonly internalType: "bytes32";
                }];
                readonly anonymous: false;
            }, {
                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;
            }], "createSplit", readonly [{
                recipients: readonly `0x${string}`[];
                allocations: readonly bigint[];
                totalAllocation: bigint;
                distributionIncentive: number;
            }, `0x${string}`, `0x${string}`], any>, "address" | "abi" | "functionName" | "args">>) => Promise<import("viem").EstimateContractGasReturnType>;
            createSplitDeterministic: (args: readonly [{
                recipients: readonly `0x${string}`[];
                allocations: readonly bigint[];
                totalAllocation: bigint;
                distributionIncentive: number;
            }, `0x${string}`, `0x${string}`, `0x${string}`], options: import("viem").Prettify<import("viem").UnionOmit<import("viem").EstimateContractGasParameters<readonly [{
                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 name: "salt";
                    readonly type: "bytes32";
                    readonly indexed: false;
                    readonly internalType: "bytes32";
                }];
                readonly anonymous: false;
            }, {
                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;
            }], "createSplitDeterministic", readonly [{
                recipients: readonly `0x${string}`[];
                allocations: readonly bigint[];
                totalAllocation: bigint;
                distributionIncentive: number;
            }, `0x${string}`, `0x${string}`, `0x${string}`], any>, "address" | "abi" | "functionName" | "args">>) => Promise<import("viem").EstimateContractGasReturnType>;
        };
        simulate: {
            createSplit: <chainOverride extends import("viem").Chain | undefined = undefined, accountOverride extends import("viem").Account | Address | undefined = undefined>(args: readonly [{
                recipients: readonly `0x${string}`[];
                allocations: readonly bigint[];
                totalAllocation: bigint;
                distributionIncentive: number;
            }, `0x${string}`, `0x${string}`], options?: Omit<import("viem").SimulateContractParameters<readonly [{
                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 name: "salt";
                    readonly type: "bytes32";
                    readonly indexed: false;
                    readonly internalType: "bytes32";
                }];
                readonly anonymous: false;
            }, {
                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;
            }], "createSplit", readonly [{
                recipients: readonly `0x${string}`[];
                allocations: readonly bigint[];
                totalAllocation: bigint;
                distributionIncentive: number;
            }, `0x${string}`, `0x${string}`], any, chainOverride, accountOverride>, "address" | "abi" | "functionName" | "args"> | undefined) => Promise<import("viem").SimulateContractReturnType<readonly [{
                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 name: "salt";
                    readonly type: "bytes32";
                    readonly indexed: false;
                    readonly internalType: "bytes32";
                }];
                readonly anonymous: false;
            }, {
                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;
            }], "createSplit", readonly [{
                recipients: readonly `0x${string}`[];
                allocations: readonly bigint[];
                totalAllocation: bigint;
                distributionIncentive: number;
            }, `0x${string}`, `0x${string}`], any, undefined, chainOverride, accountOverride>>;
            createSplitDeterministic: <chainOverride extends import("viem").Chain | undefined = undefined, accountOverride extends import("viem").Account | Address | undefined = undefined>(args: readonly [{
                recipients: readonly `0x${string}`[];
                allocations: readonly bigint[];
                totalAllocation: bigint;
                distributionIncentive: number;
            }, `0x${string}`, `0x${string}`, `0x${string}`], options?: Omit<import("viem").SimulateContractParameters<readonly [{
                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 name: "salt";
                    readonly type: "bytes32";
                    readonly indexed: false;
                    readonly internalType: "bytes32";
                }];
                readonly anonymous: false;
            }, {
                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;
            }], "createSplitDeterministic", readonly [{
                recipients: readonly `0x${string}`[];
                allocations: readonly bigint[];
                totalAllocation: bigint;
                distributionIncentive: number;
            }, `0x${string}`, `0x${string}`, `0x${string}`], any, chainOverride, accountOverride>, "address" | "abi" | "functionName" | "args"> | undefined) => Promise<import("viem").SimulateContractReturnType<readonly [{
                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 name: "salt";
                    readonly type: "bytes32";
                    readonly indexed: false;
                    readonly internalType: "bytes32";
                }];
                readonly anonymous: false;
            }, {
                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;
            }], "createSplitDeterministic", readonly [{
                recipients: readonly `0x${string}`[];
                allocations: readonly bigint[];
                totalAllocation: bigint;
                distributionIncentive: number;
            }, `0x${string}`, `0x${string}`, `0x${string}`], any, undefined, chainOverride, accountOverride>>;
        };
        createEventFilter: {
            SplitCreated: <const args extends {
                split?: `0x${string}` | `0x${string}`[] | null | undefined;
            } | {
                split?: `0x${string}` | `0x${string}`[] | null | undefined;
            } | undefined, strict extends boolean | undefined = undefined>(args: {
                split?: `0x${string}` | `0x${string}`[] | null | undefined;
            } | {
                split?: `0x${string}` | `0x${string}`[] | null | undefined;
            } | ({
                split?: `0x${string}` | `0x${string}`[] | null | undefined;
            } extends infer T ? T extends {
                split?: `0x${string}` | `0x${string}`[] | null | undefined;
            } ? T extends args ? Readonly<args> : never : never : never) | ({
                split?: `0x${string}` | `0x${string}`[] | null | undefined;
            } extends infer T_1 ? T_1 extends {
                split?: `0x${string}` | `0x${string}`[] | null | undefined;
            } ? T_1 extends args ? Readonly<args> : never : never : never), options?: ({
                fromBlock?: bigint | import("viem").BlockTag | undefined;
                toBlock?: bigint | import("viem").BlockTag | undefined;
            } & {
                strict?: strict | undefined;
            }) | undefined) => Promise<import("viem").CreateContractEventFilterReturnType<readonly [{
                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 name: "salt";
                    readonly type: "bytes32";
                    readonly indexed: false;
                    readonly internalType: "bytes32";
                }];
                readonly anonymous: false;
            }, {
                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;
            }], "SplitCreated", args, strict>>;
        };
        getEvents: {
            SplitCreated: (args?: {
                split?: `0x${string}` | `0x${string}`[] | null | undefined;
            } | {
                split?: `0x${string}` | `0x${string}`[] | null | undefined;
            } | undefined, options?: {
                strict?: boolean | undefined;
                blockHash?: `0x${string}` | undefined;
                fromBlock?: bigint | import("viem").BlockTag | undefined;
                toBlock?: bigint | import("viem").BlockTag | undefined;
            } | undefined) => Promise<import("viem").GetContractEventsReturnType<readonly [{
                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 name: "salt";
                    readonly type: "bytes32";
                    readonly indexed: false;
                    readonly internalType: "bytes32";
                }];
                readonly anonymous: false;
            }, {
                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;
            }], "SplitCreated">>;
        };
        watchEvent: {
            SplitCreated: (args: {
                split?: `0x${string}` | `0x${string}`[] | null | undefined;
            } | {
                split?: `0x${string}` | `0x${string}`[] | null | undefined;
            }, options: {
                batch?: boolean | undefined | undefined;
                pollingInterval?: number | undefined | undefined;
                strict?: boolean | undefined;
                fromBlock?: bigint | undefined;
                onError?: ((error: Error) => void) | undefined | undefined;
                onLogs: import("viem").WatchContractEventOnLogsFn<readonly [{
                    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 name: "salt";
                        readonly type: "bytes32";
                        readonly indexed: false;
                        readonly internalType: "bytes32";
                    }];
                    readonly anonymous: false;
                }, {
                    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;
                }], "SplitCreated", undefined>;
                poll?: true | undefined | undefined;
            }) => import("viem").WatchContractEventReturnType;
        };
        write: {
            createSplit: <chainOverride extends import("viem").Chain | undefined, options extends import("viem").UnionOmit<import("viem").WriteContractParameters<readonly [{
                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 name: "salt";
                    readonly type: "bytes32";
                    readonly indexed: false;
                    readonly internalType: "bytes32";
                }];
                readonly anonymous: false;
            }, {
                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;
            }], "createSplit", readonly [{
                recipients: readonly `0x${string}`[];
                allocations: readonly bigint[];
                totalAllocation: bigint;
                distributionIncentive: number;
            }, `0x${string}`, `0x${string}`], any, undefined, chainOverride>, "address" | "abi" | "functionName" | "args"> extends infer T ? { [K in keyof T]: import("viem").UnionOmit<import("viem").WriteContractParameters<readonly [{
                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 name: "salt";
                    readonly type: "bytes32";
                    readonly indexed: false;
                    readonly internalType: "bytes32";
                }];
                readonly anonymous: false;
            }, {
                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;
            }], "createSplit", readonly [{
                recipients: readonly `0x${string}`[];
                allocations: readonly bigint[];
                totalAllocation: bigint;
                distributionIncentive: number;
            }, `0x${string}`, `0x${string}`], any, undefined, chainOverride>, "address" | "abi" | "functionName" | "args">[K]; } : never>(args: readonly [{
                recipients: readonly `0x${string}`[];
                allocations: readonly bigint[];
                totalAllocation: bigint;
                distributionIncentive: number;
            }, `0x${string}`, `0x${string}`], options: options) => Promise<import("viem").WriteContractReturnType>;
            createSplitDeterministic: <chainOverride extends import("viem").Chain | undefined, options extends import("viem").UnionOmit<import("viem").WriteContractParameters<readonly [{
                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 name: "salt";
                    readonly type: "bytes32";
                    readonly indexed: false;
                    readonly internalType: "bytes32";
                }];
                readonly anonymous: false;
            }, {
                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;
            }], "createSplitDeterministic", readonly [{
                recipients: readonly `0x${string}`[];
                allocations: readonly bigint[];
                totalAllocation: bigint;
                distributionIncentive: number;
            }, `0x${string}`, `0x${string}`, `0x${string}`], any, undefined, chainOverride>, "address" | "abi" | "functionName" | "args"> extends infer T ? { [K in keyof T]: import("viem").UnionOmit<import("viem").WriteContractParameters<readonly [{
                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 name: "salt";
                    readonly type: "bytes32";
                    readonly indexed: false;
                    readonly internalType: "bytes32";
                }];
                readonly anonymous: false;
            }, {
                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;
            }], "createSplitDeterministic", readonly [{
                recipients: readonly `0x${string}`[];
                allocations: readonly bigint[];
                totalAllocation: bigint;
                distributionIncentive: number;
            }, `0x${string}`, `0x${string}`, `0x${string}`], any, undefined, chainOverride>, "address" | "abi" | "functionName" | "args">[K]; } : never>(args: readonly [{
                recipients: readonly `0x${string}`[];
                allocations: readonly bigint[];
                totalAllocation: bigint;
                distributionIncentive: number;
            }, `0x${string}`, `0x${string}`, `0x${string}`], options: options) => Promise<import("viem").WriteContractReturnType>;
        };
        address: `0x${string}`;
        abi: readonly [{
            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 name: "salt";
                readonly type: "bytes32";
                readonly indexed: false;
                readonly internalType: "bytes32";
            }];
            readonly anonymous: false;
        }, {
            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;
        }];
    } | {
        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 inputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "_splitsWarehouse";
                    readonly type: "address";
                }];
                readonly stateMutability: "nonpayable";
                readonly type: "constructor";
            }, {
                readonly anonymous: false;
                readonly inputs: readonly [{
                    readonly indexed: true;
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }, {
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly indexed: false;
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "splitParams";
                    readonly type: "tuple";
                }, {
                    readonly indexed: false;
                    readonly internalType: "address";
                    readonly name: "owner";
                    readonly type: "address";
                }, {
                    readonly indexed: false;
                    readonly internalType: "address";
                    readonly name: "creator";
                    readonly type: "address";
                }, {
                    readonly indexed: false;
                    readonly internalType: "bytes32";
                    readonly name: "salt";
                    readonly type: "bytes32";
                }];
                readonly name: "SplitCreated";
                readonly type: "event";
            }, {
                readonly anonymous: false;
                readonly inputs: readonly [{
                    readonly indexed: true;
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }, {
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly indexed: false;
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "splitParams";
                    readonly type: "tuple";
                }, {
                    readonly indexed: false;
                    readonly internalType: "address";
                    readonly name: "owner";
                    readonly type: "address";
                }, {
                    readonly indexed: false;
                    readonly internalType: "address";
                    readonly name: "creator";
                    readonly type: "address";
                }, {
                    readonly indexed: false;
                    readonly internalType: "uint256";
                    readonly name: "nonce";
                    readonly type: "uint256";
                }];
                readonly name: "SplitCreated";
                readonly type: "event";
            }, {
                readonly inputs: readonly [];
                readonly name: "SPLIT_WALLET_IMPLEMENTATION";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "";
                    readonly type: "address";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }, {
                    readonly internalType: "address";
                    readonly name: "_creator";
                    readonly type: "address";
                }];
                readonly name: "createSplit";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }];
                readonly stateMutability: "nonpayable";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }, {
                    readonly internalType: "address";
                    readonly name: "_creator";
                    readonly type: "address";
                }, {
                    readonly internalType: "bytes32";
                    readonly name: "_salt";
                    readonly type: "bytes32";
                }];
                readonly name: "createSplitDeterministic";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }];
                readonly stateMutability: "nonpayable";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }, {
                    readonly internalType: "bytes32";
                    readonly name: "_salt";
                    readonly type: "bytes32";
                }];
                readonly name: "isDeployed";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }, {
                    readonly internalType: "bool";
                    readonly name: "exists";
                    readonly type: "bool";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly internalType: "bytes32";
                    readonly name: "_hash";
                    readonly type: "bytes32";
                }];
                readonly name: "nonces";
                readonly outputs: readonly [{
                    readonly internalType: "uint256";
                    readonly name: "";
                    readonly type: "uint256";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }];
                readonly name: "predictDeterministicAddress";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "";
                    readonly type: "address";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }, {
                    readonly internalType: "bytes32";
                    readonly name: "_salt";
                    readonly type: "bytes32";
                }];
                readonly name: "predictDeterministicAddress";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "";
                    readonly type: "address";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }], "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 inputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "_splitsWarehouse";
                    readonly type: "address";
                }];
                readonly stateMutability: "nonpayable";
                readonly type: "constructor";
            }, {
                readonly anonymous: false;
                readonly inputs: readonly [{
                    readonly indexed: true;
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }, {
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly indexed: false;
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "splitParams";
                    readonly type: "tuple";
                }, {
                    readonly indexed: false;
                    readonly internalType: "address";
                    readonly name: "owner";
                    readonly type: "address";
                }, {
                    readonly indexed: false;
                    readonly internalType: "address";
                    readonly name: "creator";
                    readonly type: "address";
                }, {
                    readonly indexed: false;
                    readonly internalType: "bytes32";
                    readonly name: "salt";
                    readonly type: "bytes32";
                }];
                readonly name: "SplitCreated";
                readonly type: "event";
            }, {
                readonly anonymous: false;
                readonly inputs: readonly [{
                    readonly indexed: true;
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }, {
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly indexed: false;
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "splitParams";
                    readonly type: "tuple";
                }, {
                    readonly indexed: false;
                    readonly internalType: "address";
                    readonly name: "owner";
                    readonly type: "address";
                }, {
                    readonly indexed: false;
                    readonly internalType: "address";
                    readonly name: "creator";
                    readonly type: "address";
                }, {
                    readonly indexed: false;
                    readonly internalType: "uint256";
                    readonly name: "nonce";
                    readonly type: "uint256";
                }];
                readonly name: "SplitCreated";
                readonly type: "event";
            }, {
                readonly inputs: readonly [];
                readonly name: "SPLIT_WALLET_IMPLEMENTATION";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "";
                    readonly type: "address";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }, {
                    readonly internalType: "address";
                    readonly name: "_creator";
                    readonly type: "address";
                }];
                readonly name: "createSplit";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }];
                readonly stateMutability: "nonpayable";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }, {
                    readonly internalType: "address";
                    readonly name: "_creator";
                    readonly type: "address";
                }, {
                    readonly internalType: "bytes32";
                    readonly name: "_salt";
                    readonly type: "bytes32";
                }];
                readonly name: "createSplitDeterministic";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }];
                readonly stateMutability: "nonpayable";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }, {
                    readonly internalType: "bytes32";
                    readonly name: "_salt";
                    readonly type: "bytes32";
                }];
                readonly name: "isDeployed";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }, {
                    readonly internalType: "bool";
                    readonly name: "exists";
                    readonly type: "bool";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly internalType: "bytes32";
                    readonly name: "_hash";
                    readonly type: "bytes32";
                }];
                readonly name: "nonces";
                readonly outputs: readonly [{
                    readonly internalType: "uint256";
                    readonly name: "";
                    readonly type: "uint256";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }];
                readonly name: "predictDeterministicAddress";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "";
                    readonly type: "address";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }, {
                    readonly internalType: "bytes32";
                    readonly name: "_salt";
                    readonly type: "bytes32";
                }];
                readonly name: "predictDeterministicAddress";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "";
                    readonly type: "address";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }], "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 inputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "_splitsWarehouse";
                    readonly type: "address";
                }];
                readonly stateMutability: "nonpayable";
                readonly type: "constructor";
            }, {
                readonly anonymous: false;
                readonly inputs: readonly [{
                    readonly indexed: true;
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }, {
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly indexed: false;
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "splitParams";
                    readonly type: "tuple";
                }, {
                    readonly indexed: false;
                    readonly internalType: "address";
                    readonly name: "owner";
                    readonly type: "address";
                }, {
                    readonly indexed: false;
                    readonly internalType: "address";
                    readonly name: "creator";
                    readonly type: "address";
                }, {
                    readonly indexed: false;
                    readonly internalType: "bytes32";
                    readonly name: "salt";
                    readonly type: "bytes32";
                }];
                readonly name: "SplitCreated";
                readonly type: "event";
            }, {
                readonly anonymous: false;
                readonly inputs: readonly [{
                    readonly indexed: true;
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }, {
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly indexed: false;
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "splitParams";
                    readonly type: "tuple";
                }, {
                    readonly indexed: false;
                    readonly internalType: "address";
                    readonly name: "owner";
                    readonly type: "address";
                }, {
                    readonly indexed: false;
                    readonly internalType: "address";
                    readonly name: "creator";
                    readonly type: "address";
                }, {
                    readonly indexed: false;
                    readonly internalType: "uint256";
                    readonly name: "nonce";
                    readonly type: "uint256";
                }];
                readonly name: "SplitCreated";
                readonly type: "event";
            }, {
                readonly inputs: readonly [];
                readonly name: "SPLIT_WALLET_IMPLEMENTATION";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "";
                    readonly type: "address";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }, {
                    readonly internalType: "address";
                    readonly name: "_creator";
                    readonly type: "address";
                }];
                readonly name: "createSplit";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }];
                readonly stateMutability: "nonpayable";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }, {
                    readonly internalType: "address";
                    readonly name: "_creator";
                    readonly type: "address";
                }, {
                    readonly internalType: "bytes32";
                    readonly name: "_salt";
                    readonly type: "bytes32";
                }];
                readonly name: "createSplitDeterministic";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }];
                readonly stateMutability: "nonpayable";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }, {
                    readonly internalType: "bytes32";
                    readonly name: "_salt";
                    readonly type: "bytes32";
                }];
                readonly name: "isDeployed";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }, {
                    readonly internalType: "bool";
                    readonly name: "exists";
                    readonly type: "bool";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly internalType: "bytes32";
                    readonly name: "_hash";
                    readonly type: "bytes32";
                }];
                readonly name: "nonces";
                readonly outputs: readonly [{
                    readonly internalType: "uint256";
                    readonly name: "";
                    readonly type: "uint256";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }];
                readonly name: "predictDeterministicAddress";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "";
                    readonly type: "address";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }, {
                    readonly internalType: "bytes32";
                    readonly name: "_salt";
                    readonly type: "bytes32";
                }];
                readonly name: "predictDeterministicAddress";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "";
                    readonly type: "address";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }], "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 inputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "_splitsWarehouse";
                    readonly type: "address";
                }];
                readonly stateMutability: "nonpayable";
                readonly type: "constructor";
            }, {
                readonly anonymous: false;
                readonly inputs: readonly [{
                    readonly indexed: true;
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }, {
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly indexed: false;
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "splitParams";
                    readonly type: "tuple";
                }, {
                    readonly indexed: false;
                    readonly internalType: "address";
                    readonly name: "owner";
                    readonly type: "address";
                }, {
                    readonly indexed: false;
                    readonly internalType: "address";
                    readonly name: "creator";
                    readonly type: "address";
                }, {
                    readonly indexed: false;
                    readonly internalType: "bytes32";
                    readonly name: "salt";
                    readonly type: "bytes32";
                }];
                readonly name: "SplitCreated";
                readonly type: "event";
            }, {
                readonly anonymous: false;
                readonly inputs: readonly [{
                    readonly indexed: true;
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }, {
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly indexed: false;
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "splitParams";
                    readonly type: "tuple";
                }, {
                    readonly indexed: false;
                    readonly internalType: "address";
                    readonly name: "owner";
                    readonly type: "address";
                }, {
                    readonly indexed: false;
                    readonly internalType: "address";
                    readonly name: "creator";
                    readonly type: "address";
                }, {
                    readonly indexed: false;
                    readonly internalType: "uint256";
                    readonly name: "nonce";
                    readonly type: "uint256";
                }];
                readonly name: "SplitCreated";
                readonly type: "event";
            }, {
                readonly inputs: readonly [];
                readonly name: "SPLIT_WALLET_IMPLEMENTATION";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "";
                    readonly type: "address";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }, {
                    readonly internalType: "address";
                    readonly name: "_creator";
                    readonly type: "address";
                }];
                readonly name: "createSplit";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }];
                readonly stateMutability: "nonpayable";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }, {
                    readonly internalType: "address";
                    readonly name: "_creator";
                    readonly type: "address";
                }, {
                    readonly internalType: "bytes32";
                    readonly name: "_salt";
                    readonly type: "bytes32";
                }];
                readonly name: "createSplitDeterministic";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }];
                readonly stateMutability: "nonpayable";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }, {
                    readonly internalType: "bytes32";
                    readonly name: "_salt";
                    readonly type: "bytes32";
                }];
                readonly name: "isDeployed";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }, {
                    readonly internalType: "bool";
                    readonly name: "exists";
                    readonly type: "bool";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly internalType: "bytes32";
                    readonly name: "_hash";
                    readonly type: "bytes32";
                }];
                readonly name: "nonces";
                readonly outputs: readonly [{
                    readonly internalType: "uint256";
                    readonly name: "";
                    readonly type: "uint256";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }];
                readonly name: "predictDeterministicAddress";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "";
                    readonly type: "address";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }, {
                    readonly internalType: "bytes32";
                    readonly name: "_salt";
                    readonly type: "bytes32";
                }];
                readonly name: "predictDeterministicAddress";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "";
                    readonly type: "address";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }], "predictDeterministicAddress", readonly [{
                recipients: readonly `0x${string}`[];
                allocations: readonly bigint[];
                totalAllocation: bigint;
                distributionIncentive: number;
            }, `0x${string}`] | readonly [{
                recipients: readonly `0x${string}`[];
                allocations: readonly bigint[];
                totalAllocation: bigint;
                distributionIncentive: number;
            }, `0x${string}`, `0x${string}`]>, "address" | "abi" | "functionName" | "args">> | undefined] | [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 inputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "_splitsWarehouse";
                    readonly type: "address";
                }];
                readonly stateMutability: "nonpayable";
                readonly type: "constructor";
            }, {
                readonly anonymous: false;
                readonly inputs: readonly [{
                    readonly indexed: true;
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }, {
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly indexed: false;
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "splitParams";
                    readonly type: "tuple";
                }, {
                    readonly indexed: false;
                    readonly internalType: "address";
                    readonly name: "owner";
                    readonly type: "address";
                }, {
                    readonly indexed: false;
                    readonly internalType: "address";
                    readonly name: "creator";
                    readonly type: "address";
                }, {
                    readonly indexed: false;
                    readonly internalType: "bytes32";
                    readonly name: "salt";
                    readonly type: "bytes32";
                }];
                readonly name: "SplitCreated";
                readonly type: "event";
            }, {
                readonly anonymous: false;
                readonly inputs: readonly [{
                    readonly indexed: true;
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }, {
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly indexed: false;
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "splitParams";
                    readonly type: "tuple";
                }, {
                    readonly indexed: false;
                    readonly internalType: "address";
                    readonly name: "owner";
                    readonly type: "address";
                }, {
                    readonly indexed: false;
                    readonly internalType: "address";
                    readonly name: "creator";
                    readonly type: "address";
                }, {
                    readonly indexed: false;
                    readonly internalType: "uint256";
                    readonly name: "nonce";
                    readonly type: "uint256";
                }];
                readonly name: "SplitCreated";
                readonly type: "event";
            }, {
                readonly inputs: readonly [];
                readonly name: "SPLIT_WALLET_IMPLEMENTATION";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "";
                    readonly type: "address";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }, {
                    readonly internalType: "address";
                    readonly name: "_creator";
                    readonly type: "address";
                }];
                readonly name: "createSplit";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }];
                readonly stateMutability: "nonpayable";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }, {
                    readonly internalType: "address";
                    readonly name: "_creator";
                    readonly type: "address";
                }, {
                    readonly internalType: "bytes32";
                    readonly name: "_salt";
                    readonly type: "bytes32";
                }];
                readonly name: "createSplitDeterministic";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }];
                readonly stateMutability: "nonpayable";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }, {
                    readonly internalType: "bytes32";
                    readonly name: "_salt";
                    readonly type: "bytes32";
                }];
                readonly name: "isDeployed";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }, {
                    readonly internalType: "bool";
                    readonly name: "exists";
                    readonly type: "bool";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly internalType: "bytes32";
                    readonly name: "_hash";
                    readonly type: "bytes32";
                }];
                readonly name: "nonces";
                readonly outputs: readonly [{
                    readonly internalType: "uint256";
                    readonly name: "";
                    readonly type: "uint256";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }];
                readonly name: "predictDeterministicAddress";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "";
                    readonly type: "address";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }, {
                    readonly internalType: "bytes32";
                    readonly name: "_salt";
                    readonly type: "bytes32";
                }];
                readonly name: "predictDeterministicAddress";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "";
                    readonly type: "address";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }], "predictDeterministicAddress", readonly [{
                recipients: readonly `0x${string}`[];
                allocations: readonly bigint[];
                totalAllocation: bigint;
                distributionIncentive: number;
            }, `0x${string}`] | readonly [{
                recipients: readonly `0x${string}`[];
                allocations: readonly bigint[];
                totalAllocation: bigint;
                distributionIncentive: number;
            }, `0x${string}`, `0x${string}`]>, "address" | "abi" | "functionName" | "args">> | undefined]) => Promise<never>;
        };
        estimateGas: {
            createSplit: (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").EstimateContractGasParameters<readonly [{
                readonly inputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "_splitsWarehouse";
                    readonly type: "address";
                }];
                readonly stateMutability: "nonpayable";
                readonly type: "constructor";
            }, {
                readonly anonymous: false;
                readonly inputs: readonly [{
                    readonly indexed: true;
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }, {
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly indexed: false;
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "splitParams";
                    readonly type: "tuple";
                }, {
                    readonly indexed: false;
                    readonly internalType: "address";
                    readonly name: "owner";
                    readonly type: "address";
                }, {
                    readonly indexed: false;
                    readonly internalType: "address";
                    readonly name: "creator";
                    readonly type: "address";
                }, {
                    readonly indexed: false;
                    readonly internalType: "bytes32";
                    readonly name: "salt";
                    readonly type: "bytes32";
                }];
                readonly name: "SplitCreated";
                readonly type: "event";
            }, {
                readonly anonymous: false;
                readonly inputs: readonly [{
                    readonly indexed: true;
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }, {
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly indexed: false;
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "splitParams";
                    readonly type: "tuple";
                }, {
                    readonly indexed: false;
                    readonly internalType: "address";
                    readonly name: "owner";
                    readonly type: "address";
                }, {
                    readonly indexed: false;
                    readonly internalType: "address";
                    readonly name: "creator";
                    readonly type: "address";
                }, {
                    readonly indexed: false;
                    readonly internalType: "uint256";
                    readonly name: "nonce";
                    readonly type: "uint256";
                }];
                readonly name: "SplitCreated";
                readonly type: "event";
            }, {
                readonly inputs: readonly [];
                readonly name: "SPLIT_WALLET_IMPLEMENTATION";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "";
                    readonly type: "address";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }, {
                    readonly internalType: "address";
                    readonly name: "_creator";
                    readonly type: "address";
                }];
                readonly name: "createSplit";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }];
                readonly stateMutability: "nonpayable";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }, {
                    readonly internalType: "address";
                    readonly name: "_creator";
                    readonly type: "address";
                }, {
                    readonly internalType: "bytes32";
                    readonly name: "_salt";
                    readonly type: "bytes32";
                }];
                readonly name: "createSplitDeterministic";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }];
                readonly stateMutability: "nonpayable";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }, {
                    readonly internalType: "bytes32";
                    readonly name: "_salt";
                    readonly type: "bytes32";
                }];
                readonly name: "isDeployed";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }, {
                    readonly internalType: "bool";
                    readonly name: "exists";
                    readonly type: "bool";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly internalType: "bytes32";
                    readonly name: "_hash";
                    readonly type: "bytes32";
                }];
                readonly name: "nonces";
                readonly outputs: readonly [{
                    readonly internalType: "uint256";
                    readonly name: "";
                    readonly type: "uint256";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }];
                readonly name: "predictDeterministicAddress";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "";
                    readonly type: "address";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }, {
                    readonly internalType: "bytes32";
                    readonly name: "_salt";
                    readonly type: "bytes32";
                }];
                readonly name: "predictDeterministicAddress";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "";
                    readonly type: "address";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }], "createSplit", readonly [{
                recipients: readonly `0x${string}`[];
                allocations: readonly bigint[];
                totalAllocation: bigint;
                distributionIncentive: number;
            }, `0x${string}`, `0x${string}`], any>, "address" | "abi" | "functionName" | "args">>) => Promise<import("viem").EstimateContractGasReturnType>;
            createSplitDeterministic: (args: readonly [{
                recipients: readonly `0x${string}`[];
                allocations: readonly bigint[];
                totalAllocation: bigint;
                distributionIncentive: number;
            }, `0x${string}`, `0x${string}`, `0x${string}`], options: import("viem").Prettify<import("viem").UnionOmit<import("viem").EstimateContractGasParameters<readonly [{
                readonly inputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "_splitsWarehouse";
                    readonly type: "address";
                }];
                readonly stateMutability: "nonpayable";
                readonly type: "constructor";
            }, {
                readonly anonymous: false;
                readonly inputs: readonly [{
                    readonly indexed: true;
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }, {
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly indexed: false;
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "splitParams";
                    readonly type: "tuple";
                }, {
                    readonly indexed: false;
                    readonly internalType: "address";
                    readonly name: "owner";
                    readonly type: "address";
                }, {
                    readonly indexed: false;
                    readonly internalType: "address";
                    readonly name: "creator";
                    readonly type: "address";
                }, {
                    readonly indexed: false;
                    readonly internalType: "bytes32";
                    readonly name: "salt";
                    readonly type: "bytes32";
                }];
                readonly name: "SplitCreated";
                readonly type: "event";
            }, {
                readonly anonymous: false;
                readonly inputs: readonly [{
                    readonly indexed: true;
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }, {
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly indexed: false;
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "splitParams";
                    readonly type: "tuple";
                }, {
                    readonly indexed: false;
                    readonly internalType: "address";
                    readonly name: "owner";
                    readonly type: "address";
                }, {
                    readonly indexed: false;
                    readonly internalType: "address";
                    readonly name: "creator";
                    readonly type: "address";
                }, {
                    readonly indexed: false;
                    readonly internalType: "uint256";
                    readonly name: "nonce";
                    readonly type: "uint256";
                }];
                readonly name: "SplitCreated";
                readonly type: "event";
            }, {
                readonly inputs: readonly [];
                readonly name: "SPLIT_WALLET_IMPLEMENTATION";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "";
                    readonly type: "address";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }, {
                    readonly internalType: "address";
                    readonly name: "_creator";
                    readonly type: "address";
                }];
                readonly name: "createSplit";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }];
                readonly stateMutability: "nonpayable";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }, {
                    readonly internalType: "address";
                    readonly name: "_creator";
                    readonly type: "address";
                }, {
                    readonly internalType: "bytes32";
                    readonly name: "_salt";
                    readonly type: "bytes32";
                }];
                readonly name: "createSplitDeterministic";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }];
                readonly stateMutability: "nonpayable";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }, {
                    readonly internalType: "bytes32";
                    readonly name: "_salt";
                    readonly type: "bytes32";
                }];
                readonly name: "isDeployed";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }, {
                    readonly internalType: "bool";
                    readonly name: "exists";
                    readonly type: "bool";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly internalType: "bytes32";
                    readonly name: "_hash";
                    readonly type: "bytes32";
                }];
                readonly name: "nonces";
                readonly outputs: readonly [{
                    readonly internalType: "uint256";
                    readonly name: "";
                    readonly type: "uint256";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }];
                readonly name: "predictDeterministicAddress";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "";
                    readonly type: "address";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }, {
                    readonly internalType: "bytes32";
                    readonly name: "_salt";
                    readonly type: "bytes32";
                }];
                readonly name: "predictDeterministicAddress";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "";
                    readonly type: "address";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }], "createSplitDeterministic", readonly [{
                recipients: readonly `0x${string}`[];
                allocations: readonly bigint[];
                totalAllocation: bigint;
                distributionIncentive: number;
            }, `0x${string}`, `0x${string}`, `0x${string}`], any>, "address" | "abi" | "functionName" | "args">>) => Promise<import("viem").EstimateContractGasReturnType>;
        } & {
            createSplit: (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").EstimateContractGasParameters<readonly [{
                readonly inputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "_splitsWarehouse";
                    readonly type: "address";
                }];
                readonly stateMutability: "nonpayable";
                readonly type: "constructor";
            }, {
                readonly anonymous: false;
                readonly inputs: readonly [{
                    readonly indexed: true;
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }, {
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly indexed: false;
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "splitParams";
                    readonly type: "tuple";
                }, {
                    readonly indexed: false;
                    readonly internalType: "address";
                    readonly name: "owner";
                    readonly type: "address";
                }, {
                    readonly indexed: false;
                    readonly internalType: "address";
                    readonly name: "creator";
                    readonly type: "address";
                }, {
                    readonly indexed: false;
                    readonly internalType: "bytes32";
                    readonly name: "salt";
                    readonly type: "bytes32";
                }];
                readonly name: "SplitCreated";
                readonly type: "event";
            }, {
                readonly anonymous: false;
                readonly inputs: readonly [{
                    readonly indexed: true;
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }, {
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly indexed: false;
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "splitParams";
                    readonly type: "tuple";
                }, {
                    readonly indexed: false;
                    readonly internalType: "address";
                    readonly name: "owner";
                    readonly type: "address";
                }, {
                    readonly indexed: false;
                    readonly internalType: "address";
                    readonly name: "creator";
                    readonly type: "address";
                }, {
                    readonly indexed: false;
                    readonly internalType: "uint256";
                    readonly name: "nonce";
                    readonly type: "uint256";
                }];
                readonly name: "SplitCreated";
                readonly type: "event";
            }, {
                readonly inputs: readonly [];
                readonly name: "SPLIT_WALLET_IMPLEMENTATION";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "";
                    readonly type: "address";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }, {
                    readonly internalType: "address";
                    readonly name: "_creator";
                    readonly type: "address";
                }];
                readonly name: "createSplit";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }];
                readonly stateMutability: "nonpayable";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }, {
                    readonly internalType: "address";
                    readonly name: "_creator";
                    readonly type: "address";
                }, {
                    readonly internalType: "bytes32";
                    readonly name: "_salt";
                    readonly type: "bytes32";
                }];
                readonly name: "createSplitDeterministic";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }];
                readonly stateMutability: "nonpayable";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }, {
                    readonly internalType: "bytes32";
                    readonly name: "_salt";
                    readonly type: "bytes32";
                }];
                readonly name: "isDeployed";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }, {
                    readonly internalType: "bool";
                    readonly name: "exists";
                    readonly type: "bool";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly internalType: "bytes32";
                    readonly name: "_hash";
                    readonly type: "bytes32";
                }];
                readonly name: "nonces";
                readonly outputs: readonly [{
                    readonly internalType: "uint256";
                    readonly name: "";
                    readonly type: "uint256";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }];
                readonly name: "predictDeterministicAddress";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "";
                    readonly type: "address";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }, {
                    readonly internalType: "bytes32";
                    readonly name: "_salt";
                    readonly type: "bytes32";
                }];
                readonly name: "predictDeterministicAddress";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "";
                    readonly type: "address";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }], "createSplit", readonly [{
                recipients: readonly `0x${string}`[];
                allocations: readonly bigint[];
                totalAllocation: bigint;
                distributionIncentive: number;
            }, `0x${string}`, `0x${string}`], any>, "address" | "abi" | "functionName" | "args">>) => Promise<import("viem").EstimateContractGasReturnType>;
            createSplitDeterministic: (args: readonly [{
                recipients: readonly `0x${string}`[];
                allocations: readonly bigint[];
                totalAllocation: bigint;
                distributionIncentive: number;
            }, `0x${string}`, `0x${string}`, `0x${string}`], options: import("viem").Prettify<import("viem").UnionOmit<import("viem").EstimateContractGasParameters<readonly [{
                readonly inputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "_splitsWarehouse";
                    readonly type: "address";
                }];
                readonly stateMutability: "nonpayable";
                readonly type: "constructor";
            }, {
                readonly anonymous: false;
                readonly inputs: readonly [{
                    readonly indexed: true;
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }, {
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly indexed: false;
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "splitParams";
                    readonly type: "tuple";
                }, {
                    readonly indexed: false;
                    readonly internalType: "address";
                    readonly name: "owner";
                    readonly type: "address";
                }, {
                    readonly indexed: false;
                    readonly internalType: "address";
                    readonly name: "creator";
                    readonly type: "address";
                }, {
                    readonly indexed: false;
                    readonly internalType: "bytes32";
                    readonly name: "salt";
                    readonly type: "bytes32";
                }];
                readonly name: "SplitCreated";
                readonly type: "event";
            }, {
                readonly anonymous: false;
                readonly inputs: readonly [{
                    readonly indexed: true;
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }, {
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly indexed: false;
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "splitParams";
                    readonly type: "tuple";
                }, {
                    readonly indexed: false;
                    readonly internalType: "address";
                    readonly name: "owner";
                    readonly type: "address";
                }, {
                    readonly indexed: false;
                    readonly internalType: "address";
                    readonly name: "creator";
                    readonly type: "address";
                }, {
                    readonly indexed: false;
                    readonly internalType: "uint256";
                    readonly name: "nonce";
                    readonly type: "uint256";
                }];
                readonly name: "SplitCreated";
                readonly type: "event";
            }, {
                readonly inputs: readonly [];
                readonly name: "SPLIT_WALLET_IMPLEMENTATION";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "";
                    readonly type: "address";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }, {
                    readonly internalType: "address";
                    readonly name: "_creator";
                    readonly type: "address";
                }];
                readonly name: "createSplit";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }];
                readonly stateMutability: "nonpayable";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }, {
                    readonly internalType: "address";
                    readonly name: "_creator";
                    readonly type: "address";
                }, {
                    readonly internalType: "bytes32";
                    readonly name: "_salt";
                    readonly type: "bytes32";
                }];
                readonly name: "createSplitDeterministic";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }];
                readonly stateMutability: "nonpayable";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }, {
                    readonly internalType: "bytes32";
                    readonly name: "_salt";
                    readonly type: "bytes32";
                }];
                readonly name: "isDeployed";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }, {
                    readonly internalType: "bool";
                    readonly name: "exists";
                    readonly type: "bool";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly internalType: "bytes32";
                    readonly name: "_hash";
                    readonly type: "bytes32";
                }];
                readonly name: "nonces";
                readonly outputs: readonly [{
                    readonly internalType: "uint256";
                    readonly name: "";
                    readonly type: "uint256";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }];
                readonly name: "predictDeterministicAddress";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "";
                    readonly type: "address";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }, {
                    readonly internalType: "bytes32";
                    readonly name: "_salt";
                    readonly type: "bytes32";
                }];
                readonly name: "predictDeterministicAddress";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "";
                    readonly type: "address";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }], "createSplitDeterministic", readonly [{
                recipients: readonly `0x${string}`[];
                allocations: readonly bigint[];
                totalAllocation: bigint;
                distributionIncentive: number;
            }, `0x${string}`, `0x${string}`, `0x${string}`], any>, "address" | "abi" | "functionName" | "args">>) => Promise<import("viem").EstimateContractGasReturnType>;
        };
        simulate: {
            createSplit: <chainOverride extends import("viem").Chain | undefined = undefined, accountOverride extends import("viem").Account | Address | undefined = undefined>(args: readonly [{
                recipients: readonly `0x${string}`[];
                allocations: readonly bigint[];
                totalAllocation: bigint;
                distributionIncentive: number;
            }, `0x${string}`, `0x${string}`], options?: Omit<import("viem").SimulateContractParameters<readonly [{
                readonly inputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "_splitsWarehouse";
                    readonly type: "address";
                }];
                readonly stateMutability: "nonpayable";
                readonly type: "constructor";
            }, {
                readonly anonymous: false;
                readonly inputs: readonly [{
                    readonly indexed: true;
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }, {
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly indexed: false;
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "splitParams";
                    readonly type: "tuple";
                }, {
                    readonly indexed: false;
                    readonly internalType: "address";
                    readonly name: "owner";
                    readonly type: "address";
                }, {
                    readonly indexed: false;
                    readonly internalType: "address";
                    readonly name: "creator";
                    readonly type: "address";
                }, {
                    readonly indexed: false;
                    readonly internalType: "bytes32";
                    readonly name: "salt";
                    readonly type: "bytes32";
                }];
                readonly name: "SplitCreated";
                readonly type: "event";
            }, {
                readonly anonymous: false;
                readonly inputs: readonly [{
                    readonly indexed: true;
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }, {
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly indexed: false;
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "splitParams";
                    readonly type: "tuple";
                }, {
                    readonly indexed: false;
                    readonly internalType: "address";
                    readonly name: "owner";
                    readonly type: "address";
                }, {
                    readonly indexed: false;
                    readonly internalType: "address";
                    readonly name: "creator";
                    readonly type: "address";
                }, {
                    readonly indexed: false;
                    readonly internalType: "uint256";
                    readonly name: "nonce";
                    readonly type: "uint256";
                }];
                readonly name: "SplitCreated";
                readonly type: "event";
            }, {
                readonly inputs: readonly [];
                readonly name: "SPLIT_WALLET_IMPLEMENTATION";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "";
                    readonly type: "address";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }, {
                    readonly internalType: "address";
                    readonly name: "_creator";
                    readonly type: "address";
                }];
                readonly name: "createSplit";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }];
                readonly stateMutability: "nonpayable";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }, {
                    readonly internalType: "address";
                    readonly name: "_creator";
                    readonly type: "address";
                }, {
                    readonly internalType: "bytes32";
                    readonly name: "_salt";
                    readonly type: "bytes32";
                }];
                readonly name: "createSplitDeterministic";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }];
                readonly stateMutability: "nonpayable";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }, {
                    readonly internalType: "bytes32";
                    readonly name: "_salt";
                    readonly type: "bytes32";
                }];
                readonly name: "isDeployed";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }, {
                    readonly internalType: "bool";
                    readonly name: "exists";
                    readonly type: "bool";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly internalType: "bytes32";
                    readonly name: "_hash";
                    readonly type: "bytes32";
                }];
                readonly name: "nonces";
                readonly outputs: readonly [{
                    readonly internalType: "uint256";
                    readonly name: "";
                    readonly type: "uint256";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }];
                readonly name: "predictDeterministicAddress";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "";
                    readonly type: "address";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }, {
                    readonly internalType: "bytes32";
                    readonly name: "_salt";
                    readonly type: "bytes32";
                }];
                readonly name: "predictDeterministicAddress";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "";
                    readonly type: "address";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }], "createSplit", readonly [{
                recipients: readonly `0x${string}`[];
                allocations: readonly bigint[];
                totalAllocation: bigint;
                distributionIncentive: number;
            }, `0x${string}`, `0x${string}`], any, chainOverride, accountOverride>, "address" | "abi" | "functionName" | "args"> | undefined) => Promise<import("viem").SimulateContractReturnType<readonly [{
                readonly inputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "_splitsWarehouse";
                    readonly type: "address";
                }];
                readonly stateMutability: "nonpayable";
                readonly type: "constructor";
            }, {
                readonly anonymous: false;
                readonly inputs: readonly [{
                    readonly indexed: true;
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }, {
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly indexed: false;
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "splitParams";
                    readonly type: "tuple";
                }, {
                    readonly indexed: false;
                    readonly internalType: "address";
                    readonly name: "owner";
                    readonly type: "address";
                }, {
                    readonly indexed: false;
                    readonly internalType: "address";
                    readonly name: "creator";
                    readonly type: "address";
                }, {
                    readonly indexed: false;
                    readonly internalType: "bytes32";
                    readonly name: "salt";
                    readonly type: "bytes32";
                }];
                readonly name: "SplitCreated";
                readonly type: "event";
            }, {
                readonly anonymous: false;
                readonly inputs: readonly [{
                    readonly indexed: true;
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }, {
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly indexed: false;
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "splitParams";
                    readonly type: "tuple";
                }, {
                    readonly indexed: false;
                    readonly internalType: "address";
                    readonly name: "owner";
                    readonly type: "address";
                }, {
                    readonly indexed: false;
                    readonly internalType: "address";
                    readonly name: "creator";
                    readonly type: "address";
                }, {
                    readonly indexed: false;
                    readonly internalType: "uint256";
                    readonly name: "nonce";
                    readonly type: "uint256";
                }];
                readonly name: "SplitCreated";
                readonly type: "event";
            }, {
                readonly inputs: readonly [];
                readonly name: "SPLIT_WALLET_IMPLEMENTATION";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "";
                    readonly type: "address";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }, {
                    readonly internalType: "address";
                    readonly name: "_creator";
                    readonly type: "address";
                }];
                readonly name: "createSplit";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }];
                readonly stateMutability: "nonpayable";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }, {
                    readonly internalType: "address";
                    readonly name: "_creator";
                    readonly type: "address";
                }, {
                    readonly internalType: "bytes32";
                    readonly name: "_salt";
                    readonly type: "bytes32";
                }];
                readonly name: "createSplitDeterministic";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }];
                readonly stateMutability: "nonpayable";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }, {
                    readonly internalType: "bytes32";
                    readonly name: "_salt";
                    readonly type: "bytes32";
                }];
                readonly name: "isDeployed";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }, {
                    readonly internalType: "bool";
                    readonly name: "exists";
                    readonly type: "bool";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly internalType: "bytes32";
                    readonly name: "_hash";
                    readonly type: "bytes32";
                }];
                readonly name: "nonces";
                readonly outputs: readonly [{
                    readonly internalType: "uint256";
                    readonly name: "";
                    readonly type: "uint256";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }];
                readonly name: "predictDeterministicAddress";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "";
                    readonly type: "address";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }, {
                    readonly internalType: "bytes32";
                    readonly name: "_salt";
                    readonly type: "bytes32";
                }];
                readonly name: "predictDeterministicAddress";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "";
                    readonly type: "address";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }], "createSplit", readonly [{
                recipients: readonly `0x${string}`[];
                allocations: readonly bigint[];
                totalAllocation: bigint;
                distributionIncentive: number;
            }, `0x${string}`, `0x${string}`], any, undefined, chainOverride, accountOverride>>;
            createSplitDeterministic: <chainOverride extends import("viem").Chain | undefined = undefined, accountOverride extends import("viem").Account | Address | undefined = undefined>(args: readonly [{
                recipients: readonly `0x${string}`[];
                allocations: readonly bigint[];
                totalAllocation: bigint;
                distributionIncentive: number;
            }, `0x${string}`, `0x${string}`, `0x${string}`], options?: Omit<import("viem").SimulateContractParameters<readonly [{
                readonly inputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "_splitsWarehouse";
                    readonly type: "address";
                }];
                readonly stateMutability: "nonpayable";
                readonly type: "constructor";
            }, {
                readonly anonymous: false;
                readonly inputs: readonly [{
                    readonly indexed: true;
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }, {
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly indexed: false;
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "splitParams";
                    readonly type: "tuple";
                }, {
                    readonly indexed: false;
                    readonly internalType: "address";
                    readonly name: "owner";
                    readonly type: "address";
                }, {
                    readonly indexed: false;
                    readonly internalType: "address";
                    readonly name: "creator";
                    readonly type: "address";
                }, {
                    readonly indexed: false;
                    readonly internalType: "bytes32";
                    readonly name: "salt";
                    readonly type: "bytes32";
                }];
                readonly name: "SplitCreated";
                readonly type: "event";
            }, {
                readonly anonymous: false;
                readonly inputs: readonly [{
                    readonly indexed: true;
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }, {
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly indexed: false;
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "splitParams";
                    readonly type: "tuple";
                }, {
                    readonly indexed: false;
                    readonly internalType: "address";
                    readonly name: "owner";
                    readonly type: "address";
                }, {
                    readonly indexed: false;
                    readonly internalType: "address";
                    readonly name: "creator";
                    readonly type: "address";
                }, {
                    readonly indexed: false;
                    readonly internalType: "uint256";
                    readonly name: "nonce";
                    readonly type: "uint256";
                }];
                readonly name: "SplitCreated";
                readonly type: "event";
            }, {
                readonly inputs: readonly [];
                readonly name: "SPLIT_WALLET_IMPLEMENTATION";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "";
                    readonly type: "address";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }, {
                    readonly internalType: "address";
                    readonly name: "_creator";
                    readonly type: "address";
                }];
                readonly name: "createSplit";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }];
                readonly stateMutability: "nonpayable";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }, {
                    readonly internalType: "address";
                    readonly name: "_creator";
                    readonly type: "address";
                }, {
                    readonly internalType: "bytes32";
                    readonly name: "_salt";
                    readonly type: "bytes32";
                }];
                readonly name: "createSplitDeterministic";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }];
                readonly stateMutability: "nonpayable";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }, {
                    readonly internalType: "bytes32";
                    readonly name: "_salt";
                    readonly type: "bytes32";
                }];
                readonly name: "isDeployed";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }, {
                    readonly internalType: "bool";
                    readonly name: "exists";
                    readonly type: "bool";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly internalType: "bytes32";
                    readonly name: "_hash";
                    readonly type: "bytes32";
                }];
                readonly name: "nonces";
                readonly outputs: readonly [{
                    readonly internalType: "uint256";
                    readonly name: "";
                    readonly type: "uint256";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }];
                readonly name: "predictDeterministicAddress";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "";
                    readonly type: "address";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }, {
                    readonly internalType: "bytes32";
                    readonly name: "_salt";
                    readonly type: "bytes32";
                }];
                readonly name: "predictDeterministicAddress";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "";
                    readonly type: "address";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }], "createSplitDeterministic", readonly [{
                recipients: readonly `0x${string}`[];
                allocations: readonly bigint[];
                totalAllocation: bigint;
                distributionIncentive: number;
            }, `0x${string}`, `0x${string}`, `0x${string}`], any, chainOverride, accountOverride>, "address" | "abi" | "functionName" | "args"> | undefined) => Promise<import("viem").SimulateContractReturnType<readonly [{
                readonly inputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "_splitsWarehouse";
                    readonly type: "address";
                }];
                readonly stateMutability: "nonpayable";
                readonly type: "constructor";
            }, {
                readonly anonymous: false;
                readonly inputs: readonly [{
                    readonly indexed: true;
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }, {
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly indexed: false;
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "splitParams";
                    readonly type: "tuple";
                }, {
                    readonly indexed: false;
                    readonly internalType: "address";
                    readonly name: "owner";
                    readonly type: "address";
                }, {
                    readonly indexed: false;
                    readonly internalType: "address";
                    readonly name: "creator";
                    readonly type: "address";
                }, {
                    readonly indexed: false;
                    readonly internalType: "bytes32";
                    readonly name: "salt";
                    readonly type: "bytes32";
                }];
                readonly name: "SplitCreated";
                readonly type: "event";
            }, {
                readonly anonymous: false;
                readonly inputs: readonly [{
                    readonly indexed: true;
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }, {
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly indexed: false;
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "splitParams";
                    readonly type: "tuple";
                }, {
                    readonly indexed: false;
                    readonly internalType: "address";
                    readonly name: "owner";
                    readonly type: "address";
                }, {
                    readonly indexed: false;
                    readonly internalType: "address";
                    readonly name: "creator";
                    readonly type: "address";
                }, {
                    readonly indexed: false;
                    readonly internalType: "uint256";
                    readonly name: "nonce";
                    readonly type: "uint256";
                }];
                readonly name: "SplitCreated";
                readonly type: "event";
            }, {
                readonly inputs: readonly [];
                readonly name: "SPLIT_WALLET_IMPLEMENTATION";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "";
                    readonly type: "address";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }, {
                    readonly internalType: "address";
                    readonly name: "_creator";
                    readonly type: "address";
                }];
                readonly name: "createSplit";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }];
                readonly stateMutability: "nonpayable";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }, {
                    readonly internalType: "address";
                    readonly name: "_creator";
                    readonly type: "address";
                }, {
                    readonly internalType: "bytes32";
                    readonly name: "_salt";
                    readonly type: "bytes32";
                }];
                readonly name: "createSplitDeterministic";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }];
                readonly stateMutability: "nonpayable";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }, {
                    readonly internalType: "bytes32";
                    readonly name: "_salt";
                    readonly type: "bytes32";
                }];
                readonly name: "isDeployed";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }, {
                    readonly internalType: "bool";
                    readonly name: "exists";
                    readonly type: "bool";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly internalType: "bytes32";
                    readonly name: "_hash";
                    readonly type: "bytes32";
                }];
                readonly name: "nonces";
                readonly outputs: readonly [{
                    readonly internalType: "uint256";
                    readonly name: "";
                    readonly type: "uint256";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }];
                readonly name: "predictDeterministicAddress";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "";
                    readonly type: "address";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }, {
                    readonly internalType: "bytes32";
                    readonly name: "_salt";
                    readonly type: "bytes32";
                }];
                readonly name: "predictDeterministicAddress";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "";
                    readonly type: "address";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }], "createSplitDeterministic", readonly [{
                recipients: readonly `0x${string}`[];
                allocations: readonly bigint[];
                totalAllocation: bigint;
                distributionIncentive: number;
            }, `0x${string}`, `0x${string}`, `0x${string}`], any, undefined, chainOverride, accountOverride>>;
        };
        createEventFilter: {
            SplitCreated: <const args extends {
                split?: `0x${string}` | `0x${string}`[] | null | undefined;
            } | {
                split?: `0x${string}` | `0x${string}`[] | null | undefined;
            } | undefined, strict extends boolean | undefined = undefined>(args: {
                split?: `0x${string}` | `0x${string}`[] | null | undefined;
            } | {
                split?: `0x${string}` | `0x${string}`[] | null | undefined;
            } | ({
                split?: `0x${string}` | `0x${string}`[] | null | undefined;
            } extends infer T ? T extends {
                split?: `0x${string}` | `0x${string}`[] | null | undefined;
            } ? T extends args ? Readonly<args> : never : never : never) | ({
                split?: `0x${string}` | `0x${string}`[] | null | undefined;
            } extends infer T_1 ? T_1 extends {
                split?: `0x${string}` | `0x${string}`[] | null | undefined;
            } ? T_1 extends args ? Readonly<args> : never : never : never), options?: ({
                fromBlock?: bigint | import("viem").BlockTag | undefined;
                toBlock?: bigint | import("viem").BlockTag | undefined;
            } & {
                strict?: strict | undefined;
            }) | undefined) => Promise<import("viem").CreateContractEventFilterReturnType<readonly [{
                readonly inputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "_splitsWarehouse";
                    readonly type: "address";
                }];
                readonly stateMutability: "nonpayable";
                readonly type: "constructor";
            }, {
                readonly anonymous: false;
                readonly inputs: readonly [{
                    readonly indexed: true;
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }, {
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly indexed: false;
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "splitParams";
                    readonly type: "tuple";
                }, {
                    readonly indexed: false;
                    readonly internalType: "address";
                    readonly name: "owner";
                    readonly type: "address";
                }, {
                    readonly indexed: false;
                    readonly internalType: "address";
                    readonly name: "creator";
                    readonly type: "address";
                }, {
                    readonly indexed: false;
                    readonly internalType: "bytes32";
                    readonly name: "salt";
                    readonly type: "bytes32";
                }];
                readonly name: "SplitCreated";
                readonly type: "event";
            }, {
                readonly anonymous: false;
                readonly inputs: readonly [{
                    readonly indexed: true;
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }, {
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly indexed: false;
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "splitParams";
                    readonly type: "tuple";
                }, {
                    readonly indexed: false;
                    readonly internalType: "address";
                    readonly name: "owner";
                    readonly type: "address";
                }, {
                    readonly indexed: false;
                    readonly internalType: "address";
                    readonly name: "creator";
                    readonly type: "address";
                }, {
                    readonly indexed: false;
                    readonly internalType: "uint256";
                    readonly name: "nonce";
                    readonly type: "uint256";
                }];
                readonly name: "SplitCreated";
                readonly type: "event";
            }, {
                readonly inputs: readonly [];
                readonly name: "SPLIT_WALLET_IMPLEMENTATION";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "";
                    readonly type: "address";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }, {
                    readonly internalType: "address";
                    readonly name: "_creator";
                    readonly type: "address";
                }];
                readonly name: "createSplit";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }];
                readonly stateMutability: "nonpayable";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }, {
                    readonly internalType: "address";
                    readonly name: "_creator";
                    readonly type: "address";
                }, {
                    readonly internalType: "bytes32";
                    readonly name: "_salt";
                    readonly type: "bytes32";
                }];
                readonly name: "createSplitDeterministic";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }];
                readonly stateMutability: "nonpayable";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }, {
                    readonly internalType: "bytes32";
                    readonly name: "_salt";
                    readonly type: "bytes32";
                }];
                readonly name: "isDeployed";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }, {
                    readonly internalType: "bool";
                    readonly name: "exists";
                    readonly type: "bool";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly internalType: "bytes32";
                    readonly name: "_hash";
                    readonly type: "bytes32";
                }];
                readonly name: "nonces";
                readonly outputs: readonly [{
                    readonly internalType: "uint256";
                    readonly name: "";
                    readonly type: "uint256";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }];
                readonly name: "predictDeterministicAddress";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "";
                    readonly type: "address";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }, {
                    readonly internalType: "bytes32";
                    readonly name: "_salt";
                    readonly type: "bytes32";
                }];
                readonly name: "predictDeterministicAddress";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "";
                    readonly type: "address";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }], "SplitCreated", args, strict>>;
        };
        getEvents: {
            SplitCreated: (args?: {
                split?: `0x${string}` | `0x${string}`[] | null | undefined;
            } | {
                split?: `0x${string}` | `0x${string}`[] | null | undefined;
            } | undefined, options?: {
                strict?: boolean | undefined;
                blockHash?: `0x${string}` | undefined;
                fromBlock?: bigint | import("viem").BlockTag | undefined;
                toBlock?: bigint | import("viem").BlockTag | undefined;
            } | undefined) => Promise<import("viem").GetContractEventsReturnType<readonly [{
                readonly inputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "_splitsWarehouse";
                    readonly type: "address";
                }];
                readonly stateMutability: "nonpayable";
                readonly type: "constructor";
            }, {
                readonly anonymous: false;
                readonly inputs: readonly [{
                    readonly indexed: true;
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }, {
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly indexed: false;
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "splitParams";
                    readonly type: "tuple";
                }, {
                    readonly indexed: false;
                    readonly internalType: "address";
                    readonly name: "owner";
                    readonly type: "address";
                }, {
                    readonly indexed: false;
                    readonly internalType: "address";
                    readonly name: "creator";
                    readonly type: "address";
                }, {
                    readonly indexed: false;
                    readonly internalType: "bytes32";
                    readonly name: "salt";
                    readonly type: "bytes32";
                }];
                readonly name: "SplitCreated";
                readonly type: "event";
            }, {
                readonly anonymous: false;
                readonly inputs: readonly [{
                    readonly indexed: true;
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }, {
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly indexed: false;
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "splitParams";
                    readonly type: "tuple";
                }, {
                    readonly indexed: false;
                    readonly internalType: "address";
                    readonly name: "owner";
                    readonly type: "address";
                }, {
                    readonly indexed: false;
                    readonly internalType: "address";
                    readonly name: "creator";
                    readonly type: "address";
                }, {
                    readonly indexed: false;
                    readonly internalType: "uint256";
                    readonly name: "nonce";
                    readonly type: "uint256";
                }];
                readonly name: "SplitCreated";
                readonly type: "event";
            }, {
                readonly inputs: readonly [];
                readonly name: "SPLIT_WALLET_IMPLEMENTATION";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "";
                    readonly type: "address";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }, {
                    readonly internalType: "address";
                    readonly name: "_creator";
                    readonly type: "address";
                }];
                readonly name: "createSplit";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }];
                readonly stateMutability: "nonpayable";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }, {
                    readonly internalType: "address";
                    readonly name: "_creator";
                    readonly type: "address";
                }, {
                    readonly internalType: "bytes32";
                    readonly name: "_salt";
                    readonly type: "bytes32";
                }];
                readonly name: "createSplitDeterministic";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }];
                readonly stateMutability: "nonpayable";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }, {
                    readonly internalType: "bytes32";
                    readonly name: "_salt";
                    readonly type: "bytes32";
                }];
                readonly name: "isDeployed";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }, {
                    readonly internalType: "bool";
                    readonly name: "exists";
                    readonly type: "bool";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly internalType: "bytes32";
                    readonly name: "_hash";
                    readonly type: "bytes32";
                }];
                readonly name: "nonces";
                readonly outputs: readonly [{
                    readonly internalType: "uint256";
                    readonly name: "";
                    readonly type: "uint256";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }];
                readonly name: "predictDeterministicAddress";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "";
                    readonly type: "address";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }, {
                    readonly internalType: "bytes32";
                    readonly name: "_salt";
                    readonly type: "bytes32";
                }];
                readonly name: "predictDeterministicAddress";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "";
                    readonly type: "address";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }], "SplitCreated">>;
        };
        watchEvent: {
            SplitCreated: (args: {
                split?: `0x${string}` | `0x${string}`[] | null | undefined;
            } | {
                split?: `0x${string}` | `0x${string}`[] | null | undefined;
            }, options: {
                batch?: boolean | undefined | undefined;
                pollingInterval?: number | undefined | undefined;
                strict?: boolean | undefined;
                fromBlock?: bigint | undefined;
                onError?: ((error: Error) => void) | undefined | undefined;
                onLogs: import("viem").WatchContractEventOnLogsFn<readonly [{
                    readonly inputs: readonly [{
                        readonly internalType: "address";
                        readonly name: "_splitsWarehouse";
                        readonly type: "address";
                    }];
                    readonly stateMutability: "nonpayable";
                    readonly type: "constructor";
                }, {
                    readonly anonymous: false;
                    readonly inputs: readonly [{
                        readonly indexed: true;
                        readonly internalType: "address";
                        readonly name: "split";
                        readonly type: "address";
                    }, {
                        readonly components: readonly [{
                            readonly internalType: "address[]";
                            readonly name: "recipients";
                            readonly type: "address[]";
                        }, {
                            readonly internalType: "uint256[]";
                            readonly name: "allocations";
                            readonly type: "uint256[]";
                        }, {
                            readonly internalType: "uint256";
                            readonly name: "totalAllocation";
                            readonly type: "uint256";
                        }, {
                            readonly internalType: "uint16";
                            readonly name: "distributionIncentive";
                            readonly type: "uint16";
                        }];
                        readonly indexed: false;
                        readonly internalType: "struct SplitV2Lib.Split";
                        readonly name: "splitParams";
                        readonly type: "tuple";
                    }, {
                        readonly indexed: false;
                        readonly internalType: "address";
                        readonly name: "owner";
                        readonly type: "address";
                    }, {
                        readonly indexed: false;
                        readonly internalType: "address";
                        readonly name: "creator";
                        readonly type: "address";
                    }, {
                        readonly indexed: false;
                        readonly internalType: "bytes32";
                        readonly name: "salt";
                        readonly type: "bytes32";
                    }];
                    readonly name: "SplitCreated";
                    readonly type: "event";
                }, {
                    readonly anonymous: false;
                    readonly inputs: readonly [{
                        readonly indexed: true;
                        readonly internalType: "address";
                        readonly name: "split";
                        readonly type: "address";
                    }, {
                        readonly components: readonly [{
                            readonly internalType: "address[]";
                            readonly name: "recipients";
                            readonly type: "address[]";
                        }, {
                            readonly internalType: "uint256[]";
                            readonly name: "allocations";
                            readonly type: "uint256[]";
                        }, {
                            readonly internalType: "uint256";
                            readonly name: "totalAllocation";
                            readonly type: "uint256";
                        }, {
                            readonly internalType: "uint16";
                            readonly name: "distributionIncentive";
                            readonly type: "uint16";
                        }];
                        readonly indexed: false;
                        readonly internalType: "struct SplitV2Lib.Split";
                        readonly name: "splitParams";
                        readonly type: "tuple";
                    }, {
                        readonly indexed: false;
                        readonly internalType: "address";
                        readonly name: "owner";
                        readonly type: "address";
                    }, {
                        readonly indexed: false;
                        readonly internalType: "address";
                        readonly name: "creator";
                        readonly type: "address";
                    }, {
                        readonly indexed: false;
                        readonly internalType: "uint256";
                        readonly name: "nonce";
                        readonly type: "uint256";
                    }];
                    readonly name: "SplitCreated";
                    readonly type: "event";
                }, {
                    readonly inputs: readonly [];
                    readonly name: "SPLIT_WALLET_IMPLEMENTATION";
                    readonly outputs: readonly [{
                        readonly internalType: "address";
                        readonly name: "";
                        readonly type: "address";
                    }];
                    readonly stateMutability: "view";
                    readonly type: "function";
                }, {
                    readonly inputs: readonly [{
                        readonly components: readonly [{
                            readonly internalType: "address[]";
                            readonly name: "recipients";
                            readonly type: "address[]";
                        }, {
                            readonly internalType: "uint256[]";
                            readonly name: "allocations";
                            readonly type: "uint256[]";
                        }, {
                            readonly internalType: "uint256";
                            readonly name: "totalAllocation";
                            readonly type: "uint256";
                        }, {
                            readonly internalType: "uint16";
                            readonly name: "distributionIncentive";
                            readonly type: "uint16";
                        }];
                        readonly internalType: "struct SplitV2Lib.Split";
                        readonly name: "_splitParams";
                        readonly type: "tuple";
                    }, {
                        readonly internalType: "address";
                        readonly name: "_owner";
                        readonly type: "address";
                    }, {
                        readonly internalType: "address";
                        readonly name: "_creator";
                        readonly type: "address";
                    }];
                    readonly name: "createSplit";
                    readonly outputs: readonly [{
                        readonly internalType: "address";
                        readonly name: "split";
                        readonly type: "address";
                    }];
                    readonly stateMutability: "nonpayable";
                    readonly type: "function";
                }, {
                    readonly inputs: readonly [{
                        readonly components: readonly [{
                            readonly internalType: "address[]";
                            readonly name: "recipients";
                            readonly type: "address[]";
                        }, {
                            readonly internalType: "uint256[]";
                            readonly name: "allocations";
                            readonly type: "uint256[]";
                        }, {
                            readonly internalType: "uint256";
                            readonly name: "totalAllocation";
                            readonly type: "uint256";
                        }, {
                            readonly internalType: "uint16";
                            readonly name: "distributionIncentive";
                            readonly type: "uint16";
                        }];
                        readonly internalType: "struct SplitV2Lib.Split";
                        readonly name: "_splitParams";
                        readonly type: "tuple";
                    }, {
                        readonly internalType: "address";
                        readonly name: "_owner";
                        readonly type: "address";
                    }, {
                        readonly internalType: "address";
                        readonly name: "_creator";
                        readonly type: "address";
                    }, {
                        readonly internalType: "bytes32";
                        readonly name: "_salt";
                        readonly type: "bytes32";
                    }];
                    readonly name: "createSplitDeterministic";
                    readonly outputs: readonly [{
                        readonly internalType: "address";
                        readonly name: "split";
                        readonly type: "address";
                    }];
                    readonly stateMutability: "nonpayable";
                    readonly type: "function";
                }, {
                    readonly inputs: readonly [{
                        readonly components: readonly [{
                            readonly internalType: "address[]";
                            readonly name: "recipients";
                            readonly type: "address[]";
                        }, {
                            readonly internalType: "uint256[]";
                            readonly name: "allocations";
                            readonly type: "uint256[]";
                        }, {
                            readonly internalType: "uint256";
                            readonly name: "totalAllocation";
                            readonly type: "uint256";
                        }, {
                            readonly internalType: "uint16";
                            readonly name: "distributionIncentive";
                            readonly type: "uint16";
                        }];
                        readonly internalType: "struct SplitV2Lib.Split";
                        readonly name: "_splitParams";
                        readonly type: "tuple";
                    }, {
                        readonly internalType: "address";
                        readonly name: "_owner";
                        readonly type: "address";
                    }, {
                        readonly internalType: "bytes32";
                        readonly name: "_salt";
                        readonly type: "bytes32";
                    }];
                    readonly name: "isDeployed";
                    readonly outputs: readonly [{
                        readonly internalType: "address";
                        readonly name: "split";
                        readonly type: "address";
                    }, {
                        readonly internalType: "bool";
                        readonly name: "exists";
                        readonly type: "bool";
                    }];
                    readonly stateMutability: "view";
                    readonly type: "function";
                }, {
                    readonly inputs: readonly [{
                        readonly internalType: "bytes32";
                        readonly name: "_hash";
                        readonly type: "bytes32";
                    }];
                    readonly name: "nonces";
                    readonly outputs: readonly [{
                        readonly internalType: "uint256";
                        readonly name: "";
                        readonly type: "uint256";
                    }];
                    readonly stateMutability: "view";
                    readonly type: "function";
                }, {
                    readonly inputs: readonly [{
                        readonly components: readonly [{
                            readonly internalType: "address[]";
                            readonly name: "recipients";
                            readonly type: "address[]";
                        }, {
                            readonly internalType: "uint256[]";
                            readonly name: "allocations";
                            readonly type: "uint256[]";
                        }, {
                            readonly internalType: "uint256";
                            readonly name: "totalAllocation";
                            readonly type: "uint256";
                        }, {
                            readonly internalType: "uint16";
                            readonly name: "distributionIncentive";
                            readonly type: "uint16";
                        }];
                        readonly internalType: "struct SplitV2Lib.Split";
                        readonly name: "_splitParams";
                        readonly type: "tuple";
                    }, {
                        readonly internalType: "address";
                        readonly name: "_owner";
                        readonly type: "address";
                    }];
                    readonly name: "predictDeterministicAddress";
                    readonly outputs: readonly [{
                        readonly internalType: "address";
                        readonly name: "";
                        readonly type: "address";
                    }];
                    readonly stateMutability: "view";
                    readonly type: "function";
                }, {
                    readonly inputs: readonly [{
                        readonly components: readonly [{
                            readonly internalType: "address[]";
                            readonly name: "recipients";
                            readonly type: "address[]";
                        }, {
                            readonly internalType: "uint256[]";
                            readonly name: "allocations";
                            readonly type: "uint256[]";
                        }, {
                            readonly internalType: "uint256";
                            readonly name: "totalAllocation";
                            readonly type: "uint256";
                        }, {
                            readonly internalType: "uint16";
                            readonly name: "distributionIncentive";
                            readonly type: "uint16";
                        }];
                        readonly internalType: "struct SplitV2Lib.Split";
                        readonly name: "_splitParams";
                        readonly type: "tuple";
                    }, {
                        readonly internalType: "address";
                        readonly name: "_owner";
                        readonly type: "address";
                    }, {
                        readonly internalType: "bytes32";
                        readonly name: "_salt";
                        readonly type: "bytes32";
                    }];
                    readonly name: "predictDeterministicAddress";
                    readonly outputs: readonly [{
                        readonly internalType: "address";
                        readonly name: "";
                        readonly type: "address";
                    }];
                    readonly stateMutability: "view";
                    readonly type: "function";
                }], "SplitCreated", undefined>;
                poll?: true | undefined | undefined;
            }) => import("viem").WatchContractEventReturnType;
        };
        write: {
            createSplit: <chainOverride extends import("viem").Chain | undefined, options extends import("viem").UnionOmit<import("viem").WriteContractParameters<readonly [{
                readonly inputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "_splitsWarehouse";
                    readonly type: "address";
                }];
                readonly stateMutability: "nonpayable";
                readonly type: "constructor";
            }, {
                readonly anonymous: false;
                readonly inputs: readonly [{
                    readonly indexed: true;
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }, {
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly indexed: false;
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "splitParams";
                    readonly type: "tuple";
                }, {
                    readonly indexed: false;
                    readonly internalType: "address";
                    readonly name: "owner";
                    readonly type: "address";
                }, {
                    readonly indexed: false;
                    readonly internalType: "address";
                    readonly name: "creator";
                    readonly type: "address";
                }, {
                    readonly indexed: false;
                    readonly internalType: "bytes32";
                    readonly name: "salt";
                    readonly type: "bytes32";
                }];
                readonly name: "SplitCreated";
                readonly type: "event";
            }, {
                readonly anonymous: false;
                readonly inputs: readonly [{
                    readonly indexed: true;
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }, {
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly indexed: false;
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "splitParams";
                    readonly type: "tuple";
                }, {
                    readonly indexed: false;
                    readonly internalType: "address";
                    readonly name: "owner";
                    readonly type: "address";
                }, {
                    readonly indexed: false;
                    readonly internalType: "address";
                    readonly name: "creator";
                    readonly type: "address";
                }, {
                    readonly indexed: false;
                    readonly internalType: "uint256";
                    readonly name: "nonce";
                    readonly type: "uint256";
                }];
                readonly name: "SplitCreated";
                readonly type: "event";
            }, {
                readonly inputs: readonly [];
                readonly name: "SPLIT_WALLET_IMPLEMENTATION";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "";
                    readonly type: "address";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }, {
                    readonly internalType: "address";
                    readonly name: "_creator";
                    readonly type: "address";
                }];
                readonly name: "createSplit";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }];
                readonly stateMutability: "nonpayable";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }, {
                    readonly internalType: "address";
                    readonly name: "_creator";
                    readonly type: "address";
                }, {
                    readonly internalType: "bytes32";
                    readonly name: "_salt";
                    readonly type: "bytes32";
                }];
                readonly name: "createSplitDeterministic";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }];
                readonly stateMutability: "nonpayable";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }, {
                    readonly internalType: "bytes32";
                    readonly name: "_salt";
                    readonly type: "bytes32";
                }];
                readonly name: "isDeployed";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }, {
                    readonly internalType: "bool";
                    readonly name: "exists";
                    readonly type: "bool";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly internalType: "bytes32";
                    readonly name: "_hash";
                    readonly type: "bytes32";
                }];
                readonly name: "nonces";
                readonly outputs: readonly [{
                    readonly internalType: "uint256";
                    readonly name: "";
                    readonly type: "uint256";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }];
                readonly name: "predictDeterministicAddress";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "";
                    readonly type: "address";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }, {
                    readonly internalType: "bytes32";
                    readonly name: "_salt";
                    readonly type: "bytes32";
                }];
                readonly name: "predictDeterministicAddress";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "";
                    readonly type: "address";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }], "createSplit", readonly [{
                recipients: readonly `0x${string}`[];
                allocations: readonly bigint[];
                totalAllocation: bigint;
                distributionIncentive: number;
            }, `0x${string}`, `0x${string}`], any, undefined, chainOverride>, "address" | "abi" | "functionName" | "args"> extends infer T ? { [K in keyof T]: import("viem").UnionOmit<import("viem").WriteContractParameters<readonly [{
                readonly inputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "_splitsWarehouse";
                    readonly type: "address";
                }];
                readonly stateMutability: "nonpayable";
                readonly type: "constructor";
            }, {
                readonly anonymous: false;
                readonly inputs: readonly [{
                    readonly indexed: true;
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }, {
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly indexed: false;
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "splitParams";
                    readonly type: "tuple";
                }, {
                    readonly indexed: false;
                    readonly internalType: "address";
                    readonly name: "owner";
                    readonly type: "address";
                }, {
                    readonly indexed: false;
                    readonly internalType: "address";
                    readonly name: "creator";
                    readonly type: "address";
                }, {
                    readonly indexed: false;
                    readonly internalType: "bytes32";
                    readonly name: "salt";
                    readonly type: "bytes32";
                }];
                readonly name: "SplitCreated";
                readonly type: "event";
            }, {
                readonly anonymous: false;
                readonly inputs: readonly [{
                    readonly indexed: true;
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }, {
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly indexed: false;
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "splitParams";
                    readonly type: "tuple";
                }, {
                    readonly indexed: false;
                    readonly internalType: "address";
                    readonly name: "owner";
                    readonly type: "address";
                }, {
                    readonly indexed: false;
                    readonly internalType: "address";
                    readonly name: "creator";
                    readonly type: "address";
                }, {
                    readonly indexed: false;
                    readonly internalType: "uint256";
                    readonly name: "nonce";
                    readonly type: "uint256";
                }];
                readonly name: "SplitCreated";
                readonly type: "event";
            }, {
                readonly inputs: readonly [];
                readonly name: "SPLIT_WALLET_IMPLEMENTATION";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "";
                    readonly type: "address";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }, {
                    readonly internalType: "address";
                    readonly name: "_creator";
                    readonly type: "address";
                }];
                readonly name: "createSplit";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }];
                readonly stateMutability: "nonpayable";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }, {
                    readonly internalType: "address";
                    readonly name: "_creator";
                    readonly type: "address";
                }, {
                    readonly internalType: "bytes32";
                    readonly name: "_salt";
                    readonly type: "bytes32";
                }];
                readonly name: "createSplitDeterministic";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }];
                readonly stateMutability: "nonpayable";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }, {
                    readonly internalType: "bytes32";
                    readonly name: "_salt";
                    readonly type: "bytes32";
                }];
                readonly name: "isDeployed";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }, {
                    readonly internalType: "bool";
                    readonly name: "exists";
                    readonly type: "bool";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly internalType: "bytes32";
                    readonly name: "_hash";
                    readonly type: "bytes32";
                }];
                readonly name: "nonces";
                readonly outputs: readonly [{
                    readonly internalType: "uint256";
                    readonly name: "";
                    readonly type: "uint256";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }];
                readonly name: "predictDeterministicAddress";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "";
                    readonly type: "address";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }, {
                    readonly internalType: "bytes32";
                    readonly name: "_salt";
                    readonly type: "bytes32";
                }];
                readonly name: "predictDeterministicAddress";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "";
                    readonly type: "address";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }], "createSplit", readonly [{
                recipients: readonly `0x${string}`[];
                allocations: readonly bigint[];
                totalAllocation: bigint;
                distributionIncentive: number;
            }, `0x${string}`, `0x${string}`], any, undefined, chainOverride>, "address" | "abi" | "functionName" | "args">[K]; } : never>(args: readonly [{
                recipients: readonly `0x${string}`[];
                allocations: readonly bigint[];
                totalAllocation: bigint;
                distributionIncentive: number;
            }, `0x${string}`, `0x${string}`], options: options) => Promise<import("viem").WriteContractReturnType>;
            createSplitDeterministic: <chainOverride extends import("viem").Chain | undefined, options extends import("viem").UnionOmit<import("viem").WriteContractParameters<readonly [{
                readonly inputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "_splitsWarehouse";
                    readonly type: "address";
                }];
                readonly stateMutability: "nonpayable";
                readonly type: "constructor";
            }, {
                readonly anonymous: false;
                readonly inputs: readonly [{
                    readonly indexed: true;
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }, {
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly indexed: false;
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "splitParams";
                    readonly type: "tuple";
                }, {
                    readonly indexed: false;
                    readonly internalType: "address";
                    readonly name: "owner";
                    readonly type: "address";
                }, {
                    readonly indexed: false;
                    readonly internalType: "address";
                    readonly name: "creator";
                    readonly type: "address";
                }, {
                    readonly indexed: false;
                    readonly internalType: "bytes32";
                    readonly name: "salt";
                    readonly type: "bytes32";
                }];
                readonly name: "SplitCreated";
                readonly type: "event";
            }, {
                readonly anonymous: false;
                readonly inputs: readonly [{
                    readonly indexed: true;
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }, {
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly indexed: false;
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "splitParams";
                    readonly type: "tuple";
                }, {
                    readonly indexed: false;
                    readonly internalType: "address";
                    readonly name: "owner";
                    readonly type: "address";
                }, {
                    readonly indexed: false;
                    readonly internalType: "address";
                    readonly name: "creator";
                    readonly type: "address";
                }, {
                    readonly indexed: false;
                    readonly internalType: "uint256";
                    readonly name: "nonce";
                    readonly type: "uint256";
                }];
                readonly name: "SplitCreated";
                readonly type: "event";
            }, {
                readonly inputs: readonly [];
                readonly name: "SPLIT_WALLET_IMPLEMENTATION";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "";
                    readonly type: "address";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }, {
                    readonly internalType: "address";
                    readonly name: "_creator";
                    readonly type: "address";
                }];
                readonly name: "createSplit";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }];
                readonly stateMutability: "nonpayable";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }, {
                    readonly internalType: "address";
                    readonly name: "_creator";
                    readonly type: "address";
                }, {
                    readonly internalType: "bytes32";
                    readonly name: "_salt";
                    readonly type: "bytes32";
                }];
                readonly name: "createSplitDeterministic";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }];
                readonly stateMutability: "nonpayable";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }, {
                    readonly internalType: "bytes32";
                    readonly name: "_salt";
                    readonly type: "bytes32";
                }];
                readonly name: "isDeployed";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }, {
                    readonly internalType: "bool";
                    readonly name: "exists";
                    readonly type: "bool";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly internalType: "bytes32";
                    readonly name: "_hash";
                    readonly type: "bytes32";
                }];
                readonly name: "nonces";
                readonly outputs: readonly [{
                    readonly internalType: "uint256";
                    readonly name: "";
                    readonly type: "uint256";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }];
                readonly name: "predictDeterministicAddress";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "";
                    readonly type: "address";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }, {
                    readonly internalType: "bytes32";
                    readonly name: "_salt";
                    readonly type: "bytes32";
                }];
                readonly name: "predictDeterministicAddress";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "";
                    readonly type: "address";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }], "createSplitDeterministic", readonly [{
                recipients: readonly `0x${string}`[];
                allocations: readonly bigint[];
                totalAllocation: bigint;
                distributionIncentive: number;
            }, `0x${string}`, `0x${string}`, `0x${string}`], any, undefined, chainOverride>, "address" | "abi" | "functionName" | "args"> extends infer T ? { [K in keyof T]: import("viem").UnionOmit<import("viem").WriteContractParameters<readonly [{
                readonly inputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "_splitsWarehouse";
                    readonly type: "address";
                }];
                readonly stateMutability: "nonpayable";
                readonly type: "constructor";
            }, {
                readonly anonymous: false;
                readonly inputs: readonly [{
                    readonly indexed: true;
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }, {
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly indexed: false;
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "splitParams";
                    readonly type: "tuple";
                }, {
                    readonly indexed: false;
                    readonly internalType: "address";
                    readonly name: "owner";
                    readonly type: "address";
                }, {
                    readonly indexed: false;
                    readonly internalType: "address";
                    readonly name: "creator";
                    readonly type: "address";
                }, {
                    readonly indexed: false;
                    readonly internalType: "bytes32";
                    readonly name: "salt";
                    readonly type: "bytes32";
                }];
                readonly name: "SplitCreated";
                readonly type: "event";
            }, {
                readonly anonymous: false;
                readonly inputs: readonly [{
                    readonly indexed: true;
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }, {
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly indexed: false;
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "splitParams";
                    readonly type: "tuple";
                }, {
                    readonly indexed: false;
                    readonly internalType: "address";
                    readonly name: "owner";
                    readonly type: "address";
                }, {
                    readonly indexed: false;
                    readonly internalType: "address";
                    readonly name: "creator";
                    readonly type: "address";
                }, {
                    readonly indexed: false;
                    readonly internalType: "uint256";
                    readonly name: "nonce";
                    readonly type: "uint256";
                }];
                readonly name: "SplitCreated";
                readonly type: "event";
            }, {
                readonly inputs: readonly [];
                readonly name: "SPLIT_WALLET_IMPLEMENTATION";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "";
                    readonly type: "address";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }, {
                    readonly internalType: "address";
                    readonly name: "_creator";
                    readonly type: "address";
                }];
                readonly name: "createSplit";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }];
                readonly stateMutability: "nonpayable";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }, {
                    readonly internalType: "address";
                    readonly name: "_creator";
                    readonly type: "address";
                }, {
                    readonly internalType: "bytes32";
                    readonly name: "_salt";
                    readonly type: "bytes32";
                }];
                readonly name: "createSplitDeterministic";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }];
                readonly stateMutability: "nonpayable";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }, {
                    readonly internalType: "bytes32";
                    readonly name: "_salt";
                    readonly type: "bytes32";
                }];
                readonly name: "isDeployed";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "split";
                    readonly type: "address";
                }, {
                    readonly internalType: "bool";
                    readonly name: "exists";
                    readonly type: "bool";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly internalType: "bytes32";
                    readonly name: "_hash";
                    readonly type: "bytes32";
                }];
                readonly name: "nonces";
                readonly outputs: readonly [{
                    readonly internalType: "uint256";
                    readonly name: "";
                    readonly type: "uint256";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }];
                readonly name: "predictDeterministicAddress";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "";
                    readonly type: "address";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }, {
                readonly inputs: readonly [{
                    readonly components: readonly [{
                        readonly internalType: "address[]";
                        readonly name: "recipients";
                        readonly type: "address[]";
                    }, {
                        readonly internalType: "uint256[]";
                        readonly name: "allocations";
                        readonly type: "uint256[]";
                    }, {
                        readonly internalType: "uint256";
                        readonly name: "totalAllocation";
                        readonly type: "uint256";
                    }, {
                        readonly internalType: "uint16";
                        readonly name: "distributionIncentive";
                        readonly type: "uint16";
                    }];
                    readonly internalType: "struct SplitV2Lib.Split";
                    readonly name: "_splitParams";
                    readonly type: "tuple";
                }, {
                    readonly internalType: "address";
                    readonly name: "_owner";
                    readonly type: "address";
                }, {
                    readonly internalType: "bytes32";
                    readonly name: "_salt";
                    readonly type: "bytes32";
                }];
                readonly name: "predictDeterministicAddress";
                readonly outputs: readonly [{
                    readonly internalType: "address";
                    readonly name: "";
                    readonly type: "address";
                }];
                readonly stateMutability: "view";
                readonly type: "function";
            }], "createSplitDeterministic", readonly [{
                recipients: readonly `0x${string}`[];
                allocations: readonly bigint[];
                totalAllocation: bigint;
                distributionIncentive: number;
            }, `0x${string}`, `0x${string}`, `0x${string}`], any, undefined, chainOverride>, "address" | "abi" | "functionName" | "args">[K]; } : never>(args: readonly [{
                recipients: readonly `0x${string}`[];
                allocations: readonly bigint[];
                totalAllocation: bigint;
                distributionIncentive: number;
            }, `0x${string}`, `0x${string}`, `0x${string}`], options: options) => Promise<import("viem").WriteContractReturnType>;
        };
        address: `0x${string}`;
        abi: readonly [{
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_splitsWarehouse";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "constructor";
        }, {
            readonly anonymous: false;
            readonly inputs: readonly [{
                readonly indexed: true;
                readonly internalType: "address";
                readonly name: "split";
                readonly type: "address";
            }, {
                readonly components: readonly [{
                    readonly internalType: "address[]";
                    readonly name: "recipients";
                    readonly type: "address[]";
                }, {
                    readonly internalType: "uint256[]";
                    readonly name: "allocations";
                    readonly type: "uint256[]";
                }, {
                    readonly internalType: "uint256";
                    readonly name: "totalAllocation";
                    readonly type: "uint256";
                }, {
                    readonly internalType: "uint16";
                    readonly name: "distributionIncentive";
                    readonly type: "uint16";
                }];
                readonly indexed: false;
                readonly internalType: "struct SplitV2Lib.Split";
                readonly name: "splitParams";
                readonly type: "tuple";
            }, {
                readonly indexed: false;
                readonly internalType: "address";
                readonly name: "owner";
                readonly type: "address";
            }, {
                readonly indexed: false;
                readonly internalType: "address";
                readonly name: "creator";
                readonly type: "address";
            }, {
                readonly indexed: false;
                readonly internalType: "bytes32";
                readonly name: "salt";
                readonly type: "bytes32";
            }];
            readonly name: "SplitCreated";
            readonly type: "event";
        }, {
            readonly anonymous: false;
            readonly inputs: readonly [{
                readonly indexed: true;
                readonly internalType: "address";
                readonly name: "split";
                readonly type: "address";
            }, {
                readonly components: readonly [{
                    readonly internalType: "address[]";
                    readonly name: "recipients";
                    readonly type: "address[]";
                }, {
                    readonly internalType: "uint256[]";
                    readonly name: "allocations";
                    readonly type: "uint256[]";
                }, {
                    readonly internalType: "uint256";
                    readonly name: "totalAllocation";
                    readonly type: "uint256";
                }, {
                    readonly internalType: "uint16";
                    readonly name: "distributionIncentive";
                    readonly type: "uint16";
                }];
                readonly indexed: false;
                readonly internalType: "struct SplitV2Lib.Split";
                readonly name: "splitParams";
                readonly type: "tuple";
            }, {
                readonly indexed: false;
                readonly internalType: "address";
                readonly name: "owner";
                readonly type: "address";
            }, {
                readonly indexed: false;
                readonly internalType: "address";
                readonly name: "creator";
                readonly type: "address";
            }, {
                readonly indexed: false;
                readonly internalType: "uint256";
                readonly name: "nonce";
                readonly type: "uint256";
            }];
            readonly name: "SplitCreated";
            readonly type: "event";
        }, {
            readonly inputs: readonly [];
            readonly name: "SPLIT_WALLET_IMPLEMENTATION";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly components: readonly [{
                    readonly internalType: "address[]";
                    readonly name: "recipients";
                    readonly type: "address[]";
                }, {
                    readonly internalType: "uint256[]";
                    readonly name: "allocations";
                    readonly type: "uint256[]";
                }, {
                    readonly internalType: "uint256";
                    readonly name: "totalAllocation";
                    readonly type: "uint256";
                }, {
                    readonly internalType: "uint16";
                    readonly name: "distributionIncentive";
                    readonly type: "uint16";
                }];
                readonly internalType: "struct SplitV2Lib.Split";
                readonly name: "_splitParams";
                readonly type: "tuple";
            }, {
                readonly internalType: "address";
                readonly name: "_owner";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "_creator";
                readonly type: "address";
            }];
            readonly name: "createSplit";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "split";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly components: readonly [{
                    readonly internalType: "address[]";
                    readonly name: "recipients";
                    readonly type: "address[]";
                }, {
                    readonly internalType: "uint256[]";
                    readonly name: "allocations";
                    readonly type: "uint256[]";
                }, {
                    readonly internalType: "uint256";
                    readonly name: "totalAllocation";
                    readonly type: "uint256";
                }, {
                    readonly internalType: "uint16";
                    readonly name: "distributionIncentive";
                    readonly type: "uint16";
                }];
                readonly internalType: "struct SplitV2Lib.Split";
                readonly name: "_splitParams";
                readonly type: "tuple";
            }, {
                readonly internalType: "address";
                readonly name: "_owner";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "_creator";
                readonly type: "address";
            }, {
                readonly internalType: "bytes32";
                readonly name: "_salt";
                readonly type: "bytes32";
            }];
            readonly name: "createSplitDeterministic";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "split";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly components: readonly [{
                    readonly internalType: "address[]";
                    readonly name: "recipients";
                    readonly type: "address[]";
                }, {
                    readonly internalType: "uint256[]";
                    readonly name: "allocations";
                    readonly type: "uint256[]";
                }, {
                    readonly internalType: "uint256";
                    readonly name: "totalAllocation";
                    readonly type: "uint256";
                }, {
                    readonly internalType: "uint16";
                    readonly name: "distributionIncentive";
                    readonly type: "uint16";
                }];
                readonly internalType: "struct SplitV2Lib.Split";
                readonly name: "_splitParams";
                readonly type: "tuple";
            }, {
                readonly internalType: "address";
                readonly name: "_owner";
                readonly type: "address";
            }, {
                readonly internalType: "bytes32";
                readonly name: "_salt";
                readonly type: "bytes32";
            }];
            readonly name: "isDeployed";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "split";
                readonly type: "address";
            }, {
                readonly internalType: "bool";
                readonly name: "exists";
                readonly type: "bool";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "bytes32";
                readonly name: "_hash";
                readonly type: "bytes32";
            }];
            readonly name: "nonces";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly components: readonly [{
                    readonly internalType: "address[]";
                    readonly name: "recipients";
                    readonly type: "address[]";
                }, {
                    readonly internalType: "uint256[]";
                    readonly name: "allocations";
                    readonly type: "uint256[]";
                }, {
                    readonly internalType: "uint256";
                    readonly name: "totalAllocation";
                    readonly type: "uint256";
                }, {
                    readonly internalType: "uint16";
                    readonly name: "distributionIncentive";
                    readonly type: "uint16";
                }];
                readonly internalType: "struct SplitV2Lib.Split";
                readonly name: "_splitParams";
                readonly type: "tuple";
            }, {
                readonly internalType: "address";
                readonly name: "_owner";
                readonly type: "address";
            }];
            readonly name: "predictDeterministicAddress";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly components: readonly [{
                    readonly internalType: "address[]";
                    readonly name: "recipients";
                    readonly type: "address[]";
                }, {
                    readonly internalType: "uint256[]";
                    readonly name: "allocations";
                    readonly type: "uint256[]";
                }, {
                    readonly internalType: "uint256";
                    readonly name: "totalAllocation";
                    readonly type: "uint256";
                }, {
                    readonly internalType: "uint16";
                    readonly name: "distributionIncentive";
                    readonly type: "uint16";
                }];
                readonly internalType: "struct SplitV2Lib.Split";
                readonly name: "_splitParams";
                readonly type: "tuple";
            }, {
                readonly internalType: "address";
                readonly name: "_owner";
                readonly type: "address";
            }, {
                readonly internalType: "bytes32";
                readonly name: "_salt";
                readonly type: "bytes32";
            }];
            readonly name: "predictDeterministicAddress";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }];
    };
    protected _createSplit({ recipients, distributorFeePercent, totalAllocationPercent, splitType, ownerAddress: controllerAddress, creatorAddress, salt, chainId, version, transactionOverrides, }: CreateSplitV2Config): Promise<TransactionFormat>;
    protected _transferOwnership({ splitAddress, newOwner: newController, transactionOverrides, }: TransferOwnershipConfig): Promise<TransactionFormat>;
    protected _setPaused({ splitAddress, paused, transactionOverrides, }: SetPausedConfig): Promise<TransactionFormat>;
    protected _execCalls({ splitAddress, calls, transactionOverrides, }: SplitV2ExecCallsConfig): Promise<TransactionFormat>;
    protected _updateSplit({ splitAddress, recipients, distributorFeePercent, totalAllocationPercent, transactionOverrides, }: UpdateSplitV2Config): Promise<TransactionFormat>;
    protected _distribute({ splitAddress, tokenAddress: token, distributorAddress, chainId, splitFields, transactionOverrides, }: DistributeSplitConfig): Promise<TransactionFormat>;
    protected _paused(splitAddress: Address, chainId: number): Promise<boolean>;
    protected _owner(splitAddress: Address, chainId: number): Promise<Address>;
    protected _checkForSplitExistence({ splitAddress, chainId, }: {
        splitAddress: Address;
        chainId: number;
    }): Promise<void>;
    protected _getSplitVersion({ splitAddress, chainId, }: {
        splitAddress: Address;
        chainId: number;
    }): Promise<SplitV2Versions>;
    protected _getSplitMetadataViaProvider({ splitAddress, chainId, cachedData, }: {
        splitAddress: Address;
        chainId: number;
        cachedData?: {
            blocks?: {
                createBlock?: bigint;
                updateBlock?: bigint;
                latestScannedBlock: bigint;
            };
            blockRange?: bigint;
        };
    }): Promise<{
        split: Split;
        blockRange: bigint;
    }>;
    protected _buildSplitFromLogs({ splitAddress, chainId, createLog, updateLog, }: {
        splitAddress: Address;
        chainId: number;
        createLog?: SplitV2CreatedLogType;
        updateLog?: SplitV2UpdatedLogType;
    }): Promise<Split>;
    protected _getSplitV2Contract(splitAddress: Address, chainId: number): GetContractReturnType<SplitV2ABI, SplitsPublicClient>;
    protected _eip712Domain(splitAddress: Address, chainId: number): Promise<{
        domain: TypedDataDomain;
    }>;
    protected _requireOwner(splitAddress: Address): Promise<void>;
}
export declare class SplitV2Client extends SplitV2Transactions {
    readonly eventTopics: {
        [key: string]: Hex[];
    };
    readonly callData: SplitV2CallData;
    readonly estimateGas: SplitV2GasEstimates;
    readonly sign: SplitV2Signature;
    constructor(clientArgs: SplitsClientConfig);
    _submitCreateSplitTransaction(createSplitArgs: CreateSplitV2Config): Promise<{
        txHash: Hash;
    }>;
    createSplit(createSplitArgs: CreateSplitV2Config): Promise<{
        splitAddress: Address;
        event: Log;
    }>;
    _submitTransferOwnershipTransaction(transferOwnershipArgs: TransferOwnershipConfig): Promise<{
        txHash: Hash;
    }>;
    transferOwnership(transferOwnershipArgs: TransferOwnershipConfig): Promise<{
        event: Log;
    }>;
    _submitSetPauseTransaction(setPausedArgs: SetPausedConfig): Promise<{
        txHash: Hash;
    }>;
    setPause(setPausedArgs: SetPausedConfig): Promise<{
        event: Log;
    }>;
    _submitExecCallsTransaction(execCallsArgs: SplitV2ExecCallsConfig): Promise<{
        txHash: Hash;
    }>;
    execCalls(execCallsArgs: SplitV2ExecCallsConfig): Promise<{
        event: Log;
    }>;
    _submitDistributeTransaction(distributeArgs: DistributeSplitConfig): Promise<{
        txHash: Hash;
    }>;
    distribute(distributeArgs: DistributeSplitConfig): Promise<{
        event: Log;
    }>;
    _submitUpdateSplitTransaction(updateSplitArgs: UpdateSplitV2Config): Promise<{
        txHash: Hash;
    }>;
    updateSplit(updateSplitArgs: UpdateSplitV2Config): Promise<{
        event: Log;
    }>;
    private _predictDeterministicAddress;
    predictDeterministicAddress(createSplitArgs: CreateSplitV2Config): Promise<{
        splitAddress: Address;
    }>;
    private _isDeployed;
    isDeployed(createSplitArgs: CreateSplitV2Config): Promise<{
        splitAddress: Address;
        deployed: boolean;
    }>;
    getSplitBalance({ splitAddress, tokenAddress, chainId, }: {
        splitAddress: Address;
        tokenAddress: Address;
        chainId?: number;
    }): Promise<{
        splitBalance: bigint;
        warehouseBalance: bigint;
    }>;
    getReplaySafeHash({ splitAddress, hash, chainId, }: {
        splitAddress: Address;
        hash: Hex;
        chainId?: number;
    }): Promise<{
        hash: Hex;
    }>;
    isValidSignature({ splitAddress, hash, signature, chainId, }: {
        splitAddress: Address;
        hash: Hex;
        signature: Hex;
        chainId?: number;
    }): Promise<{
        isValid: boolean;
    }>;
    eip712Domain({ splitAddress, chainId, }: {
        splitAddress: Address;
        chainId?: number;
    }): Promise<{
        domain: TypedDataDomain;
    }>;
    paused({ splitAddress, chainId, }: {
        splitAddress: Address;
        chainId?: number;
    }): Promise<{
        paused: boolean;
    }>;
    owner({ splitAddress, chainId, }: {
        splitAddress: Address;
        chainId?: number;
    }): Promise<{
        ownerAddress: Address;
    }>;
    _doesSplitExist({ splitAddress, chainId, }: {
        splitAddress: Address;
        chainId: number;
    }): Promise<boolean>;
    _getSplitFromLogs({ splitAddress, chainId, createLog, updateLog, }: {
        splitAddress: Address;
        chainId: number;
        createLog: SplitV2CreatedLogType;
        updateLog?: SplitV2UpdatedLogType;
    }): Promise<Split>;
    getSplitVersion({ splitAddress, chainId, }: {
        splitAddress: Address;
        chainId: number;
    }): Promise<SplitV2Versions>;
    getSplitMetadataViaProvider({ splitAddress, chainId, cachedData, }: {
        splitAddress: string;
        chainId?: number;
        cachedData?: {
            blocks?: {
                createBlock?: bigint;
                updateBlock?: bigint;
                latestScannedBlock: bigint;
            };
            blockRange?: bigint;
        };
    }): Promise<{
        split: Split;
        blockRange: bigint;
    }>;
    getSplitActiveBalances({ splitAddress, chainId, erc20TokenList, }: {
        splitAddress: string;
        chainId?: number;
        erc20TokenList?: string[];
    }): Promise<Pick<FormattedSplitEarnings, 'activeBalances'>>;
}
export interface SplitV2Client extends BaseClientMixin {
}
declare class SplitV2GasEstimates extends SplitV2Transactions {
    constructor(clientArgs: SplitsClientConfig);
    createSplit(createSplitArgs: CreateSplitV2Config): Promise<bigint>;
    transferOwnership(transferOwnershipArgs: TransferOwnershipConfig): Promise<bigint>;
    setPaused(setPausedArgs: SetPausedConfig): Promise<bigint>;
    execCalls(execCallsArgs: SplitV2ExecCallsConfig): Promise<bigint>;
    distribute(distributeArgs: DistributeSplitConfig): Promise<bigint>;
    updateSplit(updateSplitArgs: UpdateSplitV2Config): Promise<bigint>;
}
interface SplitV2GasEstimates extends BaseGasEstimatesMixin {
}
declare class SplitV2CallData extends SplitV2Transactions {
    constructor(clientArgs: SplitsClientConfig);
    createSplit(createSplitArgs: CreateSplitV2Config): Promise<CallData>;
    transferOwnership(transferOwnershipArgs: TransferOwnershipConfig): Promise<CallData>;
    setPaused(setPausedArgs: SetPausedConfig): Promise<CallData>;
    execCalls(execCallsArgs: SplitV2ExecCallsConfig): Promise<CallData>;
    distribute(distributeArgs: DistributeSplitConfig): Promise<CallData>;
    updateSplit(updateSplitArgs: UpdateSplitV2Config): Promise<CallData>;
}
declare class SplitV2Signature extends SplitV2Transactions {
    constructor(clientArgs: SplitsClientConfig);
    signData(splitAddress: Address, data: Hex, chainId?: number): Promise<{
        signature: Hex;
    }>;
}
export {};
