def get_queue_attributes(QueueUrl=None, AttributeNames=None):
    """
    Gets attributes for the specified queue.
    See also: AWS API Documentation
    
    
    :example: response = client.get_queue_attributes(
        QueueUrl='string',
        AttributeNames=[
            'All'|'Policy'|'VisibilityTimeout'|'MaximumMessageSize'|'MessageRetentionPeriod'|'ApproximateNumberOfMessages'|'ApproximateNumberOfMessagesNotVisible'|'CreatedTimestamp'|'LastModifiedTimestamp'|'QueueArn'|'ApproximateNumberOfMessagesDelayed'|'DelaySeconds'|'ReceiveMessageWaitTimeSeconds'|'RedrivePolicy'|'FifoQueue'|'ContentBasedDeduplication'|'KmsMasterKeyId'|'KmsDataKeyReusePeriodSeconds',
        ]
    )
    
    
    :type QueueUrl: string
    :param QueueUrl: [REQUIRED]
            The URL of the Amazon SQS queue whose attribute information is retrieved.
            Queue URLs are case-sensitive.
            

    :type AttributeNames: list
    :param AttributeNames: A list of attributes for which to retrieve information.
            Note
            In the future, new attributes might be added. If you write code that calls this action, we recommend that you structure your code so that it can handle new attributes gracefully.
            The following attributes are supported:
            All - Returns all values.
            ApproximateNumberOfMessages - Returns the approximate number of visible messages in a queue. For more information, see Resources Required to Process Messages in the Amazon SQS Developer Guide .
            ApproximateNumberOfMessagesDelayed - Returns the approximate number of messages that are waiting to be added to the queue.
            ApproximateNumberOfMessagesNotVisible - Returns the approximate number of messages that have not timed-out and aren't deleted. For more information, see Resources Required to Process Messages in the Amazon SQS Developer Guide .
            CreatedTimestamp - Returns the time when the queue was created in seconds (epoch time ).
            DelaySeconds - Returns the default delay on the queue in seconds.
            LastModifiedTimestamp - Returns the time when the queue was last changed in seconds (epoch time ).
            MaximumMessageSize - Returns the limit of how many bytes a message can contain before Amazon SQS rejects it.
            MessageRetentionPeriod - Returns the length of time, in seconds, for which Amazon SQS retains a message.
            Policy - Returns the policy of the queue.
            QueueArn - Returns the Amazon resource name (ARN) of the queue.
            ReceiveMessageWaitTimeSeconds - Returns the length of time, in seconds, for which the ReceiveMessage action waits for a message to arrive.
            RedrivePolicy - Returns the parameters for dead letter queue functionality of the source queue. For more information about the redrive policy and dead letter queues, see Using Amazon SQS Dead Letter Queues in the Amazon SQS Developer Guide .
            VisibilityTimeout - Returns the visibility timeout for the queue. For more information about the visibility timeout, see Visibility Timeout in the Amazon SQS Developer Guide .
            The following attributes apply only to server-side-encryption :
            KmsMasterKeyId - Returns the ID of an AWS-managed customer master key (CMK) for Amazon SQS or a custom CMK. For more information, see Key Terms .
            KmsDataKeyReusePeriodSeconds - Returns the length of time, in seconds, for which Amazon SQS can reuse a data key to encrypt or decrypt messages before calling AWS KMS again.
            The following attributes apply only to FIFO (first-in-first-out) queues :
            FifoQueue - Returns whether the queue is FIFO. For more information, see FIFO Queue Logic in the Amazon SQS Developer Guide .
            Note
            To determine whether a queue is FIFO , you can check whether QueueName ends with the .fifo suffix.
            ContentBasedDeduplication - Returns whether content-based deduplication is enabled for the queue. For more information, see Exactly-Once Processing in the Amazon SQS Developer Guide .
            (string) --
            

    :rtype: dict
    :return: {
        'Attributes': {
            'string': 'string'
        }
    }
    
    
    :returns: 
    (string) --
    (string) --
    
    
    
    """
    pass
