SuperAPI AI 工具集

ts-sdk-types

编程与开发

查看项目

更新于 10-15 19:57

技能介绍

用途:指导使用 @aptos-labs/ts-sdk 时在 Move 与 TypeScript 之间正确映射类型,重点处理 u128/u256 等数值、address、TypeTag 以及 functionArguments / typeArguments。

主要能力与映射:u8/u16/u32 用 number;u64 用 number 或 bigint,大值优先 bigint;u128、u256 用 bigint;i8..i64(Move 2.3+)用 number 或 bigint,i64 大值用 bigint;i128、i256 用 bigint;bool 用 boolean;address 用 string;signer 不从 TS 传入,即交易发送者;vector 用 Uint8Array 或十六进制字符串,vector 用数组;String 用 string;Object 用对象地址字符串;Option 用 T 或 null。

使用方式:functionArguments 的顺序与类型必须匹配 Move 入口/视图函数参数;泛型 Move 函数须用 typeArguments 传完整类型串,如 ["0x1::aptos_coin::AptosCoin"]。视图结果若已知返回类型应显式转换,如 u128 用 BigInt(result[0] as string)。对象/资源地址以字符串(AIP-40 的 LONG 或 SHORT)传入。高级场景可从 @aptos-labs/ts-sdk 导入 TypeTag 或 parseTypeTag 解析类型串,简单场景仍用字符串数组。

适用场景:构建交易 payload、调用视图函数、调用 coin::balance 或 coin::transfer 等泛型函数、以编程方式构造或解析类型标签。

限制与常见错误:u128/u256 不可用 number,否则精度丢失;大 u64 不可用裸 number;Move 函数有类型参数时不可省略 typeArguments;u128 结果不可直接当作 number;functionArguments 顺序必须与 Move 参数一致。其余细节暂未提供。