-record(authorization_code_grant_request, { authorization_endpoint :: gleam@uri:uri(), response_type :: flwr_oauth2@authorization_grant:response_type(), redirect_uri :: gleam@option:option(gleam@uri:uri()), client_id :: flwr_oauth2@common:client_id(), scope :: list(binary()), state :: gleam@option:option(flwr_oauth2@authorization_grant:state()), code_challenge :: gleam@option:option(binary()), code_challenge_method :: gleam@option:option(flwr_oauth2@authorization_grant:code_challenge_method()) }).