tera/src/global.d.ts

736 lines
24 KiB
TypeScript

export { };
import { ChildProcess } from 'child_process'
import CSmartContract from './core/transaction-validator'
import CConsensus from './core/block-exchange'
import CTransport from './core/server'
import * as BufLib from './core/buffer'
import { Comparator } from 'bintrees';
declare global {
var nw: any;
interface TeraError {
code: string;
stack: any;
}
interface Window {
RUN_CLIENT: number;
RUN_SERVER: number;
}
namespace NodeJS {
interface Global {
//#region run-node.ts
DATA_PATH: string;
CODE_PATH: string;
HTTP_PORT_NUMBER: number;
LOCAL_RUN: number;
//#endregion
//#region main-process.ts
PROCESS_NAME: string;
POWPROCESS: number;
DEBUGPROCESS: any;
START_SERVER: number;
SetCalcPOW: Function;
RunStopPOWProcess: Function;
NEW_SERVER_PRIVATE_KEY: number;
//#endregion
//#region constant.ts
UPDATE_CODE_VERSION_NUM: number;
MIN_CODE_VERSION_NUM: number;
MINING_VERSION_NUM: number;
InitParamsArg: Function;
CONST_NAME_ARR: string[];
MAX_LENGTH_SENDER_MAP: number;
DELTA_START_SENDER_MAP: number;
NODES_DELTA_CALC_HOUR: number;
USE_API_WALLET: number;
USE_API_V1: number;
USE_HARD_API_V2: number;
USE_TICKET: number;
USE_CHECK_SENDING: number;
USE_LEVEL_WAY: number;
TR_TICKET_HASH_LENGTH: number;
BLOCKNUM_TICKET_ALGO: number;
WATCHDOG_BADACCOUNT: number;
WATCHDOG_DEV: number;
RESYNC_CONDITION: {
OWN_BLOCKS: number;
K_POW: number;
};
REST_BLOCK_SCALE: number;
REST_START_COUNT: number;
LOAD_TO_BEGIN: number;
DEBUG_WALLET: number;
CHECK_GLOBAL_TIME: number;
AUTO_CORRECT_TIME: number;
DELTA_CURRENT_TIME: number;
NODES_NAME: string;
COMMON_KEY: string;
SERVER_PRIVATE_KEY_HEX: string;
USE_NET_FOR_SERVER_ADDRES: number;
NET_WORK_MODE: {
ip?: string;
port?: number | string;
UseDirectIP?: boolean | number;
NodeWhiteList?: string;
DoRestartNode?: number;
NOT_RUN?: boolean | number;
}
STAT_MODE: number;
MAX_STAT_PERIOD: number;
UPDATE_NUM_COMPLETE: number;
WALLET_NAME: string;
WALLET_DESCRIPTION: string;
USE_MINING: number;
POW_MAX_PERCENT: number;
POW_RUN_COUNT: number;
POWRunPeriod: number;
CheckPointDelta: number;
ALL_LOG_TO_CLIENT: number;
LOG_LEVEL: number;
LIMIT_SEND_TRAFIC: number;
COUNT_VIEW_ROWS: number;
MIN_VER_STAT: number;
STOPGETBLOCK: number;
RESTART_PERIOD_SEC: number;
HARD_PACKET_PERIOD120: number;
MINING_START_TIME: string;
MINING_PERIOD_TIME: string;
CHECK_RUN_MINING: number;
CHECK_STOP_CHILD_PROCESS: number;
COUNT_MINING_CPU: number;
SIZE_MINING_MEMORY: number;
HTTP_HOSTING_PORT: number;
HTTPS_HOSTING_DOMAIN: string;
HTTP_MAX_COUNT_ROWS: number;
HTTP_ADMIN_PASSWORD: string;
HTTP_START_PAGE: string;
MIN_POWER_POW_HANDSHAKE: number;
USE_HINT: number;
ALL_VIEW_ROWS: number;
COUNT_BLOCK_PROOF: number;
COUNT_NODE_PROOF: number;
MIN_POWER_POW_MSG: number;
MEM_POOL_MSG_COUNT: number;
MAX_LEVEL_SPECIALIZATION: number;
MIN_CONNECT_CHILD: number;
MAX_CONNECT_CHILD: number;
MAX_CONNECTIONS_COUNT: number;
TRUST_PROCESS_COUNT: number;
MAX_NODES_RETURN: number;
MAX_WAIT_PERIOD_FOR_STATUS: number;
MAX_GRAY_CONNECTIONS_TO_SERVER: number;
MAX_PACKET_LENGTH: number;
COUNT_BLOCKS_FOR_LOAD: number;
TR_LEN: number;
BLOCK_PROCESSING_LENGTH: number;
BLOCK_PROCESSING_LENGTH2: number;
CONSENSUS_PERIOD_TIME: number;
MAX_BLOCK_SIZE: number;
MAX_TRANSACTION_SIZE: number;
MIN_TRANSACTION_SIZE: number;
MAX_TRANSACTION_COUNT: number;
MAX_TRANSACTION_LIMIT: number;
MIN_POWER_POW_TR: number;
MIN_POWER_POW_BL: number;
GENERATE_BLOCK_ACCOUNT: number;
TOTAL_SUPPLY_TERA: number;
TRANSACTION_PROOF_COUNT: number;
MIN_POWER_POW_ACC_CREATE: number;
START_MINING: number;
REF_PERIOD_MINING: number;
REF_PERIOD_END: number;
DELTA_BLOCK_ACCOUNT_HASH: number;
PERIOD_ACCOUNT_HASH: number;
START_BLOCK_ACCOUNT_HASH: number;
START_BLOCK_ACCOUNT_HASH3: number;
NEW_ACCOUNT_INCREMENT: number;
NEW_BLOCK_REWARD1: number;
NEW_FORMULA_START: number;
NEW_FORMULA_KTERA: number;
NEW_FORMULA_TARGET1: number;
NEW_FORMULA_TARGET2: number;
BLOCK_COUNT_IN_MEMORY: number;
HISTORY_BLOCK_COUNT: number;
MAX_SIZE_LOG: number;
READ_ONLY_DB: number;
USE_CHECK_SAVE_DB: number;
START_NETWORK_DATE: number;
NETWORK: string;
DEF_MAJOR_VERSION: string;
SMART_BLOCKNUM_START: number;
PRICE_DAO: Function;
NEW_SIGN_TIME: number;
TEST_TRANSACTION_GENERATE: number;
TEST_NETWORK: boolean | number;
START_PORT_NUMBER: number | string;
GetNetworkName: Function;
DEF_VERSION: string;
DEF_CLIENT: string;
FIRST_TIME_BLOCK: number;
START_BLOCK_RUN: number;
START_IP: string;
LISTEN_IP: string;
HTTP_PORT_PASSWORD: string;
HTTP_IP_CONNECT: string;
USE_AUTO_UPDATE: boolean;
USE_PARAM_JS: number;
CREATE_ON_START: boolean | number;
DEBUG_MODE: number;
RUN_CLIENT: number;
RUN_SERVER: number;
CHILD_POW: boolean;
ADDRLIST_MODE: boolean;
NWMODE: number;
NOALIVE: number;
DEV_MODE: number;
//#endregion
//#region startlib.ts
GetDataPath: (str: string) => string;
GetCodePath: (str: string) => string;
GetNormalPathString: (str: string) => string;
CheckCreateDir: (l, o?, t?) => void;
CopyFiles: (l, o, t) => void;
ToLog: Function;
//#endregion
TO_ERROR_LOG: Function;
ToLogClient: Function;
glCurNumFindArr: number;
ArrReconnect: any[];
ArrConnect: any[];
//#region main-process.ts:51
SERVER: CSmartContract | CConsensus | CTransport | any;
NeedRestart: number;
WEB_PROCESS: TeraProcess;
CountAllNode: number;
//#endregion
//#region main-process.ts:100
GetCurrentTime: Function;
//#endregion
//#region
SpeedSignLib: number;
TestSignLib: Function;
//#endregion
//#region main-process.ts:118
TX_PROCESS: TeraProcess
//#endregion
//#region main-process.ts:141
AddTransactionFromWeb: Function;
STATIC_PROCESS: TeraProcess;
//#endregion
//#region main-process.ts:204
WALLET: any;
//#endregion
//#region main-process.ts:342
StopChildProcess: Function;
//#endregion
//#region main-process.ts:375
MiningPaused: number;
ArrMiningWrk: any[];
//#endregion
//#region library.ts:118
DelDir: Function;
SliceArr: Function;
random: Function;
AddrLevelArrFromBegin: Function;
AddrLevelArr: Function;
SaveToFile: Function;
LoadParams: Function;
SaveParams: Function;
StartTime: Function;
FinishTime: Function;
CompareItemBufFD: Function;
CompareArr33: Function;
CompareItemHashSimple: Comparator<any>;
CompareItemHash: any;
CompareItemHash32: Comparator<any>;
CompareItemHASH32: Function;
CompareItemHash33: Function;
CompareItemHashPow: Function;
CompareItemTimePow: any;
LOAD_CONST: Function;
SAVE_CONST: Function;
CheckGlobalTime: Function;
GetDeltaCurrentTime: Function;
GetStrTimeUTC: Function;
GetStrOnlyTimeUTC: Function;
GetSecFromStrTime: Function;
DateFromBlock: Function;
NormalizeName: Function;
CreateEval: Function;
GetCountMiningCPU: Function;
AddTrMap: string[];
GrayConnect: Function;
//#endregion
//#region library.ts:118
RBTree: any;
ntpClient: any;
Stun: any;
ZIP: any;
secp256k1: any;
BufLib: typeof BufLib;
GetCurrentBlockNumByTime: Function;
TimeStart: number;
//#endregion
//#region run-nw.ts
NWVERSION: string;
HTTP_SERVER_START_OK: boolean | number;
NO_HISTORY_MODE: boolean;
//#endregion
// //#region crypto-library.ts
// MAX_SUPER_VALUE_POW: number;
// GetHexFromAddres: Function;
// GetArr32FromHex: Function;
// GetAddresFromHex: Function;
// GetHexAddresFromPublicKey: Function;
// GetHexFromArr: Function;
// GetArrFromHex: Function;
// GetHexFromArrBlock: Function;
// GetPublicKeyFromAddres: Function;
// CheckDevelopSign: Function;
// CheckContextSecret: Function;
// GetSignHash: Function;
// GetVerifyHash: Function;
// GetKeyPair: Function;
// GetKeyPairTest: Function;
// GetHashWithValues: Function;
// CreateNoncePOWExtern: Function;
// CreateNoncePOWExternMinPower: Function;
// CreateNoncePOWInner: Function;
// CreateAddrPOW: Function;
// CalcMerkl3FromArray: Function;
// CalcMerkl0FromArray: Function;
// ClientHex: Function;
// CalcHash3FromArray: Function;
// CalcHashFromArray: Function;
// CalcMerklFromArray: Function;
// CalcTreeHashFromArrBody: Function;
// UpdateMerklTree: Function;
// GetMerkleProof: Function;
// CheckMerkleProof: Function;
// IsZeroArr: Function;
// GetHashWithNonce: Function;
// GetPowPower: Function;
// GetArrFromValue: Function;
// GetPowValue: Function;
// Mesh: Function;
// Encrypt: Function;
// Decrypt: Function;
// toUTF8Array: Function;
// Utf8ArrayToStr: Function;
// GetArrFromStr: Function;
// IsDeveloperAccount: Function;
// DEVELOP_PUB_KEY_ARR: Buffer[] | string[];
// DEVELOP_PUB_KEY: any;
// DEVELOP_PUB_KEY0: Buffer;
// ARR_PUB_KEY: any;
// //#endregion
//#region log-strict.ts
CheckSizeLogFile: Function;
//#endregion
//#region log.ts
ArrLogClient: any[];
WEB_LOG: any;
ToLogWeb: Function;
SmallAddr: Function;
ToErrorTrace: Function;
ToLogTrace: Function;
ToInfo: Function;
ToError: Function;
ToLogClient0: Function;
ToErrorTx: Function;
PrepareStatEverySecond: Function;
HASH_RATE: number;
ADD_HASH_RATE: Function;
GET_STAT: Function;
ADD_TO_STAT_TIME: Function;
ADD_TO_STAT: Function;
GET_STATDIAGRAMS: Function;
GET_STATS: Function;
StartCommonStat: Function;
ClearCommonStat: Function;
ResizeArrAvg: Function;
ResizeArrMax: Function;
TO_DEBUG_LOG: Function;
GetStrOnlyTime: Function;
GetStrTime: Function;
//#endregion
//#region geo.ts
SetGeoLocation: Function;
//#endregion
//#region geo.ts
WebApi2: any;
HostingCaller: any;
//#endregion
//#region web-process.ts
LoadBlockFromNetwork: (Params, F?) => any;
GlobalRunID: number;
//#endregion
//#region base.ts
glStopNode: any;
GetCheckAccHash: Function;
ReadHashFromBufDB: Function;
STreeBuffer: any;
TestCreateTr: Function;
//#endregion
//#region html-server.ts
HTTPCaller: any;
DappTemplateFile: Function;
DappSmartCodeFile: Function;
DappClientCodeFile: Function;
SendBlockFile: Function;
SetCheckPointOnBlock: Function;
SendHTMLMap: any;
SendWebFile: Function;
GetFileHTMLWithParsing: Function;
GetFileHTMLFromMarkdown: Function;
GetFileSimple: Function;
SaveFileSimple: Function; SetSafeResponce: Function;
GetUserContext: Function;
EventNum: number;
EventMap: any;
AddDappEventToGlobalMap: Function;
//#endregion
//#region accounts.ts
HistoryDB: any;
// FORMAT_CREATE: string;
// FORMAT_MONEY_TRANSFER: string;
// FORMAT_MONEY_TRANSFER_BODY: string;
// FORMAT_MONEY_TRANSFER2: string;
// FORMAT_MONEY_TRANSFER_BODY2: string;
// FORMAT_MONEY_TRANSFER3: string;
// FORMAT_MONEY_TRANSFER_BODY3: string;
// FORMAT_ACCOUNT_HASH: string;
// FORMAT_ACCOUNT_HASH3: string;
//#endregion
// //#region block-db.ts
// BlockDB: any;
// BLOCK_HEADER_SIZE: number;
// BLOCK_HEADER_SIZE2: number;
// DB_VERSION: number;
// AddInfoChain: Function;
// AddInfoBlock: Function;
// GetNodeStrPort: Function;
// NO_CHECK_BLOCKNUM_ONSTART: number;
// //#endregion
//#region db.ts
//CheckStartOneProcess: Function;
//#endregion
//#region update.ts
UpdateMode: number;
//#endregion
//#region file.ts
// TYPE_TRANSACTION_FILE: number;
// FORMAT_FILE_CREATE: string;
//#endregion
// //#region dapp.ts
// DApps: {
// Accounts?: any,
// File?: any,
// Names?: any,
// Messager?: any,
// Smart?: any,
// };
// DAppByType: any;
// //#endregion
//#region names.ts
NAMES: any;
//#endregion
//#region smart.ts
TickCounter: number;
// TYPE_TRANSACTION_SMART_RUN: number;
// FORMAT_SMART_CREATE: string;
// FORMAT_SMART_RUN
// FORMAT_SMART_CHANGE
RunSmartMethod: Function;
DebugEvent: Function;
//#endregion
//#region transaction-validator.ts
CurTrItem: any;
//#endregion
//#region connect.ts
PERIOD_FOR_RECONNECT: number;
CHECK_DELTA_TIME: any;
CHECK_POINT: any;
CODE_VERSION: any;
NET_CONSTANT: any;
START_LOAD_CODE: any;
MIN_PERIOD_PING: number;
MAX_PING_FOR_CONNECT: number;
MAX_WAIT_PERIOD_FOR_HOT: number;
GetGrayServerConnections: Function;
SortNodeBlockProcessCount: Function;
//#endregion
//#region code.ts
RestartNode: Function;
UnpackCodeFile: Function;
//#endregion
//#region node.ts
SocketStatistic: Function;
GetSocketStatus: Function;
SetSocketStatus: Function;
NodeInfo: Function;
NodeName: Function;
SocketInfo: Function;
FindNodeByAddr: Function;
AddNodeInfo: Function;
socketInit: Function;
socketRead: Function;
socketWrite: Function;
CloseSocket: Function;
//#endregion
//#region terahashlib.js
GetHashFromSeqAddr: Function;
CalcHashBlockFromSeqAddr: Function;
GetHashFromNum2: Function;
GetHashFromNum3: Function;
GetHashFromArrNum2: Function;
XORArr: Function;
GetHash: Function;
ReadUint32FromArr: Function;
ReadUintFromArr: Function;
ReadUint16FromArr: Function;
WriteUintToArr: Function;
WriteUint32ToArr: Function;
WriteUint32ToArrOnPos: Function;
WriteUint16ToArrOnPos: Function;
WriteUintToArrOnPos: Function;
WriteArrToArr: Function;
WriteArrToArrOnPos: Function;
WriteArrToArrHOnPos: Function;
ConvertBufferToStr: Function;
CopyObjValue: Function;
CopyArr: Function;
ParseNum: Function;
CompareArr: (a: any[] | Buffer, b: any[] | Buffer) => number;
CompareArrL: Function;
shaarr2: Function;
sha3arr2: Function;
arr2: Function;
GetBlockArrFromBuffer: Function;
shaarrblock2: Function;
//#endregion
//#region wallet-node.js
CleanChain: Function;
//#endregion
//#region lexer.js
LexerJS: any;
//#endregion
//#region coinlib.js
ADD: Function;
SUB: Function;
DIV: Function;
ISZERO: Function;
FLOAT_FROM_COIN: Function;
COIN_FROM_FLOAT: Function;
COIN_FROM_STRING: Function;
//#endregion
//#region block-exchange.ts
CAN_START: boolean;
StrWarn: string;
SUM_LIST_LENGTH: number;
CONSENSUS_TIK_TIME: number;
CONSENSUS_CHECK_TIME: number;
PERIOD_FOR_NEXT_SEND: number;
BLOCK_DELTA_ACTIVATE: number;
TIME_END_EXCHANGE: number;
TIME_START_POW: number;
TIME_START_SAVE: number;
TIME_START_LOAD: number;
TreeBlockBuf: any;
DoTxLog: boolean;
//#endregion
//#region block-loader.ts
HistoryBlockBuf: any
//#endregion
//#region block-loader-const.ts
PERIOD_GET_BLOCK: number;
COUNT_HISTORY_BLOCKS_FOR_LOAD: number;
COUNT_BLOCKS_FOR_CHECK_POW: number;
MAX_DELTA_COUNT_SUM_FOR_LOAD: number;
MAX_COUNT_CHAIN_LOAD: number;
PACKET_ALIVE_PERIOD: number;
PACKET_ALIVE_PERIOD_NEXT_NODE: number;
MAX_BLOCK_SEND: number;
COUNT_TASK_FOR_NODE: number;
// FORMAT_BLOCK_TRANSFER: string;
WRK_BLOCK_TRANSFER: any;
MAX_ACCOUNTS_TRANSFER: number;
MAX_SMARTS_TRANSFER: number;
// FORMAT_REST_TRANSFER: string;
// FORMAT_SMART_TRANSFER: string;
//#endregion
//#region server.ts
BUF_TYPE: number;
STR_TYPE: number;
MAX_STR_BUF_DATA: number;
MAX_CONNECTION_ACTIVE: number;
STAT_PERIOD: number;
FORMAT_POW_TO_CLIENT: string;
FORMAT_POW_TO_SERVER: string;
INTERNET_IP_FROM_STUN: string;
ContextPackets: any;
//#endregion
//#region terahashmining.ts
CreateHashMinimal: Function;
GetNonceHashArr: Function;
//#endregion
//#region pow-process.ts
BlockPump: any;
//#endregion
//#region tx-process.ts
SetStatMode: Function;
TreeFindTX
bShowDetail: number;
ClearDataBase: Function;
RewriteAllTransactions: Function;
ReWriteDAppTransactions: Function;
TXPrepareLoadRest: Function;
TXWriteAccArr: Function;
TXWriteSmartArr: Function;
TXWriteAccHash: Function;
EvalCode: Function;
//#endregion
//#region messager.ts
MESSAGER: any;
//#endregion
//#region update.ts
RunOnUpdate: Function;
CheckRewriteTr: Function;
//#endregion
//#region transfer-msg.ts
TrName: Function;
//#endregion
//#region rest_tables.ts
DoRest: Function;
GetRestArr: Function;
GetCurrentRestArr: Function;
GetCurrentRestNum: Function;
//#endregion
nw: any;
GlobalRunMap: any;
sha3: any;
SHA3BUF: any;
shaarr: any;
ELECTRON: any;
TestTestWaletMode: any;
OnExit: any;
}
interface Process {
RunRPC: Function;
}
}
interface TeraChildProcess extends ChildProcess {
Num: number;
bOnline: boolean
}
interface TeraProcess {
pid?: number;
Name: string;
idInterval: number | any;
idInterval1: number | any;
idInterval2: number | any;
LastAlive: number;
Worker: TeraChildProcess;
Path: string;
OnMessage: Function;
PeriodAlive: number;
RunRPC?: Function;
}
interface Worker {
connected: boolean;
send: Function;
}
interface Number {
//#region library.ts:118
toStringZ: Function;
//#region
}
interface String {
right: Function;
}
interface HostingCaller {
GetCurrentInfo?: Function;
GetAccountList?: Function;
GetAccount?: Function;
GetBlockList?: Function;
GetTransactionList?: Function;
GetTransactionAll?: Function;
GetDappList?: Function;
GetNodeList?: Function;
GetAccountListByKey?: Function;
GetDappCategory?: Function;
SendTransactionHex?: Function;
DappSmartHTMLFile?: Function;
DappBlockFile?: Function;
DappInfo?: Function;
DappWalletList?: Function;
DappAccountList?: Function;
DappSmartList?: Function;
DappBlockList?: Function;
DappTransactionList?: Function;
DappStaticCall?: Function;
GetHistoryTransactions?: Function;
GetSupply?: Function;
GetTotalSupply?: Function;
}
interface Buffer {
Read,
Write,
len
}
}