@gooddollar/goodprotocol
Version:
GoodDollar Protocol
728 lines (644 loc) • 19.3 kB
text/typescript
/* Autogenerated file. Do not edit manually. */
/* tslint:disable */
/* eslint-disable */
import type {
BaseContract,
BigNumber,
BigNumberish,
BytesLike,
CallOverrides,
ContractTransaction,
Overrides,
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,
} from "../../common";
export declare namespace ITradingLimits {
export type ConfigStruct = {
timestep0: BigNumberish;
timestep1: BigNumberish;
limit0: BigNumberish;
limit1: BigNumberish;
limitGlobal: BigNumberish;
flags: BigNumberish;
};
export type ConfigStructOutput = [
number,
number,
number,
number,
number,
number
] & {
timestep0: number;
timestep1: number;
limit0: number;
limit1: number;
limitGlobal: number;
flags: number;
};
}
export interface IBrokerInterface extends utils.Interface {
functions: {
"addExchangeProvider(address,address)": FunctionFragment;
"burnStableTokens(address,uint256)": FunctionFragment;
"configureTradingLimit(bytes32,address,(uint32,uint32,int48,int48,int48,uint8))": FunctionFragment;
"exchangeProviders(uint256)": FunctionFragment;
"getAmountIn(address,bytes32,address,address,uint256)": FunctionFragment;
"getAmountOut(address,bytes32,address,address,uint256)": FunctionFragment;
"getExchangeProviders()": FunctionFragment;
"initialize(address[],address[])": FunctionFragment;
"isExchangeProvider(address)": FunctionFragment;
"removeExchangeProvider(address,uint256)": FunctionFragment;
"setReserves(address[],address[])": FunctionFragment;
"swapIn(address,bytes32,address,address,uint256,uint256)": FunctionFragment;
"swapOut(address,bytes32,address,address,uint256,uint256)": FunctionFragment;
};
getFunction(
nameOrSignatureOrTopic:
| "addExchangeProvider"
| "burnStableTokens"
| "configureTradingLimit"
| "exchangeProviders"
| "getAmountIn"
| "getAmountOut"
| "getExchangeProviders"
| "initialize"
| "isExchangeProvider"
| "removeExchangeProvider"
| "setReserves"
| "swapIn"
| "swapOut"
): FunctionFragment;
encodeFunctionData(
functionFragment: "addExchangeProvider",
values: [string, string]
): string;
encodeFunctionData(
functionFragment: "burnStableTokens",
values: [string, BigNumberish]
): string;
encodeFunctionData(
functionFragment: "configureTradingLimit",
values: [BytesLike, string, ITradingLimits.ConfigStruct]
): string;
encodeFunctionData(
functionFragment: "exchangeProviders",
values: [BigNumberish]
): string;
encodeFunctionData(
functionFragment: "getAmountIn",
values: [string, BytesLike, string, string, BigNumberish]
): string;
encodeFunctionData(
functionFragment: "getAmountOut",
values: [string, BytesLike, string, string, BigNumberish]
): string;
encodeFunctionData(
functionFragment: "getExchangeProviders",
values?: undefined
): string;
encodeFunctionData(
functionFragment: "initialize",
values: [string[], string[]]
): string;
encodeFunctionData(
functionFragment: "isExchangeProvider",
values: [string]
): string;
encodeFunctionData(
functionFragment: "removeExchangeProvider",
values: [string, BigNumberish]
): string;
encodeFunctionData(
functionFragment: "setReserves",
values: [string[], string[]]
): string;
encodeFunctionData(
functionFragment: "swapIn",
values: [string, BytesLike, string, string, BigNumberish, BigNumberish]
): string;
encodeFunctionData(
functionFragment: "swapOut",
values: [string, BytesLike, string, string, BigNumberish, BigNumberish]
): string;
decodeFunctionResult(
functionFragment: "addExchangeProvider",
data: BytesLike
): Result;
decodeFunctionResult(
functionFragment: "burnStableTokens",
data: BytesLike
): Result;
decodeFunctionResult(
functionFragment: "configureTradingLimit",
data: BytesLike
): Result;
decodeFunctionResult(
functionFragment: "exchangeProviders",
data: BytesLike
): Result;
decodeFunctionResult(
functionFragment: "getAmountIn",
data: BytesLike
): Result;
decodeFunctionResult(
functionFragment: "getAmountOut",
data: BytesLike
): Result;
decodeFunctionResult(
functionFragment: "getExchangeProviders",
data: BytesLike
): Result;
decodeFunctionResult(functionFragment: "initialize", data: BytesLike): Result;
decodeFunctionResult(
functionFragment: "isExchangeProvider",
data: BytesLike
): Result;
decodeFunctionResult(
functionFragment: "removeExchangeProvider",
data: BytesLike
): Result;
decodeFunctionResult(
functionFragment: "setReserves",
data: BytesLike
): Result;
decodeFunctionResult(functionFragment: "swapIn", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "swapOut", data: BytesLike): Result;
events: {
"Swap(address,bytes32,address,address,address,uint256,uint256)": EventFragment;
"TradingLimitConfigured(bytes32,address,(uint32,uint32,int48,int48,int48,uint8))": EventFragment;
};
getEvent(nameOrSignatureOrTopic: "Swap"): EventFragment;
getEvent(nameOrSignatureOrTopic: "TradingLimitConfigured"): EventFragment;
}
export interface SwapEventObject {
exchangeProvider: string;
exchangeId: string;
trader: string;
tokenIn: string;
tokenOut: string;
amountIn: BigNumber;
amountOut: BigNumber;
}
export type SwapEvent = TypedEvent<
[string, string, string, string, string, BigNumber, BigNumber],
SwapEventObject
>;
export type SwapEventFilter = TypedEventFilter<SwapEvent>;
export interface TradingLimitConfiguredEventObject {
exchangeId: string;
token: string;
config: ITradingLimits.ConfigStructOutput;
}
export type TradingLimitConfiguredEvent = TypedEvent<
[string, string, ITradingLimits.ConfigStructOutput],
TradingLimitConfiguredEventObject
>;
export type TradingLimitConfiguredEventFilter =
TypedEventFilter<TradingLimitConfiguredEvent>;
export interface IBroker extends BaseContract {
connect(signerOrProvider: Signer | Provider | string): this;
attach(addressOrName: string): this;
deployed(): Promise<this>;
interface: IBrokerInterface;
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: {
addExchangeProvider(
exchangeProvider: string,
reserve: string,
overrides?: Overrides & { from?: string }
): Promise<ContractTransaction>;
burnStableTokens(
token: string,
amount: BigNumberish,
overrides?: Overrides & { from?: string }
): Promise<ContractTransaction>;
configureTradingLimit(
exchangeId: BytesLike,
token: string,
config: ITradingLimits.ConfigStruct,
overrides?: Overrides & { from?: string }
): Promise<ContractTransaction>;
exchangeProviders(
index: BigNumberish,
overrides?: CallOverrides
): Promise<[string] & { exchangeProvider: string }>;
getAmountIn(
exchangeProvider: string,
exchangeId: BytesLike,
tokenIn: string,
tokenOut: string,
amountOut: BigNumberish,
overrides?: CallOverrides
): Promise<[BigNumber] & { amountIn: BigNumber }>;
getAmountOut(
exchangeProvider: string,
exchangeId: BytesLike,
tokenIn: string,
tokenOut: string,
amountIn: BigNumberish,
overrides?: CallOverrides
): Promise<[BigNumber] & { amountOut: BigNumber }>;
getExchangeProviders(overrides?: CallOverrides): Promise<[string[]]>;
initialize(
_exchangeProviders: string[],
_reserves: string[],
overrides?: Overrides & { from?: string }
): Promise<ContractTransaction>;
isExchangeProvider(
exchangeProvider: string,
overrides?: CallOverrides
): Promise<[boolean]>;
removeExchangeProvider(
exchangeProvider: string,
index: BigNumberish,
overrides?: Overrides & { from?: string }
): Promise<ContractTransaction>;
setReserves(
_exchangeProviders: string[],
_reserves: string[],
overrides?: Overrides & { from?: string }
): Promise<ContractTransaction>;
swapIn(
exchangeProvider: string,
exchangeId: BytesLike,
tokenIn: string,
tokenOut: string,
amountIn: BigNumberish,
amountOutMin: BigNumberish,
overrides?: Overrides & { from?: string }
): Promise<ContractTransaction>;
swapOut(
exchangeProvider: string,
exchangeId: BytesLike,
tokenIn: string,
tokenOut: string,
amountOut: BigNumberish,
amountInMax: BigNumberish,
overrides?: Overrides & { from?: string }
): Promise<ContractTransaction>;
};
addExchangeProvider(
exchangeProvider: string,
reserve: string,
overrides?: Overrides & { from?: string }
): Promise<ContractTransaction>;
burnStableTokens(
token: string,
amount: BigNumberish,
overrides?: Overrides & { from?: string }
): Promise<ContractTransaction>;
configureTradingLimit(
exchangeId: BytesLike,
token: string,
config: ITradingLimits.ConfigStruct,
overrides?: Overrides & { from?: string }
): Promise<ContractTransaction>;
exchangeProviders(
index: BigNumberish,
overrides?: CallOverrides
): Promise<string>;
getAmountIn(
exchangeProvider: string,
exchangeId: BytesLike,
tokenIn: string,
tokenOut: string,
amountOut: BigNumberish,
overrides?: CallOverrides
): Promise<BigNumber>;
getAmountOut(
exchangeProvider: string,
exchangeId: BytesLike,
tokenIn: string,
tokenOut: string,
amountIn: BigNumberish,
overrides?: CallOverrides
): Promise<BigNumber>;
getExchangeProviders(overrides?: CallOverrides): Promise<string[]>;
initialize(
_exchangeProviders: string[],
_reserves: string[],
overrides?: Overrides & { from?: string }
): Promise<ContractTransaction>;
isExchangeProvider(
exchangeProvider: string,
overrides?: CallOverrides
): Promise<boolean>;
removeExchangeProvider(
exchangeProvider: string,
index: BigNumberish,
overrides?: Overrides & { from?: string }
): Promise<ContractTransaction>;
setReserves(
_exchangeProviders: string[],
_reserves: string[],
overrides?: Overrides & { from?: string }
): Promise<ContractTransaction>;
swapIn(
exchangeProvider: string,
exchangeId: BytesLike,
tokenIn: string,
tokenOut: string,
amountIn: BigNumberish,
amountOutMin: BigNumberish,
overrides?: Overrides & { from?: string }
): Promise<ContractTransaction>;
swapOut(
exchangeProvider: string,
exchangeId: BytesLike,
tokenIn: string,
tokenOut: string,
amountOut: BigNumberish,
amountInMax: BigNumberish,
overrides?: Overrides & { from?: string }
): Promise<ContractTransaction>;
callStatic: {
addExchangeProvider(
exchangeProvider: string,
reserve: string,
overrides?: CallOverrides
): Promise<BigNumber>;
burnStableTokens(
token: string,
amount: BigNumberish,
overrides?: CallOverrides
): Promise<boolean>;
configureTradingLimit(
exchangeId: BytesLike,
token: string,
config: ITradingLimits.ConfigStruct,
overrides?: CallOverrides
): Promise<void>;
exchangeProviders(
index: BigNumberish,
overrides?: CallOverrides
): Promise<string>;
getAmountIn(
exchangeProvider: string,
exchangeId: BytesLike,
tokenIn: string,
tokenOut: string,
amountOut: BigNumberish,
overrides?: CallOverrides
): Promise<BigNumber>;
getAmountOut(
exchangeProvider: string,
exchangeId: BytesLike,
tokenIn: string,
tokenOut: string,
amountIn: BigNumberish,
overrides?: CallOverrides
): Promise<BigNumber>;
getExchangeProviders(overrides?: CallOverrides): Promise<string[]>;
initialize(
_exchangeProviders: string[],
_reserves: string[],
overrides?: CallOverrides
): Promise<void>;
isExchangeProvider(
exchangeProvider: string,
overrides?: CallOverrides
): Promise<boolean>;
removeExchangeProvider(
exchangeProvider: string,
index: BigNumberish,
overrides?: CallOverrides
): Promise<void>;
setReserves(
_exchangeProviders: string[],
_reserves: string[],
overrides?: CallOverrides
): Promise<void>;
swapIn(
exchangeProvider: string,
exchangeId: BytesLike,
tokenIn: string,
tokenOut: string,
amountIn: BigNumberish,
amountOutMin: BigNumberish,
overrides?: CallOverrides
): Promise<BigNumber>;
swapOut(
exchangeProvider: string,
exchangeId: BytesLike,
tokenIn: string,
tokenOut: string,
amountOut: BigNumberish,
amountInMax: BigNumberish,
overrides?: CallOverrides
): Promise<BigNumber>;
};
filters: {
"Swap(address,bytes32,address,address,address,uint256,uint256)"(
exchangeProvider?: null,
exchangeId?: BytesLike | null,
trader?: string | null,
tokenIn?: string | null,
tokenOut?: null,
amountIn?: null,
amountOut?: null
): SwapEventFilter;
Swap(
exchangeProvider?: null,
exchangeId?: BytesLike | null,
trader?: string | null,
tokenIn?: string | null,
tokenOut?: null,
amountIn?: null,
amountOut?: null
): SwapEventFilter;
"TradingLimitConfigured(bytes32,address,(uint32,uint32,int48,int48,int48,uint8))"(
exchangeId?: null,
token?: null,
config?: null
): TradingLimitConfiguredEventFilter;
TradingLimitConfigured(
exchangeId?: null,
token?: null,
config?: null
): TradingLimitConfiguredEventFilter;
};
estimateGas: {
addExchangeProvider(
exchangeProvider: string,
reserve: string,
overrides?: Overrides & { from?: string }
): Promise<BigNumber>;
burnStableTokens(
token: string,
amount: BigNumberish,
overrides?: Overrides & { from?: string }
): Promise<BigNumber>;
configureTradingLimit(
exchangeId: BytesLike,
token: string,
config: ITradingLimits.ConfigStruct,
overrides?: Overrides & { from?: string }
): Promise<BigNumber>;
exchangeProviders(
index: BigNumberish,
overrides?: CallOverrides
): Promise<BigNumber>;
getAmountIn(
exchangeProvider: string,
exchangeId: BytesLike,
tokenIn: string,
tokenOut: string,
amountOut: BigNumberish,
overrides?: CallOverrides
): Promise<BigNumber>;
getAmountOut(
exchangeProvider: string,
exchangeId: BytesLike,
tokenIn: string,
tokenOut: string,
amountIn: BigNumberish,
overrides?: CallOverrides
): Promise<BigNumber>;
getExchangeProviders(overrides?: CallOverrides): Promise<BigNumber>;
initialize(
_exchangeProviders: string[],
_reserves: string[],
overrides?: Overrides & { from?: string }
): Promise<BigNumber>;
isExchangeProvider(
exchangeProvider: string,
overrides?: CallOverrides
): Promise<BigNumber>;
removeExchangeProvider(
exchangeProvider: string,
index: BigNumberish,
overrides?: Overrides & { from?: string }
): Promise<BigNumber>;
setReserves(
_exchangeProviders: string[],
_reserves: string[],
overrides?: Overrides & { from?: string }
): Promise<BigNumber>;
swapIn(
exchangeProvider: string,
exchangeId: BytesLike,
tokenIn: string,
tokenOut: string,
amountIn: BigNumberish,
amountOutMin: BigNumberish,
overrides?: Overrides & { from?: string }
): Promise<BigNumber>;
swapOut(
exchangeProvider: string,
exchangeId: BytesLike,
tokenIn: string,
tokenOut: string,
amountOut: BigNumberish,
amountInMax: BigNumberish,
overrides?: Overrides & { from?: string }
): Promise<BigNumber>;
};
populateTransaction: {
addExchangeProvider(
exchangeProvider: string,
reserve: string,
overrides?: Overrides & { from?: string }
): Promise<PopulatedTransaction>;
burnStableTokens(
token: string,
amount: BigNumberish,
overrides?: Overrides & { from?: string }
): Promise<PopulatedTransaction>;
configureTradingLimit(
exchangeId: BytesLike,
token: string,
config: ITradingLimits.ConfigStruct,
overrides?: Overrides & { from?: string }
): Promise<PopulatedTransaction>;
exchangeProviders(
index: BigNumberish,
overrides?: CallOverrides
): Promise<PopulatedTransaction>;
getAmountIn(
exchangeProvider: string,
exchangeId: BytesLike,
tokenIn: string,
tokenOut: string,
amountOut: BigNumberish,
overrides?: CallOverrides
): Promise<PopulatedTransaction>;
getAmountOut(
exchangeProvider: string,
exchangeId: BytesLike,
tokenIn: string,
tokenOut: string,
amountIn: BigNumberish,
overrides?: CallOverrides
): Promise<PopulatedTransaction>;
getExchangeProviders(
overrides?: CallOverrides
): Promise<PopulatedTransaction>;
initialize(
_exchangeProviders: string[],
_reserves: string[],
overrides?: Overrides & { from?: string }
): Promise<PopulatedTransaction>;
isExchangeProvider(
exchangeProvider: string,
overrides?: CallOverrides
): Promise<PopulatedTransaction>;
removeExchangeProvider(
exchangeProvider: string,
index: BigNumberish,
overrides?: Overrides & { from?: string }
): Promise<PopulatedTransaction>;
setReserves(
_exchangeProviders: string[],
_reserves: string[],
overrides?: Overrides & { from?: string }
): Promise<PopulatedTransaction>;
swapIn(
exchangeProvider: string,
exchangeId: BytesLike,
tokenIn: string,
tokenOut: string,
amountIn: BigNumberish,
amountOutMin: BigNumberish,
overrides?: Overrides & { from?: string }
): Promise<PopulatedTransaction>;
swapOut(
exchangeProvider: string,
exchangeId: BytesLike,
tokenIn: string,
tokenOut: string,
amountOut: BigNumberish,
amountInMax: BigNumberish,
overrides?: Overrides & { from?: string }
): Promise<PopulatedTransaction>;
};
}