///
import type BN from "bn.js";
import type { ContractOptions } from "web3-eth-contract";
import type { EventLog } from "web3-core";
import type { EventEmitter } from "events";
import type { Callback, PayableTransactionObject, NonPayableTransactionObject, BlockType, ContractEventLog, BaseContract } from "./types";
export interface EventOptions {
filter?: object;
fromBlock?: BlockType;
topics?: string[];
}
export type CancelDecreasePosition = ContractEventLog<{
account: string;
path: string[];
indexToken: string;
collateralDelta: string;
sizeDelta: string;
isLong: boolean;
receiver: string;
acceptablePrice: string;
minOut: string;
executionFee: string;
blockGap: string;
timeGap: string;
0: string;
1: string[];
2: string;
3: string;
4: string;
5: boolean;
6: string;
7: string;
8: string;
9: string;
10: string;
11: string;
}>;
export type CancelIncreasePosition = ContractEventLog<{
account: string;
path: string[];
indexToken: string;
amountIn: string;
minOut: string;
sizeDelta: string;
isLong: boolean;
acceptablePrice: string;
executionFee: string;
blockGap: string;
timeGap: string;
0: string;
1: string[];
2: string;
3: string;
4: string;
5: string;
6: boolean;
7: string;
8: string;
9: string;
10: string;
}>;
export type CreateDecreasePosition = ContractEventLog<{
account: string;
path: string[];
indexToken: string;
collateralDelta: string;
sizeDelta: string;
isLong: boolean;
receiver: string;
acceptablePrice: string;
minOut: string;
executionFee: string;
index: string;
queueIndex: string;
blockNumber: string;
blockTime: string;
0: string;
1: string[];
2: string;
3: string;
4: string;
5: boolean;
6: string;
7: string;
8: string;
9: string;
10: string;
11: string;
12: string;
13: string;
}>;
export type CreateIncreasePosition = ContractEventLog<{
account: string;
path: string[];
indexToken: string;
amountIn: string;
minOut: string;
sizeDelta: string;
isLong: boolean;
acceptablePrice: string;
executionFee: string;
index: string;
queueIndex: string;
blockNumber: string;
blockTime: string;
gasPrice: string;
0: string;
1: string[];
2: string;
3: string;
4: string;
5: string;
6: boolean;
7: string;
8: string;
9: string;
10: string;
11: string;
12: string;
13: string;
}>;
export type ExecuteDecreasePosition = ContractEventLog<{
account: string;
path: string[];
indexToken: string;
collateralDelta: string;
sizeDelta: string;
isLong: boolean;
receiver: string;
acceptablePrice: string;
minOut: string;
executionFee: string;
blockGap: string;
timeGap: string;
0: string;
1: string[];
2: string;
3: string;
4: string;
5: boolean;
6: string;
7: string;
8: string;
9: string;
10: string;
11: string;
}>;
export type ExecuteIncreasePosition = ContractEventLog<{
account: string;
path: string[];
indexToken: string;
amountIn: string;
minOut: string;
sizeDelta: string;
isLong: boolean;
acceptablePrice: string;
executionFee: string;
blockGap: string;
timeGap: string;
0: string;
1: string[];
2: string;
3: string;
4: string;
5: string;
6: boolean;
7: string;
8: string;
9: string;
10: string;
}>;
export interface IGmxPositionRouter extends BaseContract {
constructor(jsonInterface: any[], address?: string, options?: ContractOptions): IGmxPositionRouter;
clone(): IGmxPositionRouter;
methods: {
admin(): NonPayableTransactionObject;
cancelDecreasePosition(_key: string | number[], _executionFeeReceiver: string): NonPayableTransactionObject;
cancelIncreasePosition(_key: string | number[], _executionFeeReceiver: string): NonPayableTransactionObject;
createDecreasePosition(_path: string[], _indexToken: string, _collateralDelta: number | string | BN, _sizeDelta: number | string | BN, _isLong: boolean, _receiver: string, _acceptablePrice: number | string | BN, _minOut: number | string | BN, _executionFee: number | string | BN, _withdrawETH: boolean, _callbackTarget: string): PayableTransactionObject;
createIncreasePosition(_path: string[], _indexToken: string, _amountIn: number | string | BN, _minOut: number | string | BN, _sizeDelta: number | string | BN, _isLong: boolean, _acceptablePrice: number | string | BN, _executionFee: number | string | BN, _referralCode: string | number[], _callbackTarget: string): PayableTransactionObject;
createIncreasePositionETH(_path: string[], _indexToken: string, _minOut: number | string | BN, _sizeDelta: number | string | BN, _isLong: boolean, _acceptablePrice: number | string | BN, _executionFee: number | string | BN, _referralCode: string | number[], _callbackTarget: string): PayableTransactionObject;
decreasePositionRequestKeysStart(): NonPayableTransactionObject;
executeDecreasePosition(_key: string | number[], _executionFeeReceiver: string): NonPayableTransactionObject;
executeDecreasePositions(_count: number | string | BN, _executionFeeReceiver: string): NonPayableTransactionObject;
executeIncreasePosition(_key: string | number[], _executionFeeReceiver: string): NonPayableTransactionObject;
executeIncreasePositions(_count: number | string | BN, _executionFeeReceiver: string): NonPayableTransactionObject;
getRequestKey(_account: string, _index: number | string | BN): NonPayableTransactionObject;
increasePositionRequestKeysStart(): NonPayableTransactionObject;
maxGlobalLongSizes(token: string): NonPayableTransactionObject;
maxGlobalShortSizes(token: string): NonPayableTransactionObject;
minExecutionFee(): NonPayableTransactionObject;
minTimeDelayPublic(): NonPayableTransactionObject;
setDelayValues(_minBlockDelayKeeper: number | string | BN, _minTimeDelayPublic: number | string | BN, _maxTimeDelay: number | string | BN): NonPayableTransactionObject;
};
events: {
CancelDecreasePosition(cb?: Callback): EventEmitter;
CancelDecreasePosition(options?: EventOptions, cb?: Callback): EventEmitter;
CancelIncreasePosition(cb?: Callback): EventEmitter;
CancelIncreasePosition(options?: EventOptions, cb?: Callback): EventEmitter;
CreateDecreasePosition(cb?: Callback): EventEmitter;
CreateDecreasePosition(options?: EventOptions, cb?: Callback): EventEmitter;
CreateIncreasePosition(cb?: Callback): EventEmitter;
CreateIncreasePosition(options?: EventOptions, cb?: Callback): EventEmitter;
ExecuteDecreasePosition(cb?: Callback): EventEmitter;
ExecuteDecreasePosition(options?: EventOptions, cb?: Callback): EventEmitter;
ExecuteIncreasePosition(cb?: Callback): EventEmitter;
ExecuteIncreasePosition(options?: EventOptions, cb?: Callback): EventEmitter;
allEvents(options?: EventOptions, cb?: Callback): EventEmitter;
};
once(event: "CancelDecreasePosition", cb: Callback): void;
once(event: "CancelDecreasePosition", options: EventOptions, cb: Callback): void;
once(event: "CancelIncreasePosition", cb: Callback): void;
once(event: "CancelIncreasePosition", options: EventOptions, cb: Callback): void;
once(event: "CreateDecreasePosition", cb: Callback): void;
once(event: "CreateDecreasePosition", options: EventOptions, cb: Callback): void;
once(event: "CreateIncreasePosition", cb: Callback): void;
once(event: "CreateIncreasePosition", options: EventOptions, cb: Callback): void;
once(event: "ExecuteDecreasePosition", cb: Callback): void;
once(event: "ExecuteDecreasePosition", options: EventOptions, cb: Callback): void;
once(event: "ExecuteIncreasePosition", cb: Callback): void;
once(event: "ExecuteIncreasePosition", options: EventOptions, cb: Callback): void;
}