Skip to content

Commit 0a5f89e

Browse files
committed
fix(openapi-typescript-helpers): preserve tuple types in Readable/Writable
1 parent bd27195 commit 0a5f89e

1 file changed

Lines changed: 4 additions & 4 deletions

File tree

  • packages/openapi-typescript-helpers/src

packages/openapi-typescript-helpers/src/index.ts

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -221,8 +221,8 @@ export type Readable<T> =
221221
? never
222222
: T extends $Read<infer U>
223223
? Readable<U>
224-
: T extends (infer E)[]
225-
? Readable<E>[]
224+
: T extends readonly any[]
225+
? { [K in keyof T]: Readable<T[K]> }
226226
: T extends object
227227
? { [K in keyof T as NonNullable<T[K]> extends $Write<any> ? never : K]: Readable<T[K]> }
228228
: T;
@@ -238,8 +238,8 @@ export type Writable<T> =
238238
? never
239239
: T extends $Write<infer U>
240240
? Writable<U>
241-
: T extends (infer E)[]
242-
? Writable<E>[]
241+
: T extends readonly any[]
242+
? { [K in keyof T]: Writable<T[K]> }
243243
: T extends object
244244
? { [K in keyof T as NonNullable<T[K]> extends $Read<any> ? never : K]: Writable<T[K]> } & {
245245
[K in keyof T as NonNullable<T[K]> extends $Read<any> ? K : never]?: never;

0 commit comments

Comments
 (0)