From 300e046c47465c4d774534b87f4877720abb8fae Mon Sep 17 00:00:00 2001 From: Carvas <76731842+lCarvas@users.noreply.github.com> Date: Fri, 8 Aug 2025 00:22:20 +0100 Subject: [PATCH] Update types.ts --- src/treaty2/types.ts | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) diff --git a/src/treaty2/types.ts b/src/treaty2/types.ts index 5323792..749265e 100644 --- a/src/treaty2/types.ts +++ b/src/treaty2/types.ts @@ -157,13 +157,24 @@ export namespace Treaty { // [K in keyof T]: Awaited // } + type SingleDigit = 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 + + type SuccessKeys> = + { [K in keyof R]: + K extends number + ? `${K}` extends `2${SingleDigit}${SingleDigit}` + ? K + : never + : never + }[keyof R]; + export type TreatyResponse> = | { - data: Res[200] extends { + data: Res[SuccessKeys] extends { [ELYSIA_FORM_DATA]: infer Data } ? Data - : Res[200] + : Res[SuccessKeys] error: null response: Response status: number @@ -171,7 +182,7 @@ export namespace Treaty { } | { data: null - error: Exclude extends never + error: Exclude> extends never ? { status: unknown value: unknown @@ -185,7 +196,7 @@ export namespace Treaty { ? Data : Res[Status] } - }[Exclude] + }[Exclude>] response: Response status: number headers: RequestInit['headers']