public async Task <ResponseWithHeaders <ServiceSetPropertiesHeaders> > SetPropertiesAsync(TableServiceProperties tableServiceProperties, int?timeout = null, CancellationToken cancellationToken = default)
        {
            if (tableServiceProperties == null)
            {
                throw new ArgumentNullException(nameof(tableServiceProperties));
            }

            using var message = CreateSetPropertiesRequest(tableServiceProperties, timeout);
            await _pipeline.SendAsync(message, cancellationToken).ConfigureAwait(false);

            var headers = new ServiceSetPropertiesHeaders(message.Response);

            switch (message.Response.Status)
            {
            case 202:
                return(ResponseWithHeaders.FromValue(headers, message.Response));

            default:
                throw await ClientDiagnostics.CreateRequestFailedExceptionAsync(message.Response).ConfigureAwait(false);
            }
        }