UNPKG

@catalabs/catalyst-sdk

Version:
1,220 lines 58.2 kB
import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from 'ethers'; import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from './common'; export declare namespace IMessageEscrowStructs { type IncentiveDescriptionStruct = { maxGasDelivery: BigNumberish; maxGasAck: BigNumberish; refundGasTo: AddressLike; priceOfDeliveryGas: BigNumberish; priceOfAckGas: BigNumberish; targetDelta: BigNumberish; }; type IncentiveDescriptionStructOutput = [ maxGasDelivery: bigint, maxGasAck: bigint, refundGasTo: string, priceOfDeliveryGas: bigint, priceOfAckGas: bigint, targetDelta: bigint ] & { maxGasDelivery: bigint; maxGasAck: bigint; refundGasTo: string; priceOfDeliveryGas: bigint; priceOfAckGas: bigint; targetDelta: bigint; }; } export declare namespace ICatalystV1Structs { type RouteDescriptionStruct = { chainIdentifier: BytesLike; toVault: BytesLike; toAccount: BytesLike; incentive: IMessageEscrowStructs.IncentiveDescriptionStruct; }; type RouteDescriptionStructOutput = [ chainIdentifier: string, toVault: string, toAccount: string, incentive: IMessageEscrowStructs.IncentiveDescriptionStructOutput ] & { chainIdentifier: string; toVault: string; toAccount: string; incentive: IMessageEscrowStructs.IncentiveDescriptionStructOutput; }; } export interface VaultInterface extends Interface { getFunction(nameOrSignature: 'DOMAIN_SEPARATOR' | 'FACTORY' | 'MATHLIB' | '_adjustmentTarget' | '_chainInterface' | '_escrowLookup' | '_escrowedTokens' | '_escrowedVaultTokens' | '_feeAdministrator' | '_governanceFeeShare' | '_lastModificationTime' | '_maxUnitCapacity' | '_setupMaster' | '_tokenIndexing' | '_vaultConnection' | '_vaultFee' | '_weight' | 'allowance' | 'approve' | 'balanceOf' | 'calcLocalSwap' | 'calcReceiveAsset' | 'calcSendAsset' | 'decimals' | 'deleteUnderwriteAsset' | 'depositMixed' | 'factoryOwner' | 'finishSetup' | 'getUnitCapacity' | 'governanceFeeDestination' | 'initializeSwapCurves' | 'localSwap' | 'multicall' | 'name' | 'nonces' | 'onSendAssetFailure' | 'onSendAssetSuccess' | 'onSendLiquidityFailure' | 'onSendLiquiditySuccess' | 'permit' | 'ready' | 'receiveAsset' | 'receiveLiquidity' | 'releaseUnderwriteAsset' | 'sendAsset' | 'sendAssetFixedUnit' | 'sendLiquidity' | 'setConnection' | 'setFeeAdministrator' | 'setGovernanceFee' | 'setVaultFee' | 'setup' | 'symbol' | 'totalSupply' | 'transfer' | 'transferFrom' | 'underwriteAsset' | 'withdrawAll' | 'withdrawMixed'): FunctionFragment; getEvent(nameOrSignatureOrTopic: 'FinishSetup' | 'Initialized' | 'LocalSwap' | 'ReceiveAsset' | 'ReceiveLiquidity' | 'SendAsset' | 'SendAssetFailure' | 'SendAssetSuccess' | 'SendLiquidity' | 'SendLiquidityFailure' | 'SendLiquiditySuccess' | 'SetAmplification' | 'SetConnection' | 'SetFeeAdministrator' | 'SetGovernanceFee' | 'SetVaultFee' | 'SetWeights' | 'VaultDeposit' | 'VaultWithdraw'): EventFragment; encodeFunctionData(functionFragment: 'DOMAIN_SEPARATOR', values?: undefined): string; encodeFunctionData(functionFragment: 'FACTORY', values?: undefined): string; encodeFunctionData(functionFragment: 'MATHLIB', values?: undefined): string; encodeFunctionData(functionFragment: '_adjustmentTarget', values?: undefined): string; encodeFunctionData(functionFragment: '_chainInterface', values?: undefined): string; encodeFunctionData(functionFragment: '_escrowLookup', values: [BytesLike]): string; encodeFunctionData(functionFragment: '_escrowedTokens', values: [AddressLike]): string; encodeFunctionData(functionFragment: '_escrowedVaultTokens', values?: undefined): string; encodeFunctionData(functionFragment: '_feeAdministrator', values?: undefined): string; encodeFunctionData(functionFragment: '_governanceFeeShare', values?: undefined): string; encodeFunctionData(functionFragment: '_lastModificationTime', values?: undefined): string; encodeFunctionData(functionFragment: '_maxUnitCapacity', values?: undefined): string; encodeFunctionData(functionFragment: '_setupMaster', values?: undefined): string; encodeFunctionData(functionFragment: '_tokenIndexing', values: [BigNumberish]): string; encodeFunctionData(functionFragment: '_vaultConnection', values: [BytesLike, BytesLike]): string; encodeFunctionData(functionFragment: '_vaultFee', values?: undefined): string; encodeFunctionData(functionFragment: '_weight', values: [AddressLike]): string; encodeFunctionData(functionFragment: 'allowance', values: [AddressLike, AddressLike]): string; encodeFunctionData(functionFragment: 'approve', values: [AddressLike, BigNumberish]): string; encodeFunctionData(functionFragment: 'balanceOf', values: [AddressLike]): string; encodeFunctionData(functionFragment: 'calcLocalSwap', values: [AddressLike, AddressLike, BigNumberish]): string; encodeFunctionData(functionFragment: 'calcReceiveAsset', values: [AddressLike, BigNumberish]): string; encodeFunctionData(functionFragment: 'calcSendAsset', values: [AddressLike, BigNumberish]): string; encodeFunctionData(functionFragment: 'decimals', values?: undefined): string; encodeFunctionData(functionFragment: 'deleteUnderwriteAsset', values: [BytesLike, BigNumberish, BigNumberish, AddressLike]): string; encodeFunctionData(functionFragment: 'depositMixed', values: [BigNumberish[], BigNumberish]): string; encodeFunctionData(functionFragment: 'factoryOwner', values?: undefined): string; encodeFunctionData(functionFragment: 'finishSetup', values?: undefined): string; encodeFunctionData(functionFragment: 'getUnitCapacity', values?: undefined): string; encodeFunctionData(functionFragment: 'governanceFeeDestination', values?: undefined): string; encodeFunctionData(functionFragment: 'initializeSwapCurves', values: [AddressLike[], BigNumberish[], BigNumberish, AddressLike]): string; encodeFunctionData(functionFragment: 'localSwap', values: [AddressLike, AddressLike, BigNumberish, BigNumberish]): string; encodeFunctionData(functionFragment: 'multicall', values: [BytesLike[]]): string; encodeFunctionData(functionFragment: 'name', values?: undefined): string; encodeFunctionData(functionFragment: 'nonces', values: [AddressLike]): string; encodeFunctionData(functionFragment: 'onSendAssetFailure', values: [ BytesLike, BytesLike, BigNumberish, BigNumberish, AddressLike, BigNumberish ]): string; encodeFunctionData(functionFragment: 'onSendAssetSuccess', values: [ BytesLike, BytesLike, BigNumberish, BigNumberish, AddressLike, BigNumberish ]): string; encodeFunctionData(functionFragment: 'onSendLiquidityFailure', values: [BytesLike, BytesLike, BigNumberish, BigNumberish, BigNumberish]): string; encodeFunctionData(functionFragment: 'onSendLiquiditySuccess', values: [BytesLike, BytesLike, BigNumberish, BigNumberish, BigNumberish]): string; encodeFunctionData(functionFragment: 'permit', values: [ AddressLike, AddressLike, BigNumberish, BigNumberish, BigNumberish, BytesLike, BytesLike ]): string; encodeFunctionData(functionFragment: 'ready', values?: undefined): string; encodeFunctionData(functionFragment: 'receiveAsset', values: [ BytesLike, BytesLike, BigNumberish, AddressLike, BigNumberish, BigNumberish, BigNumberish, BytesLike, BigNumberish ]): string; encodeFunctionData(functionFragment: 'receiveLiquidity', values: [ BytesLike, BytesLike, AddressLike, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish ]): string; encodeFunctionData(functionFragment: 'releaseUnderwriteAsset', values: [AddressLike, BytesLike, BigNumberish, AddressLike]): string; encodeFunctionData(functionFragment: 'sendAsset', values: [ ICatalystV1Structs.RouteDescriptionStruct, AddressLike, BigNumberish, BigNumberish, BigNumberish, AddressLike, BigNumberish, BytesLike ]): string; encodeFunctionData(functionFragment: 'sendAssetFixedUnit', values: [ ICatalystV1Structs.RouteDescriptionStruct, AddressLike, BigNumberish, BigNumberish, BigNumberish, BigNumberish, AddressLike, BigNumberish, BytesLike ]): string; encodeFunctionData(functionFragment: 'sendLiquidity', values: [ ICatalystV1Structs.RouteDescriptionStruct, BigNumberish, [ BigNumberish, BigNumberish ], AddressLike, BytesLike ]): string; encodeFunctionData(functionFragment: 'setConnection', values: [BytesLike, BytesLike, boolean]): string; encodeFunctionData(functionFragment: 'setFeeAdministrator', values: [AddressLike]): string; encodeFunctionData(functionFragment: 'setGovernanceFee', values: [BigNumberish]): string; encodeFunctionData(functionFragment: 'setVaultFee', values: [BigNumberish]): string; encodeFunctionData(functionFragment: 'setup', values: [ string, string, AddressLike, BigNumberish, BigNumberish, AddressLike, AddressLike ]): string; encodeFunctionData(functionFragment: 'symbol', values?: undefined): string; encodeFunctionData(functionFragment: 'totalSupply', values?: undefined): string; encodeFunctionData(functionFragment: 'transfer', values: [AddressLike, BigNumberish]): string; encodeFunctionData(functionFragment: 'transferFrom', values: [AddressLike, AddressLike, BigNumberish]): string; encodeFunctionData(functionFragment: 'underwriteAsset', values: [BytesLike, AddressLike, BigNumberish, BigNumberish]): string; encodeFunctionData(functionFragment: 'withdrawAll', values: [BigNumberish, BigNumberish[]]): string; encodeFunctionData(functionFragment: 'withdrawMixed', values: [BigNumberish, BigNumberish[], BigNumberish[]]): string; decodeFunctionResult(functionFragment: 'DOMAIN_SEPARATOR', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'FACTORY', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'MATHLIB', data: BytesLike): Result; decodeFunctionResult(functionFragment: '_adjustmentTarget', data: BytesLike): Result; decodeFunctionResult(functionFragment: '_chainInterface', data: BytesLike): Result; decodeFunctionResult(functionFragment: '_escrowLookup', data: BytesLike): Result; decodeFunctionResult(functionFragment: '_escrowedTokens', data: BytesLike): Result; decodeFunctionResult(functionFragment: '_escrowedVaultTokens', data: BytesLike): Result; decodeFunctionResult(functionFragment: '_feeAdministrator', data: BytesLike): Result; decodeFunctionResult(functionFragment: '_governanceFeeShare', data: BytesLike): Result; decodeFunctionResult(functionFragment: '_lastModificationTime', data: BytesLike): Result; decodeFunctionResult(functionFragment: '_maxUnitCapacity', data: BytesLike): Result; decodeFunctionResult(functionFragment: '_setupMaster', data: BytesLike): Result; decodeFunctionResult(functionFragment: '_tokenIndexing', data: BytesLike): Result; decodeFunctionResult(functionFragment: '_vaultConnection', data: BytesLike): Result; decodeFunctionResult(functionFragment: '_vaultFee', data: BytesLike): Result; decodeFunctionResult(functionFragment: '_weight', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'allowance', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'approve', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'balanceOf', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'calcLocalSwap', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'calcReceiveAsset', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'calcSendAsset', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'decimals', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'deleteUnderwriteAsset', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'depositMixed', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'factoryOwner', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'finishSetup', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'getUnitCapacity', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'governanceFeeDestination', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'initializeSwapCurves', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'localSwap', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'multicall', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'name', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'nonces', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'onSendAssetFailure', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'onSendAssetSuccess', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'onSendLiquidityFailure', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'onSendLiquiditySuccess', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'permit', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'ready', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'receiveAsset', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'receiveLiquidity', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'releaseUnderwriteAsset', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'sendAsset', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'sendAssetFixedUnit', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'sendLiquidity', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'setConnection', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'setFeeAdministrator', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'setGovernanceFee', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'setVaultFee', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'setup', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'symbol', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'totalSupply', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'transfer', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'transferFrom', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'underwriteAsset', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'withdrawAll', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'withdrawMixed', data: BytesLike): Result; } export declare namespace FinishSetupEvent { type InputTuple = []; type OutputTuple = []; interface OutputObject { } type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>; type Filter = TypedDeferredTopicFilter<Event>; type Log = TypedEventLog<Event>; type LogDescription = TypedLogDescription<Event>; } export declare namespace InitializedEvent { type InputTuple = [version: BigNumberish]; type OutputTuple = [version: bigint]; interface OutputObject { version: bigint; } type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>; type Filter = TypedDeferredTopicFilter<Event>; type Log = TypedEventLog<Event>; type LogDescription = TypedLogDescription<Event>; } export declare namespace LocalSwapEvent { type InputTuple = [ account: AddressLike, fromAsset: AddressLike, toAsset: AddressLike, fromAmount: BigNumberish, toAmount: BigNumberish ]; type OutputTuple = [ account: string, fromAsset: string, toAsset: string, fromAmount: bigint, toAmount: bigint ]; interface OutputObject { account: string; fromAsset: string; toAsset: string; fromAmount: bigint; toAmount: bigint; } type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>; type Filter = TypedDeferredTopicFilter<Event>; type Log = TypedEventLog<Event>; type LogDescription = TypedLogDescription<Event>; } export declare namespace ReceiveAssetEvent { type InputTuple = [ channelId: BytesLike, fromVault: BytesLike, toAccount: AddressLike, toAsset: AddressLike, units: BigNumberish, toAmount: BigNumberish, fromAmount: BigNumberish, fromAsset: BytesLike, sourceBlockNumberMod: BigNumberish ]; type OutputTuple = [ channelId: string, fromVault: string, toAccount: string, toAsset: string, units: bigint, toAmount: bigint, fromAmount: bigint, fromAsset: string, sourceBlockNumberMod: bigint ]; interface OutputObject { channelId: string; fromVault: string; toAccount: string; toAsset: string; units: bigint; toAmount: bigint; fromAmount: bigint; fromAsset: string; sourceBlockNumberMod: bigint; } type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>; type Filter = TypedDeferredTopicFilter<Event>; type Log = TypedEventLog<Event>; type LogDescription = TypedLogDescription<Event>; } export declare namespace ReceiveLiquidityEvent { type InputTuple = [ channelId: BytesLike, fromVault: BytesLike, toAccount: AddressLike, units: BigNumberish, toAmount: BigNumberish, fromAmount: BigNumberish, sourceBlockNumberMod: BigNumberish ]; type OutputTuple = [ channelId: string, fromVault: string, toAccount: string, units: bigint, toAmount: bigint, fromAmount: bigint, sourceBlockNumberMod: bigint ]; interface OutputObject { channelId: string; fromVault: string; toAccount: string; units: bigint; toAmount: bigint; fromAmount: bigint; sourceBlockNumberMod: bigint; } type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>; type Filter = TypedDeferredTopicFilter<Event>; type Log = TypedEventLog<Event>; type LogDescription = TypedLogDescription<Event>; } export declare namespace SendAssetEvent { type InputTuple = [ channelId: BytesLike, toVault: BytesLike, toAccount: BytesLike, fromAsset: AddressLike, toAssetIndex: BigNumberish, fromAmount: BigNumberish, minOut: BigNumberish, units: BigNumberish, fee: BigNumberish, underwriteIncentiveX16: BigNumberish ]; type OutputTuple = [ channelId: string, toVault: string, toAccount: string, fromAsset: string, toAssetIndex: bigint, fromAmount: bigint, minOut: bigint, units: bigint, fee: bigint, underwriteIncentiveX16: bigint ]; interface OutputObject { channelId: string; toVault: string; toAccount: string; fromAsset: string; toAssetIndex: bigint; fromAmount: bigint; minOut: bigint; units: bigint; fee: bigint; underwriteIncentiveX16: bigint; } type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>; type Filter = TypedDeferredTopicFilter<Event>; type Log = TypedEventLog<Event>; type LogDescription = TypedLogDescription<Event>; } export declare namespace SendAssetFailureEvent { type InputTuple = [ channelId: BytesLike, toAccount: BytesLike, units: BigNumberish, escrowAmount: BigNumberish, escrowToken: AddressLike, blockNumberMod: BigNumberish ]; type OutputTuple = [ channelId: string, toAccount: string, units: bigint, escrowAmount: bigint, escrowToken: string, blockNumberMod: bigint ]; interface OutputObject { channelId: string; toAccount: string; units: bigint; escrowAmount: bigint; escrowToken: string; blockNumberMod: bigint; } type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>; type Filter = TypedDeferredTopicFilter<Event>; type Log = TypedEventLog<Event>; type LogDescription = TypedLogDescription<Event>; } export declare namespace SendAssetSuccessEvent { type InputTuple = [ channelId: BytesLike, toAccount: BytesLike, units: BigNumberish, escrowAmount: BigNumberish, escrowToken: AddressLike, blockNumberMod: BigNumberish ]; type OutputTuple = [ channelId: string, toAccount: string, units: bigint, escrowAmount: bigint, escrowToken: string, blockNumberMod: bigint ]; interface OutputObject { channelId: string; toAccount: string; units: bigint; escrowAmount: bigint; escrowToken: string; blockNumberMod: bigint; } type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>; type Filter = TypedDeferredTopicFilter<Event>; type Log = TypedEventLog<Event>; type LogDescription = TypedLogDescription<Event>; } export declare namespace SendLiquidityEvent { type InputTuple = [ channelId: BytesLike, toVault: BytesLike, toAccount: BytesLike, fromAmount: BigNumberish, minOut: [BigNumberish, BigNumberish], units: BigNumberish ]; type OutputTuple = [ channelId: string, toVault: string, toAccount: string, fromAmount: bigint, minOut: [bigint, bigint], units: bigint ]; interface OutputObject { channelId: string; toVault: string; toAccount: string; fromAmount: bigint; minOut: [bigint, bigint]; units: bigint; } type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>; type Filter = TypedDeferredTopicFilter<Event>; type Log = TypedEventLog<Event>; type LogDescription = TypedLogDescription<Event>; } export declare namespace SendLiquidityFailureEvent { type InputTuple = [ channelId: BytesLike, toAccount: BytesLike, units: BigNumberish, escrowAmount: BigNumberish, blockNumberMod: BigNumberish ]; type OutputTuple = [ channelId: string, toAccount: string, units: bigint, escrowAmount: bigint, blockNumberMod: bigint ]; interface OutputObject { channelId: string; toAccount: string; units: bigint; escrowAmount: bigint; blockNumberMod: bigint; } type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>; type Filter = TypedDeferredTopicFilter<Event>; type Log = TypedEventLog<Event>; type LogDescription = TypedLogDescription<Event>; } export declare namespace SendLiquiditySuccessEvent { type InputTuple = [ channelId: BytesLike, toAccount: BytesLike, units: BigNumberish, escrowAmount: BigNumberish, blockNumberMod: BigNumberish ]; type OutputTuple = [ channelId: string, toAccount: string, units: bigint, escrowAmount: bigint, blockNumberMod: bigint ]; interface OutputObject { channelId: string; toAccount: string; units: bigint; escrowAmount: bigint; blockNumberMod: bigint; } type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>; type Filter = TypedDeferredTopicFilter<Event>; type Log = TypedEventLog<Event>; type LogDescription = TypedLogDescription<Event>; } export declare namespace SetAmplificationEvent { type InputTuple = [ targetTime: BigNumberish, targetAmplification: BigNumberish ]; type OutputTuple = [targetTime: bigint, targetAmplification: bigint]; interface OutputObject { targetTime: bigint; targetAmplification: bigint; } type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>; type Filter = TypedDeferredTopicFilter<Event>; type Log = TypedEventLog<Event>; type LogDescription = TypedLogDescription<Event>; } export declare namespace SetConnectionEvent { type InputTuple = [ channelId: BytesLike, toVault: BytesLike, newState: boolean ]; type OutputTuple = [ channelId: string, toVault: string, newState: boolean ]; interface OutputObject { channelId: string; toVault: string; newState: boolean; } type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>; type Filter = TypedDeferredTopicFilter<Event>; type Log = TypedEventLog<Event>; type LogDescription = TypedLogDescription<Event>; } export declare namespace SetFeeAdministratorEvent { type InputTuple = [administrator: AddressLike]; type OutputTuple = [administrator: string]; interface OutputObject { administrator: string; } type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>; type Filter = TypedDeferredTopicFilter<Event>; type Log = TypedEventLog<Event>; type LogDescription = TypedLogDescription<Event>; } export declare namespace SetGovernanceFeeEvent { type InputTuple = [fee: BigNumberish]; type OutputTuple = [fee: bigint]; interface OutputObject { fee: bigint; } type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>; type Filter = TypedDeferredTopicFilter<Event>; type Log = TypedEventLog<Event>; type LogDescription = TypedLogDescription<Event>; } export declare namespace SetVaultFeeEvent { type InputTuple = [fee: BigNumberish]; type OutputTuple = [fee: bigint]; interface OutputObject { fee: bigint; } type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>; type Filter = TypedDeferredTopicFilter<Event>; type Log = TypedEventLog<Event>; type LogDescription = TypedLogDescription<Event>; } export declare namespace SetWeightsEvent { type InputTuple = [ targetTime: BigNumberish, targetWeights: BigNumberish[] ]; type OutputTuple = [targetTime: bigint, targetWeights: bigint[]]; interface OutputObject { targetTime: bigint; targetWeights: bigint[]; } type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>; type Filter = TypedDeferredTopicFilter<Event>; type Log = TypedEventLog<Event>; type LogDescription = TypedLogDescription<Event>; } export declare namespace VaultDepositEvent { type InputTuple = [ toAccount: AddressLike, mint: BigNumberish, assets: BigNumberish[] ]; type OutputTuple = [toAccount: string, mint: bigint, assets: bigint[]]; interface OutputObject { toAccount: string; mint: bigint; assets: bigint[]; } type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>; type Filter = TypedDeferredTopicFilter<Event>; type Log = TypedEventLog<Event>; type LogDescription = TypedLogDescription<Event>; } export declare namespace VaultWithdrawEvent { type InputTuple = [ toAccount: AddressLike, burn: BigNumberish, assets: BigNumberish[] ]; type OutputTuple = [toAccount: string, burn: bigint, assets: bigint[]]; interface OutputObject { toAccount: string; burn: bigint; assets: bigint[]; } type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>; type Filter = TypedDeferredTopicFilter<Event>; type Log = TypedEventLog<Event>; type LogDescription = TypedLogDescription<Event>; } export interface Vault extends BaseContract { connect(runner?: ContractRunner | null): Vault; waitForDeployment(): Promise<this>; interface: VaultInterface; queryFilter<TCEvent extends TypedContractEvent>(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise<Array<TypedEventLog<TCEvent>>>; queryFilter<TCEvent extends TypedContractEvent>(filter: TypedDeferredTopicFilter<TCEvent>, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise<Array<TypedEventLog<TCEvent>>>; on<TCEvent extends TypedContractEvent>(event: TCEvent, listener: TypedListener<TCEvent>): Promise<this>; on<TCEvent extends TypedContractEvent>(filter: TypedDeferredTopicFilter<TCEvent>, listener: TypedListener<TCEvent>): Promise<this>; once<TCEvent extends TypedContractEvent>(event: TCEvent, listener: TypedListener<TCEvent>): Promise<this>; once<TCEvent extends TypedContractEvent>(filter: TypedDeferredTopicFilter<TCEvent>, listener: TypedListener<TCEvent>): Promise<this>; listeners<TCEvent extends TypedContractEvent>(event: TCEvent): Promise<Array<TypedListener<TCEvent>>>; listeners(eventName?: string): Promise<Array<Listener>>; removeAllListeners<TCEvent extends TypedContractEvent>(event?: TCEvent): Promise<this>; DOMAIN_SEPARATOR: TypedContractMethod<[], [string], 'view'>; FACTORY: TypedContractMethod<[], [string], 'view'>; MATHLIB: TypedContractMethod<[], [string], 'view'>; _adjustmentTarget: TypedContractMethod<[], [bigint], 'view'>; _chainInterface: TypedContractMethod<[], [string], 'view'>; _escrowLookup: TypedContractMethod<[arg0: BytesLike], [string], 'view'>; _escrowedTokens: TypedContractMethod<[arg0: AddressLike], [bigint], 'view'>; _escrowedVaultTokens: TypedContractMethod<[], [bigint], 'view'>; _feeAdministrator: TypedContractMethod<[], [string], 'view'>; _governanceFeeShare: TypedContractMethod<[], [bigint], 'view'>; _lastModificationTime: TypedContractMethod<[], [bigint], 'view'>; _maxUnitCapacity: TypedContractMethod<[], [bigint], 'view'>; _setupMaster: TypedContractMethod<[], [string], 'view'>; _tokenIndexing: TypedContractMethod<[arg0: BigNumberish], [string], 'view'>; _vaultConnection: TypedContractMethod<[ arg0: BytesLike, arg1: BytesLike ], [ boolean ], 'view'>; _vaultFee: TypedContractMethod<[], [bigint], 'view'>; _weight: TypedContractMethod<[arg0: AddressLike], [bigint], 'view'>; allowance: TypedContractMethod<[ arg0: AddressLike, arg1: AddressLike ], [ bigint ], 'view'>; approve: TypedContractMethod<[ spender: AddressLike, amount: BigNumberish ], [ boolean ], 'nonpayable'>; balanceOf: TypedContractMethod<[arg0: AddressLike], [bigint], 'view'>; calcLocalSwap: TypedContractMethod<[ from: AddressLike, to: AddressLike, amount: BigNumberish ], [ bigint ], 'view'>; calcReceiveAsset: TypedContractMethod<[ to: AddressLike, U: BigNumberish ], [ bigint ], 'view'>; calcSendAsset: TypedContractMethod<[ from: AddressLike, amount: BigNumberish ], [ bigint ], 'view'>; decimals: TypedContractMethod<[], [bigint], 'view'>; deleteUnderwriteAsset: TypedContractMethod<[ identifier: BytesLike, U: BigNumberish, escrowAmount: BigNumberish, escrowToken: AddressLike ], [ void ], 'nonpayable'>; depositMixed: TypedContractMethod<[ tokenAmounts: BigNumberish[], minOut: BigNumberish ], [ bigint ], 'nonpayable'>; factoryOwner: TypedContractMethod<[], [string], 'view'>; finishSetup: TypedContractMethod<[], [void], 'nonpayable'>; getUnitCapacity: TypedContractMethod<[], [bigint], 'view'>; governanceFeeDestination: TypedContractMethod<[], [string], 'view'>; initializeSwapCurves: TypedContractMethod<[ assets: AddressLike[], weights: BigNumberish[], amp: BigNumberish, depositor: AddressLike ], [ void ], 'nonpayable'>; localSwap: TypedContractMethod<[ fromAsset: AddressLike, toAsset: AddressLike, amount: BigNumberish, minOut: BigNumberish ], [ bigint ], 'nonpayable'>; multicall: TypedContractMethod<[data: BytesLike[]], [string[]], 'nonpayable'>; name: TypedContractMethod<[], [string], 'view'>; nonces: TypedContractMethod<[arg0: AddressLike], [bigint], 'view'>; onSendAssetFailure: TypedContractMethod<[ channelId: BytesLike, toAccount: BytesLike, U: BigNumberish, escrowAmount: BigNumberish, escrowToken: AddressLike, blockNumberMod: BigNumberish ], [ void ], 'nonpayable'>; onSendAssetSuccess: TypedContractMethod<[ channelId: BytesLike, toAccount: BytesLike, U: BigNumberish, escrowAmount: BigNumberish, escrowToken: AddressLike, blockNumberMod: BigNumberish ], [ void ], 'nonpayable'>; onSendLiquidityFailure: TypedContractMethod<[ channelId: BytesLike, toAccount: BytesLike, U: BigNumberish, escrowAmount: BigNumberish, blockNumberMod: BigNumberish ], [ void ], 'nonpayable'>; onSendLiquiditySuccess: TypedContractMethod<[ channelId: BytesLike, toAccount: BytesLike, U: BigNumberish, escrowAmount: BigNumberish, blockNumberMod: BigNumberish ], [ void ], 'nonpayable'>; permit: TypedContractMethod<[ owner: AddressLike, spender: AddressLike, value: BigNumberish, deadline: BigNumberish, v: BigNumberish, r: BytesLike, s: BytesLike ], [ void ], 'nonpayable'>; ready: TypedContractMethod<[], [boolean], 'view'>; receiveAsset: TypedContractMethod<[ channelId: BytesLike, fromVault: BytesLike, toAssetIndex: BigNumberish, toAccount: AddressLike, U: BigNumberish, minOut: BigNumberish, fromAmount: BigNumberish, fromAsset: BytesLike, blockNumberMod: BigNumberish ], [ bigint ], 'nonpayable'>; receiveLiquidity: TypedContractMethod<[ channelId: BytesLike, fromVault: BytesLike, toAccount: AddressLike, U: BigNumberish, minVaultTokens: BigNumberish, minReferenceAsset: BigNumberish, fromAmount: BigNumberish, blockNumberMod: BigNumberish ], [ bigint ], 'nonpayable'>; releaseUnderwriteAsset: TypedContractMethod<[ refundTo: AddressLike, identifier: BytesLike, escrowAmount: BigNumberish, escrowToken: AddressLike ], [ void ], 'nonpayable'>; sendAsset: TypedContractMethod<[ routeDescription: ICatalystV1Structs.RouteDescriptionStruct, fromAsset: AddressLike, toAssetIndex: BigNumberish, amount: BigNumberish, minOut: BigNumberish, fallbackUser: AddressLike, underwriteIncentiveX16: BigNumberish, calldata_: BytesLike ], [ bigint ], 'payable'>; sendAssetFixedUnit: TypedContractMethod<[ routeDescription: ICatalystV1Structs.RouteDescriptionStruct, fromAsset: AddressLike, toAssetIndex: BigNumberish, amount: BigNumberish, minOut: BigNumberish, minU: BigNumberish, fallbackUser: AddressLike, underwriteIncentiveX16: BigNumberish, calldata_: BytesLike ], [ bigint ], 'payable'>; sendLiquidity: TypedContractMethod<[ routeDescription: ICatalystV1Structs.RouteDescriptionStruct, vaultTokens: BigNumberish, minOut: [BigNumberish, BigNumberish], fallbackUser: AddressLike, calldata_: BytesLike ], [ bigint ], 'payable'>; setConnection: TypedContractMethod<[ channelId: BytesLike, toVault: BytesLike, state: boolean ], [ void ], 'nonpayable'>; setFeeAdministrator: TypedContractMethod<[ administrator: AddressLike ], [ void ], 'nonpayable'>; setGovernanceFee: TypedContractMethod<[ fee: BigNumberish ], [ void ], 'nonpayable'>; setVaultFee: TypedContractMethod<[fee: BigNumberish], [void], 'nonpayable'>; setup: TypedContractMethod<[ name_: string, symbol_: string, chainInterface: AddressLike, vaultFee: BigNumberish, governanceFee: BigNumberish, feeAdministrator: AddressLike, setupMaster: AddressLike ], [ void ], 'nonpayable'>; symbol: TypedContractMethod<[], [string], 'view'>; totalSupply: TypedContractMethod<[], [bigint], 'view'>; transfer: TypedContractMethod<[ to: AddressLike, amount: BigNumberish ], [ boolean ], 'nonpayable'>; transferFrom: TypedContractMethod<[ from: AddressLike, to: AddressLike, amount: BigNumberish ], [ boolean ], 'nonpayable'>; underwriteAsset: TypedContractMethod<[ identifier: BytesLike, toAsset: AddressLike, U: BigNumberish, minOut: BigNumberish ], [ bigint ], 'nonpayable'>; withdrawAll: TypedContractMethod<[ baseAmount: BigNumberish, minOut: BigNumberish[] ], [ bigint[] ], 'nonpayable'>; withdrawMixed: TypedContractMethod<[ vaultTokens: BigNumberish, withdrawRatio: BigNumberish[], minOut: BigNumberish[] ], [ bigint[] ], 'nonpayable'>; getFunction<T extends ContractMethod = ContractMethod>(key: string | FunctionFragment): T; getFunction(nameOrSignature: 'DOMAIN_SEPARATOR'): TypedContractMethod<[], [string], 'view'>; getFunction(nameOrSignature: 'FACTORY'): TypedContractMethod<[], [string], 'view'>; getFunction(nameOrSignature: 'MATHLIB'): TypedContractMethod<[], [string], 'view'>; getFunction(nameOrSignature: '_adjustmentTarget'): TypedContractMethod<[], [bigint], 'view'>; getFunction(nameOrSignature: '_chainInterface'): TypedContractMethod<[], [string], 'view'>; getFunction(nameOrSignature: '_escrowLookup'): TypedContractMethod<[arg0: BytesLike], [string], 'view'>; getFunction(nameOrSignature: '_escrowedTokens'): TypedContractMethod<[arg0: AddressLike], [bigint], 'view'>; getFunction(nameOrSignature: '_escrowedVaultTokens'): TypedContractMethod<[], [bigint], 'view'>; getFunction(nameOrSignature: '_feeAdministrator'): TypedContractMethod<[], [string], 'view'>; getFunction(nameOrSignature: '_governanceFeeShare'): TypedContractMethod<[], [bigint], 'view'>; getFunction(nameOrSignature: '_lastModificationTime'): TypedContractMethod<[], [bigint], 'view'>; getFunction(nameOrSignature: '_maxUnitCapacity'): TypedContractMethod<[], [bigint], 'view'>; getFunction(nameOrSignature: '_setupMaster'): TypedContractMethod<[], [string], 'view'>; getFunction(nameOrSignature: '_tokenIndexing'): TypedContractMethod<[arg0: BigNumberish], [string], 'view'>; getFunction(nameOrSignature: '_vaultConnection'): TypedContractMethod<[arg0: BytesLike, arg1: BytesLike], [boolean], 'view'>; getFunction(nameOrSignature: '_vaultFee'): TypedContractMethod<[], [bigint], 'view'>; getFunction(nameOrSignature: '_weight'): TypedContractMethod<[arg0: AddressLike], [bigint], 'view'>; getFunction(nameOrSignature: 'allowance'): TypedContractMethod<[ arg0: AddressLike, arg1: AddressLike ], [ bigint ], 'view'>; getFunction(nameOrSignature: 'approve'): TypedContractMethod<[ spender: AddressLike, amount: BigNumberish ], [ boolean ], 'nonpayable'>; getFunction(nameOrSignature: 'balanceOf'): TypedContractMethod<[arg0: AddressLike], [bigint], 'view'>; getFunction(nameOrSignature: 'calcLocalSwap'): TypedContractMethod<[ from: AddressLike, to: AddressLike, amount: BigNumberish ], [ bigint ], 'view'>; getFunction(nameOrSignature: 'calcReceiveAsset'): TypedContractMethod<[to: AddressLike, U: BigNumberish], [bigint], 'view'>; getFunction(nameOrSignature: 'calcSendAsset'): TypedContractMethod<[ from: AddressLike, amount: BigNumberish ], [ bigint ], 'view'>; getFunction(nameOrSignature: 'decimals'): TypedContractMethod<[], [bigint], 'view'>; getFunction(nameOrSignature: 'deleteUnderwriteAsset'): TypedContractMethod<[ identifier: BytesLike, U: BigNumberish, escrowAmount: BigNumberish, escrowToken: AddressLike ], [ void ], 'nonpayable'>; getFunction(nameOrSignature: 'depositMixed'): TypedContractMethod<[ tokenAmounts: BigNumberish[], minOut: BigNumberish ], [ bigint ], 'nonpayable'>; getFunction(nameOrSignature: 'factoryOwner'): TypedContractMethod<[], [string], 'view'>; getFunction(nameOrSignature: 'finishSetup'): TypedContractMethod<[], [void], 'nonpayable'>; getFunction(nameOrSignature: 'getUnitCapacity'): TypedContractMethod<[], [bigint], 'view'>; getFunction(nameOrSignature: 'governanceFeeDestination'): TypedContractMethod<[], [string], 'view'>; getFunction(nameOrSignature: 'initializeSwapCurves'): TypedContractMethod<[ assets: AddressLike[], weights: BigNumberish[], amp: BigNumberish, depositor: AddressLike ], [ void ], 'nonpayable'>; getFunction(nameOrSignature: 'localSwap'): TypedContractMethod<[ fromAsset: AddressLike, toAsset: AddressLike, amount: BigNumberish, minOut: BigNumberish ], [ bigint ], 'nonpayable'>; getFunction(nameOrSignature: 'multicall'): TypedContractMethod<[data: BytesLike[]], [string[]], 'nonpayable'>; getFunction(nameOrSignature: 'name'): TypedContractMethod<[], [string], 'view'>; getFunction(nameOrSignature: 'nonces'): TypedContractMethod<[arg0: AddressLike], [bigint], 'view'>; getFunction(nameOrSignature: 'onSendAssetFailure'): TypedContractMethod<[ channelId: BytesLike, toAccount: BytesLike, U: BigNumberish, escrowAmount: BigNumberish, escrowToken: AddressLike, blockNumberMod: BigNumberish ], [ void ], 'nonpayable'>; getFunction(nameOrSignature: 'onSendAssetSuccess'): TypedContractMethod<[ channelId: BytesLike, toAccount: BytesLike, U: BigNumberish, escrowAmount: BigNumberish, escrowToken: AddressLike, blockNumberMod: BigNumberish ], [ void ], 'nonpayable'>; getFunction(nameOrSignature: 'onSendLiquidityFailure'): TypedContractMethod<[ channelId: BytesLike, toAccount: BytesLike, U: BigNumberish, escrowAmount: BigNumberish, blockNumberMod: BigNumberish ], [ void ], 'nonpayable'>; getFunction(nameOrSignature: 'onSendLiquiditySuccess'): TypedContractMethod<[ channelId: BytesLike, toAccount: BytesLike, U: BigNumberish, escrowAmount: BigNumberish, blockNumberMod: BigNumberish ], [ void ], 'nonpayable'>; getFunction(nameOrSignature: 'permit'): TypedContractMethod<[ owner: AddressLike, spender: AddressLike, value: BigNumberish, deadline: BigNumberish, v: BigNumberish, r: BytesLike, s: BytesLike ], [ void ], 'nonpayable'>; getFunction(nameOrSignature: 'ready'): TypedContractMethod<[], [boolean], 'view'>; getFunction(nameOrSignature: 'receiveAsset'): TypedContractMethod<[ channelId: BytesLike, fromVault: BytesLike, toAssetIndex: BigNumberish, toAccount: AddressLike, U: BigNumberish, minOut: BigNumberish, fromAmount: BigNumberish, fromAsset: BytesLike, blockNumberMod: BigNumberish ], [ bigint ], 'nonpayable'>; getFunction(nameOrSignature: 'receiveLiquidity'): TypedContractMethod<[ channelId: BytesLike, fromVault: BytesLike, toAccount: AddressLike, U: BigNumberish, minVaultTokens: BigNumberish, minReferenceAsset: BigNumberish, fromAmount: BigNumberish, blockNumberMod: BigNumberish ], [ bigint ], 'nonpayable'>; getFunction(nameOrSignature: 'releaseUnderwriteAsset'): TypedContractMethod<[ refundTo: AddressLike, identifier: BytesLike, escrowAmount: BigNumberish, escrowToken: AddressLike ], [ void ], 'nonpayable'>; getFunction(nameOrSignature: 'sendAsset'): TypedContractMethod<[ routeDescription: ICatalystV1Structs.RouteDescriptionStruct, fromAsset: AddressLike, toAssetIndex: BigNumberish, amount: BigNumberish, minOut: BigNumberish, fallbackUser: AddressLike, underwriteIncentiveX16: BigNumberish, calldata_: BytesLike ], [ bigint ], 'payable'>; getFunction(nameOrSignature: 'sendAssetFixedUnit'): TypedContractMethod<[ routeDescription: ICatalystV1Structs.RouteDescriptionStruct, fromAsset: AddressLike, toAssetIndex: BigNumberish, amount: BigNumberish, minOut: BigNumberish, minU: BigNumberish, fallbackUser: AddressLike, underwriteIncentiveX16: BigNumberish, calldata_: BytesLike ], [ bigint ], 'payable'>; getFunction(nameOrSignature: 'sendLiquidity'): TypedContractMethod<[ routeDescription: ICatalystV1Structs.RouteDescriptionStruct, vaultTokens: BigNumberish, minOut: [BigNumberish, BigNumberish], fallbackUser: AddressLike, calldata_: BytesLike ], [ bigint ], 'payable'>; getFunction(nameOrSignature: 'setConnection'): TypedContractMethod<[ channelId: BytesLike, toVault: BytesLike, state: boolean ], [ void ], 'nonpayable'>; getFunction(nameOrSignature: 'setFeeAdministrator'): TypedContractMethod<[administrator: AddressLike], [void], 'nonpayable'>; getFunction(nameOrSignature: 'setGovernanceFee'): TypedContractMethod<[fee: BigNumberish], [void], 'nonpayable'>; getFunction(nameOrSignature: 'setVaultFee'): TypedContractMethod<[fee: BigNumberish], [void], 'nonpayable'>; getFunction(nameOrSignature: 'setup'): TypedContractMethod<[ name_: string, symbol_: string, chainInterface: AddressLike, vaultFee: BigNumberish, governanceFee: BigNumberish, feeAdministrator: AddressLike, setupMaster: AddressLike ], [ void ], 'nonpayable'>; getFunction(nameOrSignature: 'symbol'): TypedContractMethod<[], [string], 'view'>; getFunction(nameOrSignature: 'totalSupply'): TypedContractMethod<[], [bigint], 'view'>; getFunction(nameOrSignature: 'transfer'): TypedContractMethod<[ to: AddressLike, amount: BigNumberish ], [ boolean ], 'nonpayable'>; getFunction(nameOrSignature: 'transferFrom'): TypedContractMethod<[ from: AddressLike, to: AddressLike, amount: BigNumberish ], [ boolean ], 'nonpayable'>; getFunction(nameOrSignature: 'underwriteAsset'): TypedContractMethod<[ identifier: BytesLike, toAsset: AddressLike, U: BigNumberish, minOut: BigNumberish ], [ bigint ], 'nonpayable'>; getFunction(nameOrSignature: 'withdrawAll'): TypedContractMethod<[ baseAmount: BigNumberish, minOut: BigNumberish[] ], [ bigint[] ], 'nonpayable'>; getFunction(nameOrSignature: 'withdrawMixed'): TypedContractMethod<[ vaultTokens: BigNumberish, withdrawRatio: BigNumberish[], minOut: BigNumberish[] ], [ bigint[] ], 'nonpayable'>; getEvent(key: 'FinishSetup'): TypedContractEvent<FinishSetupEvent.InputTuple, FinishSetupEvent.OutputTuple, FinishSetupEvent.OutputObject>; getEvent(key: 'Initialized'): TypedContractEvent<InitializedEvent.InputTuple, InitializedEvent.OutputTuple, InitializedEvent.OutputObject>; getEvent(key: 'LocalSwap'): TypedContractEvent<LocalSwapEvent.InputTuple, LocalSwapEvent.OutputTuple, LocalSwapEvent.OutputObject>; getEvent(key: 'ReceiveAsset'): TypedContractEvent<ReceiveAssetEvent.InputTuple, ReceiveAssetEvent.OutputTuple, ReceiveAssetEvent.OutputObject>; getEvent(key: 'ReceiveLiquidity'): TypedContractEvent<ReceiveLiquidityEvent.InputTuple, ReceiveLiquidityEvent.OutputTuple, ReceiveLiquidityEvent.OutputObject>; getEvent(key: 'SendAsset'): TypedContractEvent<SendAssetEvent.InputTuple, SendAssetEvent.OutputTuple, SendAssetEvent.OutputObject>; getEvent