[ 'class' => fn() => new Logger('logger') ], HttpClientInterface::class => [ 'class' => function (): HttpClientInterface { return new CurlHttpClient( defaultOptions: Config::get('http.default.options', []), maxHostConnections: Config::get('http.default.maxHostConnections', 25), maxPendingPushes: Config::get('http.default.maxPendingPushes', 50), ); } ], StateInterface::class => [ 'class' => fn() => new StateEntity([]) ], CacheInterface::class => [ 'class' => fn() => new Psr16Cache(new FilesystemAdapter(directory: Config::get('cache.config.directory'))) ], UriInterface::class => [ 'class' => fn() => new Uri(''), 'shared' => false, ], ]; })();