import type { BaseContract, BigNumber, BigNumberish, BytesLike, CallOverrides, ContractTransaction, Overrides, PayableOverrides, PopulatedTransaction, Signer, utils } from 'ethers'; import type { FunctionFragment, Result, EventFragment } from '@ethersproject/abi'; import type { Listener, Provider } from '@ethersproject/providers'; import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent, PromiseOrValue } from './common.js'; export declare namespace AztecTypes { type AztecAssetStruct = { id: PromiseOrValue; erc20Address: PromiseOrValue; assetType: PromiseOrValue; }; type AztecAssetStructOutput = [BigNumber, string, number] & { id: BigNumber; erc20Address: string; assetType: number; }; } export interface RollupProcessorInterface extends utils.Interface { functions: { 'convert(address,(uint256,address,uint8),(uint256,address,uint8),(uint256,address,uint8),(uint256,address,uint8),uint256,uint256,uint256)': FunctionFragment; 'defiInteractions(uint256)': FunctionFragment; 'getDefiInteractionBlockNumber(uint256)': FunctionFragment; 'getDefiResult(uint256)': FunctionFragment; 'processAsyncDefiInteraction(uint256)': FunctionFragment; 'receiveEthFromBridge(uint256)': FunctionFragment; 'setBridgeGasLimit(address,uint256)': FunctionFragment; }; getFunction(nameOrSignatureOrTopic: 'convert' | 'defiInteractions' | 'getDefiInteractionBlockNumber' | 'getDefiResult' | 'processAsyncDefiInteraction' | 'receiveEthFromBridge' | 'setBridgeGasLimit'): FunctionFragment; encodeFunctionData(functionFragment: 'convert', values: [ PromiseOrValue, AztecTypes.AztecAssetStruct, AztecTypes.AztecAssetStruct, AztecTypes.AztecAssetStruct, AztecTypes.AztecAssetStruct, PromiseOrValue, PromiseOrValue, PromiseOrValue ]): string; encodeFunctionData(functionFragment: 'defiInteractions', values: [PromiseOrValue]): string; encodeFunctionData(functionFragment: 'getDefiInteractionBlockNumber', values: [PromiseOrValue]): string; encodeFunctionData(functionFragment: 'getDefiResult', values: [PromiseOrValue]): string; encodeFunctionData(functionFragment: 'processAsyncDefiInteraction', values: [PromiseOrValue]): string; encodeFunctionData(functionFragment: 'receiveEthFromBridge', values: [PromiseOrValue]): string; encodeFunctionData(functionFragment: 'setBridgeGasLimit', values: [PromiseOrValue, PromiseOrValue]): string; decodeFunctionResult(functionFragment: 'convert', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'defiInteractions', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'getDefiInteractionBlockNumber', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'getDefiResult', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'processAsyncDefiInteraction', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'receiveEthFromBridge', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'setBridgeGasLimit', data: BytesLike): Result; events: { 'AsyncDefiBridgeProcessed(uint256,uint256,uint256)': EventFragment; 'DefiBridgeProcessed(uint256,uint256,uint256,uint256,uint256,bool)': EventFragment; }; getEvent(nameOrSignatureOrTopic: 'AsyncDefiBridgeProcessed'): EventFragment; getEvent(nameOrSignatureOrTopic: 'DefiBridgeProcessed'): EventFragment; } export interface AsyncDefiBridgeProcessedEventObject { bridgeCallData: BigNumber; nonce: BigNumber; totalInputValue: BigNumber; } export declare type AsyncDefiBridgeProcessedEvent = TypedEvent<[ BigNumber, BigNumber, BigNumber ], AsyncDefiBridgeProcessedEventObject>; export declare type AsyncDefiBridgeProcessedEventFilter = TypedEventFilter; export interface DefiBridgeProcessedEventObject { bridgeCallData: BigNumber; nonce: BigNumber; totalInputValue: BigNumber; totalOutputValueA: BigNumber; totalOutputValueB: BigNumber; result: boolean; } export declare type DefiBridgeProcessedEvent = TypedEvent<[ BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, boolean ], DefiBridgeProcessedEventObject>; export declare type DefiBridgeProcessedEventFilter = TypedEventFilter; export interface RollupProcessor extends BaseContract { connect(signerOrProvider: Signer | Provider | string): this; attach(addressOrName: string): this; deployed(): Promise; interface: RollupProcessorInterface; queryFilter(event: TypedEventFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>; listeners(eventFilter?: TypedEventFilter): Array>; listeners(eventName?: string): Array; removeAllListeners(eventFilter: TypedEventFilter): this; removeAllListeners(eventName?: string): this; off: OnEvent; on: OnEvent; once: OnEvent; removeListener: OnEvent; functions: { convert(bridgeAddress: PromiseOrValue, inputAssetA: AztecTypes.AztecAssetStruct, inputAssetB: AztecTypes.AztecAssetStruct, outputAssetA: AztecTypes.AztecAssetStruct, outputAssetB: AztecTypes.AztecAssetStruct, totalInputValue: PromiseOrValue, interactionNonce: PromiseOrValue, auxInputData: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; defiInteractions(arg0: PromiseOrValue, overrides?: CallOverrides): Promise<[ string, AztecTypes.AztecAssetStructOutput, AztecTypes.AztecAssetStructOutput, AztecTypes.AztecAssetStructOutput, AztecTypes.AztecAssetStructOutput, BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, boolean ] & { bridgeAddress: string; inputAssetA: AztecTypes.AztecAssetStructOutput; inputAssetB: AztecTypes.AztecAssetStructOutput; outputAssetA: AztecTypes.AztecAssetStructOutput; outputAssetB: AztecTypes.AztecAssetStructOutput; totalInputValue: BigNumber; interactionNonce: BigNumber; auxInputData: BigNumber; outputValueA: BigNumber; outputValueB: BigNumber; finalised: boolean; }>; getDefiInteractionBlockNumber(interactionNonce: PromiseOrValue, overrides?: CallOverrides): Promise<[BigNumber] & { blockNumber: BigNumber; }>; getDefiResult(nonce: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; processAsyncDefiInteraction(interactionNonce: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; receiveEthFromBridge(interactionNonce: PromiseOrValue, overrides?: PayableOverrides & { from?: PromiseOrValue; }): Promise; setBridgeGasLimit(bridgeAddress: PromiseOrValue, gasLimit: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; }; convert(bridgeAddress: PromiseOrValue, inputAssetA: AztecTypes.AztecAssetStruct, inputAssetB: AztecTypes.AztecAssetStruct, outputAssetA: AztecTypes.AztecAssetStruct, outputAssetB: AztecTypes.AztecAssetStruct, totalInputValue: PromiseOrValue, interactionNonce: PromiseOrValue, auxInputData: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; defiInteractions(arg0: PromiseOrValue, overrides?: CallOverrides): Promise<[ string, AztecTypes.AztecAssetStructOutput, AztecTypes.AztecAssetStructOutput, AztecTypes.AztecAssetStructOutput, AztecTypes.AztecAssetStructOutput, BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, boolean ] & { bridgeAddress: string; inputAssetA: AztecTypes.AztecAssetStructOutput; inputAssetB: AztecTypes.AztecAssetStructOutput; outputAssetA: AztecTypes.AztecAssetStructOutput; outputAssetB: AztecTypes.AztecAssetStructOutput; totalInputValue: BigNumber; interactionNonce: BigNumber; auxInputData: BigNumber; outputValueA: BigNumber; outputValueB: BigNumber; finalised: boolean; }>; getDefiInteractionBlockNumber(interactionNonce: PromiseOrValue, overrides?: CallOverrides): Promise; getDefiResult(nonce: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; processAsyncDefiInteraction(interactionNonce: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; receiveEthFromBridge(interactionNonce: PromiseOrValue, overrides?: PayableOverrides & { from?: PromiseOrValue; }): Promise; setBridgeGasLimit(bridgeAddress: PromiseOrValue, gasLimit: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; callStatic: { convert(bridgeAddress: PromiseOrValue, inputAssetA: AztecTypes.AztecAssetStruct, inputAssetB: AztecTypes.AztecAssetStruct, outputAssetA: AztecTypes.AztecAssetStruct, outputAssetB: AztecTypes.AztecAssetStruct, totalInputValue: PromiseOrValue, interactionNonce: PromiseOrValue, auxInputData: PromiseOrValue, overrides?: CallOverrides): Promise<[ BigNumber, BigNumber, boolean ] & { outputValueA: BigNumber; outputValueB: BigNumber; isAsync: boolean; }>; defiInteractions(arg0: PromiseOrValue, overrides?: CallOverrides): Promise<[ string, AztecTypes.AztecAssetStructOutput, AztecTypes.AztecAssetStructOutput, AztecTypes.AztecAssetStructOutput, AztecTypes.AztecAssetStructOutput, BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, boolean ] & { bridgeAddress: string; inputAssetA: AztecTypes.AztecAssetStructOutput; inputAssetB: AztecTypes.AztecAssetStructOutput; outputAssetA: AztecTypes.AztecAssetStructOutput; outputAssetB: AztecTypes.AztecAssetStructOutput; totalInputValue: BigNumber; interactionNonce: BigNumber; auxInputData: BigNumber; outputValueA: BigNumber; outputValueB: BigNumber; finalised: boolean; }>; getDefiInteractionBlockNumber(interactionNonce: PromiseOrValue, overrides?: CallOverrides): Promise; getDefiResult(nonce: PromiseOrValue, overrides?: CallOverrides): Promise<[boolean, BigNumber] & { finalised: boolean; outputValueA: BigNumber; }>; processAsyncDefiInteraction(interactionNonce: PromiseOrValue, overrides?: CallOverrides): Promise; receiveEthFromBridge(interactionNonce: PromiseOrValue, overrides?: CallOverrides): Promise; setBridgeGasLimit(bridgeAddress: PromiseOrValue, gasLimit: PromiseOrValue, overrides?: CallOverrides): Promise; }; filters: { 'AsyncDefiBridgeProcessed(uint256,uint256,uint256)'(bridgeCallData?: PromiseOrValue | null, nonce?: PromiseOrValue | null, totalInputValue?: null): AsyncDefiBridgeProcessedEventFilter; AsyncDefiBridgeProcessed(bridgeCallData?: PromiseOrValue | null, nonce?: PromiseOrValue | null, totalInputValue?: null): AsyncDefiBridgeProcessedEventFilter; 'DefiBridgeProcessed(uint256,uint256,uint256,uint256,uint256,bool)'(bridgeCallData?: PromiseOrValue | null, nonce?: PromiseOrValue | null, totalInputValue?: null, totalOutputValueA?: null, totalOutputValueB?: null, result?: null): DefiBridgeProcessedEventFilter; DefiBridgeProcessed(bridgeCallData?: PromiseOrValue | null, nonce?: PromiseOrValue | null, totalInputValue?: null, totalOutputValueA?: null, totalOutputValueB?: null, result?: null): DefiBridgeProcessedEventFilter; }; estimateGas: { convert(bridgeAddress: PromiseOrValue, inputAssetA: AztecTypes.AztecAssetStruct, inputAssetB: AztecTypes.AztecAssetStruct, outputAssetA: AztecTypes.AztecAssetStruct, outputAssetB: AztecTypes.AztecAssetStruct, totalInputValue: PromiseOrValue, interactionNonce: PromiseOrValue, auxInputData: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; defiInteractions(arg0: PromiseOrValue, overrides?: CallOverrides): Promise; getDefiInteractionBlockNumber(interactionNonce: PromiseOrValue, overrides?: CallOverrides): Promise; getDefiResult(nonce: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; processAsyncDefiInteraction(interactionNonce: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; receiveEthFromBridge(interactionNonce: PromiseOrValue, overrides?: PayableOverrides & { from?: PromiseOrValue; }): Promise; setBridgeGasLimit(bridgeAddress: PromiseOrValue, gasLimit: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; }; populateTransaction: { convert(bridgeAddress: PromiseOrValue, inputAssetA: AztecTypes.AztecAssetStruct, inputAssetB: AztecTypes.AztecAssetStruct, outputAssetA: AztecTypes.AztecAssetStruct, outputAssetB: AztecTypes.AztecAssetStruct, totalInputValue: PromiseOrValue, interactionNonce: PromiseOrValue, auxInputData: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; defiInteractions(arg0: PromiseOrValue, overrides?: CallOverrides): Promise; getDefiInteractionBlockNumber(interactionNonce: PromiseOrValue, overrides?: CallOverrides): Promise; getDefiResult(nonce: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; processAsyncDefiInteraction(interactionNonce: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; receiveEthFromBridge(interactionNonce: PromiseOrValue, overrides?: PayableOverrides & { from?: PromiseOrValue; }): Promise; setBridgeGasLimit(bridgeAddress: PromiseOrValue, gasLimit: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; }; }