/** * Matching Engine * Matches intents with capable solvers and manages bidding process */ import { Bid, Event, EventType } from '../types'; import { IntentManager } from '../intent/IntentManager'; import { SolverRegistry } from './SolverRegistry'; import { SignatureUtils } from '../utils/signature'; export declare class MatchingEngine { private intentManager; private solverRegistry; private sigUtils; private bidWindowMs; private bids; private intentBids; private eventHandlers; constructor(intentManager: IntentManager, solverRegistry: SolverRegistry, sigUtils: SignatureUtils, bidWindowMs?: number); /** * Start matching process for an intent */ startMatching(intentId: string): Promise; /** * Submit a bid for an intent */ submitBid(intentId: string, solverId: string, fee: number, estimatedTime: number, signature: string): Promise; /** * Get bids for an intent */ getBidsForIntent(intentId: string): Bid[]; /** * Wait for bidding window */ private waitForBids; /** * Select best bid for an intent */ private selectBestBid; /** * Score a bid based on multiple factors */ private scoreBid; /** * Get selected bid for an intent */ getSelectedBid(intentId: string): Bid | undefined; /** * Subscribe to events */ on(eventType: EventType, handler: (event: Event) => void): void; /** * Emit event to subscribers */ private emitEvent; } //# sourceMappingURL=MatchingEngine.d.ts.map