@towns-protocol/generated
Version:
## How to generate contract types
506 lines (455 loc) • 15.2 kB
text/typescript
/* Autogenerated file. Do not edit manually. */
/* tslint:disable */
/* eslint-disable */
import type {
BaseContract,
BigNumber,
BigNumberish,
BytesLike,
CallOverrides,
ContractTransaction,
PayableOverrides,
PopulatedTransaction,
Signer,
utils,
} from "ethers";
import type {
FunctionFragment,
Result,
EventFragment,
} from "@ethersproject/abi";
import type { Listener, Provider } from "@ethersproject/providers";
import type {
TypedEventFilter,
TypedEvent,
TypedListener,
OnEvent,
PromiseOrValue,
} from "./common";
export declare namespace ISwapRouterBase {
export type ExactInputParamsStruct = {
tokenIn: PromiseOrValue<string>;
tokenOut: PromiseOrValue<string>;
amountIn: PromiseOrValue<BigNumberish>;
minAmountOut: PromiseOrValue<BigNumberish>;
recipient: PromiseOrValue<string>;
};
export type ExactInputParamsStructOutput = [
string,
string,
BigNumber,
BigNumber,
string
] & {
tokenIn: string;
tokenOut: string;
amountIn: BigNumber;
minAmountOut: BigNumber;
recipient: string;
};
export type RouterParamsStruct = {
router: PromiseOrValue<string>;
approveTarget: PromiseOrValue<string>;
swapData: PromiseOrValue<BytesLike>;
};
export type RouterParamsStructOutput = [string, string, string] & {
router: string;
approveTarget: string;
swapData: string;
};
export type Permit2ParamsStruct = {
owner: PromiseOrValue<string>;
nonce: PromiseOrValue<BigNumberish>;
deadline: PromiseOrValue<BigNumberish>;
signature: PromiseOrValue<BytesLike>;
};
export type Permit2ParamsStructOutput = [
string,
BigNumber,
BigNumber,
string
] & {
owner: string;
nonce: BigNumber;
deadline: BigNumber;
signature: string;
};
}
export interface ISwapRouterInterface extends utils.Interface {
functions: {
"executeSwap((address,address,uint256,uint256,address),(address,address,bytes),address)": FunctionFragment;
"executeSwapWithPermit((address,address,uint256,uint256,address),(address,address,bytes),(address,uint256,uint256,bytes),address)": FunctionFragment;
"getETHInputFees(uint256,address,address)": FunctionFragment;
"getPermit2MessageHash((address,address,uint256,uint256,address),(address,address,bytes),address,uint256,uint256,uint256)": FunctionFragment;
"getPermit2Nonce(address,uint256)": FunctionFragment;
};
getFunction(
nameOrSignatureOrTopic:
| "executeSwap"
| "executeSwapWithPermit"
| "getETHInputFees"
| "getPermit2MessageHash"
| "getPermit2Nonce"
): FunctionFragment;
encodeFunctionData(
functionFragment: "executeSwap",
values: [
ISwapRouterBase.ExactInputParamsStruct,
ISwapRouterBase.RouterParamsStruct,
PromiseOrValue<string>
]
): string;
encodeFunctionData(
functionFragment: "executeSwapWithPermit",
values: [
ISwapRouterBase.ExactInputParamsStruct,
ISwapRouterBase.RouterParamsStruct,
ISwapRouterBase.Permit2ParamsStruct,
PromiseOrValue<string>
]
): string;
encodeFunctionData(
functionFragment: "getETHInputFees",
values: [
PromiseOrValue<BigNumberish>,
PromiseOrValue<string>,
PromiseOrValue<string>
]
): string;
encodeFunctionData(
functionFragment: "getPermit2MessageHash",
values: [
ISwapRouterBase.ExactInputParamsStruct,
ISwapRouterBase.RouterParamsStruct,
PromiseOrValue<string>,
PromiseOrValue<BigNumberish>,
PromiseOrValue<BigNumberish>,
PromiseOrValue<BigNumberish>
]
): string;
encodeFunctionData(
functionFragment: "getPermit2Nonce",
values: [PromiseOrValue<string>, PromiseOrValue<BigNumberish>]
): string;
decodeFunctionResult(
functionFragment: "executeSwap",
data: BytesLike
): Result;
decodeFunctionResult(
functionFragment: "executeSwapWithPermit",
data: BytesLike
): Result;
decodeFunctionResult(
functionFragment: "getETHInputFees",
data: BytesLike
): Result;
decodeFunctionResult(
functionFragment: "getPermit2MessageHash",
data: BytesLike
): Result;
decodeFunctionResult(
functionFragment: "getPermit2Nonce",
data: BytesLike
): Result;
events: {
"FeeDistribution(address,address,address,uint256,uint256)": EventFragment;
"Swap(address,address,address,address,uint256,uint256,address)": EventFragment;
"SwapRouterInitialized(address)": EventFragment;
};
getEvent(nameOrSignatureOrTopic: "FeeDistribution"): EventFragment;
getEvent(nameOrSignatureOrTopic: "Swap"): EventFragment;
getEvent(nameOrSignatureOrTopic: "SwapRouterInitialized"): EventFragment;
}
export interface FeeDistributionEventObject {
token: string;
protocol: string;
poster: string;
protocolAmount: BigNumber;
posterAmount: BigNumber;
}
export type FeeDistributionEvent = TypedEvent<
[string, string, string, BigNumber, BigNumber],
FeeDistributionEventObject
>;
export type FeeDistributionEventFilter = TypedEventFilter<FeeDistributionEvent>;
export interface SwapEventObject {
router: string;
caller: string;
tokenIn: string;
tokenOut: string;
amountIn: BigNumber;
amountOut: BigNumber;
recipient: string;
}
export type SwapEvent = TypedEvent<
[string, string, string, string, BigNumber, BigNumber, string],
SwapEventObject
>;
export type SwapEventFilter = TypedEventFilter<SwapEvent>;
export interface SwapRouterInitializedEventObject {
spaceFactory: string;
}
export type SwapRouterInitializedEvent = TypedEvent<
[string],
SwapRouterInitializedEventObject
>;
export type SwapRouterInitializedEventFilter =
TypedEventFilter<SwapRouterInitializedEvent>;
export interface ISwapRouter extends BaseContract {
connect(signerOrProvider: Signer | Provider | string): this;
attach(addressOrName: string): this;
deployed(): Promise<this>;
interface: ISwapRouterInterface;
queryFilter<TEvent extends TypedEvent>(
event: TypedEventFilter<TEvent>,
fromBlockOrBlockhash?: string | number | undefined,
toBlock?: string | number | undefined
): Promise<Array<TEvent>>;
listeners<TEvent extends TypedEvent>(
eventFilter?: TypedEventFilter<TEvent>
): Array<TypedListener<TEvent>>;
listeners(eventName?: string): Array<Listener>;
removeAllListeners<TEvent extends TypedEvent>(
eventFilter: TypedEventFilter<TEvent>
): this;
removeAllListeners(eventName?: string): this;
off: OnEvent<this>;
on: OnEvent<this>;
once: OnEvent<this>;
removeListener: OnEvent<this>;
functions: {
executeSwap(
params: ISwapRouterBase.ExactInputParamsStruct,
routerParams: ISwapRouterBase.RouterParamsStruct,
poster: PromiseOrValue<string>,
overrides?: PayableOverrides & { from?: PromiseOrValue<string> }
): Promise<ContractTransaction>;
executeSwapWithPermit(
params: ISwapRouterBase.ExactInputParamsStruct,
routerParams: ISwapRouterBase.RouterParamsStruct,
permit: ISwapRouterBase.Permit2ParamsStruct,
poster: PromiseOrValue<string>,
overrides?: PayableOverrides & { from?: PromiseOrValue<string> }
): Promise<ContractTransaction>;
getETHInputFees(
amountIn: PromiseOrValue<BigNumberish>,
caller: PromiseOrValue<string>,
poster: PromiseOrValue<string>,
overrides?: CallOverrides
): Promise<
[BigNumber, BigNumber, BigNumber] & {
amountInAfterFees: BigNumber;
protocolFee: BigNumber;
posterFee: BigNumber;
}
>;
getPermit2MessageHash(
params: ISwapRouterBase.ExactInputParamsStruct,
routerParams: ISwapRouterBase.RouterParamsStruct,
poster: PromiseOrValue<string>,
amount: PromiseOrValue<BigNumberish>,
nonce: PromiseOrValue<BigNumberish>,
deadline: PromiseOrValue<BigNumberish>,
overrides?: CallOverrides
): Promise<[string] & { messageHash: string }>;
getPermit2Nonce(
owner: PromiseOrValue<string>,
startNonce: PromiseOrValue<BigNumberish>,
overrides?: CallOverrides
): Promise<[BigNumber] & { nonce: BigNumber }>;
};
executeSwap(
params: ISwapRouterBase.ExactInputParamsStruct,
routerParams: ISwapRouterBase.RouterParamsStruct,
poster: PromiseOrValue<string>,
overrides?: PayableOverrides & { from?: PromiseOrValue<string> }
): Promise<ContractTransaction>;
executeSwapWithPermit(
params: ISwapRouterBase.ExactInputParamsStruct,
routerParams: ISwapRouterBase.RouterParamsStruct,
permit: ISwapRouterBase.Permit2ParamsStruct,
poster: PromiseOrValue<string>,
overrides?: PayableOverrides & { from?: PromiseOrValue<string> }
): Promise<ContractTransaction>;
getETHInputFees(
amountIn: PromiseOrValue<BigNumberish>,
caller: PromiseOrValue<string>,
poster: PromiseOrValue<string>,
overrides?: CallOverrides
): Promise<
[BigNumber, BigNumber, BigNumber] & {
amountInAfterFees: BigNumber;
protocolFee: BigNumber;
posterFee: BigNumber;
}
>;
getPermit2MessageHash(
params: ISwapRouterBase.ExactInputParamsStruct,
routerParams: ISwapRouterBase.RouterParamsStruct,
poster: PromiseOrValue<string>,
amount: PromiseOrValue<BigNumberish>,
nonce: PromiseOrValue<BigNumberish>,
deadline: PromiseOrValue<BigNumberish>,
overrides?: CallOverrides
): Promise<string>;
getPermit2Nonce(
owner: PromiseOrValue<string>,
startNonce: PromiseOrValue<BigNumberish>,
overrides?: CallOverrides
): Promise<BigNumber>;
callStatic: {
executeSwap(
params: ISwapRouterBase.ExactInputParamsStruct,
routerParams: ISwapRouterBase.RouterParamsStruct,
poster: PromiseOrValue<string>,
overrides?: CallOverrides
): Promise<
[BigNumber, BigNumber] & { amountOut: BigNumber; protocolFee: BigNumber }
>;
executeSwapWithPermit(
params: ISwapRouterBase.ExactInputParamsStruct,
routerParams: ISwapRouterBase.RouterParamsStruct,
permit: ISwapRouterBase.Permit2ParamsStruct,
poster: PromiseOrValue<string>,
overrides?: CallOverrides
): Promise<
[BigNumber, BigNumber] & { amountOut: BigNumber; protocolFee: BigNumber }
>;
getETHInputFees(
amountIn: PromiseOrValue<BigNumberish>,
caller: PromiseOrValue<string>,
poster: PromiseOrValue<string>,
overrides?: CallOverrides
): Promise<
[BigNumber, BigNumber, BigNumber] & {
amountInAfterFees: BigNumber;
protocolFee: BigNumber;
posterFee: BigNumber;
}
>;
getPermit2MessageHash(
params: ISwapRouterBase.ExactInputParamsStruct,
routerParams: ISwapRouterBase.RouterParamsStruct,
poster: PromiseOrValue<string>,
amount: PromiseOrValue<BigNumberish>,
nonce: PromiseOrValue<BigNumberish>,
deadline: PromiseOrValue<BigNumberish>,
overrides?: CallOverrides
): Promise<string>;
getPermit2Nonce(
owner: PromiseOrValue<string>,
startNonce: PromiseOrValue<BigNumberish>,
overrides?: CallOverrides
): Promise<BigNumber>;
};
filters: {
"FeeDistribution(address,address,address,uint256,uint256)"(
token?: PromiseOrValue<string> | null,
protocol?: PromiseOrValue<string> | null,
poster?: PromiseOrValue<string> | null,
protocolAmount?: null,
posterAmount?: null
): FeeDistributionEventFilter;
FeeDistribution(
token?: PromiseOrValue<string> | null,
protocol?: PromiseOrValue<string> | null,
poster?: PromiseOrValue<string> | null,
protocolAmount?: null,
posterAmount?: null
): FeeDistributionEventFilter;
"Swap(address,address,address,address,uint256,uint256,address)"(
router?: PromiseOrValue<string> | null,
caller?: PromiseOrValue<string> | null,
tokenIn?: null,
tokenOut?: null,
amountIn?: null,
amountOut?: null,
recipient?: null
): SwapEventFilter;
Swap(
router?: PromiseOrValue<string> | null,
caller?: PromiseOrValue<string> | null,
tokenIn?: null,
tokenOut?: null,
amountIn?: null,
amountOut?: null,
recipient?: null
): SwapEventFilter;
"SwapRouterInitialized(address)"(
spaceFactory?: null
): SwapRouterInitializedEventFilter;
SwapRouterInitialized(
spaceFactory?: null
): SwapRouterInitializedEventFilter;
};
estimateGas: {
executeSwap(
params: ISwapRouterBase.ExactInputParamsStruct,
routerParams: ISwapRouterBase.RouterParamsStruct,
poster: PromiseOrValue<string>,
overrides?: PayableOverrides & { from?: PromiseOrValue<string> }
): Promise<BigNumber>;
executeSwapWithPermit(
params: ISwapRouterBase.ExactInputParamsStruct,
routerParams: ISwapRouterBase.RouterParamsStruct,
permit: ISwapRouterBase.Permit2ParamsStruct,
poster: PromiseOrValue<string>,
overrides?: PayableOverrides & { from?: PromiseOrValue<string> }
): Promise<BigNumber>;
getETHInputFees(
amountIn: PromiseOrValue<BigNumberish>,
caller: PromiseOrValue<string>,
poster: PromiseOrValue<string>,
overrides?: CallOverrides
): Promise<BigNumber>;
getPermit2MessageHash(
params: ISwapRouterBase.ExactInputParamsStruct,
routerParams: ISwapRouterBase.RouterParamsStruct,
poster: PromiseOrValue<string>,
amount: PromiseOrValue<BigNumberish>,
nonce: PromiseOrValue<BigNumberish>,
deadline: PromiseOrValue<BigNumberish>,
overrides?: CallOverrides
): Promise<BigNumber>;
getPermit2Nonce(
owner: PromiseOrValue<string>,
startNonce: PromiseOrValue<BigNumberish>,
overrides?: CallOverrides
): Promise<BigNumber>;
};
populateTransaction: {
executeSwap(
params: ISwapRouterBase.ExactInputParamsStruct,
routerParams: ISwapRouterBase.RouterParamsStruct,
poster: PromiseOrValue<string>,
overrides?: PayableOverrides & { from?: PromiseOrValue<string> }
): Promise<PopulatedTransaction>;
executeSwapWithPermit(
params: ISwapRouterBase.ExactInputParamsStruct,
routerParams: ISwapRouterBase.RouterParamsStruct,
permit: ISwapRouterBase.Permit2ParamsStruct,
poster: PromiseOrValue<string>,
overrides?: PayableOverrides & { from?: PromiseOrValue<string> }
): Promise<PopulatedTransaction>;
getETHInputFees(
amountIn: PromiseOrValue<BigNumberish>,
caller: PromiseOrValue<string>,
poster: PromiseOrValue<string>,
overrides?: CallOverrides
): Promise<PopulatedTransaction>;
getPermit2MessageHash(
params: ISwapRouterBase.ExactInputParamsStruct,
routerParams: ISwapRouterBase.RouterParamsStruct,
poster: PromiseOrValue<string>,
amount: PromiseOrValue<BigNumberish>,
nonce: PromiseOrValue<BigNumberish>,
deadline: PromiseOrValue<BigNumberish>,
overrides?: CallOverrides
): Promise<PopulatedTransaction>;
getPermit2Nonce(
owner: PromiseOrValue<string>,
startNonce: PromiseOrValue<BigNumberish>,
overrides?: CallOverrides
): Promise<PopulatedTransaction>;
};
}