@ocap/types
Version:
Typescript definitions generated from protobuf
485 lines (425 loc) • 9.97 kB
TypeScript
// package: ocap
// file: type.proto
import * as google_protobuf_timestamp_pb from "google-protobuf/google/protobuf/timestamp_pb";
import * as google_protobuf_any_pb from "google-protobuf/google/protobuf/any_pb";
import * as vendor_pb from "./vendor_pb";
import * as enum_pb from "./enum_pb";
export type TBigUint = {
value: Uint8Array | string,
}
export type TBigSint = {
value: Uint8Array | string,
minus: boolean,
}
export type TTokenSymbol = {
address: string,
symbol: string,
decimal: number,
unit: string,
}
export type TTokenInfo = {
address: string,
symbol: string,
decimal: number,
unit: string,
name: string,
description: string,
icon: string,
maxTotalSupply: string,
metadata?: google_protobuf_any_pb.Any,
website: string,
spenders: Array<string>,
minters: Array<string>,
type: string,
}
export type TWalletType = {
pk: enum_pb.KeyTypeMap[keyof enum_pb.KeyTypeMap],
hash: enum_pb.HashTypeMap[keyof enum_pb.HashTypeMap],
address: enum_pb.EncodingTypeMap[keyof enum_pb.EncodingTypeMap],
role: enum_pb.RoleTypeMap[keyof enum_pb.RoleTypeMap],
}
export type TWalletInfo = {
type?: TWalletType,
sk: Uint8Array | string,
pk: Uint8Array | string,
address: string,
}
export type TChainInfo = {
id: string,
network: string,
moniker: string,
consensusVersion: string,
synced: boolean,
appHash: Uint8Array | string,
blockHash: Uint8Array | string,
blockHeight: string,
blockTime?: google_protobuf_timestamp_pb.Timestamp,
address: string,
votingPower: string,
totalTxs: string,
version: string,
forgeAppsVersionMap: Array<[string, string]>,
supportedTxs: Array<string>,
}
export type TNodeInfo = {
id: string,
network: string,
moniker: string,
consensusVersion: string,
synced: boolean,
appHash: Uint8Array | string,
blockHash: Uint8Array | string,
blockHeight: string,
blockTime?: google_protobuf_timestamp_pb.Timestamp,
address: string,
votingPower: string,
totalTxs: string,
version: string,
forgeAppsVersionMap: Array<[string, string]>,
supportedTxs: Array<string>,
ip: string,
geoInfo?: TGeoInfo,
p2pAddress: string,
}
export type TValidator = {
address: string,
power: string,
}
export type TConsensusParams = {
maxBytes: string,
maxGas: string,
maxValidators: number,
maxCandidates: number,
pubKeyTypes: Array<string>,
validators: Array<TValidator>,
validatorChanged: boolean,
paramChanged: boolean,
}
export type TUpgradeTask = {
type: enum_pb.UpgradeTypeMap[keyof enum_pb.UpgradeTypeMap],
dataHash: string,
actions: Array<enum_pb.UpgradeActionMap[keyof enum_pb.UpgradeActionMap]>,
}
export type TUpgradeTasks = {
item: Array<TUpgradeTask>,
}
export type TMultisig = {
signer: string,
pk: Uint8Array | string,
signature: Uint8Array | string,
delegator: string,
data?: google_protobuf_any_pb.Any,
}
export type TTransaction = {
from: string,
nonce: number,
chainId: string,
pk: Uint8Array | string,
gas: number,
delegator: string,
signature: Uint8Array | string,
signatures: Array<TMultisig>,
itx?: google_protobuf_any_pb.Any,
receipts: Array<TTransactionReceipt>,
serviceFee: string,
}
export type TTransactionInfo = {
tx?: TTransaction,
height: string,
index: number,
hash: string,
tags: Array<vendor_pb.TKVPair>,
code: enum_pb.StatusCodeMap[keyof enum_pb.StatusCodeMap],
time?: google_protobuf_timestamp_pb.Timestamp,
receipts: Array<TTransactionReceipt>,
sender: string,
receiver: string,
tokenSymbols: Array<TTokenSymbol>,
}
export type TTransactionReceipt = {
address: string,
changes: Array<TReceiptChange>,
}
export type TReceiptChange = {
target: string,
action: string,
value: string,
}
export type TTokenInput = {
address: string,
value: string,
}
export type TTransactionInput = {
owner: string,
tokens: Array<TTokenInput>,
assets: Array<string>,
}
export type TVariableInput = {
name: string,
value: string,
description: string,
required: boolean,
}
export type TDelegateConfig = {
deltaInterval: number,
typeUrls: Array<string>,
}
export type TVaultConfig = {
slashedStake: string,
txFee: string,
txGas: Array<string>,
}
export type TTxFeeConfig = {
typeUrl: string,
fee: string,
}
export type TTxGasConfig = {
price: number,
createState: number,
updateState: number,
dataStorage: number,
minStake: string,
maxStake: string,
stakeLockPeriod: number,
}
export type TTxStakeConfig = {
createToken: number,
createTokenLockPeriod: number,
}
export type TTransactionConfig = {
maxAssetSize: number,
maxListSize: number,
maxMultisig: number,
delegate?: TDelegateConfig,
txFee: Array<TTxFeeConfig>,
txGas?: TTxGasConfig,
txStake?: TTxStakeConfig,
}
export type TBlockInfo = {
height: string,
numTxs: number,
time?: google_protobuf_timestamp_pb.Timestamp,
appHash: Uint8Array | string,
proposer: Uint8Array | string,
txs: Array<TTransactionInfo>,
totalTxs: string,
invalidTxs: Array<TTransactionInfo>,
txsHashes: Array<string>,
invalidTxsHashes: Array<string>,
consensusHash: Uint8Array | string,
dataHash: Uint8Array | string,
evidenceHash: Uint8Array | string,
lastCommitHash: Uint8Array | string,
lastResultsHash: Uint8Array | string,
nextValidatorsHash: Uint8Array | string,
validatorsHash: Uint8Array | string,
version?: vendor_pb.TVersion,
lastBlockId?: vendor_pb.TBlockID,
}
export type TBlockInfoSimple = {
height: string,
numTxs: number,
time?: google_protobuf_timestamp_pb.Timestamp,
appHash: Uint8Array | string,
proposer: Uint8Array | string,
totalTxs: string,
txsHashes: Array<string>,
invalidTxsHashes: Array<string>,
consensusHash: Uint8Array | string,
dataHash: Uint8Array | string,
evidenceHash: Uint8Array | string,
lastCommitHash: Uint8Array | string,
lastResultsHash: Uint8Array | string,
nextValidatorsHash: Uint8Array | string,
validatorsHash: Uint8Array | string,
version?: vendor_pb.TVersion,
lastBlockId?: vendor_pb.TBlockID,
}
export type TStateContext = {
genesisTx: string,
renaissanceTx: string,
genesisTime?: google_protobuf_timestamp_pb.Timestamp,
renaissanceTime?: google_protobuf_timestamp_pb.Timestamp,
}
export type TStakeSummary = {
totalStakes?: TBigUint,
totalUnstakes?: TBigUint,
context?: TStateContext,
}
export type TUnconfirmedTxs = {
nTxs: number,
txs: Array<TTransaction>,
}
export type TNetInfo = {
listening: boolean,
listeners: Array<string>,
nPeers: number,
peers: Array<TPeerInfo>,
}
export type TGeoInfo = {
city: string,
country: string,
latitude: number,
longitude: number,
}
export type TPeerInfo = {
id: string,
network: string,
consensusVersion: string,
moniker: string,
ip: string,
geoInfo?: TGeoInfo,
}
export type TValidatorsInfo = {
blockHeight: string,
validators: Array<TValidatorInfo>,
}
export type TValidatorInfo = {
address: string,
pubKey?: vendor_pb.TPubKey,
votingPower: string,
proposerPriority: string,
name: string,
geoInfo?: TGeoInfo,
}
export type TForgeToken = {
name: string,
symbol: string,
unit: string,
description: string,
icon: Uint8Array | string,
decimal: number,
initialSupply: string,
totalSupply: string,
inflationRate: number,
address: string,
}
export type TUpgradeInfo = {
height: string,
version: string,
}
export type TWithdrawItem = {
hash: string,
value?: TBigUint,
}
export type TAccountConfig = {
address: string,
pk: Uint8Array | string,
balance?: TBigUint,
}
export type TEvidence = {
hash: string,
}
export type TNFTEndpoint = {
id: string,
scope: string,
}
export type TNFTDisplay = {
type: string,
content: string,
}
export type TNFTIssuer = {
id: string,
pk: string,
name: string,
}
export type TAssetFactoryHook = {
name: string,
type: string,
hook: string,
}
export type TIndexedTokenInput = {
address: string,
value: string,
decimal: number,
unit: string,
symbol: string,
}
export type TIndexedFactoryInput = {
value: string,
tokens: Array<TIndexedTokenInput>,
assets: Array<string>,
variables: Array<TVariableInput>,
}
export type TRollupValidator = {
pk: string,
address: string,
endpoint: string,
}
export type TRollupSignature = {
signer: string,
signature: string,
}
export type TForeignToken = {
type: string,
contractAddress: string,
chainType: string,
chainName: string,
chainId: number,
}
export type TRevokedStake = {
tokens: Array<TTokenInput>,
assets: Array<string>,
}
export type TForgeStats = {
numBlocks: Array<string>,
numTxs: Array<string>,
numStakes: Array<TBigUint>,
numValidators: Array<number>,
numAccountMigrateTxs: Array<string>,
numCreateAssetTxs: Array<string>,
numConsensusUpgradeTxs: Array<number>,
numDeclareTxs: Array<string>,
numDeclareFileTxs: Array<string>,
numExchangeTxs: Array<string>,
numStakeTxs: Array<string>,
numSysUpgradeTxs: Array<number>,
numTransferTxs: Array<string>,
numUpdateAssetTxs: Array<string>,
numConsumeAssetTxs: Array<string>,
tps: Array<number>,
maxTps: number,
avgTps: number,
avgBlockTime: number,
}
export type TGasEstimate = {
max: string,
}
export type TRateLimit = {
interval: number,
anchor: number,
}
export type TTokenLimit = {
address: string,
to: Array<string>,
txCount: number,
txAllowance: string,
totalAllowance: string,
validUntil: number,
rate?: TRateLimit,
txSent: number,
spentAllowance: string,
lastTx: number,
decimal: number,
symbol: string,
}
export type TAssetLimit = {
address: Array<string>,
to: Array<string>,
txCount: number,
validUntil: number,
rate?: TRateLimit,
txSent: number,
lastTx: number,
}
export type TDelegateLimit = {
tokens: Array<TTokenLimit>,
assets: Array<TAssetLimit>,
}
export type TCurveConfig = {
type: string,
basePrice: string,
slope: string,
fixedPrice: string,
constant: number,
}