<?php

namespace AuthStack\OAuth2;

abstract class OAuth2Constants
{
    // Authorization Code
    const RESP_TYPE_CODE = 'code';

    // Implicit grant type
    const RESP_TYPE_TOKEN = 'token';

    // Password credentials grant type
    const GRANT_TYPE_PWD = 'password';

    // Client credentials grant type
    const GRANT_TYPE_CREDS = 'client_credentials';

    // Used by Token Request
    const GRANT_TYPE_AUTH_CODE = 'authorization_code';

    // Error codes
    const ERR_INVALID_REQUEST = 'invalid_request';
    const ERR_UNAUTHORIZED_CLIENT = 'unauthorized_client';
    const ERR_INVALID_CLIENT = 'invalid_client';
    const ERR_ACCESS_DENIED = 'access_denied';
    const ERR_UNSUPPORTED_RESP_TYPE = 'unsupported_response_type';
    const ERR_INVALID_SCOPE = 'invalid_scope';
    const ERR_SERVER_ERROR = 'server_error';
    const ERR_TEMPORARILY_UNAVAILABLE = 'temporarily_unavailable';

}