*/ class Configuration { public function __construct( public readonly Implementation $clientInfo, public readonly ClientCapabilities $capabilities, public readonly ProtocolVersion $protocolVersion = ProtocolVersion::V2025_11_25, public readonly int $initTimeout = 30, public readonly int $requestTimeout = 120, public readonly int $maxRetries = 3, ) { if ($initTimeout < 1) { throw new InvalidArgumentException(\sprintf('The initialization timeout must be a positive number of seconds, got %d.', $initTimeout)); } if ($requestTimeout < 1) { throw new InvalidArgumentException(\sprintf('The request timeout must be a positive number of seconds, got %d.', $requestTimeout)); } } }