You can build your own viem Client by using the createClient function and optionally extending (.extend) it – this is how viem's internal Clients (Public, Wallet, and Test) are built.
Building your own Client is useful if you have specific requirements for how the Client should behave, and if you want to extend that Client with custom functionality (ie. create an EIP-4337 Bundler Client, or geth Debug Client).
The createClient function sets up a base viem Client with a given Transport configured with a Chain. After that, you can extend the Client with custom properties (that could be Actions or other configuration).
The maximum size (in bytes) for each multicall (aggregate3) calldata chunk.
Note: Some RPC Providers limit the amount of calldata that can be sent in a single request. It is best to check with your RPC Provider to see if there are any calldata size limits to eth_call requests.