浏览代码

Add coption to DecodeType (#1699)

Pierre 3 年之前
父节点
当前提交
237dbbe42e
共有 1 个文件被更改,包括 4 次插入0 次删除
  1. 4 0
      ts/src/program/namespace/types.ts

+ 4 - 0
ts/src/program/namespace/types.ts

@@ -112,6 +112,10 @@ export type DecodeType<T extends IdlType, Defined> = T extends keyof TypeMap
   ? Defined[T["option"]["defined"]] | null
   : T extends { option: keyof TypeMap }
   ? TypeMap[T["option"]] | null
+  : T extends { coption: { defined: keyof Defined } }
+  ? Defined[T["coption"]["defined"]] | null
+  : T extends { coption: keyof TypeMap }
+  ? TypeMap[T["coption"]] | null
   : T extends { vec: keyof TypeMap }
   ? TypeMap[T["vec"]][]
   : T extends { array: [defined: keyof TypeMap, size: number] }