//go:build futuresqs

// The redriver_future.go file contains types and code related to the yet-unpublished
// DLQ redrive APIs.
//
// See https://github.com/aws/aws-sdk-go-v2/issues/1991 for details.
package redriver

// Redriver defines the behavior of DLQ redriverV2 services.
type RedriverV2 interface {
	// CreateMoveTask()

	// ListMoveTasks() []any

	ListDLQs() map[string]string
}

type redriverV2 struct {
}

func (r redriverV2) CreateMoveTask() {
	// TODO implement me
	// u := url.URL{
	// 	Scheme:      "https",
	// 	User:        nil,
	// 	Host:        "",
	// 	Path:        "",
	// 	RawPath:     "",
	// 	OmitHost:    false,
	// 	ForceQuery:  false,
	// 	RawQuery:    "",
	// 	Fragment:    "",
	// 	RawFragment: "",
	// }
	/*
		Action=CreateMoveTask
		&SourceArn=arn%3Aaws%3Asqs%3Aeu-west-3%3A751146239996%3Atest-dlq
		&TaskName=079228fe-098b-436d-a2f4-cb4d29ebb55a
		&Version=2012-11-05
	*/
}

func (r redriverV2) ListMoveTasks() []any {
	// TODO implement me
	panic("implement me")
}

type CreateMoveTaskOutput struct {
	Status                           *string // Running
	SourceARN                        *string
	ApproximateNumberOfMessagesMoved int
}
