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 ElementBridgeInterface extends utils.Interface { functions: { 'ROLLUP_PROCESSOR()': FunctionFragment; 'SUBSIDY()': FunctionFragment; 'assetToExpirys(address,uint256)': FunctionFragment; 'computeCriteria((uint256,address,uint8),(uint256,address,uint8),(uint256,address,uint8),(uint256,address,uint8),uint64)': FunctionFragment; 'convert((uint256,address,uint8),(uint256,address,uint8),(uint256,address,uint8),(uint256,address,uint8),uint256,uint256,uint64,address)': FunctionFragment; 'finalise((uint256,address,uint8),(uint256,address,uint8),(uint256,address,uint8),(uint256,address,uint8),uint256,uint64)': FunctionFragment; 'getAssetExpiries(address)': FunctionFragment; 'getTrancheDeploymentBlockNumber(uint256)': FunctionFragment; 'hashAssetAndExpiry(address,uint64)': FunctionFragment; 'interactions(uint256)': FunctionFragment; 'pools(uint256)': FunctionFragment; 'registerConvergentPoolAddress(address,address,uint64)': FunctionFragment; }; getFunction(nameOrSignatureOrTopic: 'ROLLUP_PROCESSOR' | 'SUBSIDY' | 'assetToExpirys' | 'computeCriteria' | 'convert' | 'finalise' | 'getAssetExpiries' | 'getTrancheDeploymentBlockNumber' | 'hashAssetAndExpiry' | 'interactions' | 'pools' | 'registerConvergentPoolAddress'): FunctionFragment; encodeFunctionData(functionFragment: 'ROLLUP_PROCESSOR', values?: undefined): string; encodeFunctionData(functionFragment: 'SUBSIDY', values?: undefined): string; encodeFunctionData(functionFragment: 'assetToExpirys', values: [PromiseOrValue, PromiseOrValue]): string; encodeFunctionData(functionFragment: 'computeCriteria', values: [ AztecTypes.AztecAssetStruct, AztecTypes.AztecAssetStruct, AztecTypes.AztecAssetStruct, AztecTypes.AztecAssetStruct, PromiseOrValue ]): string; encodeFunctionData(functionFragment: 'convert', values: [ AztecTypes.AztecAssetStruct, AztecTypes.AztecAssetStruct, AztecTypes.AztecAssetStruct, AztecTypes.AztecAssetStruct, PromiseOrValue, PromiseOrValue, PromiseOrValue, PromiseOrValue ]): string; encodeFunctionData(functionFragment: 'finalise', values: [ AztecTypes.AztecAssetStruct, AztecTypes.AztecAssetStruct, AztecTypes.AztecAssetStruct, AztecTypes.AztecAssetStruct, PromiseOrValue, PromiseOrValue ]): string; encodeFunctionData(functionFragment: 'getAssetExpiries', values: [PromiseOrValue]): string; encodeFunctionData(functionFragment: 'getTrancheDeploymentBlockNumber', values: [PromiseOrValue]): string; encodeFunctionData(functionFragment: 'hashAssetAndExpiry', values: [PromiseOrValue, PromiseOrValue]): string; encodeFunctionData(functionFragment: 'interactions', values: [PromiseOrValue]): string; encodeFunctionData(functionFragment: 'pools', values: [PromiseOrValue]): string; encodeFunctionData(functionFragment: 'registerConvergentPoolAddress', values: [PromiseOrValue, PromiseOrValue, PromiseOrValue]): string; decodeFunctionResult(functionFragment: 'ROLLUP_PROCESSOR', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'SUBSIDY', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'assetToExpirys', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'computeCriteria', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'convert', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'finalise', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'getAssetExpiries', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'getTrancheDeploymentBlockNumber', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'hashAssetAndExpiry', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'interactions', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'pools', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'registerConvergentPoolAddress', data: BytesLike): Result; events: { 'LogConvert(uint256,uint256,int64)': EventFragment; 'LogFinalise(uint256,bool,string,int64)': EventFragment; 'LogPoolAdded(address,address,uint64)': EventFragment; }; getEvent(nameOrSignatureOrTopic: 'LogConvert'): EventFragment; getEvent(nameOrSignatureOrTopic: 'LogFinalise'): EventFragment; getEvent(nameOrSignatureOrTopic: 'LogPoolAdded'): EventFragment; } export interface LogConvertEventObject { nonce: BigNumber; totalInputValue: BigNumber; gasUsed: BigNumber; } export declare type LogConvertEvent = TypedEvent<[BigNumber, BigNumber, BigNumber], LogConvertEventObject>; export declare type LogConvertEventFilter = TypedEventFilter; export interface LogFinaliseEventObject { nonce: BigNumber; success: boolean; message: string; gasUsed: BigNumber; } export declare type LogFinaliseEvent = TypedEvent<[BigNumber, boolean, string, BigNumber], LogFinaliseEventObject>; export declare type LogFinaliseEventFilter = TypedEventFilter; export interface LogPoolAddedEventObject { poolAddress: string; wrappedPositionAddress: string; expiry: BigNumber; } export declare type LogPoolAddedEvent = TypedEvent<[string, string, BigNumber], LogPoolAddedEventObject>; export declare type LogPoolAddedEventFilter = TypedEventFilter; export interface ElementBridge extends BaseContract { connect(signerOrProvider: Signer | Provider | string): this; attach(addressOrName: string): this; deployed(): Promise; interface: ElementBridgeInterface; 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: { ROLLUP_PROCESSOR(overrides?: CallOverrides): Promise<[string]>; SUBSIDY(overrides?: CallOverrides): Promise<[string]>; assetToExpirys(arg0: PromiseOrValue, arg1: PromiseOrValue, overrides?: CallOverrides): Promise<[BigNumber]>; computeCriteria(arg0: AztecTypes.AztecAssetStruct, arg1: AztecTypes.AztecAssetStruct, arg2: AztecTypes.AztecAssetStruct, arg3: AztecTypes.AztecAssetStruct, arg4: PromiseOrValue, overrides?: CallOverrides): Promise<[BigNumber]>; convert(inputAssetA: AztecTypes.AztecAssetStruct, inputAssetB: AztecTypes.AztecAssetStruct, outputAssetA: AztecTypes.AztecAssetStruct, outputAssetB: AztecTypes.AztecAssetStruct, totalInputValue: PromiseOrValue, interactionNonce: PromiseOrValue, auxData: PromiseOrValue, arg7: PromiseOrValue, overrides?: PayableOverrides & { from?: PromiseOrValue; }): Promise; finalise(arg0: AztecTypes.AztecAssetStruct, arg1: AztecTypes.AztecAssetStruct, outputAssetA: AztecTypes.AztecAssetStruct, arg3: AztecTypes.AztecAssetStruct, interactionNonce: PromiseOrValue, arg5: PromiseOrValue, overrides?: PayableOverrides & { from?: PromiseOrValue; }): Promise; getAssetExpiries(asset: PromiseOrValue, overrides?: CallOverrides): Promise<[BigNumber[]] & { assetExpiries: BigNumber[]; }>; getTrancheDeploymentBlockNumber(interactionNonce: PromiseOrValue, overrides?: CallOverrides): Promise<[BigNumber] & { blockNumber: BigNumber; }>; hashAssetAndExpiry(asset: PromiseOrValue, expiry: PromiseOrValue, overrides?: CallOverrides): Promise<[BigNumber] & { hashValue: BigNumber; }>; interactions(arg0: PromiseOrValue, overrides?: CallOverrides): Promise<[ BigNumber, string, BigNumber, boolean, boolean ] & { quantityPT: BigNumber; trancheAddress: string; expiry: BigNumber; finalised: boolean; failed: boolean; }>; pools(arg0: PromiseOrValue, overrides?: CallOverrides): Promise<[ string, string, string, string ] & { poolId: string; trancheAddress: string; poolAddress: string; wrappedPositionAddress: string; }>; registerConvergentPoolAddress(_convergentPool: PromiseOrValue, _wrappedPosition: PromiseOrValue, _expiry: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; }; ROLLUP_PROCESSOR(overrides?: CallOverrides): Promise; SUBSIDY(overrides?: CallOverrides): Promise; assetToExpirys(arg0: PromiseOrValue, arg1: PromiseOrValue, overrides?: CallOverrides): Promise; computeCriteria(arg0: AztecTypes.AztecAssetStruct, arg1: AztecTypes.AztecAssetStruct, arg2: AztecTypes.AztecAssetStruct, arg3: AztecTypes.AztecAssetStruct, arg4: PromiseOrValue, overrides?: CallOverrides): Promise; convert(inputAssetA: AztecTypes.AztecAssetStruct, inputAssetB: AztecTypes.AztecAssetStruct, outputAssetA: AztecTypes.AztecAssetStruct, outputAssetB: AztecTypes.AztecAssetStruct, totalInputValue: PromiseOrValue, interactionNonce: PromiseOrValue, auxData: PromiseOrValue, arg7: PromiseOrValue, overrides?: PayableOverrides & { from?: PromiseOrValue; }): Promise; finalise(arg0: AztecTypes.AztecAssetStruct, arg1: AztecTypes.AztecAssetStruct, outputAssetA: AztecTypes.AztecAssetStruct, arg3: AztecTypes.AztecAssetStruct, interactionNonce: PromiseOrValue, arg5: PromiseOrValue, overrides?: PayableOverrides & { from?: PromiseOrValue; }): Promise; getAssetExpiries(asset: PromiseOrValue, overrides?: CallOverrides): Promise; getTrancheDeploymentBlockNumber(interactionNonce: PromiseOrValue, overrides?: CallOverrides): Promise; hashAssetAndExpiry(asset: PromiseOrValue, expiry: PromiseOrValue, overrides?: CallOverrides): Promise; interactions(arg0: PromiseOrValue, overrides?: CallOverrides): Promise<[ BigNumber, string, BigNumber, boolean, boolean ] & { quantityPT: BigNumber; trancheAddress: string; expiry: BigNumber; finalised: boolean; failed: boolean; }>; pools(arg0: PromiseOrValue, overrides?: CallOverrides): Promise<[ string, string, string, string ] & { poolId: string; trancheAddress: string; poolAddress: string; wrappedPositionAddress: string; }>; registerConvergentPoolAddress(_convergentPool: PromiseOrValue, _wrappedPosition: PromiseOrValue, _expiry: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; callStatic: { ROLLUP_PROCESSOR(overrides?: CallOverrides): Promise; SUBSIDY(overrides?: CallOverrides): Promise; assetToExpirys(arg0: PromiseOrValue, arg1: PromiseOrValue, overrides?: CallOverrides): Promise; computeCriteria(arg0: AztecTypes.AztecAssetStruct, arg1: AztecTypes.AztecAssetStruct, arg2: AztecTypes.AztecAssetStruct, arg3: AztecTypes.AztecAssetStruct, arg4: PromiseOrValue, overrides?: CallOverrides): Promise; convert(inputAssetA: AztecTypes.AztecAssetStruct, inputAssetB: AztecTypes.AztecAssetStruct, outputAssetA: AztecTypes.AztecAssetStruct, outputAssetB: AztecTypes.AztecAssetStruct, totalInputValue: PromiseOrValue, interactionNonce: PromiseOrValue, auxData: PromiseOrValue, arg7: PromiseOrValue, overrides?: CallOverrides): Promise<[ BigNumber, BigNumber, boolean ] & { outputValueA: BigNumber; outputValueB: BigNumber; isAsync: boolean; }>; finalise(arg0: AztecTypes.AztecAssetStruct, arg1: AztecTypes.AztecAssetStruct, outputAssetA: AztecTypes.AztecAssetStruct, arg3: AztecTypes.AztecAssetStruct, interactionNonce: PromiseOrValue, arg5: PromiseOrValue, overrides?: CallOverrides): Promise<[ BigNumber, BigNumber, boolean ] & { outputValueA: BigNumber; outputValueB: BigNumber; interactionCompleted: boolean; }>; getAssetExpiries(asset: PromiseOrValue, overrides?: CallOverrides): Promise; getTrancheDeploymentBlockNumber(interactionNonce: PromiseOrValue, overrides?: CallOverrides): Promise; hashAssetAndExpiry(asset: PromiseOrValue, expiry: PromiseOrValue, overrides?: CallOverrides): Promise; interactions(arg0: PromiseOrValue, overrides?: CallOverrides): Promise<[ BigNumber, string, BigNumber, boolean, boolean ] & { quantityPT: BigNumber; trancheAddress: string; expiry: BigNumber; finalised: boolean; failed: boolean; }>; pools(arg0: PromiseOrValue, overrides?: CallOverrides): Promise<[ string, string, string, string ] & { poolId: string; trancheAddress: string; poolAddress: string; wrappedPositionAddress: string; }>; registerConvergentPoolAddress(_convergentPool: PromiseOrValue, _wrappedPosition: PromiseOrValue, _expiry: PromiseOrValue, overrides?: CallOverrides): Promise; }; filters: { 'LogConvert(uint256,uint256,int64)'(nonce?: PromiseOrValue | null, totalInputValue?: null, gasUsed?: null): LogConvertEventFilter; LogConvert(nonce?: PromiseOrValue | null, totalInputValue?: null, gasUsed?: null): LogConvertEventFilter; 'LogFinalise(uint256,bool,string,int64)'(nonce?: PromiseOrValue | null, success?: null, message?: null, gasUsed?: null): LogFinaliseEventFilter; LogFinalise(nonce?: PromiseOrValue | null, success?: null, message?: null, gasUsed?: null): LogFinaliseEventFilter; 'LogPoolAdded(address,address,uint64)'(poolAddress?: null, wrappedPositionAddress?: null, expiry?: null): LogPoolAddedEventFilter; LogPoolAdded(poolAddress?: null, wrappedPositionAddress?: null, expiry?: null): LogPoolAddedEventFilter; }; estimateGas: { ROLLUP_PROCESSOR(overrides?: CallOverrides): Promise; SUBSIDY(overrides?: CallOverrides): Promise; assetToExpirys(arg0: PromiseOrValue, arg1: PromiseOrValue, overrides?: CallOverrides): Promise; computeCriteria(arg0: AztecTypes.AztecAssetStruct, arg1: AztecTypes.AztecAssetStruct, arg2: AztecTypes.AztecAssetStruct, arg3: AztecTypes.AztecAssetStruct, arg4: PromiseOrValue, overrides?: CallOverrides): Promise; convert(inputAssetA: AztecTypes.AztecAssetStruct, inputAssetB: AztecTypes.AztecAssetStruct, outputAssetA: AztecTypes.AztecAssetStruct, outputAssetB: AztecTypes.AztecAssetStruct, totalInputValue: PromiseOrValue, interactionNonce: PromiseOrValue, auxData: PromiseOrValue, arg7: PromiseOrValue, overrides?: PayableOverrides & { from?: PromiseOrValue; }): Promise; finalise(arg0: AztecTypes.AztecAssetStruct, arg1: AztecTypes.AztecAssetStruct, outputAssetA: AztecTypes.AztecAssetStruct, arg3: AztecTypes.AztecAssetStruct, interactionNonce: PromiseOrValue, arg5: PromiseOrValue, overrides?: PayableOverrides & { from?: PromiseOrValue; }): Promise; getAssetExpiries(asset: PromiseOrValue, overrides?: CallOverrides): Promise; getTrancheDeploymentBlockNumber(interactionNonce: PromiseOrValue, overrides?: CallOverrides): Promise; hashAssetAndExpiry(asset: PromiseOrValue, expiry: PromiseOrValue, overrides?: CallOverrides): Promise; interactions(arg0: PromiseOrValue, overrides?: CallOverrides): Promise; pools(arg0: PromiseOrValue, overrides?: CallOverrides): Promise; registerConvergentPoolAddress(_convergentPool: PromiseOrValue, _wrappedPosition: PromiseOrValue, _expiry: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; }; populateTransaction: { ROLLUP_PROCESSOR(overrides?: CallOverrides): Promise; SUBSIDY(overrides?: CallOverrides): Promise; assetToExpirys(arg0: PromiseOrValue, arg1: PromiseOrValue, overrides?: CallOverrides): Promise; computeCriteria(arg0: AztecTypes.AztecAssetStruct, arg1: AztecTypes.AztecAssetStruct, arg2: AztecTypes.AztecAssetStruct, arg3: AztecTypes.AztecAssetStruct, arg4: PromiseOrValue, overrides?: CallOverrides): Promise; convert(inputAssetA: AztecTypes.AztecAssetStruct, inputAssetB: AztecTypes.AztecAssetStruct, outputAssetA: AztecTypes.AztecAssetStruct, outputAssetB: AztecTypes.AztecAssetStruct, totalInputValue: PromiseOrValue, interactionNonce: PromiseOrValue, auxData: PromiseOrValue, arg7: PromiseOrValue, overrides?: PayableOverrides & { from?: PromiseOrValue; }): Promise; finalise(arg0: AztecTypes.AztecAssetStruct, arg1: AztecTypes.AztecAssetStruct, outputAssetA: AztecTypes.AztecAssetStruct, arg3: AztecTypes.AztecAssetStruct, interactionNonce: PromiseOrValue, arg5: PromiseOrValue, overrides?: PayableOverrides & { from?: PromiseOrValue; }): Promise; getAssetExpiries(asset: PromiseOrValue, overrides?: CallOverrides): Promise; getTrancheDeploymentBlockNumber(interactionNonce: PromiseOrValue, overrides?: CallOverrides): Promise; hashAssetAndExpiry(asset: PromiseOrValue, expiry: PromiseOrValue, overrides?: CallOverrides): Promise; interactions(arg0: PromiseOrValue, overrides?: CallOverrides): Promise; pools(arg0: PromiseOrValue, overrides?: CallOverrides): Promise; registerConvergentPoolAddress(_convergentPool: PromiseOrValue, _wrappedPosition: PromiseOrValue, _expiry: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; }; }