#!/usr/bin/env perl
use strict;
use warnings;

use Paws;

package DeleteMessageArgs {
  use Moose;
  with 'MooseX::Getopt';

  has queue_url => (is => 'ro', isa => 'Str', required => 1, documentation => 'The SQS queue URL to poll for messages');
  has region    => (is => 'ro', isa => 'Str', required => 1, documentation => 'The SQS region identifier');
  has receipt_handle => (is => 'ro', isa => 'Str', required => 1, documentation => 'The ReceiptHandle of the message');
}

my $args = DeleteMessageArgs->new_with_options();

my $sqs = Paws->service('SQS', region => $args->region);

$sqs->DeleteMessage(QueueUrl => $args->queue_url, ReceiptHandle => $args->receipt_handle);
