/// <summary>
        /// Sends request and unwrap GraphQL data to be available directly in the `.Data`.
        /// </summary>
        /// <typeparam name="T"></typeparam>
        /// <returns>Returns content within GraphQL data response object</returns>
        public static async Task <FluentHttpResponse <T> > ReturnAsGqlResponse <T>(this FluentHttpRequestBuilder builder)
        {
            var response = await builder.ReturnAsResponse <GqlResponse <T> >().ConfigureAwait(false);

            return(new FluentHttpResponse <T>(response)
            {
                Data = response.Data != null ? response.Data.Data : default
            });
        /// <summary>
        /// Send request and return as byte array.
        /// </summary>
        /// <returns>Returns content as byte array.</returns>
        public static async Task <byte[]> ReturnAsByteArray(this FluentHttpRequestBuilder builder)
        {
            var response = await builder.ReturnAsResponse().ConfigureAwait(false);

            return(await response.Content.ReadAsByteArrayAsync().ConfigureAwait(false));
        }
        /// <summary>
        /// Send request and read content as string.
        /// </summary>
        /// <returns>Returns content as string.</returns>
        public static async Task <string> ReturnAsString(this FluentHttpRequestBuilder builder)
        {
            var response = await builder.ReturnAsResponse().ConfigureAwait(false);

            return(await response.Content.ReadAsStringAsync().ConfigureAwait(false));
        }