diff --git a/src/type.ts b/src/type.ts index b81fb78d..9fd83b35 100644 --- a/src/type.ts +++ b/src/type.ts @@ -1,4 +1,5 @@ import { StateTree, SubscriptionCallback } from 'pinia' +import { UnwrapRef } from 'vue' export interface IStorage { getItem: (key: string) => any | Promise @@ -47,7 +48,7 @@ export interface CommonOptions { * * @default (state, savedState) => savedState */ - merge?: (state: S, savedState: S) => S + merge?: (state: S, savedState: UnwrapRef) => UnwrapRef /** * When rehydrating, overwrite initial state (patch otherwise). diff --git a/tests/index.test.ts b/tests/index.test.ts index 5e30d43a..34e739b5 100644 --- a/tests/index.test.ts +++ b/tests/index.test.ts @@ -298,7 +298,7 @@ describe('hydrate', () => { { persistedState: { merge: (state, savedState) => { - return { values: [...state.values, ...savedState.values] } + return { values: [...state.values.value, ...savedState.values] } }, }, },