import { StateSource, Prettify, WritableStateSource } from '@ngrx/signals'; type UnprotectedSource> = Source extends StateSource ? Prettify> & WritableStateSource> : never; /** * @description * * Allows updating the protected state of a SignalStore for testing purposes. * * @usageNotes * * ```ts * import { TestBed } from '@angular/core/testing'; * import { * patchState, * signalStore, * withState, * withComputed, * } from '@ngrx/signals'; * import { unprotected } from '@ngrx/signals/testing'; * * const UserStore = signalStore( * { providedIn: 'root' }, * withState({ firstName: 'Eric', lastName: 'Clapton' }), * withComputed(({ firstName, lastName }) => ({ * fullName: () => `${firstName()} ${lastName()}`, * })) * ); * * describe('UserStore', () => { * it('recomputes fullName on firstName changes', () => { * const userStore = TestBed.inject(UserStore); * * patchState(unprotected(userStore), { firstName: 'Patrick' }); * expect(userStore.fullName()).toBe('Patrick Clapton'); * }); * }); * ``` */ declare function unprotected>(source: Source): UnprotectedSource; export { unprotected };