import { type Address } from "viem"; import type { EVault } from "../../entities/EVault.js"; import type { IDeploymentService } from "../deploymentService/index.js"; import type { ProviderService } from "../providerService/index.js"; import type { TransactionPlan } from "../executionService/index.js"; import { type BuildQueryFn } from "../../utils/buildQuery.js"; import type { BuildFeeFlowBuyPlanArgs, FeeFlowServiceConfig, FeeFlowState, FeeFlowVaultInventory, IFeeFlowService } from "./feeFlowServiceTypes.js"; export declare const FEE_FLOW_BUY_UNAVAILABLE_ERROR = "FeeFlow buy planning is disabled because the deployed transaction path does not enforce a nonzero or minimum selected-vault payout atomically"; export declare class FeeFlowService implements IFeeFlowService { private providerService?; private deploymentService?; private feeFlowControllerAddress?; private feeFlowControllerUtilAddress?; private defaultBuyDeadlineSeconds; constructor(config?: FeeFlowServiceConfig, buildQuery?: BuildQueryFn); setProviderService(providerService: ProviderService): void; setDeploymentService(deploymentService: IDeploymentService): void; fetchState(chainId: number): Promise; getEligibleVaults(vaults: EVault[], chainId?: number): EVault[]; fetchBuyInventory(chainId: number, vaults: Address[] | EVault[]): Promise; buildBuyPlan(args: BuildFeeFlowBuyPlanArgs): Promise; private normalizeVaultAddresses; private resolveFeeFlowControllerAddress; private resolveFeeFlowControllerUtilAddress; } //# sourceMappingURL=feeFlowService.d.ts.map