diff --git a/packages/parameters/src/BaseProvider.ts b/packages/parameters/src/BaseProvider.ts index 034f8fccaf..2d993c71a2 100644 --- a/packages/parameters/src/BaseProvider.ts +++ b/packages/parameters/src/BaseProvider.ts @@ -65,7 +65,6 @@ abstract class BaseProvider implements BaseProviderInterface { this.addToCache(key, value, configs.maxAge); } - // TODO: revisit return type once providers are implemented, it might be missing binary when not transformed return value; } @@ -94,7 +93,6 @@ abstract class BaseProvider implements BaseProviderInterface { this.addToCache(key, values, configs.maxAge); } - // TODO: revisit return type once providers are implemented, it might be missing something return values; } diff --git a/packages/parameters/src/ssm/SSMProvider.ts b/packages/parameters/src/ssm/SSMProvider.ts index 4dd9a471b0..66d7e12367 100644 --- a/packages/parameters/src/ssm/SSMProvider.ts +++ b/packages/parameters/src/ssm/SSMProvider.ts @@ -21,7 +21,7 @@ import type { SSMGetParametersByNameOptionsInterface, SSMSplitBatchAndDecryptParametersOutputType, SSMGetParametersByNameFromCacheOutputType, -} from 'types/SSMProvider'; +} from '../types/SSMProvider'; import type { PaginationConfiguration } from '@aws-sdk/types'; class SSMProvider extends BaseProvider { diff --git a/packages/parameters/src/ssm/getParametersByName.ts b/packages/parameters/src/ssm/getParametersByName.ts index c2b8f625f0..18d50073b8 100644 --- a/packages/parameters/src/ssm/getParametersByName.ts +++ b/packages/parameters/src/ssm/getParametersByName.ts @@ -1,10 +1,12 @@ import { SSMProvider, DEFAULT_PROVIDERS } from './SSMProvider'; -import type { SSMGetParametersByNameOptionsInterface } from '../types/SSMProvider'; +import type { + SSMGetParametersByNameOptionsInterface +} from '../types/SSMProvider'; const getParametersByName = ( parameters: Record, options?: SSMGetParametersByNameOptionsInterface -): Promise> => { +): Promise & { _errors?: string[] }> => { if (!DEFAULT_PROVIDERS.hasOwnProperty('ssm')) { DEFAULT_PROVIDERS.ssm = new SSMProvider(); } diff --git a/packages/parameters/src/ssm/index.ts b/packages/parameters/src/ssm/index.ts index e275be6d78..329d3d3f3b 100644 --- a/packages/parameters/src/ssm/index.ts +++ b/packages/parameters/src/ssm/index.ts @@ -1,4 +1,5 @@ export * from './SSMProvider'; export * from './getParameter'; export * from './getParameters'; -export * from './getParametersByName'; \ No newline at end of file +export * from './getParametersByName'; +export * from '../types/SSMProvider'; \ No newline at end of file diff --git a/packages/parameters/src/types/AppConfigProvider.ts b/packages/parameters/src/types/AppConfigProvider.ts index 89d148f4ce..c699714639 100644 --- a/packages/parameters/src/types/AppConfigProvider.ts +++ b/packages/parameters/src/types/AppConfigProvider.ts @@ -43,7 +43,7 @@ interface GetAppConfigCombinedInterface extends Omit, AppConfigGetOptionsInterface {} -export { +export type { AppConfigProviderOptions, AppConfigGetOptionsInterface, GetAppConfigCombinedInterface, diff --git a/packages/parameters/src/types/BaseProvider.ts b/packages/parameters/src/types/BaseProvider.ts index e9cedc5fc0..1a0ae3fa9a 100644 --- a/packages/parameters/src/types/BaseProvider.ts +++ b/packages/parameters/src/types/BaseProvider.ts @@ -21,7 +21,7 @@ interface BaseProviderInterface { getMultiple(path: string, options?: GetMultipleOptionsInterface): Promise> } -export { +export type { GetOptionsInterface, GetMultipleOptionsInterface, BaseProviderInterface, diff --git a/packages/parameters/src/types/SSMProvider.ts b/packages/parameters/src/types/SSMProvider.ts index e7649c14df..f1127b289e 100644 --- a/packages/parameters/src/types/SSMProvider.ts +++ b/packages/parameters/src/types/SSMProvider.ts @@ -3,7 +3,11 @@ import type { GetParameterCommandInput, GetParametersByPathCommandInput } from '@aws-sdk/client-ssm'; -import type { GetOptionsInterface, GetMultipleOptionsInterface, TransformOptions } from './BaseProvider'; +import type { + GetOptionsInterface, + GetMultipleOptionsInterface, + TransformOptions +} from './BaseProvider'; interface SSMProviderOptionsInterface { clientConfig: SSMClientConfig @@ -51,7 +55,7 @@ type SSMGetParametersByNameFromCacheOutputType = { toFetch: Record }; -export { +export type { SSMProviderOptionsInterface, SSMGetOptionsInterface, SSMGetMultipleOptionsInterface, diff --git a/packages/parameters/src/types/index.ts b/packages/parameters/src/types/index.ts index 73eb846a94..7bab8dc817 100644 --- a/packages/parameters/src/types/index.ts +++ b/packages/parameters/src/types/index.ts @@ -1 +1,5 @@ -export * from './BaseProvider'; \ No newline at end of file +export * from './BaseProvider'; +export * from './AppConfigProvider'; +export * from './SSMProvider'; +export * from './SecretsProvider'; +export * from './DynamoDBProvider'; \ No newline at end of file diff --git a/packages/parameters/tests/unit/AppConfigProvider.test.ts b/packages/parameters/tests/unit/AppConfigProvider.test.ts index 5762a145dd..f0b23560df 100644 --- a/packages/parameters/tests/unit/AppConfigProvider.test.ts +++ b/packages/parameters/tests/unit/AppConfigProvider.test.ts @@ -4,7 +4,7 @@ * @group unit/parameters/AppConfigProvider/class */ import { AppConfigProvider } from '../../src/appconfig/index'; - +import { AppConfigProviderOptions } from '../../src/types/AppConfigProvider'; import { AppConfigDataClient, StartConfigurationSessionCommand, @@ -12,7 +12,6 @@ import { } from '@aws-sdk/client-appconfigdata'; import { mockClient } from 'aws-sdk-client-mock'; import 'aws-sdk-client-mock-jest'; -import { AppConfigProviderOptions } from '../../src/types/AppConfigProvider'; describe('Class: AppConfigProvider', () => { const client = mockClient(AppConfigDataClient); diff --git a/packages/parameters/tests/unit/BaseProvider.test.ts b/packages/parameters/tests/unit/BaseProvider.test.ts index 1227d68b1b..bc64b55150 100644 --- a/packages/parameters/tests/unit/BaseProvider.test.ts +++ b/packages/parameters/tests/unit/BaseProvider.test.ts @@ -3,8 +3,12 @@ * * @group unit/parameters/baseProvider/class */ - -import { BaseProvider, ExpirableValue, GetParameterError, TransformParameterError } from '../../src'; +import { + BaseProvider, + ExpirableValue, + GetParameterError, + TransformParameterError +} from '../../src'; import { toBase64 } from '@aws-sdk/util-base64'; const encoder = new TextEncoder(); diff --git a/packages/parameters/tests/unit/getParametersByName.test.ts b/packages/parameters/tests/unit/getParametersByName.test.ts index d1ad31815e..5237992193 100644 --- a/packages/parameters/tests/unit/getParametersByName.test.ts +++ b/packages/parameters/tests/unit/getParametersByName.test.ts @@ -5,6 +5,7 @@ */ import { DEFAULT_PROVIDERS } from '../../src/BaseProvider'; import { SSMProvider, getParametersByName } from '../../src/ssm'; +import type { SSMGetParametersByNameOptionsInterface } from '../../src/types/SSMProvider'; describe('Function: getParametersByName', () => { @@ -15,12 +16,13 @@ describe('Function: getParametersByName', () => { test('when called and a default provider doesn\'t exist, it instantiates one and returns the value', async () => { // Prepare - const parameters = { + const parameters: Record = { '/foo/bar': { maxAge: 1000, }, '/foo/baz': { maxAge: 2000, + transform: 'json', } }; const getParametersByNameSpy = jest.spyOn(SSMProvider.prototype, 'getParametersByName').mockImplementation();