autrace
Version:
Account Update analyser for MINA
30 lines (29 loc) • 1.2 kB
TypeScript
import { SmartContract } from 'o1js';
import { TransactionState, ContractAnalysis } from './Interface.js';
export declare class AUTrace {
private transactionState;
private contractAnalyzer;
private contractAnalysis;
private auAnalyzer;
private transactionSnapshots;
constructor();
initializeContracts(contracts: SmartContract[]): void;
getContractAnalysis(): Map<string, ContractAnalysis>;
getContractAnalysisFor(contractName: string): ContractAnalysis | undefined;
private traverseTransaction;
private processAccountUpdate;
private extractAUMetadata;
private getTotalFeesInMina;
private determineAuthorizationType;
private extractContractType;
private determineNodeType;
private isContractAccount;
private updateBalanceState;
private buildEdgesFromRelationships;
clearTransactionState: () => void;
getTransactionState: (transaction: any) => TransactionState;
getBlockchainTransactionState: (blockchainTx: any) => TransactionState;
getTransactions: (...transactionStates: any[]) => void;
getStateHistory(): any[];
getBlockchainTxnStateWithFlowAnalysis: (blockchainTx: any) => TransactionState;
}