@@ -42,7 +42,10 @@ export interface ProxyDraft<T = any> {
4242 copy : T | null ;
4343 proxy : T | null ;
4444 finalities : Finalities ;
45- options : Options < any , any > & { updatedValues ?: WeakMap < any , any > } ;
45+ options : Options < any , any > & {
46+ updatedValues ?: WeakMap < any , any > ;
47+ skipFinalization ?: WeakSet < any > ;
48+ } ;
4649 parent ?: ProxyDraft | null ;
4750 key ?: string | number | symbol ;
4851 setMap ?: Map < any , ProxyDraft > ;
@@ -62,30 +65,30 @@ export type Patch<P extends PatchesOptions = any> = P extends {
6265 path : string ;
6366 }
6467 : P extends true | object
65- ? IPatch & {
66- path : ( string | number ) [ ] ;
67- }
68- : IPatch & {
69- path : string | ( string | number ) [ ] ;
70- } ;
68+ ? IPatch & {
69+ path : ( string | number ) [ ] ;
70+ }
71+ : IPatch & {
72+ path : string | ( string | number ) [ ] ;
73+ } ;
7174
7275export type Patches < P extends PatchesOptions = any > = Patch < P > [ ] ;
7376
7477export type Result <
7578 T extends any ,
7679 O extends PatchesOptions ,
77- F extends boolean
80+ F extends boolean ,
7881> = O extends true | object
7982 ? [ F extends true ? Immutable < T > : T , Patches < O > , Patches < O > ]
8083 : F extends true
81- ? Immutable < T >
82- : T ;
84+ ? Immutable < T >
85+ : T ;
8386
8487export type CreateResult <
8588 T extends any ,
8689 O extends PatchesOptions ,
8790 F extends boolean ,
88- R extends void | Promise < void > | T | Promise < T >
91+ R extends void | Promise < void > | T | Promise < T > ,
8992> = R extends Promise < void > | Promise < T >
9093 ? Promise < Result < T , O , F > >
9194 : Result < T , O , F > ;
@@ -99,8 +102,8 @@ export type Mark<O extends PatchesOptions, F extends boolean> = (
99102) => O extends true | object
100103 ? BaseMark
101104 : F extends true
102- ? BaseMark
103- : MarkWithCopy ;
105+ ? BaseMark
106+ : MarkWithCopy ;
104107
105108export interface Options < O extends PatchesOptions , F extends boolean > {
106109 /**
@@ -154,8 +157,8 @@ export type IfAvailable<T, Fallback = void> = true | false extends (
154157)
155158 ? Fallback
156159 : keyof T extends never
157- ? Fallback
158- : T ;
160+ ? Fallback
161+ : T ;
159162type WeakReferences =
160163 | IfAvailable < WeakMap < any , any > >
161164 | IfAvailable < WeakSet < any > > ;
@@ -164,14 +167,14 @@ type AtomicObject = Function | Promise<any> | Date | RegExp;
164167export type Immutable < T > = T extends Primitive | AtomicObject
165168 ? T
166169 : T extends IfAvailable < ReadonlyMap < infer K , infer V > >
167- ? ImmutableMap < K , V >
168- : T extends IfAvailable < ReadonlySet < infer V > >
169- ? ImmutableSet < V >
170- : T extends WeakReferences
171- ? T
172- : T extends object
173- ? ImmutableObject < T >
174- : T ;
170+ ? ImmutableMap < K , V >
171+ : T extends IfAvailable < ReadonlySet < infer V > >
172+ ? ImmutableSet < V >
173+ : T extends WeakReferences
174+ ? T
175+ : T extends object
176+ ? ImmutableObject < T >
177+ : T ;
175178
176179type DraftedMap < K , V > = Map < K , Draft < V > > ;
177180type DraftedSet < T > = Set < Draft < T > > ;
@@ -182,11 +185,11 @@ type DraftedObject<T> = {
182185export type Draft < T > = T extends Primitive | AtomicObject
183186 ? T
184187 : T extends IfAvailable < ReadonlyMap < infer K , infer V > >
185- ? DraftedMap < K , V >
186- : T extends IfAvailable < ReadonlySet < infer V > >
187- ? DraftedSet < V >
188- : T extends WeakReferences
189- ? T
190- : T extends object
191- ? DraftedObject < T >
192- : T ;
188+ ? DraftedMap < K , V >
189+ : T extends IfAvailable < ReadonlySet < infer V > >
190+ ? DraftedSet < V >
191+ : T extends WeakReferences
192+ ? T
193+ : T extends object
194+ ? DraftedObject < T >
195+ : T ;
0 commit comments