def get_queue(
    name: str = 'default',
    default_timeout: Optional[int] = None,
    is_async: Optional[bool] = None,
    autocommit: Optional[bool] = None,
    connection: Optional[redis.Redis] = None,
    queue_class: Optional[Union[str, Type[DjangoRQ]]] = None,
    job_class: Optional[Union[str, Type[Job]]] = None,
    serializer: Any = None,
    **kwargs: Any,
) -> DjangoRQ:
    """
    Returns an rq Queue using parameters defined in ``RQ_QUEUES``
    """
    from .settings import QUEUES

    if kwargs.get('async') is not None:
        is_async = kwargs['async']
        warnings.warn('The `async` keyword is deprecated. Use `is_async` instead', DeprecationWarning)

    # If is_async is provided, use it, otherwise, get it from the configuration
    if is_async is None:
        is_async = QUEUES[name].get('ASYNC', True)
    # same for job_class
    job_class = get_job_class(job_class)

    if default_timeout is None:
        default_timeout = QUEUES[name].get('DEFAULT_TIMEOUT')
    if connection is None:
        connection = get_connection(name)
    if serializer is None:
        serializer = QUEUES[name].get('SERIALIZER')
    queue_class = get_queue_class(QUEUES[name], queue_class)
    return queue_class(
        name,
        default_timeout=default_timeout,
        connection=connection,
        is_async=is_async,
        job_class=job_class,
        autocommit=autocommit,
        serializer=serializer,
        **kwargs
    )

    Returns an rq Queue using parameters defined in ``RQ_QUEUES``
    
django_rq/queues.py