import { type Logger } from 'pino'; import { type ChainMap, type ChainMetadata, type MultiProvider, type Token, type WarpCore } from '@hyperlane-xyz/sdk'; import type { IMovableCollateralRebalancer, MovableCollateralExecutionResult, RebalancerType } from '../interfaces/IRebalancer.js'; import { MovableCollateralRoute } from '../interfaces/IStrategy.js'; import { type Metrics } from '../metrics/Metrics.js'; import type { IActionTracker } from '../tracking/IActionTracker.js'; export declare class Rebalancer implements IMovableCollateralRebalancer { private readonly warpCore; private readonly chainMetadata; private readonly tokensByChainName; private readonly multiProvider; private readonly actionTracker; private readonly metrics?; readonly rebalancerType: RebalancerType; private readonly logger; constructor(warpCore: WarpCore, chainMetadata: ChainMap, tokensByChainName: ChainMap, multiProvider: MultiProvider, actionTracker: IActionTracker, logger: Logger, metrics?: Metrics | undefined); rebalance(routes: MovableCollateralRoute[]): Promise; private createIntents; private processResults; private toPublicResults; private prepareTransactions; private prepareTransaction; private validateRoute; private executeTransactions; /** * Send all transactions for a single origin chain sequentially. * Sequential sending is required to avoid nonce contention when using the same signing key. */ private sendTransactionsForChain; /** * Build the execution result from a confirmed transaction receipt. * Receipt is already confirmed at reorgPeriod depth from sendTransaction. */ private buildResult; private getReorgPeriod; } //# sourceMappingURL=Rebalancer.d.ts.map