Skip to content

Commit 44b8ca2

Browse files
committed
fix: signature when items are null with type to get a mapper
1 parent 05a1a30 commit 44b8ca2

File tree

1 file changed

+3
-2
lines changed

1 file changed

+3
-2
lines changed

src/morphism.ts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -90,7 +90,8 @@ function getSchemaForType<T>(type: Constructable<T>, baseSchema: Schema<T>): Sch
9090
type SourceFromSchema<T> = T extends StrictSchema<unknown, infer U> | Schema<unknown, infer U> ? U : never;
9191
type DestinationFromSchema<T> = T extends StrictSchema<infer U> | Schema<infer U> ? U : never;
9292

93-
type ResultItem<TSchema extends Schema> = { [P in keyof TSchema]: DestinationFromSchema<TSchema>[P] };
93+
type ResultItem<TSchema extends Schema> = DestinationFromSchema<TSchema>;
94+
9495
export interface Mapper<TSchema extends Schema | StrictSchema, TResult = ResultItem<TSchema>> {
9596
(data: SourceFromSchema<TSchema>[]): TResult[];
9697
(data: SourceFromSchema<TSchema>): TResult;
@@ -137,7 +138,7 @@ export function morphism<
137138

138139
export function morphism<TSchema extends Schema, TDestination>(
139140
schema: TSchema,
140-
items: SourceFromSchema<TSchema> | null,
141+
items: null,
141142
type: Constructable<TDestination>
142143
): Mapper<TSchema, TDestination>; // morphism({}, null, T) => mapper(S) => T
143144

0 commit comments

Comments
 (0)