U
    vci{                     @   s<   d dl mZ d dlmZmZ d dlmZ G dd deZdS )    )DeviceAuthorizationEndpoint)CallableOptional)RequestValidatorc                   @   s6   e Zd ZdZdeeeee edgef dddZ	dS )DeviceApplicationServerzLAn all-in-one endpoint featuring Authorization code grant and Bearer tokens.   N)request_validatorverification_uriintervalverification_uri_completeuser_code_generatorc                 K   s   t j| |||||d dS )a  Construct a new web application server.

        :param request_validator: An implementation of
                                  oauthlib.oauth2.rfc8626.RequestValidator.
        :param interval: How long the device needs to wait before polling the server
        :param verification_uri: the verification_uri to be send back.
        :param user_code_generator: a callable that allows the user code to be configured.
        )r
   r	   r   r   N)r   __init__)selfr   r	   r
   r   r   kwargs r   T/tmp/pip-unpacked-wheel-bhz3g0dq/oauthlib/oauth2/rfc8628/endpoints/pre_configured.pyr      s    z DeviceApplicationServer.__init__)r   NN)
__name__
__module____qualname____doc__r   strintr   r   r   r   r   r   r   r   	   s      r   N)Z6oauthlib.oauth2.rfc8628.endpoints.device_authorizationr   typingr   r   Z.oauthlib.openid.connect.core.request_validatorr   r   r   r   r   r   <module>   s   