Package google implements the OAuth2 protocol for authenticating users through Google.
Endpoint is Google's OAuth 2.0 endpoint.
Provider is the implementation of `goth.Provider` for accessing Google.
New creates a new Google provider, and sets up important connection details. You should always call `google.New` to get a new Provider. Never try to create one manually.
BeginAuth asks Google for an authentication endpoint.
Client returns an HTTP client to be used in all fetch operations.
Debug is a no-op for the google package.
FetchUser will go to Google and access basic information about the user.
Name is the name used to retrieve this provider later.
RefreshToken get new access token based on the refresh token
RefreshTokenAvailable refresh token is provided by auth provider or not
SetHostedDomain sets the hd parameter for google OAuth call. Use this to force user to pick user from specific hosted domain. See https://developers.google.com/identity/protocols/oauth2/openid-connect#hd-param
SetName is to update the name of the provider (needed in case of multiple providers of 1 type)
SetPrompt sets the prompt values for the google OAuth call. Use this to force users to choose and account every time by passing "select_account", for example. See https://developers.google.com/identity/protocols/OpenIDConnect#authenticationuriparameters
UnmarshalSession will unmarshal a JSON string into a session.
Session stores data during the auth process with Google.
Authorize the session with Google and return the access token to be stored for future use.
GetAuthURL will return the URL set by calling the `BeginAuth` function on the Google provider.
Marshal the session into a string