package aws

import (
	"context"

	"github.com/aws/aws-sdk-go-v2/aws"
	kmsapi "github.com/aws/aws-sdk-go-v2/service/kms"
)

var _ KmsClient = &kmsapi.Client{}

type KmsClient interface {
	DisableKeyRotation(ctx context.Context, params *kmsapi.DisableKeyRotationInput, optFns ...func(*kmsapi.Options)) (*kmsapi.DisableKeyRotationOutput, error)
	CreateGrant(ctx context.Context, params *kmsapi.CreateGrantInput, optFns ...func(*kmsapi.Options)) (*kmsapi.CreateGrantOutput, error)
}

func newKmsClient(cfg aws.Config) KmsClient {
	return kmsapi.NewFromConfig(cfg)
}

func WithKMSRegion(region string) func(*kmsapi.Options) {
	return func(options *kmsapi.Options) {
		options.Region = region
	}
}
