const e=require(`../../../types/events.types.cjs`),t=require(`../helpers/ClientEventHelper.cjs`),n=require(`./SolanaBlockchainEventEmitter.cjs`);var r=class extends n.SolanaBlockchainEventEmitter{clientEventHelper;constructor(n,r,i,a,o,s,c){super(n,r,i,a,!1,o,s),c&&this.setIdl(c),this.clientEventHelper=new t.ClientEventHelper(n,e.EventCategory.MainContractEvents)}clear(){this.clientEventHelper.clear()}startUpdateListener(){this.clientEventHelper.startUpdateListener(async e=>{await this.eventsFetchingMutex.runExclusive(async()=>{await this.processEvents(e)})},this.latestBlockNumber+1,e=>this.advanceLatestBlockNumber(e))}};exports.ClientSolanaBlockchainEventEmitter=r;