powertools-lambda-typescript icon indicating copy to clipboard operation
powertools-lambda-typescript copied to clipboard

Feature request: allow `BaseProvider` in Parameters to not have a client

Open dreamorosi opened this issue 1 year ago • 0 comments

Use case

When creating a custom Parameters provider I should be able to seamless set my own backend, regardless of whether this might be AWS, a 3rd party, or anything else.

Currently the BaseProvider expects a constructor parameter called proto (as-in prototype, bad name) that you're supposed to pass and that will be used whenever you are not passing an AWS SDK client.

This implementation is too tightly coupled with the notion that BaseProvider expects to be extended by a provider that relies on an AWS SDK client. This is not always the case, and as a customer implementing my own provider I should not have to work around this limitation.

Solution/User Experience

For end customers using the Parameters utility as-is, the experience should stay the same.

For those other customers who implement their own provider, the implementation should be simpler and not require to pass a class prototype to be instantiated as client.

Alternative solutions

No response

Acknowledgment

Future readers

Please react with 👍 and your use case to help us understand customer demand.

dreamorosi avatar Apr 18 '24 18:04 dreamorosi