diff --git a/src/middleware/devtools.ts b/src/middleware/devtools.ts index 7acacfd9..c5cd1195 100644 --- a/src/middleware/devtools.ts +++ b/src/middleware/devtools.ts @@ -79,8 +79,9 @@ type Devtools = < T, Mps extends [StoreMutatorIdentifier, unknown][] = [], Mcs extends [StoreMutatorIdentifier, unknown][] = [], + U = T, >( - initializer: StateCreator, + initializer: StateCreator, devtoolsOptions?: DevtoolsOptions, ) => StateCreator diff --git a/tests/middlewareTypes.test.tsx b/tests/middlewareTypes.test.tsx index d38fa40e..7281344f 100644 --- a/tests/middlewareTypes.test.tsx +++ b/tests/middlewareTypes.test.tsx @@ -177,6 +177,24 @@ describe('counter state spec (single middleware)', () => { expect(testSubtyping).toBeDefined() }) + it('devtools #2700', () => { + type TableStore = { + table: string + } + const useStoreA = create()( + devtools((_set) => null, { name: 'table-storage' }), + ) + expect(useStoreA).toBeDefined() + const useStoreB = create()( + devtools(() => null, { name: 'table-storage' }), + ) + expect(useStoreB).toBeDefined() + const useStoreC = create()((_set) => null) + expect(useStoreC).toBeDefined() + const useStoreD = create()(() => null) + expect(useStoreD).toBeDefined() + }) + it('subscribeWithSelector', () => { const useBoundStore = create()( subscribeWithSelector((set, get) => ({