UNPKG

lisk-framework

Version:

Lisk blockchain application platform

54 lines (53 loc) 3.09 kB
/// <reference types="node" /> /// <reference types="node" /> import { EventEmitter } from 'events'; import { StateDB, Database } from '@liskhq/lisk-db'; import { ABI, InitStateMachineRequest, InitStateMachineResponse, InitGenesisStateRequest, InitGenesisStateResponse, InsertAssetsRequest, InsertAssetsResponse, VerifyAssetsRequest, VerifyAssetsResponse, BeforeTransactionsExecuteRequest, BeforeTransactionsExecuteResponse, AfterTransactionsExecuteRequest, AfterTransactionsExecuteResponse, VerifyTransactionRequest, VerifyTransactionResponse, ExecuteTransactionRequest, ExecuteTransactionResponse, CommitRequest, CommitResponse, RevertRequest, RevertResponse, ClearRequest, ClearResponse, FinalizeRequest, FinalizeResponse, MetadataRequest, MetadataResponse, QueryRequest, QueryResponse, ProveRequest, ProveResponse, InitRequest, InitResponse } from '../abi'; import { Logger } from '../logger'; import { BaseModule } from '../modules'; import { StateMachine } from '../state_machine'; import { ApplicationConfig } from '../types'; import { BaseChannel } from '../controller/channels'; export interface ABIHandlerConstructor { config: ApplicationConfig; logger: Logger; stateMachine: StateMachine; stateDB: StateDB; moduleDB: Database; modules: BaseModule[]; channel: BaseChannel; chainID: Buffer; } export declare const EVENT_ENGINE_READY = "EVENT_ENGINE_READY"; export declare class ABIHandler implements ABI { readonly event: EventEmitter; private readonly _logger; private readonly _stateMachine; private readonly _stateDB; private readonly _moduleDB; private readonly _modules; private readonly _channel; private readonly _config; private _executionContext; private _chainID?; private _cachedGenesisState; constructor(args: ABIHandlerConstructor); get chainID(): Buffer; cacheGenesisState(): Promise<void>; init(req: InitRequest): Promise<InitResponse>; initStateMachine(req: InitStateMachineRequest): Promise<InitStateMachineResponse>; initGenesisState(req: InitGenesisStateRequest): Promise<InitGenesisStateResponse>; insertAssets(req: InsertAssetsRequest): Promise<InsertAssetsResponse>; verifyAssets(req: VerifyAssetsRequest): Promise<VerifyAssetsResponse>; beforeTransactionsExecute(req: BeforeTransactionsExecuteRequest): Promise<BeforeTransactionsExecuteResponse>; afterTransactionsExecute(req: AfterTransactionsExecuteRequest): Promise<AfterTransactionsExecuteResponse>; verifyTransaction(req: VerifyTransactionRequest): Promise<VerifyTransactionResponse>; executeTransaction(req: ExecuteTransactionRequest): Promise<ExecuteTransactionResponse>; commit(req: CommitRequest): Promise<CommitResponse>; revert(req: RevertRequest): Promise<RevertResponse>; clear(_req: ClearRequest): Promise<ClearResponse>; finalize(req: FinalizeRequest): Promise<FinalizeResponse>; getMetadata(_req: MetadataRequest): Promise<MetadataResponse>; query(req: QueryRequest): Promise<QueryResponse>; prove(req: ProveRequest): Promise<ProveResponse>; }