@@ -16,7 +16,7 @@ console.log(result);
1616export const mapObjectSkip : unique symbol ;
1717
1818export type Mapper <
19- SourceObjectType extends Record < string , any > ,
19+ SourceObjectType extends Record < string , unknown > ,
2020 MappedObjectKeyType extends string ,
2121 MappedObjectValueType ,
2222> = (
@@ -34,13 +34,14 @@ Mapper used when `{deep: true}` is enabled.
3434
3535In deep mode we may visit nested objects with keys and values unrelated to the top-level object, so we intentionally widen the key and value types.
3636*/
37- export type DeepMapper <
37+ type DeepMapper <
38+ SourceObjectType extends Record < string , unknown > ,
3839 MappedObjectKeyType extends string ,
3940 MappedObjectValueType ,
4041> = (
4142 sourceKey : string ,
42- sourceValue : any ,
43- source : any
43+ sourceValue : unknown ,
44+ source : SourceObjectType
4445) => [
4546 targetKey : MappedObjectKeyType ,
4647 targetValue : MappedObjectValueType ,
@@ -60,14 +61,14 @@ export interface Options {
6061
6162 @default {}
6263 */
63- readonly target ?: Record < string , any > ;
64+ readonly target ?: Record < string , unknown > ;
6465}
6566
6667export interface DeepOptions extends Options {
6768 readonly deep : true ;
6869}
6970
70- export interface TargetOptions < TargetObjectType extends Record < string , any > > extends Options {
71+ export interface TargetOptions < TargetObjectType extends Record < string , unknown > > extends Options {
7172 readonly target : TargetObjectType ;
7273}
7374
@@ -111,12 +112,12 @@ const newObject = mapObject({one: 1, two: 2}, (key, value) => value === 1 ? [key
111112*/
112113export default function mapObject <
113114 SourceObjectType extends Record < string , unknown > ,
114- TargetObjectType extends Record < string , any > ,
115+ TargetObjectType extends Record < string , unknown > ,
115116 MappedObjectKeyType extends string ,
116117 MappedObjectValueType ,
117118> (
118119 source : SourceObjectType ,
119- mapper : DeepMapper < MappedObjectKeyType , MappedObjectValueType > ,
120+ mapper : DeepMapper < SourceObjectType , MappedObjectKeyType , MappedObjectValueType > ,
120121 options : DeepOptions & TargetOptions < TargetObjectType >
121122) : TargetObjectType & Record < string , unknown > ;
122123export default function mapObject <
@@ -125,12 +126,12 @@ export default function mapObject<
125126 MappedObjectValueType ,
126127> (
127128 source : SourceObjectType ,
128- mapper : DeepMapper < MappedObjectKeyType , MappedObjectValueType > ,
129+ mapper : DeepMapper < SourceObjectType , MappedObjectKeyType , MappedObjectValueType > ,
129130 options : DeepOptions
130131) : Record < string , unknown > ;
131132export default function mapObject <
132- SourceObjectType extends Record < string , any > ,
133- TargetObjectType extends Record < string , any > ,
133+ SourceObjectType extends Record < string , unknown > ,
134+ TargetObjectType extends Record < string , unknown > ,
134135 MappedObjectKeyType extends string ,
135136 MappedObjectValueType ,
136137> (
@@ -143,7 +144,7 @@ export default function mapObject<
143144 options : TargetOptions < TargetObjectType >
144145) : TargetObjectType & { [ K in MappedObjectKeyType ] : MappedObjectValueType } ;
145146export default function mapObject <
146- SourceObjectType extends Record < string , any > ,
147+ SourceObjectType extends Record < string , unknown > ,
147148 MappedObjectKeyType extends string ,
148149 MappedObjectValueType ,
149150> (
0 commit comments