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 AmplifiedVaultInterface extends Interface {
    getFunction(nameOrSignature: 'DOMAIN_SEPARATOR' | 'FACTORY' | 'MATHLIB' | '_adjustmentTarget' | '_chainInterface' | '_escrowLookup' | '_escrowedTokens' | '_escrowedVaultTokens' | '_feeAdministrator' | '_governanceFeeShare' | '_lastModificationTime' | '_maxUnitCapacity' | '_oneMinusAmp' | '_setupMaster' | '_targetAmplification' | '_tokenIndexing' | '_unitTracker' | '_vaultConnection' | '_vaultFee' | '_weight' | 'allowance' | 'approve' | 'balanceOf' | 'calcLocalSwap' | 'calcReceiveAsset' | 'calcSendAsset' | 'computeBalance0' | 'decimals' | 'deleteUnderwriteAsset' | 'depositMixed' | 'factoryOwner' | 'finishSetup' | 'getUnitCapacity' | 'governanceFeeDestination' | 'initializeSwapCurves' | 'localSwap' | 'multicall' | 'name' | 'nonces' | 'onSendAssetFailure' | 'onSendAssetSuccess' | 'onSendLiquidityFailure' | 'onSendLiquiditySuccess' | 'permit' | 'ready' | 'receiveAsset(bytes32,bytes,uint256,address,uint256,uint256,uint256,bytes,uint32)' | 'receiveAsset(bytes32,bytes,uint256,address,uint256,uint256,uint256,bytes,uint32,address,bytes)' | 'receiveLiquidity(bytes32,bytes,address,uint256,uint256,uint256,uint256,uint32)' | 'receiveLiquidity(bytes32,bytes,address,uint256,uint256,uint256,uint256,uint32,address,bytes)' | 'releaseUnderwriteAsset' | 'sendAsset' | 'sendAssetUnderwrite' | 'sendAssetUnderwritePurpose' | 'sendLiquidity' | 'setAmplification' | 'setConnection' | 'setFeeAdministrator' | 'setGovernanceFee' | 'setVaultFee' | 'setup' | 'symbol' | 'totalSupply' | 'transfer' | 'transferFrom' | 'underwriteAsset' | 'updateMaxUnitCapacity' | 'withdrawAll' | 'withdrawMixed'): FunctionFragment;
    getEvent(nameOrSignatureOrTopic: 'Approval' | 'FinishSetup' | 'Initialized' | 'LocalSwap' | 'ReceiveAsset' | 'ReceiveLiquidity' | 'SendAsset' | 'SendAssetFailure' | 'SendAssetSuccess' | 'SendAssetUnderwritable' | 'SendLiquidity' | 'SendLiquidityFailure' | 'SendLiquiditySuccess' | 'SetAmplification' | 'SetConnection' | 'SetFeeAdministrator' | 'SetGovernanceFee' | 'SetVaultFee' | 'SetWeights' | 'Transfer' | '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: '_oneMinusAmp', values?: undefined): string;
    encodeFunctionData(functionFragment: '_setupMaster', values?: undefined): string;
    encodeFunctionData(functionFragment: '_targetAmplification', values?: undefined): string;
    encodeFunctionData(functionFragment: '_tokenIndexing', values: [BigNumberish]): string;
    encodeFunctionData(functionFragment: '_unitTracker', values?: undefined): 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: 'computeBalance0', values?: undefined): string;
    encodeFunctionData(functionFragment: 'decimals', values?: undefined): string;
    encodeFunctionData(functionFragment: 'deleteUnderwriteAsset', values: [BytesLike, 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(bytes32,bytes,uint256,address,uint256,uint256,uint256,bytes,uint32)', values: [
        BytesLike,
        BytesLike,
        BigNumberish,
        AddressLike,
        BigNumberish,
        BigNumberish,
        BigNumberish,
        BytesLike,
        BigNumberish
    ]): string;
    encodeFunctionData(functionFragment: 'receiveAsset(bytes32,bytes,uint256,address,uint256,uint256,uint256,bytes,uint32,address,bytes)', values: [
        BytesLike,
        BytesLike,
        BigNumberish,
        AddressLike,
        BigNumberish,
        BigNumberish,
        BigNumberish,
        BytesLike,
        BigNumberish,
        AddressLike,
        BytesLike
    ]): string;
    encodeFunctionData(functionFragment: 'receiveLiquidity(bytes32,bytes,address,uint256,uint256,uint256,uint256,uint32)', values: [
        BytesLike,
        BytesLike,
        AddressLike,
        BigNumberish,
        BigNumberish,
        BigNumberish,
        BigNumberish,
        BigNumberish
    ]): string;
    encodeFunctionData(functionFragment: 'receiveLiquidity(bytes32,bytes,address,uint256,uint256,uint256,uint256,uint32,address,bytes)', values: [
        BytesLike,
        BytesLike,
        AddressLike,
        BigNumberish,
        BigNumberish,
        BigNumberish,
        BigNumberish,
        BigNumberish,
        AddressLike,
        BytesLike
    ]): string;
    encodeFunctionData(functionFragment: 'releaseUnderwriteAsset', values: [BytesLike, BigNumberish, AddressLike]): string;
    encodeFunctionData(functionFragment: 'sendAsset', values: [
        ICatalystV1Structs.RouteDescriptionStruct,
        AddressLike,
        BigNumberish,
        BigNumberish,
        BigNumberish,
        AddressLike,
        BytesLike
    ]): string;
    encodeFunctionData(functionFragment: 'sendAssetUnderwrite', values: [
        ICatalystV1Structs.RouteDescriptionStruct,
        AddressLike,
        BigNumberish,
        BigNumberish,
        BigNumberish,
        AddressLike,
        BigNumberish,
        BytesLike
    ]): string;
    encodeFunctionData(functionFragment: 'sendAssetUnderwritePurpose', values: [
        ICatalystV1Structs.RouteDescriptionStruct,
        AddressLike,
        BigNumberish,
        BigNumberish,
        BigNumberish,
        BigNumberish,
        AddressLike,
        BytesLike
    ]): string;
    encodeFunctionData(functionFragment: 'sendLiquidity', values: [
        ICatalystV1Structs.RouteDescriptionStruct,
        BigNumberish,
        [
            BigNumberish,
            BigNumberish
        ],
        AddressLike,
        BytesLike
    ]): string;
    encodeFunctionData(functionFragment: 'setAmplification', values: [BigNumberish, BigNumberish]): 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: 'updateMaxUnitCapacity', values?: undefined): 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: '_oneMinusAmp', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: '_setupMaster', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: '_targetAmplification', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: '_tokenIndexing', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: '_unitTracker', 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: 'computeBalance0', 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(bytes32,bytes,uint256,address,uint256,uint256,uint256,bytes,uint32)', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'receiveAsset(bytes32,bytes,uint256,address,uint256,uint256,uint256,bytes,uint32,address,bytes)', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'receiveLiquidity(bytes32,bytes,address,uint256,uint256,uint256,uint256,uint32)', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'receiveLiquidity(bytes32,bytes,address,uint256,uint256,uint256,uint256,uint32,address,bytes)', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'releaseUnderwriteAsset', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'sendAsset', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'sendAssetUnderwrite', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'sendAssetUnderwritePurpose', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'sendLiquidity', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'setAmplification', 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: 'updateMaxUnitCapacity', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'withdrawAll', data: BytesLike): Result;
    decodeFunctionResult(functionFragment: 'withdrawMixed', data: BytesLike): Result;
}
export declare namespace ApprovalEvent {
    type InputTuple = [
        owner: AddressLike,
        spender: AddressLike,
        amount: BigNumberish
    ];
    type OutputTuple = [owner: string, spender: string, amount: bigint];
    interface OutputObject {
        owner: string;
        spender: string;
        amount: bigint;
    }
    type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
    type Filter = TypedDeferredTopicFilter<Event>;
    type Log = TypedEventLog<Event>;
    type LogDescription = TypedLogDescription<Event>;
}
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
    ];
    type OutputTuple = [
        channelId: string,
        toVault: string,
        toAccount: string,
        fromAsset: string,
        toAssetIndex: bigint,
        fromAmount: bigint,
        minOut: bigint,
        units: bigint,
        fee: bigint
    ];
    interface OutputObject {
        channelId: string;
        toVault: string;
        toAccount: string;
        fromAsset: string;
        toAssetIndex: bigint;
        fromAmount: bigint;
        minOut: bigint;
        units: bigint;
        fee: 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 SendAssetUnderwritableEvent {
    type InputTuple = [
        channelId: BytesLike,
        toVault: BytesLike,
        toAccount: BytesLike,
        fromAsset: AddressLike,
        toAssetIndex: BigNumberish,
        fromAmount: BigNumberish,
        minOut: BigNumberish,
        units: BigNumberish,
        fee: BigNumberish,
        underwritePercentageX16: BigNumberish
    ];
    type OutputTuple = [
        channelId: string,
        toVault: string,
        toAccount: string,
        fromAsset: string,
        toAssetIndex: bigint,
        fromAmount: bigint,
        minOut: bigint,
        units: bigint,
        fee: bigint,
        underwritePercentageX16: bigint
    ];
    interface OutputObject {
        channelId: string;
        toVault: string;
        toAccount: string;
        fromAsset: string;
        toAssetIndex: bigint;
        fromAmount: bigint;
        minOut: bigint;
        units: bigint;
        fee: bigint;
        underwritePercentageX16: 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 TransferEvent {
    type InputTuple = [
        from: AddressLike,
        to: AddressLike,
        amount: BigNumberish
    ];
    type OutputTuple = [from: string, to: string, amount: bigint];
    interface OutputObject {
        from: string;
        to: string;
        amount: 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 AmplifiedVault extends BaseContract {
    connect(runner?: ContractRunner | null): AmplifiedVault;
    waitForDeployment(): Promise<this>;
    interface: AmplifiedVaultInterface;
    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'>;
    _oneMinusAmp: TypedContractMethod<[], [bigint], 'view'>;
    _setupMaster: TypedContractMethod<[], [string], 'view'>;
    _targetAmplification: TypedContractMethod<[], [bigint], 'view'>;
    _tokenIndexing: TypedContractMethod<[arg0: BigNumberish], [string], 'view'>;
    _unitTracker: TypedContractMethod<[], [bigint], '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<[
        fromAsset: AddressLike,
        toAsset: AddressLike,
        amount: BigNumberish
    ], [
        bigint
    ], 'view'>;
    calcReceiveAsset: TypedContractMethod<[
        toAsset: AddressLike,
        U: BigNumberish
    ], [
        bigint
    ], 'view'>;
    calcSendAsset: TypedContractMethod<[
        fromAsset: AddressLike,
        amount: BigNumberish
    ], [
        bigint
    ], 'view'>;
    computeBalance0: TypedContractMethod<[], [bigint], 'view'>;
    decimals: TypedContractMethod<[], [bigint], 'view'>;
    deleteUnderwriteAsset: TypedContractMethod<[
        identifier: BytesLike,
        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(bytes32,bytes,uint256,address,uint256,uint256,uint256,bytes,uint32)': TypedContractMethod<[
        channelId: BytesLike,
        fromVault: BytesLike,
        toAssetIndex: BigNumberish,
        toAccount: AddressLike,
        U: BigNumberish,
        minOut: BigNumberish,
        fromAmount: BigNumberish,
        fromAsset: BytesLike,
        blockNumberMod: BigNumberish
    ], [
        void
    ], 'nonpayable'>;
    'receiveAsset(bytes32,bytes,uint256,address,uint256,uint256,uint256,bytes,uint32,address,bytes)': TypedContractMethod<[
        channelId: BytesLike,
        fromVault: BytesLike,
        toAssetIndex: BigNumberish,
        toAccount: AddressLike,
        U: BigNumberish,
        minOut: BigNumberish,
        fromAmount: BigNumberish,
        fromAsset: BytesLike,
        blockNumberMod: BigNumberish,
        dataTarget: AddressLike,
        data: BytesLike
    ], [
        void
    ], 'nonpayable'>;
    'receiveLiquidity(bytes32,bytes,address,uint256,uint256,uint256,uint256,uint32)': TypedContractMethod<[
        channelId: BytesLike,
        fromVault: BytesLike,
        toAccount: AddressLike,
        U: BigNumberish,
        minVaultTokens: BigNumberish,
        minReferenceAsset: BigNumberish,
        fromAmount: BigNumberish,
        blockNumberMod: BigNumberish
    ], [
        void
    ], 'nonpayable'>;
    'receiveLiquidity(bytes32,bytes,address,uint256,uint256,uint256,uint256,uint32,address,bytes)': TypedContractMethod<[
        channelId: BytesLike,
        fromVault: BytesLike,
        toAccount: AddressLike,
        U: BigNumberish,
        minVaultTokens: BigNumberish,
        minReferenceAsset: BigNumberish,
        fromAmount: BigNumberish,
        blockNumberMod: BigNumberish,
        dataTarget: AddressLike,
        data: BytesLike
    ], [
        void
    ], 'nonpayable'>;
    releaseUnderwriteAsset: TypedContractMethod<[
        identifier: BytesLike,
        escrowAmount: BigNumberish,
        escrowToken: AddressLike
    ], [
        void
    ], 'nonpayable'>;
    sendAsset: TypedContractMethod<[
        routeDescription: ICatalystV1Structs.RouteDescriptionStruct,
        fromAsset: AddressLike,
        toAssetIndex: BigNumberish,
        amount: BigNumberish,
        minOut: BigNumberish,
        fallbackUser: AddressLike,
        calldata_: BytesLike
    ], [
        bigint
    ], 'payable'>;
    sendAssetUnderwrite: TypedContractMethod<[
        routeDescription: ICatalystV1Structs.RouteDescriptionStruct,
        fromAsset: AddressLike,
        toAssetIndex: BigNumberish,
        amount: BigNumberish,
        minOut: BigNumberish,
        fallbackUser: AddressLike,
        underwritePercentageX16: BigNumberish,
        calldata_: BytesLike
    ], [
        bigint
    ], 'payable'>;
    sendAssetUnderwritePurpose: TypedContractMethod<[
        routeDescription: ICatalystV1Structs.RouteDescriptionStruct,
        fromAsset: AddressLike,
        toAssetIndex: BigNumberish,
        amount: BigNumberish,
        minOut: BigNumberish,
        minU: BigNumberish,
        fallbackUser: AddressLike,
        calldata_: BytesLike
    ], [
        bigint
    ], 'payable'>;
    sendLiquidity: TypedContractMethod<[
        routeDescription: ICatalystV1Structs.RouteDescriptionStruct,
        vaultTokens: BigNumberish,
        minOut: [BigNumberish, BigNumberish],
        fallbackUser: AddressLike,
        calldata_: BytesLike
    ], [
        bigint
    ], 'payable'>;
    setAmplification: TypedContractMethod<[
        targetTime: BigNumberish,
        targetAmplification: BigNumberish
    ], [
        void
    ], 'nonpayable'>;
    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'>;
    updateMaxUnitCapacity: TypedContractMethod<[], [void], 'nonpayable'>;
    withdrawAll: TypedContractMethod<[
        vaultTokens: 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: '_oneMinusAmp'): TypedContractMethod<[], [bigint], 'view'>;
    getFunction(nameOrSignature: '_setupMaster'): TypedContractMethod<[], [string], 'view'>;
    getFunction(nameOrSignature: '_targetAmplification'): TypedContractMethod<[], [bigint], 'view'>;
    getFunction(nameOrSignature: '_tokenIndexing'): TypedContractMethod<[arg0: BigNumberish], [string], 'view'>;
    getFunction(nameOrSignature: '_unitTracker'): TypedContractMethod<[], [bigint], '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<[
        fromAsset: AddressLike,
        toAsset: AddressLike,
        amount: BigNumberish
    ], [
        bigint
    ], 'view'>;
    getFunction(nameOrSignature: 'calcReceiveAsset'): TypedContractMethod<[
        toAsset: AddressLike,
        U: BigNumberish
    ], [
        bigint
    ], 'view'>;
    getFunction(nameOrSignature: 'calcSendAsset'): TypedContractMethod<[
        fromAsset: AddressLike,
        amount: BigNumberish
    ], [
        bigint
    ], 'view'>;
    getFunction(nameOrSignature: 'computeBalance0'): TypedContractMethod<[], [bigint], 'view'>;
    getFunction(nameOrSignature: 'decimals'): TypedContractMethod<[], [bigint], 'view'>;
    getFunction(nameOrSignature: 'deleteUnderwriteAsset'): TypedContractMethod<[
        identifier: BytesLike,
        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(bytes32,bytes,uint256,address,uint256,uint256,uint256,bytes,uint32)'): TypedContractMethod<[
        channelId: BytesLike,
        fromVault: BytesLike,
        toAssetIndex: BigNumberish,
        toAccount: AddressLike,
        U: BigNumberish,
        minOut: BigNumberish,
        fromAmount: BigNumberish,
        fromAsset: BytesLike,
        blockNumberMod: BigNumberish
    ], [
        void
    ], 'nonpayable'>;
    getFunction(nameOrSignature: 'receiveAsset(bytes32,bytes,uint256,address,uint256,uint256,uint256,bytes,uint32,address,bytes)'): TypedContractMethod<[
        channelId: BytesLike,
        fromVault: BytesLike,
        toAssetIndex: BigNumberish,
        toAccount: AddressLike,
        U: BigNumberish,
        minOut: BigNumberish,
        fromAmount: BigNumberish,
        fromAsset: BytesLike,
        blockNumberMod: BigNumberish,
        dataTarget: AddressLike,
        data: BytesLike
    ], [
        void
    ], 'nonpayable'>;
    getFunction(nameOrSignature: 'receiveLiquidity(bytes32,bytes,address,uint256,uint256,uint256,uint256,uint32)'): TypedContractMethod<[
        channelId: BytesLike,
        fromVault: BytesLike,
        toAccount: AddressLike,
        U: BigNumberish,
        minVaultTokens: BigNumberish,
        minReferenceAsset: BigNumberish,
        fromAmount: BigNumberish,
        blockNumberMod: BigNumberish
    ], [
        void
    ], 'nonpayable'>;
    getFunction(nameOrSignature: 'receiveLiquidity(bytes32,bytes,address,uint256,uint256,uint256,uint256,uint32,address,bytes)'): TypedContractMethod<[
        channelId: BytesLike,
        fromVault: BytesLike,
        toAccount: AddressLike,
        U: BigNumberish,
        minVaultTokens: BigNumberish,
        minReferenceAsset: BigNumberish,
        fromAmount: BigNumberish,
        blockNumberMod: BigNumberish,
        dataTarget: AddressLike,
        data: BytesLike
    ], [
        void
    ], 'nonpayable'>;
    getFunction(nameOrSignature: 'releaseUnderwriteAsset'): TypedContractMethod<[
        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,
        calldata_: BytesLike
    ], [
        bigint
    ], 'payable'>;
    getFunction(nameOrSignature: 'sendAssetUnderwrite'): TypedContractMethod<[
        routeDescription: ICatalystV1Structs.RouteDescriptionStruct,
        fromAsset: AddressLike,
        toAssetIndex: BigNumberish,
        amount: BigNumberish,
        minOut: BigNumberish,
        fallbackUser: AddressLike,
        underwritePercentageX16: BigNumberish,
        calldata_: BytesLike
    ], [
        bigint
    ], 'payable'>;
    getFunction(nameOrSignature: 'sendAssetUnderwritePurpose'): TypedContractMethod<[
        routeDescription: ICatalystV1Structs.RouteDescriptionStruct,
        fromAsset: AddressLike,
        toAssetIndex: BigNumberish,
        amount: BigNumberish,
        minOut: BigNumberish,
        minU: BigNumberish,
        fallbackUser: AddressLike,
        calldata_: BytesLike
    ], [
        bigint
    ], 'payable'>;
    getFunction(nameOrSignature: 'sendLiquidity'): TypedContractMethod<[
        routeDescription: ICatalystV1Structs.RouteDescriptionStruct,
        vaultTokens: BigNumberish,
        minOut: [BigNumberish, BigNumberish],
        fallbackUser: AddressLike,
        calldata_: BytesLike
    ], [
        bigint
    ], 'payable'>;
    getFunction(nameOrSignature: 'setAmplification'): TypedContractMethod<[
        targetTime: BigNumberish,
        targetAmplification: BigNumberish
    ], [
        void
    ], 'nonpayable'>;
    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: 'updateMaxUnitCapacity'): TypedContractMethod<[], [void], 'nonpayable'>;
    getFunction(nameOrSignature: 'withdrawAll'): TypedContractMethod<[
        vaultTokens: BigNumberish,
        minOut: BigNumberish[]
    ], [
        bigint[]
    ], 'nonpayable'>;
    getFunction(nameOrSignature: 'withdrawMixed'): TypedContractMethod<[
        vaultTokens: BigNumberish,
        withdrawRatio: BigNumberish[],
        minOut: BigNumberish[]
    ], [
        bigint[]
    ], 'nonpayable'>;
    getEvent(key: 'Approval'): TypedContractEvent<ApprovalEvent.InputTuple, ApprovalEvent.OutputTuple, ApprovalEvent.OutputObject>;
    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(key: 'SendAssetFailure'): TypedContractEvent<SendAssetFailureEvent.InputTuple, SendAssetFailureEvent.OutputTuple, SendAssetFailureEvent.OutputObject>;
    getEvent(key: 'SendAssetSuccess'): TypedContractEvent<SendAssetSuccessEvent.InputTuple, SendAssetSuccessEvent.OutputTuple, SendAssetSuccessEvent.OutputObject>;
    getEvent(key: 'SendAssetUnderwritable'): TypedContractEvent<SendAssetUnderwritableEvent.InputTuple, SendAssetUnderwritableEvent.OutputTuple, SendAssetUnderwritableEvent.OutputObject>;
    getEvent(key: 'SendLiquidity'): TypedContractEvent<SendLiquidityEvent.InputTuple, SendLiquidityEvent.OutputTuple, SendLiquidityEvent.OutputObject>;
    getEvent(key: 'SendLiquidityFailure'): TypedContractEvent<SendLiquidityFailureEvent.InputTuple, SendLiquidityFailureEvent.OutputTuple, SendLiquidityFailureEvent.OutputObject>;
    getEvent(key: 'SendLiquiditySuccess'): TypedContractEvent<SendLiquiditySuccessEvent.InputTuple, SendLiquiditySuccessEvent.OutputTuple, SendLiquiditySuccessEvent.OutputObject>;
    getEvent(key: 'SetAmplification'): TypedContractEvent<SetAmplificationEvent.InputTuple, SetAmplificationEvent.OutputTuple, SetAmplificationEvent.OutputObject>;
    getEvent(key: 'SetConnection'): TypedContractEvent<SetConnectionEvent.InputTuple, SetConnectionEvent.OutputTuple, SetConnectionEvent.OutputObject>;
    getEvent(key: 'SetFeeAdministrator'): TypedContractEvent<SetFeeAdministratorEvent.InputTuple, SetFeeAdministratorEvent.OutputTuple, SetFeeAdministratorEvent.OutputObject>;
    getEvent(key: 'SetGovernanceFee'): TypedContractEvent<SetGovernanceFeeEvent.InputTuple, SetGovernanceFeeEvent.OutputTuple, SetGovernanceFeeEvent.OutputObject>;
    getEvent(key: 'SetVaultFee'): TypedContractEvent<SetVaultFeeEvent.InputTuple, SetVaultFeeEvent.OutputTuple, SetVaultFeeEvent.OutputObject>;
    getEvent(key: 'SetWeights'): TypedContractEvent<SetWeightsEvent.InputTuple, SetWeightsEvent.OutputTuple, SetWeightsEvent.OutputObject>;
    getEvent(key: 'Transfer'): TypedContractEvent<TransferEvent.InputTuple, TransferEvent.OutputTuple, TransferEvent.OutputObject>;
    getEvent(key: 'VaultDeposit'): TypedContractEvent<VaultDepositEvent.InputTuple, VaultDepositEvent.OutputTuple, VaultDepositEvent.OutputObject>;
    getEvent(key: 'VaultWithdraw'): TypedContractEvent<VaultWithdrawEvent.InputTuple, VaultWithdrawEvent.OutputTuple, VaultWithdrawEvent.OutputObject>;
    filters: {
        'Approval(address,address,uint256)': TypedContractEvent<ApprovalEvent.InputTuple, ApprovalEvent.OutputTuple, ApprovalEvent.OutputObject>;
        Approval: TypedContractEvent<ApprovalEvent.InputTuple, ApprovalEvent.OutputTuple, ApprovalEvent.OutputObject>;
        'FinishSetup()': TypedContractEvent<FinishSetupEvent.InputTuple, FinishSetupEvent.OutputTuple, FinishSetupEvent.OutputObject>;
        FinishSetup: TypedContractEvent<FinishSetupEvent.InputTuple, FinishSetupEvent.OutputTuple, FinishSetupEvent.OutputObject>;
        'Initialized(uint8)': TypedContractEvent<InitializedEvent.InputTuple, InitializedEvent.OutputTuple, InitializedEvent.OutputObject>;
        Initialized: TypedContractEvent<InitializedEvent.InputTuple, InitializedEvent.OutputTuple, InitializedEvent.OutputObject>;
        'LocalSwap(address,address,address,uint256,uint256)': TypedContractEvent<LocalSwapEvent.InputTuple, LocalSwapEvent.OutputTuple, LocalSwapEvent.OutputObject>;
        LocalSwap: TypedContractEvent<LocalSwapEvent.InputTuple, LocalSwapEvent.OutputTuple, LocalSwapEvent.OutputObject>;
        'ReceiveAsset(bytes32,bytes,address,address,uint256,uint256,uint256,bytes,uint32)': TypedContractEvent<ReceiveAssetEvent.InputTuple, ReceiveAssetEvent.OutputTuple, ReceiveAssetEvent.OutputObject>;
        ReceiveAsset: TypedContractEvent<ReceiveAssetEvent.InputTuple, ReceiveAssetEvent.OutputTuple, ReceiveAssetEvent.OutputObject>;
        'ReceiveLiquidity(bytes32,bytes,address,uint256,uint256,uint256,uint256)': TypedContractEvent<ReceiveLiquidityEvent.InputTuple, ReceiveLiquidityEvent.OutputTuple, ReceiveLiquidityEvent.OutputObject>;
        ReceiveLiquidity: TypedContractEvent<ReceiveLiquidityEvent.InputTuple, ReceiveLiquidityEvent.OutputTuple, ReceiveLiquidityEvent.OutputObject>;
        'SendAsset(bytes32,bytes,bytes,address,uint8,uint256,uint256,uint256,uint256)': TypedContractEvent<SendAssetEvent.InputTuple, SendAssetEvent.OutputTuple, SendAssetEvent.OutputObject>;
        SendAsset: TypedContractEvent<SendAssetEvent.InputTuple, SendAssetEvent.OutputTuple, SendAssetEvent.OutputObject>;
        'SendAssetFailure(bytes32,bytes,uint256,uint256,address,uint32)': TypedContractEvent<SendAssetFailureEvent.InputTuple, SendAssetFailureEvent.OutputTuple, SendAssetFailureEvent.OutputObject>;
        SendAssetFailure: TypedContractEvent<SendAssetFailureEvent.InputTuple, SendAssetFailureEvent.OutputTuple, SendAssetFailureEvent.OutputObject>;
        'SendAssetSuccess(bytes32,bytes,uint256,uint256,address,uint32)': TypedContractEvent<SendAssetSuccessEvent.InputTuple, SendAssetSuccessEvent.OutputTuple, SendAssetSuccessEvent.OutputObject>;
        SendAssetSuccess: TypedContractEvent<SendAssetSuccessEvent.InputTuple, SendAssetSuccessEvent.OutputTuple, SendAssetSuccessEvent.OutputObject>;
        'SendAssetUnderwritable(bytes32,bytes,bytes,address,uint8,uint256,uint256,uint256,uint256,uint16)': TypedContractEvent<SendAssetUnderwritableEvent.InputTuple, SendAssetUnderwritableEvent.OutputTuple, SendAssetUnderwritableEvent.OutputObject>;
        SendAssetUnderwritable: TypedContractEvent<SendAssetUnderwritableEvent.InputTuple, SendAssetUnderwritableEvent.OutputTuple, SendAssetUnderwritableEvent.OutputObject>;
        'SendLiquidity(bytes32,bytes,bytes,uint256,uint256[2],uint256)': TypedContractEvent<SendLiquidityEvent.InputTuple, SendLiquidityEvent.OutputTuple, SendLiquidityEvent.OutputObject>;
        SendLiquidity: TypedContractEvent<SendLiquidityEvent.InputTuple, SendLiquidityEvent.OutputTuple, SendLiquidityEvent.OutputObject>;
        'SendLiquidityFailure(bytes32,bytes,uint256,uint256,uint32)': TypedContractEvent<SendLiquidityFailureEvent.InputTuple, SendLiquidityFailureEvent.OutputTuple, SendLiquidityFailureEvent.OutputObject>;
        SendLiquidityFailure: TypedContractEvent<SendLiquidityFailureEvent.InputTuple, SendLiquidityFailureEvent.OutputTuple, SendLiquidityFailureEvent.OutputObject>;
        'SendLiquiditySuccess(bytes32,bytes,uint256,uint256,uint32)': TypedContractEvent<SendLiquiditySuccessEvent.InputTuple, SendLiquiditySuccessEvent.OutputTuple, SendLiquiditySuccessEvent.OutputObject>;
        SendLiquiditySuccess: TypedContractEvent<SendLiquiditySuccessEvent.InputTuple, SendLiquiditySuccessEvent.OutputTuple, SendLiquiditySuccessEvent.OutputObject>;
        'SetAmplification(uint256,uint256)': TypedContractEvent<SetAmplificationEvent.InputTuple, SetAmplificationEvent.OutputTuple, SetAmplificationEvent.OutputObject>;
        SetAmplification: TypedContractEvent<SetAmplificationEvent.InputTuple, SetAmplificationEvent.OutputTuple, SetAmplificationEvent.OutputObject>;
        'SetConnection(bytes32,bytes,bool)': TypedContractEvent<SetConnectionEvent.InputTuple, SetConnectionEvent.OutputTuple, SetConnectionEvent.OutputObject>;
        SetConnection: TypedContractEvent<SetConnectionEvent.InputTuple, SetConnectionEvent.OutputTuple, SetConnectionEvent.OutputObject>;
        'SetFeeAdministrator(address)': TypedContractEvent<SetFeeAdministratorEvent.InputTuple, SetFeeAdministratorEvent.OutputTuple, SetFeeAdministratorEvent.OutputObject>;
        SetFeeAdministrator: TypedContractEvent<SetFeeAdministratorEvent.InputTuple, SetFeeAdministratorEvent.OutputTuple, SetFeeAdministratorEvent.OutputObject>;
        'SetGovernanceFee(uint256)': TypedContractEvent<SetGovernanceFeeEvent.InputTuple, SetGovernanceFeeEvent.OutputTuple, SetGovernanceFeeEvent.OutputObject>;
        SetGovernanceFee: TypedContractEvent<SetGovernanceFeeEvent.InputTuple, SetGovernanceFeeEvent.OutputTuple, SetGovernanceFeeEvent.OutputObject>;
        'SetVaultFee(uint256)': TypedContractEvent<SetVaultFeeEvent.InputTuple, SetVaultFeeEvent.OutputTuple, SetVaultFeeEvent.OutputObject>;
        SetVaultFee: TypedContractEvent<SetVaultFeeEvent.InputTuple, SetVaultFeeEvent.OutputTuple, SetVaultFeeEvent.OutputObject>;
        'SetWeights(uint256,uint256[])': TypedContractEvent<SetWeightsEvent.InputTuple, SetWeightsEvent.OutputTuple, SetWeightsEvent.OutputObject>;
        SetWeights: TypedContractEvent<SetWeightsEvent.InputTuple, SetWeightsEvent.OutputTuple, SetWeightsEvent.OutputObject>;
        'Transfer(address,address,uint256)': TypedContractEvent<TransferEvent.InputTuple, TransferEvent.OutputTuple, TransferEvent.OutputObject>;
        Transfer: TypedContractEvent<TransferEvent.InputTuple, TransferEvent.OutputTuple, TransferEvent.OutputObject>;
        'VaultDeposit(address,uint256,uint256[])': TypedContractEvent<VaultDepositEvent.InputTuple, VaultDepositEvent.OutputTuple, VaultDepositEvent.OutputObject>;
        VaultDeposit: TypedContractEvent<VaultDepositEvent.InputTuple, VaultDepositEvent.OutputTuple, VaultDepositEvent.OutputObject>;
        'VaultWithdraw(address,uint256,uint256[])': TypedContractEvent<VaultWithdrawEvent.InputTuple, VaultWithdrawEvent.OutputTuple, VaultWithdrawEvent.OutputObject>;
        VaultWithdraw: TypedContractEvent<VaultWithdrawEvent.InputTuple, VaultWithdrawEvent.OutputTuple, VaultWithdrawEvent.OutputObject>;
    };
}
//# sourceMappingURL=AmplifiedVault.d.ts.map