BCS_SPEC top-level property
BcsConfigTypes
BCS_SPEC
final
Implementation
final BCS_SPEC = BcsConfigTypes(
enums: {
'Option<T>': {
"None": null,
"Some": 'T',
},
"ObjectArg": {
"ImmOrOwned": 'SuiObjectRef',
"Shared": 'SharedObjectRef',
"Receiving": 'SuiObjectRef'
},
"CallArg": {
"Pure": [BCS.VECTOR, BCS.U8],
"Object": 'ObjectArg',
"ObjVec": [BCS.VECTOR, 'ObjectArg'],
},
"TypeTag": {
"bool": null,
"u8": null,
"u64": null,
"u128": null,
"address": null,
"signer": null,
"vector": 'TypeTag',
"struct": 'StructTag',
"u16": null,
"u32": null,
"u256": null,
},
"TransactionKind": {
// can not be called from sui.js; dummy placement
// to set the enum counter right for ProgrammableTransact
"ProgrammableTransaction": 'ProgrammableTransaction',
"ChangeEpoch": null,
"Genesis": null,
"ConsensusCommitPrologue": null,
},
"TransactionExpiration": {
"None": null,
"Epoch": BCS.U64,
},
"TransactionData": {
"V1": 'TransactionDataV1',
},
"CompressedSignature": {
"Ed25519": [BCS.FixedArray, BCS.U8, 64],
"Secp256k1": [BCS.FixedArray, BCS.U8, 64],
"Secp256r1": [BCS.FixedArray, BCS.U8, 64],
"ZkLogin": [BCS.VECTOR, BCS.U8],
},
"PublicKey": {
"Ed25519": [BCS.FixedArray, BCS.U8, 32],
"Secp256k1": [BCS.FixedArray, BCS.U8, 33],
"Secp256r1": [BCS.FixedArray, BCS.U8, 33],
"ZkLogin": [BCS.VECTOR, BCS.U8],
},
},
structs: {
"SuiObjectRef": {
"objectId": BCS.ADDRESS,
"version": BCS.U64,
"digest": 'ObjectDigest',
},
"SharedObjectRef": {
"objectId": BCS.ADDRESS,
"initialSharedVersion": BCS.U64,
"mutable": BCS.BOOL,
},
"StructTag": {
"address": BCS.ADDRESS,
"module": BCS.STRING,
"name": BCS.STRING,
"typeParams": [BCS.VECTOR, 'TypeTag'],
},
"GasData": {
"payment": [BCS.VECTOR, 'SuiObjectRef'],
"owner": BCS.ADDRESS,
"price": BCS.U64,
"budget": BCS.U64,
},
// Signed transaction data needed to generate transaction digest.
"SenderSignedData": {
"data": 'TransactionData',
"txSignatures": [BCS.VECTOR, [BCS.VECTOR, BCS.U8]],
},
"TransactionDataV1": {
"kind": 'TransactionKind',
"sender": BCS.ADDRESS,
"gasData": 'GasData',
"expiration": 'TransactionExpiration',
},
"MultiSigPkMap": {
"pubKey": "PublicKey",
"weight": BCS.U8,
},
"MultiSigPublicKey": {
"pk_map": [BCS.VECTOR, "MultiSigPkMap"],
"threshold": BCS.U16,
},
"MultiSig": {
"sigs": [BCS.VECTOR, "CompressedSignature"],
"bitmap": BCS.U16,
"multisig_pk": "MultiSigPublicKey",
}
},
aliases: {
"ObjectDigest": BCS.BASE58,
}
);