diff --git a/.changeset/fix-test-api-provider-const.md b/.changeset/fix-test-api-provider-const.md new file mode 100644 index 0000000000..b2bc0f49cd --- /dev/null +++ b/.changeset/fix-test-api-provider-const.md @@ -0,0 +1,5 @@ +--- +'@backstage/test-utils': patch +--- + +Added `const` type parameter modifier to `TestApiProvider` and `TestApiRegistry.from` for improved type inference of API pairs. diff --git a/packages/test-utils/report.api.md b/packages/test-utils/report.api.md index b3cf84b5ae..f830cde655 100644 --- a/packages/test-utils/report.api.md +++ b/packages/test-utils/report.api.md @@ -340,7 +340,7 @@ export function setupRequestMockHandlers(worker: { export type SyncLogCollector = () => void; // @public -export const TestApiProvider: ( +export const TestApiProvider: ( props: TestApiProviderProps, ) => JSX_2.Element; @@ -352,7 +352,7 @@ export type TestApiProviderProps = { // @public export class TestApiRegistry implements ApiHolder { - static from( + static from( ...apis: readonly [...TestApiProviderPropsApiPairs] ): TestApiRegistry; get(api: ApiRef): T | undefined; diff --git a/packages/test-utils/src/testUtils/TestApiProvider.tsx b/packages/test-utils/src/testUtils/TestApiProvider.tsx index 18a7174201..63e8a56f3b 100644 --- a/packages/test-utils/src/testUtils/TestApiProvider.tsx +++ b/packages/test-utils/src/testUtils/TestApiProvider.tsx @@ -63,7 +63,7 @@ export class TestApiRegistry implements ApiHolder { * @public * @param apis - A list of pairs mapping an ApiRef to its respective implementation. */ - static from( + static from( ...apis: readonly [...TestApiProviderPropsApiPairs] ) { return new TestApiRegistry( @@ -124,7 +124,7 @@ export class TestApiRegistry implements ApiHolder { * * @public */ -export const TestApiProvider = ( +export const TestApiProvider = ( props: TestApiProviderProps, ) => { return (