# Functions

CombineBodyMedia combines a json body with media content to create a multipart/related HTTP body.
DecodeResponse decodes the body of res into target.
DecodeResponseBytes decodes the body of res into target and returns bytes read from the body.
GoVersion returns the Go runtime version.
MarshalJSON returns a JSON encoding of schema containing only selected fields.
NewInfoFromMedia should be invoked from the Media method of a call.
NewInfoFromResumableMedia should be invoked from the ResumableMedia method of a call.
NewMediaBuffer initializes a MediaBuffer.
PrepareUpload determines whether the data in the supplied reader should be uploaded in a single request, or in sequential chunks.
ReaderAtToReader adapts a ReaderAt to be used as a Reader.
SendRequest sends a single HTTP request using the given client.
SendRequestWithRetry sends a single HTTP request using the given client, with retries if a retryable error is returned.
SetGetBody sets the GetBody field of req to f.
SetHeaders sets common headers for all requests.
SetOptions sets the URL params and any additional `CallOption` or `MultiCallOption` passed in.
WrapError creates an [apierror.APIError] from err, wraps it in err, and returns err.

# Structs

MediaBuffer buffers data from an io.Reader to support uploading media in retryable chunks.
MediaInfo holds information for media uploads.
ResumableUpload is used by the generated APIs to provide resumable uploads.
RetryConfig allows configuration of backoff timing and retryable errors.

# Interfaces

Backoff is an interface around gax.Backoff's Pause method, allowing tests to provide their own implementation.

# Type aliases

JSONFloat64 is a float64 that supports proper unmarshaling of special float values in JSON, according to https://developers.google.com/protocol-buffers/docs/proto3#json.
URLParams is a simplified replacement for url.Values that safely builds up URL parameters for encoding.