From dff4262ee1efd29c3336526e03f55d82b4aec3cf Mon Sep 17 00:00:00 2001 From: Arrowana <8245419+Arrowana@users.noreply.github.com> Date: Wed, 8 Sep 2021 21:28:42 +1000 Subject: [PATCH 1/2] Add array --- packages/anchor-contrib/src/index.ts | 2 ++ 1 file changed, 2 insertions(+) diff --git a/packages/anchor-contrib/src/index.ts b/packages/anchor-contrib/src/index.ts index 5422264b4..33f2cb4b1 100644 --- a/packages/anchor-contrib/src/index.ts +++ b/packages/anchor-contrib/src/index.ts @@ -124,6 +124,8 @@ type DecodeType = T extends keyof TypeMap ? Defined[T["vec"]["defined"]][] : T extends { vec: keyof TypeMap } ? TypeMap[T["vec"]][] + : T extends { array: { idlType: keyof TypeMap; size: number } } + ? TypeMap[T["array"]["idlType"]][] : unknown; type MakeArgs = { From b8f3825f8338807841cb6c3ab7a87efa5b4a9036 Mon Sep 17 00:00:00 2001 From: Arrowana <8245419+Arrowana@users.noreply.github.com> Date: Wed, 8 Sep 2021 21:34:09 +1000 Subject: [PATCH 2/2] or maybe more like this --- packages/anchor-contrib/src/index.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/anchor-contrib/src/index.ts b/packages/anchor-contrib/src/index.ts index 33f2cb4b1..aab4bb262 100644 --- a/packages/anchor-contrib/src/index.ts +++ b/packages/anchor-contrib/src/index.ts @@ -124,8 +124,8 @@ type DecodeType = T extends keyof TypeMap ? Defined[T["vec"]["defined"]][] : T extends { vec: keyof TypeMap } ? TypeMap[T["vec"]][] - : T extends { array: { idlType: keyof TypeMap; size: number } } - ? TypeMap[T["array"]["idlType"]][] + : T extends { array: [idlType: keyof TypeMap, size: number] } + ? TypeMap[T["array"][0]][] : unknown; type MakeArgs = {