Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

@bancor/carbon-sdk

Package Overview
Dependencies
Maintainers
2
Versions
104
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@bancor/carbon-sdk - npm Package Compare versions

Comparing version 0.0.85-DEV to 0.0.86-DEV

614

dist/abis/types/CarbonController.d.ts
import type { BaseContract, BigNumber, BigNumberish, BytesLike, CallOverrides, ContractTransaction, Overrides, 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";
import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from "./common";
export type OrderStruct = {
y: PromiseOrValue<BigNumberish>;
z: PromiseOrValue<BigNumberish>;
A: PromiseOrValue<BigNumberish>;
B: PromiseOrValue<BigNumberish>;
y: BigNumberish;
z: BigNumberish;
A: BigNumberish;
B: BigNumberish;
};

@@ -18,4 +18,4 @@ export type OrderStructOutput = [BigNumber, BigNumber, BigNumber, BigNumber] & {

export type TradeActionStruct = {
strategyId: PromiseOrValue<BigNumberish>;
amount: PromiseOrValue<BigNumberish>;
strategyId: BigNumberish;
amount: BigNumberish;
};

@@ -27,4 +27,4 @@ export type TradeActionStructOutput = [BigNumber, BigNumber] & {

export type PairStruct = {
id: PromiseOrValue<BigNumberish>;
tokens: [PromiseOrValue<string>, PromiseOrValue<string>];
id: BigNumberish;
tokens: [string, string];
};

@@ -36,5 +36,5 @@ export type PairStructOutput = [BigNumber, [string, string]] & {

export type StrategyStruct = {
id: PromiseOrValue<BigNumberish>;
owner: PromiseOrValue<string>;
tokens: [PromiseOrValue<string>, PromiseOrValue<string>];
id: BigNumberish;
owner: string;
tokens: [string, string];
orders: [OrderStruct, OrderStruct];

@@ -107,77 +107,41 @@ };

encodeFunctionData(functionFragment: "implementation", values?: undefined): string;
encodeFunctionData(functionFragment: "upgradeTo", values: [PromiseOrValue<string>]): string;
encodeFunctionData(functionFragment: "upgradeToAndCall", values: [PromiseOrValue<string>, PromiseOrValue<BytesLike>]): string;
encodeFunctionData(functionFragment: "upgradeTo", values: [string]): string;
encodeFunctionData(functionFragment: "upgradeToAndCall", values: [string, BytesLike]): string;
encodeFunctionData(functionFragment: "DEFAULT_ADMIN_ROLE", values?: undefined): string;
encodeFunctionData(functionFragment: "accumulatedFees", values: [PromiseOrValue<string>]): string;
encodeFunctionData(functionFragment: "calculateTradeSourceAmount", values: [
PromiseOrValue<string>,
PromiseOrValue<string>,
TradeActionStruct[]
]): string;
encodeFunctionData(functionFragment: "calculateTradeTargetAmount", values: [
PromiseOrValue<string>,
PromiseOrValue<string>,
TradeActionStruct[]
]): string;
encodeFunctionData(functionFragment: "accumulatedFees", values: [string]): string;
encodeFunctionData(functionFragment: "calculateTradeSourceAmount", values: [string, string, TradeActionStruct[]]): string;
encodeFunctionData(functionFragment: "calculateTradeTargetAmount", values: [string, string, TradeActionStruct[]]): string;
encodeFunctionData(functionFragment: "controllerType", values?: undefined): string;
encodeFunctionData(functionFragment: "createPair", values: [PromiseOrValue<string>, PromiseOrValue<string>]): string;
encodeFunctionData(functionFragment: "createStrategy", values: [
PromiseOrValue<string>,
PromiseOrValue<string>,
[
OrderStruct,
OrderStruct
]
]): string;
encodeFunctionData(functionFragment: "deleteStrategy", values: [PromiseOrValue<BigNumberish>]): string;
encodeFunctionData(functionFragment: "getRoleAdmin", values: [PromiseOrValue<BytesLike>]): string;
encodeFunctionData(functionFragment: "getRoleMember", values: [PromiseOrValue<BytesLike>, PromiseOrValue<BigNumberish>]): string;
encodeFunctionData(functionFragment: "getRoleMemberCount", values: [PromiseOrValue<BytesLike>]): string;
encodeFunctionData(functionFragment: "grantRole", values: [PromiseOrValue<BytesLike>, PromiseOrValue<string>]): string;
encodeFunctionData(functionFragment: "hasRole", values: [PromiseOrValue<BytesLike>, PromiseOrValue<string>]): string;
encodeFunctionData(functionFragment: "createPair", values: [string, string]): string;
encodeFunctionData(functionFragment: "createStrategy", values: [string, string, [OrderStruct, OrderStruct]]): string;
encodeFunctionData(functionFragment: "deleteStrategy", values: [BigNumberish]): string;
encodeFunctionData(functionFragment: "getRoleAdmin", values: [BytesLike]): string;
encodeFunctionData(functionFragment: "getRoleMember", values: [BytesLike, BigNumberish]): string;
encodeFunctionData(functionFragment: "getRoleMemberCount", values: [BytesLike]): string;
encodeFunctionData(functionFragment: "grantRole", values: [BytesLike, string]): string;
encodeFunctionData(functionFragment: "hasRole", values: [BytesLike, string]): string;
encodeFunctionData(functionFragment: "initialize", values?: undefined): string;
encodeFunctionData(functionFragment: "pair", values: [PromiseOrValue<string>, PromiseOrValue<string>]): string;
encodeFunctionData(functionFragment: "pairTradingFeePPM", values: [PromiseOrValue<string>, PromiseOrValue<string>]): string;
encodeFunctionData(functionFragment: "pair", values: [string, string]): string;
encodeFunctionData(functionFragment: "pairTradingFeePPM", values: [string, string]): string;
encodeFunctionData(functionFragment: "pairs", values?: undefined): string;
encodeFunctionData(functionFragment: "pause", values?: undefined): string;
encodeFunctionData(functionFragment: "paused", values?: undefined): string;
encodeFunctionData(functionFragment: "postUpgrade", values: [PromiseOrValue<BytesLike>]): string;
encodeFunctionData(functionFragment: "renounceRole", values: [PromiseOrValue<BytesLike>, PromiseOrValue<string>]): string;
encodeFunctionData(functionFragment: "revokeRole", values: [PromiseOrValue<BytesLike>, PromiseOrValue<string>]): string;
encodeFunctionData(functionFragment: "postUpgrade", values: [BytesLike]): string;
encodeFunctionData(functionFragment: "renounceRole", values: [BytesLike, string]): string;
encodeFunctionData(functionFragment: "revokeRole", values: [BytesLike, string]): string;
encodeFunctionData(functionFragment: "roleAdmin", values?: undefined): string;
encodeFunctionData(functionFragment: "roleEmergencyStopper", values?: undefined): string;
encodeFunctionData(functionFragment: "roleFeesManager", values?: undefined): string;
encodeFunctionData(functionFragment: "setPairTradingFeePPM", values: [
PromiseOrValue<string>,
PromiseOrValue<string>,
PromiseOrValue<BigNumberish>
]): string;
encodeFunctionData(functionFragment: "setTradingFeePPM", values: [PromiseOrValue<BigNumberish>]): string;
encodeFunctionData(functionFragment: "strategiesByPair", values: [
PromiseOrValue<string>,
PromiseOrValue<string>,
PromiseOrValue<BigNumberish>,
PromiseOrValue<BigNumberish>
]): string;
encodeFunctionData(functionFragment: "strategiesByPairCount", values: [PromiseOrValue<string>, PromiseOrValue<string>]): string;
encodeFunctionData(functionFragment: "strategy", values: [PromiseOrValue<BigNumberish>]): string;
encodeFunctionData(functionFragment: "supportsInterface", values: [PromiseOrValue<BytesLike>]): string;
encodeFunctionData(functionFragment: "tradeBySourceAmount", values: [
PromiseOrValue<string>,
PromiseOrValue<string>,
TradeActionStruct[],
PromiseOrValue<BigNumberish>,
PromiseOrValue<BigNumberish>
]): string;
encodeFunctionData(functionFragment: "tradeByTargetAmount", values: [
PromiseOrValue<string>,
PromiseOrValue<string>,
TradeActionStruct[],
PromiseOrValue<BigNumberish>,
PromiseOrValue<BigNumberish>
]): string;
encodeFunctionData(functionFragment: "setPairTradingFeePPM", values: [string, string, BigNumberish]): string;
encodeFunctionData(functionFragment: "setTradingFeePPM", values: [BigNumberish]): string;
encodeFunctionData(functionFragment: "strategiesByPair", values: [string, string, BigNumberish, BigNumberish]): string;
encodeFunctionData(functionFragment: "strategiesByPairCount", values: [string, string]): string;
encodeFunctionData(functionFragment: "strategy", values: [BigNumberish]): string;
encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string;
encodeFunctionData(functionFragment: "tradeBySourceAmount", values: [string, string, TradeActionStruct[], BigNumberish, BigNumberish]): string;
encodeFunctionData(functionFragment: "tradeByTargetAmount", values: [string, string, TradeActionStruct[], BigNumberish, BigNumberish]): string;
encodeFunctionData(functionFragment: "tradingFeePPM", values?: undefined): string;
encodeFunctionData(functionFragment: "unpause", values?: undefined): string;
encodeFunctionData(functionFragment: "updateStrategy", values: [
PromiseOrValue<BigNumberish>,
BigNumberish,
[

@@ -193,7 +157,3 @@ OrderStruct,

encodeFunctionData(functionFragment: "version", values?: undefined): string;
encodeFunctionData(functionFragment: "withdrawFees", values: [
PromiseOrValue<string>,
PromiseOrValue<BigNumberish>,
PromiseOrValue<string>
]): string;
encodeFunctionData(functionFragment: "withdrawFees", values: [string, BigNumberish, string]): string;
decodeFunctionResult(functionFragment: "admin", data: BytesLike): Result;

@@ -253,5 +213,5 @@ decodeFunctionResult(functionFragment: "implementation", data: BytesLike): Result;

"RoleRevoked(bytes32,address,address)": EventFragment;
"StrategyCreated(uint256,address,address,address,tuple,tuple)": EventFragment;
"StrategyDeleted(uint256,address,address,address,tuple,tuple)": EventFragment;
"StrategyUpdated(uint256,address,address,tuple,tuple,uint8)": EventFragment;
"StrategyCreated(uint256,address,address,address,(uint128,uint128,uint64,uint64),(uint128,uint128,uint64,uint64))": EventFragment;
"StrategyDeleted(uint256,address,address,address,(uint128,uint128,uint64,uint64),(uint128,uint128,uint64,uint64))": EventFragment;
"StrategyUpdated(uint256,address,address,(uint128,uint128,uint64,uint64),(uint128,uint128,uint64,uint64),uint8)": EventFragment;
"TokensTraded(address,address,address,uint256,uint256,uint128,bool)": EventFragment;

@@ -480,52 +440,52 @@ "TradingFeePPMUpdated(uint32,uint32)": EventFragment;

admin(overrides?: Overrides & {
from?: PromiseOrValue<string>;
from?: string;
}): Promise<ContractTransaction>;
implementation(overrides?: Overrides & {
from?: PromiseOrValue<string>;
from?: string;
}): Promise<ContractTransaction>;
upgradeTo(newImplementation: PromiseOrValue<string>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
upgradeTo(newImplementation: string, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
upgradeToAndCall(newImplementation: PromiseOrValue<string>, data: PromiseOrValue<BytesLike>, overrides?: PayableOverrides & {
from?: PromiseOrValue<string>;
upgradeToAndCall(newImplementation: string, data: BytesLike, overrides?: PayableOverrides & {
from?: string;
}): Promise<ContractTransaction>;
DEFAULT_ADMIN_ROLE(overrides?: CallOverrides): Promise<[string]>;
accumulatedFees(token: PromiseOrValue<string>, overrides?: CallOverrides): Promise<[BigNumber]>;
calculateTradeSourceAmount(sourceToken: PromiseOrValue<string>, targetToken: PromiseOrValue<string>, tradeActions: TradeActionStruct[], overrides?: CallOverrides): Promise<[BigNumber]>;
calculateTradeTargetAmount(sourceToken: PromiseOrValue<string>, targetToken: PromiseOrValue<string>, tradeActions: TradeActionStruct[], overrides?: CallOverrides): Promise<[BigNumber]>;
accumulatedFees(token: string, overrides?: CallOverrides): Promise<[BigNumber]>;
calculateTradeSourceAmount(sourceToken: string, targetToken: string, tradeActions: TradeActionStruct[], overrides?: CallOverrides): Promise<[BigNumber]>;
calculateTradeTargetAmount(sourceToken: string, targetToken: string, tradeActions: TradeActionStruct[], overrides?: CallOverrides): Promise<[BigNumber]>;
controllerType(overrides?: CallOverrides): Promise<[number]>;
createPair(token0: PromiseOrValue<string>, token1: PromiseOrValue<string>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
createPair(token0: string, token1: string, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
createStrategy(token0: PromiseOrValue<string>, token1: PromiseOrValue<string>, orders: [OrderStruct, OrderStruct], overrides?: PayableOverrides & {
from?: PromiseOrValue<string>;
createStrategy(token0: string, token1: string, orders: [OrderStruct, OrderStruct], overrides?: PayableOverrides & {
from?: string;
}): Promise<ContractTransaction>;
deleteStrategy(strategyId: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
deleteStrategy(strategyId: BigNumberish, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
getRoleAdmin(role: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<[string]>;
getRoleMember(role: PromiseOrValue<BytesLike>, index: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[string]>;
getRoleMemberCount(role: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<[BigNumber]>;
grantRole(role: PromiseOrValue<BytesLike>, account: PromiseOrValue<string>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
getRoleAdmin(role: BytesLike, overrides?: CallOverrides): Promise<[string]>;
getRoleMember(role: BytesLike, index: BigNumberish, overrides?: CallOverrides): Promise<[string]>;
getRoleMemberCount(role: BytesLike, overrides?: CallOverrides): Promise<[BigNumber]>;
grantRole(role: BytesLike, account: string, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
hasRole(role: PromiseOrValue<BytesLike>, account: PromiseOrValue<string>, overrides?: CallOverrides): Promise<[boolean]>;
hasRole(role: BytesLike, account: string, overrides?: CallOverrides): Promise<[boolean]>;
initialize(overrides?: Overrides & {
from?: PromiseOrValue<string>;
from?: string;
}): Promise<ContractTransaction>;
pair(token0: PromiseOrValue<string>, token1: PromiseOrValue<string>, overrides?: CallOverrides): Promise<[PairStructOutput]>;
pairTradingFeePPM(token0: PromiseOrValue<string>, token1: PromiseOrValue<string>, overrides?: CallOverrides): Promise<[number]>;
pair(token0: string, token1: string, overrides?: CallOverrides): Promise<[PairStructOutput]>;
pairTradingFeePPM(token0: string, token1: string, overrides?: CallOverrides): Promise<[number]>;
pairs(overrides?: CallOverrides): Promise<[[string, string][]]>;
pause(overrides?: Overrides & {
from?: PromiseOrValue<string>;
from?: string;
}): Promise<ContractTransaction>;
paused(overrides?: CallOverrides): Promise<[boolean]>;
postUpgrade(data: PromiseOrValue<BytesLike>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
postUpgrade(data: BytesLike, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
renounceRole(role: PromiseOrValue<BytesLike>, account: PromiseOrValue<string>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
renounceRole(role: BytesLike, account: string, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
revokeRole(role: PromiseOrValue<BytesLike>, account: PromiseOrValue<string>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
revokeRole(role: BytesLike, account: string, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;

@@ -535,81 +495,81 @@ roleAdmin(overrides?: CallOverrides): Promise<[string]>;

roleFeesManager(overrides?: CallOverrides): Promise<[string]>;
setPairTradingFeePPM(token0: PromiseOrValue<string>, token1: PromiseOrValue<string>, newPairTradingFeePPM: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
setPairTradingFeePPM(token0: string, token1: string, newPairTradingFeePPM: BigNumberish, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
setTradingFeePPM(newTradingFeePPM: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
setTradingFeePPM(newTradingFeePPM: BigNumberish, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
strategiesByPair(token0: PromiseOrValue<string>, token1: PromiseOrValue<string>, startIndex: PromiseOrValue<BigNumberish>, endIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[StrategyStructOutput[]]>;
strategiesByPairCount(token0: PromiseOrValue<string>, token1: PromiseOrValue<string>, overrides?: CallOverrides): Promise<[BigNumber]>;
strategy(id: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[StrategyStructOutput]>;
supportsInterface(interfaceId: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<[boolean]>;
tradeBySourceAmount(sourceToken: PromiseOrValue<string>, targetToken: PromiseOrValue<string>, tradeActions: TradeActionStruct[], deadline: PromiseOrValue<BigNumberish>, minReturn: PromiseOrValue<BigNumberish>, overrides?: PayableOverrides & {
from?: PromiseOrValue<string>;
strategiesByPair(token0: string, token1: string, startIndex: BigNumberish, endIndex: BigNumberish, overrides?: CallOverrides): Promise<[StrategyStructOutput[]]>;
strategiesByPairCount(token0: string, token1: string, overrides?: CallOverrides): Promise<[BigNumber]>;
strategy(id: BigNumberish, overrides?: CallOverrides): Promise<[StrategyStructOutput]>;
supportsInterface(interfaceId: BytesLike, overrides?: CallOverrides): Promise<[boolean]>;
tradeBySourceAmount(sourceToken: string, targetToken: string, tradeActions: TradeActionStruct[], deadline: BigNumberish, minReturn: BigNumberish, overrides?: PayableOverrides & {
from?: string;
}): Promise<ContractTransaction>;
tradeByTargetAmount(sourceToken: PromiseOrValue<string>, targetToken: PromiseOrValue<string>, tradeActions: TradeActionStruct[], deadline: PromiseOrValue<BigNumberish>, maxInput: PromiseOrValue<BigNumberish>, overrides?: PayableOverrides & {
from?: PromiseOrValue<string>;
tradeByTargetAmount(sourceToken: string, targetToken: string, tradeActions: TradeActionStruct[], deadline: BigNumberish, maxInput: BigNumberish, overrides?: PayableOverrides & {
from?: string;
}): Promise<ContractTransaction>;
tradingFeePPM(overrides?: CallOverrides): Promise<[number]>;
unpause(overrides?: Overrides & {
from?: PromiseOrValue<string>;
from?: string;
}): Promise<ContractTransaction>;
updateStrategy(strategyId: PromiseOrValue<BigNumberish>, currentOrders: [OrderStruct, OrderStruct], newOrders: [OrderStruct, OrderStruct], overrides?: PayableOverrides & {
from?: PromiseOrValue<string>;
updateStrategy(strategyId: BigNumberish, currentOrders: [OrderStruct, OrderStruct], newOrders: [OrderStruct, OrderStruct], overrides?: PayableOverrides & {
from?: string;
}): Promise<ContractTransaction>;
version(overrides?: CallOverrides): Promise<[number]>;
withdrawFees(token: PromiseOrValue<string>, amount: PromiseOrValue<BigNumberish>, recipient: PromiseOrValue<string>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
withdrawFees(token: string, amount: BigNumberish, recipient: string, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
};
admin(overrides?: Overrides & {
from?: PromiseOrValue<string>;
from?: string;
}): Promise<ContractTransaction>;
implementation(overrides?: Overrides & {
from?: PromiseOrValue<string>;
from?: string;
}): Promise<ContractTransaction>;
upgradeTo(newImplementation: PromiseOrValue<string>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
upgradeTo(newImplementation: string, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
upgradeToAndCall(newImplementation: PromiseOrValue<string>, data: PromiseOrValue<BytesLike>, overrides?: PayableOverrides & {
from?: PromiseOrValue<string>;
upgradeToAndCall(newImplementation: string, data: BytesLike, overrides?: PayableOverrides & {
from?: string;
}): Promise<ContractTransaction>;
DEFAULT_ADMIN_ROLE(overrides?: CallOverrides): Promise<string>;
accumulatedFees(token: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
calculateTradeSourceAmount(sourceToken: PromiseOrValue<string>, targetToken: PromiseOrValue<string>, tradeActions: TradeActionStruct[], overrides?: CallOverrides): Promise<BigNumber>;
calculateTradeTargetAmount(sourceToken: PromiseOrValue<string>, targetToken: PromiseOrValue<string>, tradeActions: TradeActionStruct[], overrides?: CallOverrides): Promise<BigNumber>;
accumulatedFees(token: string, overrides?: CallOverrides): Promise<BigNumber>;
calculateTradeSourceAmount(sourceToken: string, targetToken: string, tradeActions: TradeActionStruct[], overrides?: CallOverrides): Promise<BigNumber>;
calculateTradeTargetAmount(sourceToken: string, targetToken: string, tradeActions: TradeActionStruct[], overrides?: CallOverrides): Promise<BigNumber>;
controllerType(overrides?: CallOverrides): Promise<number>;
createPair(token0: PromiseOrValue<string>, token1: PromiseOrValue<string>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
createPair(token0: string, token1: string, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
createStrategy(token0: PromiseOrValue<string>, token1: PromiseOrValue<string>, orders: [OrderStruct, OrderStruct], overrides?: PayableOverrides & {
from?: PromiseOrValue<string>;
createStrategy(token0: string, token1: string, orders: [OrderStruct, OrderStruct], overrides?: PayableOverrides & {
from?: string;
}): Promise<ContractTransaction>;
deleteStrategy(strategyId: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
deleteStrategy(strategyId: BigNumberish, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
getRoleAdmin(role: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<string>;
getRoleMember(role: PromiseOrValue<BytesLike>, index: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<string>;
getRoleMemberCount(role: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<BigNumber>;
grantRole(role: PromiseOrValue<BytesLike>, account: PromiseOrValue<string>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
getRoleAdmin(role: BytesLike, overrides?: CallOverrides): Promise<string>;
getRoleMember(role: BytesLike, index: BigNumberish, overrides?: CallOverrides): Promise<string>;
getRoleMemberCount(role: BytesLike, overrides?: CallOverrides): Promise<BigNumber>;
grantRole(role: BytesLike, account: string, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
hasRole(role: PromiseOrValue<BytesLike>, account: PromiseOrValue<string>, overrides?: CallOverrides): Promise<boolean>;
hasRole(role: BytesLike, account: string, overrides?: CallOverrides): Promise<boolean>;
initialize(overrides?: Overrides & {
from?: PromiseOrValue<string>;
from?: string;
}): Promise<ContractTransaction>;
pair(token0: PromiseOrValue<string>, token1: PromiseOrValue<string>, overrides?: CallOverrides): Promise<PairStructOutput>;
pairTradingFeePPM(token0: PromiseOrValue<string>, token1: PromiseOrValue<string>, overrides?: CallOverrides): Promise<number>;
pair(token0: string, token1: string, overrides?: CallOverrides): Promise<PairStructOutput>;
pairTradingFeePPM(token0: string, token1: string, overrides?: CallOverrides): Promise<number>;
pairs(overrides?: CallOverrides): Promise<[string, string][]>;
pause(overrides?: Overrides & {
from?: PromiseOrValue<string>;
from?: string;
}): Promise<ContractTransaction>;
paused(overrides?: CallOverrides): Promise<boolean>;
postUpgrade(data: PromiseOrValue<BytesLike>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
postUpgrade(data: BytesLike, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
renounceRole(role: PromiseOrValue<BytesLike>, account: PromiseOrValue<string>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
renounceRole(role: BytesLike, account: string, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
revokeRole(role: PromiseOrValue<BytesLike>, account: PromiseOrValue<string>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
revokeRole(role: BytesLike, account: string, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;

@@ -619,28 +579,28 @@ roleAdmin(overrides?: CallOverrides): Promise<string>;

roleFeesManager(overrides?: CallOverrides): Promise<string>;
setPairTradingFeePPM(token0: PromiseOrValue<string>, token1: PromiseOrValue<string>, newPairTradingFeePPM: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
setPairTradingFeePPM(token0: string, token1: string, newPairTradingFeePPM: BigNumberish, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
setTradingFeePPM(newTradingFeePPM: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
setTradingFeePPM(newTradingFeePPM: BigNumberish, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
strategiesByPair(token0: PromiseOrValue<string>, token1: PromiseOrValue<string>, startIndex: PromiseOrValue<BigNumberish>, endIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<StrategyStructOutput[]>;
strategiesByPairCount(token0: PromiseOrValue<string>, token1: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
strategy(id: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<StrategyStructOutput>;
supportsInterface(interfaceId: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<boolean>;
tradeBySourceAmount(sourceToken: PromiseOrValue<string>, targetToken: PromiseOrValue<string>, tradeActions: TradeActionStruct[], deadline: PromiseOrValue<BigNumberish>, minReturn: PromiseOrValue<BigNumberish>, overrides?: PayableOverrides & {
from?: PromiseOrValue<string>;
strategiesByPair(token0: string, token1: string, startIndex: BigNumberish, endIndex: BigNumberish, overrides?: CallOverrides): Promise<StrategyStructOutput[]>;
strategiesByPairCount(token0: string, token1: string, overrides?: CallOverrides): Promise<BigNumber>;
strategy(id: BigNumberish, overrides?: CallOverrides): Promise<StrategyStructOutput>;
supportsInterface(interfaceId: BytesLike, overrides?: CallOverrides): Promise<boolean>;
tradeBySourceAmount(sourceToken: string, targetToken: string, tradeActions: TradeActionStruct[], deadline: BigNumberish, minReturn: BigNumberish, overrides?: PayableOverrides & {
from?: string;
}): Promise<ContractTransaction>;
tradeByTargetAmount(sourceToken: PromiseOrValue<string>, targetToken: PromiseOrValue<string>, tradeActions: TradeActionStruct[], deadline: PromiseOrValue<BigNumberish>, maxInput: PromiseOrValue<BigNumberish>, overrides?: PayableOverrides & {
from?: PromiseOrValue<string>;
tradeByTargetAmount(sourceToken: string, targetToken: string, tradeActions: TradeActionStruct[], deadline: BigNumberish, maxInput: BigNumberish, overrides?: PayableOverrides & {
from?: string;
}): Promise<ContractTransaction>;
tradingFeePPM(overrides?: CallOverrides): Promise<number>;
unpause(overrides?: Overrides & {
from?: PromiseOrValue<string>;
from?: string;
}): Promise<ContractTransaction>;
updateStrategy(strategyId: PromiseOrValue<BigNumberish>, currentOrders: [OrderStruct, OrderStruct], newOrders: [OrderStruct, OrderStruct], overrides?: PayableOverrides & {
from?: PromiseOrValue<string>;
updateStrategy(strategyId: BigNumberish, currentOrders: [OrderStruct, OrderStruct], newOrders: [OrderStruct, OrderStruct], overrides?: PayableOverrides & {
from?: string;
}): Promise<ContractTransaction>;
version(overrides?: CallOverrides): Promise<number>;
withdrawFees(token: PromiseOrValue<string>, amount: PromiseOrValue<BigNumberish>, recipient: PromiseOrValue<string>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
withdrawFees(token: string, amount: BigNumberish, recipient: string, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;

@@ -650,42 +610,42 @@ callStatic: {

implementation(overrides?: CallOverrides): Promise<string>;
upgradeTo(newImplementation: PromiseOrValue<string>, overrides?: CallOverrides): Promise<void>;
upgradeToAndCall(newImplementation: PromiseOrValue<string>, data: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<void>;
upgradeTo(newImplementation: string, overrides?: CallOverrides): Promise<void>;
upgradeToAndCall(newImplementation: string, data: BytesLike, overrides?: CallOverrides): Promise<void>;
DEFAULT_ADMIN_ROLE(overrides?: CallOverrides): Promise<string>;
accumulatedFees(token: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
calculateTradeSourceAmount(sourceToken: PromiseOrValue<string>, targetToken: PromiseOrValue<string>, tradeActions: TradeActionStruct[], overrides?: CallOverrides): Promise<BigNumber>;
calculateTradeTargetAmount(sourceToken: PromiseOrValue<string>, targetToken: PromiseOrValue<string>, tradeActions: TradeActionStruct[], overrides?: CallOverrides): Promise<BigNumber>;
accumulatedFees(token: string, overrides?: CallOverrides): Promise<BigNumber>;
calculateTradeSourceAmount(sourceToken: string, targetToken: string, tradeActions: TradeActionStruct[], overrides?: CallOverrides): Promise<BigNumber>;
calculateTradeTargetAmount(sourceToken: string, targetToken: string, tradeActions: TradeActionStruct[], overrides?: CallOverrides): Promise<BigNumber>;
controllerType(overrides?: CallOverrides): Promise<number>;
createPair(token0: PromiseOrValue<string>, token1: PromiseOrValue<string>, overrides?: CallOverrides): Promise<PairStructOutput>;
createStrategy(token0: PromiseOrValue<string>, token1: PromiseOrValue<string>, orders: [OrderStruct, OrderStruct], overrides?: CallOverrides): Promise<BigNumber>;
deleteStrategy(strategyId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<void>;
getRoleAdmin(role: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<string>;
getRoleMember(role: PromiseOrValue<BytesLike>, index: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<string>;
getRoleMemberCount(role: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<BigNumber>;
grantRole(role: PromiseOrValue<BytesLike>, account: PromiseOrValue<string>, overrides?: CallOverrides): Promise<void>;
hasRole(role: PromiseOrValue<BytesLike>, account: PromiseOrValue<string>, overrides?: CallOverrides): Promise<boolean>;
createPair(token0: string, token1: string, overrides?: CallOverrides): Promise<PairStructOutput>;
createStrategy(token0: string, token1: string, orders: [OrderStruct, OrderStruct], overrides?: CallOverrides): Promise<BigNumber>;
deleteStrategy(strategyId: BigNumberish, overrides?: CallOverrides): Promise<void>;
getRoleAdmin(role: BytesLike, overrides?: CallOverrides): Promise<string>;
getRoleMember(role: BytesLike, index: BigNumberish, overrides?: CallOverrides): Promise<string>;
getRoleMemberCount(role: BytesLike, overrides?: CallOverrides): Promise<BigNumber>;
grantRole(role: BytesLike, account: string, overrides?: CallOverrides): Promise<void>;
hasRole(role: BytesLike, account: string, overrides?: CallOverrides): Promise<boolean>;
initialize(overrides?: CallOverrides): Promise<void>;
pair(token0: PromiseOrValue<string>, token1: PromiseOrValue<string>, overrides?: CallOverrides): Promise<PairStructOutput>;
pairTradingFeePPM(token0: PromiseOrValue<string>, token1: PromiseOrValue<string>, overrides?: CallOverrides): Promise<number>;
pair(token0: string, token1: string, overrides?: CallOverrides): Promise<PairStructOutput>;
pairTradingFeePPM(token0: string, token1: string, overrides?: CallOverrides): Promise<number>;
pairs(overrides?: CallOverrides): Promise<[string, string][]>;
pause(overrides?: CallOverrides): Promise<void>;
paused(overrides?: CallOverrides): Promise<boolean>;
postUpgrade(data: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<void>;
renounceRole(role: PromiseOrValue<BytesLike>, account: PromiseOrValue<string>, overrides?: CallOverrides): Promise<void>;
revokeRole(role: PromiseOrValue<BytesLike>, account: PromiseOrValue<string>, overrides?: CallOverrides): Promise<void>;
postUpgrade(data: BytesLike, overrides?: CallOverrides): Promise<void>;
renounceRole(role: BytesLike, account: string, overrides?: CallOverrides): Promise<void>;
revokeRole(role: BytesLike, account: string, overrides?: CallOverrides): Promise<void>;
roleAdmin(overrides?: CallOverrides): Promise<string>;
roleEmergencyStopper(overrides?: CallOverrides): Promise<string>;
roleFeesManager(overrides?: CallOverrides): Promise<string>;
setPairTradingFeePPM(token0: PromiseOrValue<string>, token1: PromiseOrValue<string>, newPairTradingFeePPM: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<void>;
setTradingFeePPM(newTradingFeePPM: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<void>;
strategiesByPair(token0: PromiseOrValue<string>, token1: PromiseOrValue<string>, startIndex: PromiseOrValue<BigNumberish>, endIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<StrategyStructOutput[]>;
strategiesByPairCount(token0: PromiseOrValue<string>, token1: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
strategy(id: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<StrategyStructOutput>;
supportsInterface(interfaceId: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<boolean>;
tradeBySourceAmount(sourceToken: PromiseOrValue<string>, targetToken: PromiseOrValue<string>, tradeActions: TradeActionStruct[], deadline: PromiseOrValue<BigNumberish>, minReturn: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
tradeByTargetAmount(sourceToken: PromiseOrValue<string>, targetToken: PromiseOrValue<string>, tradeActions: TradeActionStruct[], deadline: PromiseOrValue<BigNumberish>, maxInput: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
setPairTradingFeePPM(token0: string, token1: string, newPairTradingFeePPM: BigNumberish, overrides?: CallOverrides): Promise<void>;
setTradingFeePPM(newTradingFeePPM: BigNumberish, overrides?: CallOverrides): Promise<void>;
strategiesByPair(token0: string, token1: string, startIndex: BigNumberish, endIndex: BigNumberish, overrides?: CallOverrides): Promise<StrategyStructOutput[]>;
strategiesByPairCount(token0: string, token1: string, overrides?: CallOverrides): Promise<BigNumber>;
strategy(id: BigNumberish, overrides?: CallOverrides): Promise<StrategyStructOutput>;
supportsInterface(interfaceId: BytesLike, overrides?: CallOverrides): Promise<boolean>;
tradeBySourceAmount(sourceToken: string, targetToken: string, tradeActions: TradeActionStruct[], deadline: BigNumberish, minReturn: BigNumberish, overrides?: CallOverrides): Promise<BigNumber>;
tradeByTargetAmount(sourceToken: string, targetToken: string, tradeActions: TradeActionStruct[], deadline: BigNumberish, maxInput: BigNumberish, overrides?: CallOverrides): Promise<BigNumber>;
tradingFeePPM(overrides?: CallOverrides): Promise<number>;
unpause(overrides?: CallOverrides): Promise<void>;
updateStrategy(strategyId: PromiseOrValue<BigNumberish>, currentOrders: [OrderStruct, OrderStruct], newOrders: [OrderStruct, OrderStruct], overrides?: CallOverrides): Promise<void>;
updateStrategy(strategyId: BigNumberish, currentOrders: [OrderStruct, OrderStruct], newOrders: [OrderStruct, OrderStruct], overrides?: CallOverrides): Promise<void>;
version(overrides?: CallOverrides): Promise<number>;
withdrawFees(token: PromiseOrValue<string>, amount: PromiseOrValue<BigNumberish>, recipient: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
withdrawFees(token: string, amount: BigNumberish, recipient: string, overrides?: CallOverrides): Promise<BigNumber>;
};

@@ -695,30 +655,30 @@ filters: {

AdminChanged(previousAdmin?: null, newAdmin?: null): AdminChangedEventFilter;
"BeaconUpgraded(address)"(beacon?: PromiseOrValue<string> | null): BeaconUpgradedEventFilter;
BeaconUpgraded(beacon?: PromiseOrValue<string> | null): BeaconUpgradedEventFilter;
"Upgraded(address)"(implementation?: PromiseOrValue<string> | null): UpgradedEventFilter;
Upgraded(implementation?: PromiseOrValue<string> | null): UpgradedEventFilter;
"FeesWithdrawn(address,address,uint256,address)"(token?: PromiseOrValue<string> | null, recipient?: PromiseOrValue<string> | null, amount?: PromiseOrValue<BigNumberish> | null, sender?: null): FeesWithdrawnEventFilter;
FeesWithdrawn(token?: PromiseOrValue<string> | null, recipient?: PromiseOrValue<string> | null, amount?: PromiseOrValue<BigNumberish> | null, sender?: null): FeesWithdrawnEventFilter;
"BeaconUpgraded(address)"(beacon?: string | null): BeaconUpgradedEventFilter;
BeaconUpgraded(beacon?: string | null): BeaconUpgradedEventFilter;
"Upgraded(address)"(implementation?: string | null): UpgradedEventFilter;
Upgraded(implementation?: string | null): UpgradedEventFilter;
"FeesWithdrawn(address,address,uint256,address)"(token?: string | null, recipient?: string | null, amount?: BigNumberish | null, sender?: null): FeesWithdrawnEventFilter;
FeesWithdrawn(token?: string | null, recipient?: string | null, amount?: BigNumberish | null, sender?: null): FeesWithdrawnEventFilter;
"Initialized(uint8)"(version?: null): InitializedEventFilter;
Initialized(version?: null): InitializedEventFilter;
"PairCreated(uint128,address,address)"(pairId?: PromiseOrValue<BigNumberish> | null, token0?: PromiseOrValue<string> | null, token1?: PromiseOrValue<string> | null): PairCreatedEventFilter;
PairCreated(pairId?: PromiseOrValue<BigNumberish> | null, token0?: PromiseOrValue<string> | null, token1?: PromiseOrValue<string> | null): PairCreatedEventFilter;
"PairTradingFeePPMUpdated(address,address,uint32,uint32)"(token0?: PromiseOrValue<string> | null, token1?: PromiseOrValue<string> | null, prevFeePPM?: null, newFeePPM?: null): PairTradingFeePPMUpdatedEventFilter;
PairTradingFeePPMUpdated(token0?: PromiseOrValue<string> | null, token1?: PromiseOrValue<string> | null, prevFeePPM?: null, newFeePPM?: null): PairTradingFeePPMUpdatedEventFilter;
"PairCreated(uint128,address,address)"(pairId?: BigNumberish | null, token0?: string | null, token1?: string | null): PairCreatedEventFilter;
PairCreated(pairId?: BigNumberish | null, token0?: string | null, token1?: string | null): PairCreatedEventFilter;
"PairTradingFeePPMUpdated(address,address,uint32,uint32)"(token0?: string | null, token1?: string | null, prevFeePPM?: null, newFeePPM?: null): PairTradingFeePPMUpdatedEventFilter;
PairTradingFeePPMUpdated(token0?: string | null, token1?: string | null, prevFeePPM?: null, newFeePPM?: null): PairTradingFeePPMUpdatedEventFilter;
"Paused(address)"(account?: null): PausedEventFilter;
Paused(account?: null): PausedEventFilter;
"RoleAdminChanged(bytes32,bytes32,bytes32)"(role?: PromiseOrValue<BytesLike> | null, previousAdminRole?: PromiseOrValue<BytesLike> | null, newAdminRole?: PromiseOrValue<BytesLike> | null): RoleAdminChangedEventFilter;
RoleAdminChanged(role?: PromiseOrValue<BytesLike> | null, previousAdminRole?: PromiseOrValue<BytesLike> | null, newAdminRole?: PromiseOrValue<BytesLike> | null): RoleAdminChangedEventFilter;
"RoleGranted(bytes32,address,address)"(role?: PromiseOrValue<BytesLike> | null, account?: PromiseOrValue<string> | null, sender?: PromiseOrValue<string> | null): RoleGrantedEventFilter;
RoleGranted(role?: PromiseOrValue<BytesLike> | null, account?: PromiseOrValue<string> | null, sender?: PromiseOrValue<string> | null): RoleGrantedEventFilter;
"RoleRevoked(bytes32,address,address)"(role?: PromiseOrValue<BytesLike> | null, account?: PromiseOrValue<string> | null, sender?: PromiseOrValue<string> | null): RoleRevokedEventFilter;
RoleRevoked(role?: PromiseOrValue<BytesLike> | null, account?: PromiseOrValue<string> | null, sender?: PromiseOrValue<string> | null): RoleRevokedEventFilter;
"StrategyCreated(uint256,address,address,address,tuple,tuple)"(id?: null, owner?: PromiseOrValue<string> | null, token0?: PromiseOrValue<string> | null, token1?: PromiseOrValue<string> | null, order0?: null, order1?: null): StrategyCreatedEventFilter;
StrategyCreated(id?: null, owner?: PromiseOrValue<string> | null, token0?: PromiseOrValue<string> | null, token1?: PromiseOrValue<string> | null, order0?: null, order1?: null): StrategyCreatedEventFilter;
"StrategyDeleted(uint256,address,address,address,tuple,tuple)"(id?: null, owner?: PromiseOrValue<string> | null, token0?: PromiseOrValue<string> | null, token1?: PromiseOrValue<string> | null, order0?: null, order1?: null): StrategyDeletedEventFilter;
StrategyDeleted(id?: null, owner?: PromiseOrValue<string> | null, token0?: PromiseOrValue<string> | null, token1?: PromiseOrValue<string> | null, order0?: null, order1?: null): StrategyDeletedEventFilter;
"StrategyUpdated(uint256,address,address,tuple,tuple,uint8)"(id?: PromiseOrValue<BigNumberish> | null, token0?: PromiseOrValue<string> | null, token1?: PromiseOrValue<string> | null, order0?: null, order1?: null, reason?: null): StrategyUpdatedEventFilter;
StrategyUpdated(id?: PromiseOrValue<BigNumberish> | null, token0?: PromiseOrValue<string> | null, token1?: PromiseOrValue<string> | null, order0?: null, order1?: null, reason?: null): StrategyUpdatedEventFilter;
"TokensTraded(address,address,address,uint256,uint256,uint128,bool)"(trader?: PromiseOrValue<string> | null, sourceToken?: PromiseOrValue<string> | null, targetToken?: PromiseOrValue<string> | null, sourceAmount?: null, targetAmount?: null, tradingFeeAmount?: null, byTargetAmount?: null): TokensTradedEventFilter;
TokensTraded(trader?: PromiseOrValue<string> | null, sourceToken?: PromiseOrValue<string> | null, targetToken?: PromiseOrValue<string> | null, sourceAmount?: null, targetAmount?: null, tradingFeeAmount?: null, byTargetAmount?: null): TokensTradedEventFilter;
"RoleAdminChanged(bytes32,bytes32,bytes32)"(role?: BytesLike | null, previousAdminRole?: BytesLike | null, newAdminRole?: BytesLike | null): RoleAdminChangedEventFilter;
RoleAdminChanged(role?: BytesLike | null, previousAdminRole?: BytesLike | null, newAdminRole?: BytesLike | null): RoleAdminChangedEventFilter;
"RoleGranted(bytes32,address,address)"(role?: BytesLike | null, account?: string | null, sender?: string | null): RoleGrantedEventFilter;
RoleGranted(role?: BytesLike | null, account?: string | null, sender?: string | null): RoleGrantedEventFilter;
"RoleRevoked(bytes32,address,address)"(role?: BytesLike | null, account?: string | null, sender?: string | null): RoleRevokedEventFilter;
RoleRevoked(role?: BytesLike | null, account?: string | null, sender?: string | null): RoleRevokedEventFilter;
"StrategyCreated(uint256,address,address,address,(uint128,uint128,uint64,uint64),(uint128,uint128,uint64,uint64))"(id?: null, owner?: string | null, token0?: string | null, token1?: string | null, order0?: null, order1?: null): StrategyCreatedEventFilter;
StrategyCreated(id?: null, owner?: string | null, token0?: string | null, token1?: string | null, order0?: null, order1?: null): StrategyCreatedEventFilter;
"StrategyDeleted(uint256,address,address,address,(uint128,uint128,uint64,uint64),(uint128,uint128,uint64,uint64))"(id?: null, owner?: string | null, token0?: string | null, token1?: string | null, order0?: null, order1?: null): StrategyDeletedEventFilter;
StrategyDeleted(id?: null, owner?: string | null, token0?: string | null, token1?: string | null, order0?: null, order1?: null): StrategyDeletedEventFilter;
"StrategyUpdated(uint256,address,address,(uint128,uint128,uint64,uint64),(uint128,uint128,uint64,uint64),uint8)"(id?: BigNumberish | null, token0?: string | null, token1?: string | null, order0?: null, order1?: null, reason?: null): StrategyUpdatedEventFilter;
StrategyUpdated(id?: BigNumberish | null, token0?: string | null, token1?: string | null, order0?: null, order1?: null, reason?: null): StrategyUpdatedEventFilter;
"TokensTraded(address,address,address,uint256,uint256,uint128,bool)"(trader?: string | null, sourceToken?: string | null, targetToken?: string | null, sourceAmount?: null, targetAmount?: null, tradingFeeAmount?: null, byTargetAmount?: null): TokensTradedEventFilter;
TokensTraded(trader?: string | null, sourceToken?: string | null, targetToken?: string | null, sourceAmount?: null, targetAmount?: null, tradingFeeAmount?: null, byTargetAmount?: null): TokensTradedEventFilter;
"TradingFeePPMUpdated(uint32,uint32)"(prevFeePPM?: null, newFeePPM?: null): TradingFeePPMUpdatedEventFilter;

@@ -731,52 +691,52 @@ TradingFeePPMUpdated(prevFeePPM?: null, newFeePPM?: null): TradingFeePPMUpdatedEventFilter;

admin(overrides?: Overrides & {
from?: PromiseOrValue<string>;
from?: string;
}): Promise<BigNumber>;
implementation(overrides?: Overrides & {
from?: PromiseOrValue<string>;
from?: string;
}): Promise<BigNumber>;
upgradeTo(newImplementation: PromiseOrValue<string>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
upgradeTo(newImplementation: string, overrides?: Overrides & {
from?: string;
}): Promise<BigNumber>;
upgradeToAndCall(newImplementation: PromiseOrValue<string>, data: PromiseOrValue<BytesLike>, overrides?: PayableOverrides & {
from?: PromiseOrValue<string>;
upgradeToAndCall(newImplementation: string, data: BytesLike, overrides?: PayableOverrides & {
from?: string;
}): Promise<BigNumber>;
DEFAULT_ADMIN_ROLE(overrides?: CallOverrides): Promise<BigNumber>;
accumulatedFees(token: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
calculateTradeSourceAmount(sourceToken: PromiseOrValue<string>, targetToken: PromiseOrValue<string>, tradeActions: TradeActionStruct[], overrides?: CallOverrides): Promise<BigNumber>;
calculateTradeTargetAmount(sourceToken: PromiseOrValue<string>, targetToken: PromiseOrValue<string>, tradeActions: TradeActionStruct[], overrides?: CallOverrides): Promise<BigNumber>;
accumulatedFees(token: string, overrides?: CallOverrides): Promise<BigNumber>;
calculateTradeSourceAmount(sourceToken: string, targetToken: string, tradeActions: TradeActionStruct[], overrides?: CallOverrides): Promise<BigNumber>;
calculateTradeTargetAmount(sourceToken: string, targetToken: string, tradeActions: TradeActionStruct[], overrides?: CallOverrides): Promise<BigNumber>;
controllerType(overrides?: CallOverrides): Promise<BigNumber>;
createPair(token0: PromiseOrValue<string>, token1: PromiseOrValue<string>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
createPair(token0: string, token1: string, overrides?: Overrides & {
from?: string;
}): Promise<BigNumber>;
createStrategy(token0: PromiseOrValue<string>, token1: PromiseOrValue<string>, orders: [OrderStruct, OrderStruct], overrides?: PayableOverrides & {
from?: PromiseOrValue<string>;
createStrategy(token0: string, token1: string, orders: [OrderStruct, OrderStruct], overrides?: PayableOverrides & {
from?: string;
}): Promise<BigNumber>;
deleteStrategy(strategyId: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
deleteStrategy(strategyId: BigNumberish, overrides?: Overrides & {
from?: string;
}): Promise<BigNumber>;
getRoleAdmin(role: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<BigNumber>;
getRoleMember(role: PromiseOrValue<BytesLike>, index: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
getRoleMemberCount(role: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<BigNumber>;
grantRole(role: PromiseOrValue<BytesLike>, account: PromiseOrValue<string>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
getRoleAdmin(role: BytesLike, overrides?: CallOverrides): Promise<BigNumber>;
getRoleMember(role: BytesLike, index: BigNumberish, overrides?: CallOverrides): Promise<BigNumber>;
getRoleMemberCount(role: BytesLike, overrides?: CallOverrides): Promise<BigNumber>;
grantRole(role: BytesLike, account: string, overrides?: Overrides & {
from?: string;
}): Promise<BigNumber>;
hasRole(role: PromiseOrValue<BytesLike>, account: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
hasRole(role: BytesLike, account: string, overrides?: CallOverrides): Promise<BigNumber>;
initialize(overrides?: Overrides & {
from?: PromiseOrValue<string>;
from?: string;
}): Promise<BigNumber>;
pair(token0: PromiseOrValue<string>, token1: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
pairTradingFeePPM(token0: PromiseOrValue<string>, token1: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
pair(token0: string, token1: string, overrides?: CallOverrides): Promise<BigNumber>;
pairTradingFeePPM(token0: string, token1: string, overrides?: CallOverrides): Promise<BigNumber>;
pairs(overrides?: CallOverrides): Promise<BigNumber>;
pause(overrides?: Overrides & {
from?: PromiseOrValue<string>;
from?: string;
}): Promise<BigNumber>;
paused(overrides?: CallOverrides): Promise<BigNumber>;
postUpgrade(data: PromiseOrValue<BytesLike>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
postUpgrade(data: BytesLike, overrides?: Overrides & {
from?: string;
}): Promise<BigNumber>;
renounceRole(role: PromiseOrValue<BytesLike>, account: PromiseOrValue<string>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
renounceRole(role: BytesLike, account: string, overrides?: Overrides & {
from?: string;
}): Promise<BigNumber>;
revokeRole(role: PromiseOrValue<BytesLike>, account: PromiseOrValue<string>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
revokeRole(role: BytesLike, account: string, overrides?: Overrides & {
from?: string;
}): Promise<BigNumber>;

@@ -786,28 +746,28 @@ roleAdmin(overrides?: CallOverrides): Promise<BigNumber>;

roleFeesManager(overrides?: CallOverrides): Promise<BigNumber>;
setPairTradingFeePPM(token0: PromiseOrValue<string>, token1: PromiseOrValue<string>, newPairTradingFeePPM: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
setPairTradingFeePPM(token0: string, token1: string, newPairTradingFeePPM: BigNumberish, overrides?: Overrides & {
from?: string;
}): Promise<BigNumber>;
setTradingFeePPM(newTradingFeePPM: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
setTradingFeePPM(newTradingFeePPM: BigNumberish, overrides?: Overrides & {
from?: string;
}): Promise<BigNumber>;
strategiesByPair(token0: PromiseOrValue<string>, token1: PromiseOrValue<string>, startIndex: PromiseOrValue<BigNumberish>, endIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
strategiesByPairCount(token0: PromiseOrValue<string>, token1: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
strategy(id: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
supportsInterface(interfaceId: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<BigNumber>;
tradeBySourceAmount(sourceToken: PromiseOrValue<string>, targetToken: PromiseOrValue<string>, tradeActions: TradeActionStruct[], deadline: PromiseOrValue<BigNumberish>, minReturn: PromiseOrValue<BigNumberish>, overrides?: PayableOverrides & {
from?: PromiseOrValue<string>;
strategiesByPair(token0: string, token1: string, startIndex: BigNumberish, endIndex: BigNumberish, overrides?: CallOverrides): Promise<BigNumber>;
strategiesByPairCount(token0: string, token1: string, overrides?: CallOverrides): Promise<BigNumber>;
strategy(id: BigNumberish, overrides?: CallOverrides): Promise<BigNumber>;
supportsInterface(interfaceId: BytesLike, overrides?: CallOverrides): Promise<BigNumber>;
tradeBySourceAmount(sourceToken: string, targetToken: string, tradeActions: TradeActionStruct[], deadline: BigNumberish, minReturn: BigNumberish, overrides?: PayableOverrides & {
from?: string;
}): Promise<BigNumber>;
tradeByTargetAmount(sourceToken: PromiseOrValue<string>, targetToken: PromiseOrValue<string>, tradeActions: TradeActionStruct[], deadline: PromiseOrValue<BigNumberish>, maxInput: PromiseOrValue<BigNumberish>, overrides?: PayableOverrides & {
from?: PromiseOrValue<string>;
tradeByTargetAmount(sourceToken: string, targetToken: string, tradeActions: TradeActionStruct[], deadline: BigNumberish, maxInput: BigNumberish, overrides?: PayableOverrides & {
from?: string;
}): Promise<BigNumber>;
tradingFeePPM(overrides?: CallOverrides): Promise<BigNumber>;
unpause(overrides?: Overrides & {
from?: PromiseOrValue<string>;
from?: string;
}): Promise<BigNumber>;
updateStrategy(strategyId: PromiseOrValue<BigNumberish>, currentOrders: [OrderStruct, OrderStruct], newOrders: [OrderStruct, OrderStruct], overrides?: PayableOverrides & {
from?: PromiseOrValue<string>;
updateStrategy(strategyId: BigNumberish, currentOrders: [OrderStruct, OrderStruct], newOrders: [OrderStruct, OrderStruct], overrides?: PayableOverrides & {
from?: string;
}): Promise<BigNumber>;
version(overrides?: CallOverrides): Promise<BigNumber>;
withdrawFees(token: PromiseOrValue<string>, amount: PromiseOrValue<BigNumberish>, recipient: PromiseOrValue<string>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
withdrawFees(token: string, amount: BigNumberish, recipient: string, overrides?: Overrides & {
from?: string;
}): Promise<BigNumber>;

@@ -817,52 +777,52 @@ };

admin(overrides?: Overrides & {
from?: PromiseOrValue<string>;
from?: string;
}): Promise<PopulatedTransaction>;
implementation(overrides?: Overrides & {
from?: PromiseOrValue<string>;
from?: string;
}): Promise<PopulatedTransaction>;
upgradeTo(newImplementation: PromiseOrValue<string>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
upgradeTo(newImplementation: string, overrides?: Overrides & {
from?: string;
}): Promise<PopulatedTransaction>;
upgradeToAndCall(newImplementation: PromiseOrValue<string>, data: PromiseOrValue<BytesLike>, overrides?: PayableOverrides & {
from?: PromiseOrValue<string>;
upgradeToAndCall(newImplementation: string, data: BytesLike, overrides?: PayableOverrides & {
from?: string;
}): Promise<PopulatedTransaction>;
DEFAULT_ADMIN_ROLE(overrides?: CallOverrides): Promise<PopulatedTransaction>;
accumulatedFees(token: PromiseOrValue<string>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
calculateTradeSourceAmount(sourceToken: PromiseOrValue<string>, targetToken: PromiseOrValue<string>, tradeActions: TradeActionStruct[], overrides?: CallOverrides): Promise<PopulatedTransaction>;
calculateTradeTargetAmount(sourceToken: PromiseOrValue<string>, targetToken: PromiseOrValue<string>, tradeActions: TradeActionStruct[], overrides?: CallOverrides): Promise<PopulatedTransaction>;
accumulatedFees(token: string, overrides?: CallOverrides): Promise<PopulatedTransaction>;
calculateTradeSourceAmount(sourceToken: string, targetToken: string, tradeActions: TradeActionStruct[], overrides?: CallOverrides): Promise<PopulatedTransaction>;
calculateTradeTargetAmount(sourceToken: string, targetToken: string, tradeActions: TradeActionStruct[], overrides?: CallOverrides): Promise<PopulatedTransaction>;
controllerType(overrides?: CallOverrides): Promise<PopulatedTransaction>;
createPair(token0: PromiseOrValue<string>, token1: PromiseOrValue<string>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
createPair(token0: string, token1: string, overrides?: Overrides & {
from?: string;
}): Promise<PopulatedTransaction>;
createStrategy(token0: PromiseOrValue<string>, token1: PromiseOrValue<string>, orders: [OrderStruct, OrderStruct], overrides?: PayableOverrides & {
from?: PromiseOrValue<string>;
createStrategy(token0: string, token1: string, orders: [OrderStruct, OrderStruct], overrides?: PayableOverrides & {
from?: string;
}): Promise<PopulatedTransaction>;
deleteStrategy(strategyId: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
deleteStrategy(strategyId: BigNumberish, overrides?: Overrides & {
from?: string;
}): Promise<PopulatedTransaction>;
getRoleAdmin(role: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
getRoleMember(role: PromiseOrValue<BytesLike>, index: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
getRoleMemberCount(role: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
grantRole(role: PromiseOrValue<BytesLike>, account: PromiseOrValue<string>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
getRoleAdmin(role: BytesLike, overrides?: CallOverrides): Promise<PopulatedTransaction>;
getRoleMember(role: BytesLike, index: BigNumberish, overrides?: CallOverrides): Promise<PopulatedTransaction>;
getRoleMemberCount(role: BytesLike, overrides?: CallOverrides): Promise<PopulatedTransaction>;
grantRole(role: BytesLike, account: string, overrides?: Overrides & {
from?: string;
}): Promise<PopulatedTransaction>;
hasRole(role: PromiseOrValue<BytesLike>, account: PromiseOrValue<string>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
hasRole(role: BytesLike, account: string, overrides?: CallOverrides): Promise<PopulatedTransaction>;
initialize(overrides?: Overrides & {
from?: PromiseOrValue<string>;
from?: string;
}): Promise<PopulatedTransaction>;
pair(token0: PromiseOrValue<string>, token1: PromiseOrValue<string>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
pairTradingFeePPM(token0: PromiseOrValue<string>, token1: PromiseOrValue<string>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
pair(token0: string, token1: string, overrides?: CallOverrides): Promise<PopulatedTransaction>;
pairTradingFeePPM(token0: string, token1: string, overrides?: CallOverrides): Promise<PopulatedTransaction>;
pairs(overrides?: CallOverrides): Promise<PopulatedTransaction>;
pause(overrides?: Overrides & {
from?: PromiseOrValue<string>;
from?: string;
}): Promise<PopulatedTransaction>;
paused(overrides?: CallOverrides): Promise<PopulatedTransaction>;
postUpgrade(data: PromiseOrValue<BytesLike>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
postUpgrade(data: BytesLike, overrides?: Overrides & {
from?: string;
}): Promise<PopulatedTransaction>;
renounceRole(role: PromiseOrValue<BytesLike>, account: PromiseOrValue<string>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
renounceRole(role: BytesLike, account: string, overrides?: Overrides & {
from?: string;
}): Promise<PopulatedTransaction>;
revokeRole(role: PromiseOrValue<BytesLike>, account: PromiseOrValue<string>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
revokeRole(role: BytesLike, account: string, overrides?: Overrides & {
from?: string;
}): Promise<PopulatedTransaction>;

@@ -872,28 +832,28 @@ roleAdmin(overrides?: CallOverrides): Promise<PopulatedTransaction>;

roleFeesManager(overrides?: CallOverrides): Promise<PopulatedTransaction>;
setPairTradingFeePPM(token0: PromiseOrValue<string>, token1: PromiseOrValue<string>, newPairTradingFeePPM: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
setPairTradingFeePPM(token0: string, token1: string, newPairTradingFeePPM: BigNumberish, overrides?: Overrides & {
from?: string;
}): Promise<PopulatedTransaction>;
setTradingFeePPM(newTradingFeePPM: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
setTradingFeePPM(newTradingFeePPM: BigNumberish, overrides?: Overrides & {
from?: string;
}): Promise<PopulatedTransaction>;
strategiesByPair(token0: PromiseOrValue<string>, token1: PromiseOrValue<string>, startIndex: PromiseOrValue<BigNumberish>, endIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
strategiesByPairCount(token0: PromiseOrValue<string>, token1: PromiseOrValue<string>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
strategy(id: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
supportsInterface(interfaceId: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
tradeBySourceAmount(sourceToken: PromiseOrValue<string>, targetToken: PromiseOrValue<string>, tradeActions: TradeActionStruct[], deadline: PromiseOrValue<BigNumberish>, minReturn: PromiseOrValue<BigNumberish>, overrides?: PayableOverrides & {
from?: PromiseOrValue<string>;
strategiesByPair(token0: string, token1: string, startIndex: BigNumberish, endIndex: BigNumberish, overrides?: CallOverrides): Promise<PopulatedTransaction>;
strategiesByPairCount(token0: string, token1: string, overrides?: CallOverrides): Promise<PopulatedTransaction>;
strategy(id: BigNumberish, overrides?: CallOverrides): Promise<PopulatedTransaction>;
supportsInterface(interfaceId: BytesLike, overrides?: CallOverrides): Promise<PopulatedTransaction>;
tradeBySourceAmount(sourceToken: string, targetToken: string, tradeActions: TradeActionStruct[], deadline: BigNumberish, minReturn: BigNumberish, overrides?: PayableOverrides & {
from?: string;
}): Promise<PopulatedTransaction>;
tradeByTargetAmount(sourceToken: PromiseOrValue<string>, targetToken: PromiseOrValue<string>, tradeActions: TradeActionStruct[], deadline: PromiseOrValue<BigNumberish>, maxInput: PromiseOrValue<BigNumberish>, overrides?: PayableOverrides & {
from?: PromiseOrValue<string>;
tradeByTargetAmount(sourceToken: string, targetToken: string, tradeActions: TradeActionStruct[], deadline: BigNumberish, maxInput: BigNumberish, overrides?: PayableOverrides & {
from?: string;
}): Promise<PopulatedTransaction>;
tradingFeePPM(overrides?: CallOverrides): Promise<PopulatedTransaction>;
unpause(overrides?: Overrides & {
from?: PromiseOrValue<string>;
from?: string;
}): Promise<PopulatedTransaction>;
updateStrategy(strategyId: PromiseOrValue<BigNumberish>, currentOrders: [OrderStruct, OrderStruct], newOrders: [OrderStruct, OrderStruct], overrides?: PayableOverrides & {
from?: PromiseOrValue<string>;
updateStrategy(strategyId: BigNumberish, currentOrders: [OrderStruct, OrderStruct], newOrders: [OrderStruct, OrderStruct], overrides?: PayableOverrides & {
from?: string;
}): Promise<PopulatedTransaction>;
version(overrides?: CallOverrides): Promise<PopulatedTransaction>;
withdrawFees(token: PromiseOrValue<string>, amount: PromiseOrValue<BigNumberish>, recipient: PromiseOrValue<string>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
withdrawFees(token: string, amount: BigNumberish, recipient: string, overrides?: Overrides & {
from?: string;
}): Promise<PopulatedTransaction>;

@@ -900,0 +860,0 @@ };

@@ -21,4 +21,3 @@ import type { Listener } from "@ethersproject/providers";

export type GetARGsTypeFromFactory<F> = F extends MinEthersFactory<any, any> ? Parameters<F["deploy"]> : never;
export type PromiseOrValue<T> = T | Promise<T>;
export {};
//# sourceMappingURL=common.d.ts.map
import type { BaseContract, BigNumber, BigNumberish, BytesLike, CallOverrides, PopulatedTransaction, Signer, utils } from "ethers";
import type { FunctionFragment, Result } from "@ethersproject/abi";
import type { Listener, Provider } from "@ethersproject/providers";
import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent, PromiseOrValue } from "./common";
import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from "./common";
export declare namespace Multicall2 {
type CallStruct = {
target: PromiseOrValue<string>;
callData: PromiseOrValue<BytesLike>;
target: string;
callData: BytesLike;
};

@@ -15,4 +15,4 @@ type CallStructOutput = [string, string] & {

type ResultStruct = {
success: PromiseOrValue<boolean>;
returnData: PromiseOrValue<BytesLike>;
success: boolean;
returnData: BytesLike;
};

@@ -42,3 +42,3 @@ type ResultStructOutput = [boolean, string] & {

encodeFunctionData(functionFragment: "blockAndAggregate", values: [Multicall2.CallStruct[]]): string;
encodeFunctionData(functionFragment: "getBlockHash", values: [PromiseOrValue<BigNumberish>]): string;
encodeFunctionData(functionFragment: "getBlockHash", values: [BigNumberish]): string;
encodeFunctionData(functionFragment: "getBlockNumber", values?: undefined): string;

@@ -49,6 +49,6 @@ encodeFunctionData(functionFragment: "getCurrentBlockCoinbase", values?: undefined): string;

encodeFunctionData(functionFragment: "getCurrentBlockTimestamp", values?: undefined): string;
encodeFunctionData(functionFragment: "getEthBalance", values: [PromiseOrValue<string>]): string;
encodeFunctionData(functionFragment: "getEthBalance", values: [string]): string;
encodeFunctionData(functionFragment: "getLastBlockHash", values?: undefined): string;
encodeFunctionData(functionFragment: "tryAggregate", values: [PromiseOrValue<boolean>, Multicall2.CallStruct[]]): string;
encodeFunctionData(functionFragment: "tryBlockAndAggregate", values: [PromiseOrValue<boolean>, Multicall2.CallStruct[]]): string;
encodeFunctionData(functionFragment: "tryAggregate", values: [boolean, Multicall2.CallStruct[]]): string;
encodeFunctionData(functionFragment: "tryBlockAndAggregate", values: [boolean, Multicall2.CallStruct[]]): string;
decodeFunctionResult(functionFragment: "aggregate", data: BytesLike): Result;

@@ -99,3 +99,3 @@ decodeFunctionResult(functionFragment: "blockAndAggregate", data: BytesLike): Result;

}>;
getBlockHash(blockNumber: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[string] & {
getBlockHash(blockNumber: BigNumberish, overrides?: CallOverrides): Promise<[string] & {
blockHash: string;

@@ -118,3 +118,3 @@ }>;

}>;
getEthBalance(addr: PromiseOrValue<string>, overrides?: CallOverrides): Promise<[BigNumber] & {
getEthBalance(addr: string, overrides?: CallOverrides): Promise<[BigNumber] & {
balance: BigNumber;

@@ -125,3 +125,3 @@ }>;

}>;
tryAggregate(requireSuccess: PromiseOrValue<boolean>, calls: Multicall2.CallStruct[], overrides?: CallOverrides): Promise<[
tryAggregate(requireSuccess: boolean, calls: Multicall2.CallStruct[], overrides?: CallOverrides): Promise<[
Multicall2.ResultStructOutput[]

@@ -131,3 +131,3 @@ ] & {

}>;
tryBlockAndAggregate(requireSuccess: PromiseOrValue<boolean>, calls: Multicall2.CallStruct[], overrides?: CallOverrides): Promise<[
tryBlockAndAggregate(requireSuccess: boolean, calls: Multicall2.CallStruct[], overrides?: CallOverrides): Promise<[
BigNumber,

@@ -158,3 +158,3 @@ string,

}>;
getBlockHash(blockNumber: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<string>;
getBlockHash(blockNumber: BigNumberish, overrides?: CallOverrides): Promise<string>;
getBlockNumber(overrides?: CallOverrides): Promise<BigNumber>;

@@ -165,6 +165,6 @@ getCurrentBlockCoinbase(overrides?: CallOverrides): Promise<string>;

getCurrentBlockTimestamp(overrides?: CallOverrides): Promise<BigNumber>;
getEthBalance(addr: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
getEthBalance(addr: string, overrides?: CallOverrides): Promise<BigNumber>;
getLastBlockHash(overrides?: CallOverrides): Promise<string>;
tryAggregate(requireSuccess: PromiseOrValue<boolean>, calls: Multicall2.CallStruct[], overrides?: CallOverrides): Promise<Multicall2.ResultStructOutput[]>;
tryBlockAndAggregate(requireSuccess: PromiseOrValue<boolean>, calls: Multicall2.CallStruct[], overrides?: CallOverrides): Promise<[
tryAggregate(requireSuccess: boolean, calls: Multicall2.CallStruct[], overrides?: CallOverrides): Promise<Multicall2.ResultStructOutput[]>;
tryBlockAndAggregate(requireSuccess: boolean, calls: Multicall2.CallStruct[], overrides?: CallOverrides): Promise<[
BigNumber,

@@ -195,3 +195,3 @@ string,

}>;
getBlockHash(blockNumber: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<string>;
getBlockHash(blockNumber: BigNumberish, overrides?: CallOverrides): Promise<string>;
getBlockNumber(overrides?: CallOverrides): Promise<BigNumber>;

@@ -202,6 +202,6 @@ getCurrentBlockCoinbase(overrides?: CallOverrides): Promise<string>;

getCurrentBlockTimestamp(overrides?: CallOverrides): Promise<BigNumber>;
getEthBalance(addr: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
getEthBalance(addr: string, overrides?: CallOverrides): Promise<BigNumber>;
getLastBlockHash(overrides?: CallOverrides): Promise<string>;
tryAggregate(requireSuccess: PromiseOrValue<boolean>, calls: Multicall2.CallStruct[], overrides?: CallOverrides): Promise<Multicall2.ResultStructOutput[]>;
tryBlockAndAggregate(requireSuccess: PromiseOrValue<boolean>, calls: Multicall2.CallStruct[], overrides?: CallOverrides): Promise<[
tryAggregate(requireSuccess: boolean, calls: Multicall2.CallStruct[], overrides?: CallOverrides): Promise<Multicall2.ResultStructOutput[]>;
tryBlockAndAggregate(requireSuccess: boolean, calls: Multicall2.CallStruct[], overrides?: CallOverrides): Promise<[
BigNumber,

@@ -220,3 +220,3 @@ string,

blockAndAggregate(calls: Multicall2.CallStruct[], overrides?: CallOverrides): Promise<BigNumber>;
getBlockHash(blockNumber: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
getBlockHash(blockNumber: BigNumberish, overrides?: CallOverrides): Promise<BigNumber>;
getBlockNumber(overrides?: CallOverrides): Promise<BigNumber>;

@@ -227,6 +227,6 @@ getCurrentBlockCoinbase(overrides?: CallOverrides): Promise<BigNumber>;

getCurrentBlockTimestamp(overrides?: CallOverrides): Promise<BigNumber>;
getEthBalance(addr: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
getEthBalance(addr: string, overrides?: CallOverrides): Promise<BigNumber>;
getLastBlockHash(overrides?: CallOverrides): Promise<BigNumber>;
tryAggregate(requireSuccess: PromiseOrValue<boolean>, calls: Multicall2.CallStruct[], overrides?: CallOverrides): Promise<BigNumber>;
tryBlockAndAggregate(requireSuccess: PromiseOrValue<boolean>, calls: Multicall2.CallStruct[], overrides?: CallOverrides): Promise<BigNumber>;
tryAggregate(requireSuccess: boolean, calls: Multicall2.CallStruct[], overrides?: CallOverrides): Promise<BigNumber>;
tryBlockAndAggregate(requireSuccess: boolean, calls: Multicall2.CallStruct[], overrides?: CallOverrides): Promise<BigNumber>;
};

@@ -236,3 +236,3 @@ populateTransaction: {

blockAndAggregate(calls: Multicall2.CallStruct[], overrides?: CallOverrides): Promise<PopulatedTransaction>;
getBlockHash(blockNumber: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
getBlockHash(blockNumber: BigNumberish, overrides?: CallOverrides): Promise<PopulatedTransaction>;
getBlockNumber(overrides?: CallOverrides): Promise<PopulatedTransaction>;

@@ -243,8 +243,8 @@ getCurrentBlockCoinbase(overrides?: CallOverrides): Promise<PopulatedTransaction>;

getCurrentBlockTimestamp(overrides?: CallOverrides): Promise<PopulatedTransaction>;
getEthBalance(addr: PromiseOrValue<string>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
getEthBalance(addr: string, overrides?: CallOverrides): Promise<PopulatedTransaction>;
getLastBlockHash(overrides?: CallOverrides): Promise<PopulatedTransaction>;
tryAggregate(requireSuccess: PromiseOrValue<boolean>, calls: Multicall2.CallStruct[], overrides?: CallOverrides): Promise<PopulatedTransaction>;
tryBlockAndAggregate(requireSuccess: PromiseOrValue<boolean>, calls: Multicall2.CallStruct[], overrides?: CallOverrides): Promise<PopulatedTransaction>;
tryAggregate(requireSuccess: boolean, calls: Multicall2.CallStruct[], overrides?: CallOverrides): Promise<PopulatedTransaction>;
tryBlockAndAggregate(requireSuccess: boolean, calls: Multicall2.CallStruct[], overrides?: CallOverrides): Promise<PopulatedTransaction>;
};
}
//# sourceMappingURL=Multicall.d.ts.map
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, PromiseOrValue } from "./common";
import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from "./common";
export interface TokenInterface extends utils.Interface {

@@ -30,29 +30,21 @@ functions: {

encodeFunctionData(functionFragment: "name", values?: undefined): string;
encodeFunctionData(functionFragment: "approve", values: [PromiseOrValue<string>, PromiseOrValue<BigNumberish>]): string;
encodeFunctionData(functionFragment: "disableTransfers", values: [PromiseOrValue<boolean>]): string;
encodeFunctionData(functionFragment: "approve", values: [string, BigNumberish]): string;
encodeFunctionData(functionFragment: "disableTransfers", values: [boolean]): string;
encodeFunctionData(functionFragment: "totalSupply", values?: undefined): string;
encodeFunctionData(functionFragment: "transferFrom", values: [
PromiseOrValue<string>,
PromiseOrValue<string>,
PromiseOrValue<BigNumberish>
]): string;
encodeFunctionData(functionFragment: "transferFrom", values: [string, string, BigNumberish]): string;
encodeFunctionData(functionFragment: "decimals", values?: undefined): string;
encodeFunctionData(functionFragment: "version", values?: undefined): string;
encodeFunctionData(functionFragment: "standard", values?: undefined): string;
encodeFunctionData(functionFragment: "withdrawTokens", values: [
PromiseOrValue<string>,
PromiseOrValue<string>,
PromiseOrValue<BigNumberish>
]): string;
encodeFunctionData(functionFragment: "balanceOf", values: [PromiseOrValue<string>]): string;
encodeFunctionData(functionFragment: "withdrawTokens", values: [string, string, BigNumberish]): string;
encodeFunctionData(functionFragment: "balanceOf", values: [string]): string;
encodeFunctionData(functionFragment: "acceptOwnership", values?: undefined): string;
encodeFunctionData(functionFragment: "issue", values: [PromiseOrValue<string>, PromiseOrValue<BigNumberish>]): string;
encodeFunctionData(functionFragment: "issue", values: [string, BigNumberish]): string;
encodeFunctionData(functionFragment: "owner", values?: undefined): string;
encodeFunctionData(functionFragment: "symbol", values?: undefined): string;
encodeFunctionData(functionFragment: "destroy", values: [PromiseOrValue<string>, PromiseOrValue<BigNumberish>]): string;
encodeFunctionData(functionFragment: "transfer", values: [PromiseOrValue<string>, PromiseOrValue<BigNumberish>]): string;
encodeFunctionData(functionFragment: "destroy", values: [string, BigNumberish]): string;
encodeFunctionData(functionFragment: "transfer", values: [string, BigNumberish]): string;
encodeFunctionData(functionFragment: "transfersEnabled", values?: undefined): string;
encodeFunctionData(functionFragment: "newOwner", values?: undefined): string;
encodeFunctionData(functionFragment: "allowance", values: [PromiseOrValue<string>, PromiseOrValue<string>]): string;
encodeFunctionData(functionFragment: "transferOwnership", values: [PromiseOrValue<string>]): string;
encodeFunctionData(functionFragment: "allowance", values: [string, string]): string;
encodeFunctionData(functionFragment: "transferOwnership", values: [string]): string;
decodeFunctionResult(functionFragment: "name", data: BytesLike): Result;

@@ -155,11 +147,11 @@ decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result;

name(overrides?: CallOverrides): Promise<[string]>;
approve(_spender: PromiseOrValue<string>, _value: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
approve(_spender: string, _value: BigNumberish, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
disableTransfers(_disable: PromiseOrValue<boolean>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
disableTransfers(_disable: boolean, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
totalSupply(overrides?: CallOverrides): Promise<[BigNumber]>;
transferFrom(_from: PromiseOrValue<string>, _to: PromiseOrValue<string>, _value: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
transferFrom(_from: string, _to: string, _value: BigNumberish, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;

@@ -169,37 +161,37 @@ decimals(overrides?: CallOverrides): Promise<[number]>;

standard(overrides?: CallOverrides): Promise<[string]>;
withdrawTokens(_token: PromiseOrValue<string>, _to: PromiseOrValue<string>, _amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
withdrawTokens(_token: string, _to: string, _amount: BigNumberish, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
balanceOf(arg0: PromiseOrValue<string>, overrides?: CallOverrides): Promise<[BigNumber]>;
balanceOf(arg0: string, overrides?: CallOverrides): Promise<[BigNumber]>;
acceptOwnership(overrides?: Overrides & {
from?: PromiseOrValue<string>;
from?: string;
}): Promise<ContractTransaction>;
issue(_to: PromiseOrValue<string>, _amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
issue(_to: string, _amount: BigNumberish, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
owner(overrides?: CallOverrides): Promise<[string]>;
symbol(overrides?: CallOverrides): Promise<[string]>;
destroy(_from: PromiseOrValue<string>, _amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
destroy(_from: string, _amount: BigNumberish, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
transfer(_to: PromiseOrValue<string>, _value: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
transfer(_to: string, _value: BigNumberish, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
transfersEnabled(overrides?: CallOverrides): Promise<[boolean]>;
newOwner(overrides?: CallOverrides): Promise<[string]>;
allowance(arg0: PromiseOrValue<string>, arg1: PromiseOrValue<string>, overrides?: CallOverrides): Promise<[BigNumber]>;
transferOwnership(_newOwner: PromiseOrValue<string>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
allowance(arg0: string, arg1: string, overrides?: CallOverrides): Promise<[BigNumber]>;
transferOwnership(_newOwner: string, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
};
name(overrides?: CallOverrides): Promise<string>;
approve(_spender: PromiseOrValue<string>, _value: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
approve(_spender: string, _value: BigNumberish, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
disableTransfers(_disable: PromiseOrValue<boolean>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
disableTransfers(_disable: boolean, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
totalSupply(overrides?: CallOverrides): Promise<BigNumber>;
transferFrom(_from: PromiseOrValue<string>, _to: PromiseOrValue<string>, _value: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
transferFrom(_from: string, _to: string, _value: BigNumberish, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;

@@ -209,47 +201,47 @@ decimals(overrides?: CallOverrides): Promise<number>;

standard(overrides?: CallOverrides): Promise<string>;
withdrawTokens(_token: PromiseOrValue<string>, _to: PromiseOrValue<string>, _amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
withdrawTokens(_token: string, _to: string, _amount: BigNumberish, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
balanceOf(arg0: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
balanceOf(arg0: string, overrides?: CallOverrides): Promise<BigNumber>;
acceptOwnership(overrides?: Overrides & {
from?: PromiseOrValue<string>;
from?: string;
}): Promise<ContractTransaction>;
issue(_to: PromiseOrValue<string>, _amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
issue(_to: string, _amount: BigNumberish, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
owner(overrides?: CallOverrides): Promise<string>;
symbol(overrides?: CallOverrides): Promise<string>;
destroy(_from: PromiseOrValue<string>, _amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
destroy(_from: string, _amount: BigNumberish, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
transfer(_to: PromiseOrValue<string>, _value: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
transfer(_to: string, _value: BigNumberish, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
transfersEnabled(overrides?: CallOverrides): Promise<boolean>;
newOwner(overrides?: CallOverrides): Promise<string>;
allowance(arg0: PromiseOrValue<string>, arg1: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
transferOwnership(_newOwner: PromiseOrValue<string>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
allowance(arg0: string, arg1: string, overrides?: CallOverrides): Promise<BigNumber>;
transferOwnership(_newOwner: string, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
callStatic: {
name(overrides?: CallOverrides): Promise<string>;
approve(_spender: PromiseOrValue<string>, _value: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<boolean>;
disableTransfers(_disable: PromiseOrValue<boolean>, overrides?: CallOverrides): Promise<void>;
approve(_spender: string, _value: BigNumberish, overrides?: CallOverrides): Promise<boolean>;
disableTransfers(_disable: boolean, overrides?: CallOverrides): Promise<void>;
totalSupply(overrides?: CallOverrides): Promise<BigNumber>;
transferFrom(_from: PromiseOrValue<string>, _to: PromiseOrValue<string>, _value: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<boolean>;
transferFrom(_from: string, _to: string, _value: BigNumberish, overrides?: CallOverrides): Promise<boolean>;
decimals(overrides?: CallOverrides): Promise<number>;
version(overrides?: CallOverrides): Promise<string>;
standard(overrides?: CallOverrides): Promise<string>;
withdrawTokens(_token: PromiseOrValue<string>, _to: PromiseOrValue<string>, _amount: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<void>;
balanceOf(arg0: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
withdrawTokens(_token: string, _to: string, _amount: BigNumberish, overrides?: CallOverrides): Promise<void>;
balanceOf(arg0: string, overrides?: CallOverrides): Promise<BigNumber>;
acceptOwnership(overrides?: CallOverrides): Promise<void>;
issue(_to: PromiseOrValue<string>, _amount: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<void>;
issue(_to: string, _amount: BigNumberish, overrides?: CallOverrides): Promise<void>;
owner(overrides?: CallOverrides): Promise<string>;
symbol(overrides?: CallOverrides): Promise<string>;
destroy(_from: PromiseOrValue<string>, _amount: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<void>;
transfer(_to: PromiseOrValue<string>, _value: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<boolean>;
destroy(_from: string, _amount: BigNumberish, overrides?: CallOverrides): Promise<void>;
transfer(_to: string, _value: BigNumberish, overrides?: CallOverrides): Promise<boolean>;
transfersEnabled(overrides?: CallOverrides): Promise<boolean>;
newOwner(overrides?: CallOverrides): Promise<string>;
allowance(arg0: PromiseOrValue<string>, arg1: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
transferOwnership(_newOwner: PromiseOrValue<string>, overrides?: CallOverrides): Promise<void>;
allowance(arg0: string, arg1: string, overrides?: CallOverrides): Promise<BigNumber>;
transferOwnership(_newOwner: string, overrides?: CallOverrides): Promise<void>;
};

@@ -265,18 +257,18 @@ filters: {

OwnerUpdate(_prevOwner?: null, _newOwner?: null): OwnerUpdateEventFilter;
"Transfer(address,address,uint256)"(_from?: PromiseOrValue<string> | null, _to?: PromiseOrValue<string> | null, _value?: null): TransferEventFilter;
Transfer(_from?: PromiseOrValue<string> | null, _to?: PromiseOrValue<string> | null, _value?: null): TransferEventFilter;
"Approval(address,address,uint256)"(_owner?: PromiseOrValue<string> | null, _spender?: PromiseOrValue<string> | null, _value?: null): ApprovalEventFilter;
Approval(_owner?: PromiseOrValue<string> | null, _spender?: PromiseOrValue<string> | null, _value?: null): ApprovalEventFilter;
"Transfer(address,address,uint256)"(_from?: string | null, _to?: string | null, _value?: null): TransferEventFilter;
Transfer(_from?: string | null, _to?: string | null, _value?: null): TransferEventFilter;
"Approval(address,address,uint256)"(_owner?: string | null, _spender?: string | null, _value?: null): ApprovalEventFilter;
Approval(_owner?: string | null, _spender?: string | null, _value?: null): ApprovalEventFilter;
};
estimateGas: {
name(overrides?: CallOverrides): Promise<BigNumber>;
approve(_spender: PromiseOrValue<string>, _value: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
approve(_spender: string, _value: BigNumberish, overrides?: Overrides & {
from?: string;
}): Promise<BigNumber>;
disableTransfers(_disable: PromiseOrValue<boolean>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
disableTransfers(_disable: boolean, overrides?: Overrides & {
from?: string;
}): Promise<BigNumber>;
totalSupply(overrides?: CallOverrides): Promise<BigNumber>;
transferFrom(_from: PromiseOrValue<string>, _to: PromiseOrValue<string>, _value: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
transferFrom(_from: string, _to: string, _value: BigNumberish, overrides?: Overrides & {
from?: string;
}): Promise<BigNumber>;

@@ -286,25 +278,25 @@ decimals(overrides?: CallOverrides): Promise<BigNumber>;

standard(overrides?: CallOverrides): Promise<BigNumber>;
withdrawTokens(_token: PromiseOrValue<string>, _to: PromiseOrValue<string>, _amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
withdrawTokens(_token: string, _to: string, _amount: BigNumberish, overrides?: Overrides & {
from?: string;
}): Promise<BigNumber>;
balanceOf(arg0: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
balanceOf(arg0: string, overrides?: CallOverrides): Promise<BigNumber>;
acceptOwnership(overrides?: Overrides & {
from?: PromiseOrValue<string>;
from?: string;
}): Promise<BigNumber>;
issue(_to: PromiseOrValue<string>, _amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
issue(_to: string, _amount: BigNumberish, overrides?: Overrides & {
from?: string;
}): Promise<BigNumber>;
owner(overrides?: CallOverrides): Promise<BigNumber>;
symbol(overrides?: CallOverrides): Promise<BigNumber>;
destroy(_from: PromiseOrValue<string>, _amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
destroy(_from: string, _amount: BigNumberish, overrides?: Overrides & {
from?: string;
}): Promise<BigNumber>;
transfer(_to: PromiseOrValue<string>, _value: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
transfer(_to: string, _value: BigNumberish, overrides?: Overrides & {
from?: string;
}): Promise<BigNumber>;
transfersEnabled(overrides?: CallOverrides): Promise<BigNumber>;
newOwner(overrides?: CallOverrides): Promise<BigNumber>;
allowance(arg0: PromiseOrValue<string>, arg1: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
transferOwnership(_newOwner: PromiseOrValue<string>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
allowance(arg0: string, arg1: string, overrides?: CallOverrides): Promise<BigNumber>;
transferOwnership(_newOwner: string, overrides?: Overrides & {
from?: string;
}): Promise<BigNumber>;

@@ -314,11 +306,11 @@ };

name(overrides?: CallOverrides): Promise<PopulatedTransaction>;
approve(_spender: PromiseOrValue<string>, _value: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
approve(_spender: string, _value: BigNumberish, overrides?: Overrides & {
from?: string;
}): Promise<PopulatedTransaction>;
disableTransfers(_disable: PromiseOrValue<boolean>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
disableTransfers(_disable: boolean, overrides?: Overrides & {
from?: string;
}): Promise<PopulatedTransaction>;
totalSupply(overrides?: CallOverrides): Promise<PopulatedTransaction>;
transferFrom(_from: PromiseOrValue<string>, _to: PromiseOrValue<string>, _value: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
transferFrom(_from: string, _to: string, _value: BigNumberish, overrides?: Overrides & {
from?: string;
}): Promise<PopulatedTransaction>;

@@ -328,25 +320,25 @@ decimals(overrides?: CallOverrides): Promise<PopulatedTransaction>;

standard(overrides?: CallOverrides): Promise<PopulatedTransaction>;
withdrawTokens(_token: PromiseOrValue<string>, _to: PromiseOrValue<string>, _amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
withdrawTokens(_token: string, _to: string, _amount: BigNumberish, overrides?: Overrides & {
from?: string;
}): Promise<PopulatedTransaction>;
balanceOf(arg0: PromiseOrValue<string>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
balanceOf(arg0: string, overrides?: CallOverrides): Promise<PopulatedTransaction>;
acceptOwnership(overrides?: Overrides & {
from?: PromiseOrValue<string>;
from?: string;
}): Promise<PopulatedTransaction>;
issue(_to: PromiseOrValue<string>, _amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
issue(_to: string, _amount: BigNumberish, overrides?: Overrides & {
from?: string;
}): Promise<PopulatedTransaction>;
owner(overrides?: CallOverrides): Promise<PopulatedTransaction>;
symbol(overrides?: CallOverrides): Promise<PopulatedTransaction>;
destroy(_from: PromiseOrValue<string>, _amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
destroy(_from: string, _amount: BigNumberish, overrides?: Overrides & {
from?: string;
}): Promise<PopulatedTransaction>;
transfer(_to: PromiseOrValue<string>, _value: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
transfer(_to: string, _value: BigNumberish, overrides?: Overrides & {
from?: string;
}): Promise<PopulatedTransaction>;
transfersEnabled(overrides?: CallOverrides): Promise<PopulatedTransaction>;
newOwner(overrides?: CallOverrides): Promise<PopulatedTransaction>;
allowance(arg0: PromiseOrValue<string>, arg1: PromiseOrValue<string>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
transferOwnership(_newOwner: PromiseOrValue<string>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
allowance(arg0: string, arg1: string, overrides?: CallOverrides): Promise<PopulatedTransaction>;
transferOwnership(_newOwner: string, overrides?: Overrides & {
from?: string;
}): Promise<PopulatedTransaction>;

@@ -353,0 +345,0 @@ };

import type { BaseContract, BigNumber, BigNumberish, BytesLike, CallOverrides, ContractTransaction, Overrides, 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";
import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from "./common";
export interface VoucherInterface extends utils.Interface {

@@ -47,56 +47,35 @@ functions: {

encodeFunctionData(functionFragment: "implementation", values?: undefined): string;
encodeFunctionData(functionFragment: "upgradeTo", values: [PromiseOrValue<string>]): string;
encodeFunctionData(functionFragment: "upgradeToAndCall", values: [PromiseOrValue<string>, PromiseOrValue<BytesLike>]): string;
encodeFunctionData(functionFragment: "upgradeTo", values: [string]): string;
encodeFunctionData(functionFragment: "upgradeToAndCall", values: [string, BytesLike]): string;
encodeFunctionData(functionFragment: "DEFAULT_ADMIN_ROLE", values?: undefined): string;
encodeFunctionData(functionFragment: "approve", values: [PromiseOrValue<string>, PromiseOrValue<BigNumberish>]): string;
encodeFunctionData(functionFragment: "balanceOf", values: [PromiseOrValue<string>]): string;
encodeFunctionData(functionFragment: "burn", values: [PromiseOrValue<BigNumberish>]): string;
encodeFunctionData(functionFragment: "getApproved", values: [PromiseOrValue<BigNumberish>]): string;
encodeFunctionData(functionFragment: "getRoleAdmin", values: [PromiseOrValue<BytesLike>]): string;
encodeFunctionData(functionFragment: "getRoleMember", values: [PromiseOrValue<BytesLike>, PromiseOrValue<BigNumberish>]): string;
encodeFunctionData(functionFragment: "getRoleMemberCount", values: [PromiseOrValue<BytesLike>]): string;
encodeFunctionData(functionFragment: "grantRole", values: [PromiseOrValue<BytesLike>, PromiseOrValue<string>]): string;
encodeFunctionData(functionFragment: "hasRole", values: [PromiseOrValue<BytesLike>, PromiseOrValue<string>]): string;
encodeFunctionData(functionFragment: "initialize", values: [
PromiseOrValue<boolean>,
PromiseOrValue<string>,
PromiseOrValue<string>
]): string;
encodeFunctionData(functionFragment: "isApprovedForAll", values: [PromiseOrValue<string>, PromiseOrValue<string>]): string;
encodeFunctionData(functionFragment: "mint", values: [PromiseOrValue<string>, PromiseOrValue<BigNumberish>]): string;
encodeFunctionData(functionFragment: "approve", values: [string, BigNumberish]): string;
encodeFunctionData(functionFragment: "balanceOf", values: [string]): string;
encodeFunctionData(functionFragment: "burn", values: [BigNumberish]): string;
encodeFunctionData(functionFragment: "getApproved", values: [BigNumberish]): string;
encodeFunctionData(functionFragment: "getRoleAdmin", values: [BytesLike]): string;
encodeFunctionData(functionFragment: "getRoleMember", values: [BytesLike, BigNumberish]): string;
encodeFunctionData(functionFragment: "getRoleMemberCount", values: [BytesLike]): string;
encodeFunctionData(functionFragment: "grantRole", values: [BytesLike, string]): string;
encodeFunctionData(functionFragment: "hasRole", values: [BytesLike, string]): string;
encodeFunctionData(functionFragment: "initialize", values: [boolean, string, string]): string;
encodeFunctionData(functionFragment: "isApprovedForAll", values: [string, string]): string;
encodeFunctionData(functionFragment: "mint", values: [string, BigNumberish]): string;
encodeFunctionData(functionFragment: "name", values?: undefined): string;
encodeFunctionData(functionFragment: "ownerOf", values: [PromiseOrValue<BigNumberish>]): string;
encodeFunctionData(functionFragment: "postUpgrade", values: [PromiseOrValue<BytesLike>]): string;
encodeFunctionData(functionFragment: "renounceRole", values: [PromiseOrValue<BytesLike>, PromiseOrValue<string>]): string;
encodeFunctionData(functionFragment: "revokeRole", values: [PromiseOrValue<BytesLike>, PromiseOrValue<string>]): string;
encodeFunctionData(functionFragment: "ownerOf", values: [BigNumberish]): string;
encodeFunctionData(functionFragment: "postUpgrade", values: [BytesLike]): string;
encodeFunctionData(functionFragment: "renounceRole", values: [BytesLike, string]): string;
encodeFunctionData(functionFragment: "revokeRole", values: [BytesLike, string]): string;
encodeFunctionData(functionFragment: "roleAdmin", values?: undefined): string;
encodeFunctionData(functionFragment: "roleMinter", values?: undefined): string;
encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256)", values: [
PromiseOrValue<string>,
PromiseOrValue<string>,
PromiseOrValue<BigNumberish>
]): string;
encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", values: [
PromiseOrValue<string>,
PromiseOrValue<string>,
PromiseOrValue<BigNumberish>,
PromiseOrValue<BytesLike>
]): string;
encodeFunctionData(functionFragment: "setApprovalForAll", values: [PromiseOrValue<string>, PromiseOrValue<boolean>]): string;
encodeFunctionData(functionFragment: "setBaseExtension", values: [PromiseOrValue<string>]): string;
encodeFunctionData(functionFragment: "setBaseURI", values: [PromiseOrValue<string>]): string;
encodeFunctionData(functionFragment: "supportsInterface", values: [PromiseOrValue<BytesLike>]): string;
encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256)", values: [string, string, BigNumberish]): string;
encodeFunctionData(functionFragment: "safeTransferFrom(address,address,uint256,bytes)", values: [string, string, BigNumberish, BytesLike]): string;
encodeFunctionData(functionFragment: "setApprovalForAll", values: [string, boolean]): string;
encodeFunctionData(functionFragment: "setBaseExtension", values: [string]): string;
encodeFunctionData(functionFragment: "setBaseURI", values: [string]): string;
encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string;
encodeFunctionData(functionFragment: "symbol", values?: undefined): string;
encodeFunctionData(functionFragment: "tokenURI", values: [PromiseOrValue<BigNumberish>]): string;
encodeFunctionData(functionFragment: "tokensByOwner", values: [
PromiseOrValue<string>,
PromiseOrValue<BigNumberish>,
PromiseOrValue<BigNumberish>
]): string;
encodeFunctionData(functionFragment: "transferFrom", values: [
PromiseOrValue<string>,
PromiseOrValue<string>,
PromiseOrValue<BigNumberish>
]): string;
encodeFunctionData(functionFragment: "useGlobalURI", values: [PromiseOrValue<boolean>]): string;
encodeFunctionData(functionFragment: "tokenURI", values: [BigNumberish]): string;
encodeFunctionData(functionFragment: "tokensByOwner", values: [string, BigNumberish, BigNumberish]): string;
encodeFunctionData(functionFragment: "transferFrom", values: [string, string, BigNumberish]): string;
encodeFunctionData(functionFragment: "useGlobalURI", values: [boolean]): string;
encodeFunctionData(functionFragment: "version", values?: undefined): string;

@@ -297,73 +276,73 @@ decodeFunctionResult(functionFragment: "admin", data: BytesLike): Result;

admin(overrides?: Overrides & {
from?: PromiseOrValue<string>;
from?: string;
}): Promise<ContractTransaction>;
implementation(overrides?: Overrides & {
from?: PromiseOrValue<string>;
from?: string;
}): Promise<ContractTransaction>;
upgradeTo(newImplementation: PromiseOrValue<string>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
upgradeTo(newImplementation: string, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
upgradeToAndCall(newImplementation: PromiseOrValue<string>, data: PromiseOrValue<BytesLike>, overrides?: PayableOverrides & {
from?: PromiseOrValue<string>;
upgradeToAndCall(newImplementation: string, data: BytesLike, overrides?: PayableOverrides & {
from?: string;
}): Promise<ContractTransaction>;
DEFAULT_ADMIN_ROLE(overrides?: CallOverrides): Promise<[string]>;
approve(to: PromiseOrValue<string>, tokenId: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
approve(to: string, tokenId: BigNumberish, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
balanceOf(owner: PromiseOrValue<string>, overrides?: CallOverrides): Promise<[BigNumber]>;
burn(tokenId: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
balanceOf(owner: string, overrides?: CallOverrides): Promise<[BigNumber]>;
burn(tokenId: BigNumberish, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
getApproved(tokenId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[string]>;
getRoleAdmin(role: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<[string]>;
getRoleMember(role: PromiseOrValue<BytesLike>, index: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[string]>;
getRoleMemberCount(role: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<[BigNumber]>;
grantRole(role: PromiseOrValue<BytesLike>, account: PromiseOrValue<string>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
getApproved(tokenId: BigNumberish, overrides?: CallOverrides): Promise<[string]>;
getRoleAdmin(role: BytesLike, overrides?: CallOverrides): Promise<[string]>;
getRoleMember(role: BytesLike, index: BigNumberish, overrides?: CallOverrides): Promise<[string]>;
getRoleMemberCount(role: BytesLike, overrides?: CallOverrides): Promise<[BigNumber]>;
grantRole(role: BytesLike, account: string, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
hasRole(role: PromiseOrValue<BytesLike>, account: PromiseOrValue<string>, overrides?: CallOverrides): Promise<[boolean]>;
initialize(newUseGlobalURI: PromiseOrValue<boolean>, newBaseURI: PromiseOrValue<string>, newBaseExtension: PromiseOrValue<string>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
hasRole(role: BytesLike, account: string, overrides?: CallOverrides): Promise<[boolean]>;
initialize(newUseGlobalURI: boolean, newBaseURI: string, newBaseExtension: string, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
isApprovedForAll(owner: PromiseOrValue<string>, operator: PromiseOrValue<string>, overrides?: CallOverrides): Promise<[boolean]>;
mint(owner: PromiseOrValue<string>, tokenId: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
isApprovedForAll(owner: string, operator: string, overrides?: CallOverrides): Promise<[boolean]>;
mint(owner: string, tokenId: BigNumberish, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
name(overrides?: CallOverrides): Promise<[string]>;
ownerOf(tokenId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[string]>;
postUpgrade(data: PromiseOrValue<BytesLike>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
ownerOf(tokenId: BigNumberish, overrides?: CallOverrides): Promise<[string]>;
postUpgrade(data: BytesLike, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
renounceRole(role: PromiseOrValue<BytesLike>, account: PromiseOrValue<string>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
renounceRole(role: BytesLike, account: string, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
revokeRole(role: PromiseOrValue<BytesLike>, account: PromiseOrValue<string>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
revokeRole(role: BytesLike, account: string, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
roleAdmin(overrides?: CallOverrides): Promise<[string]>;
roleMinter(overrides?: CallOverrides): Promise<[string]>;
"safeTransferFrom(address,address,uint256)"(from: PromiseOrValue<string>, to: PromiseOrValue<string>, tokenId: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
"safeTransferFrom(address,address,uint256)"(from: string, to: string, tokenId: BigNumberish, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
"safeTransferFrom(address,address,uint256,bytes)"(from: PromiseOrValue<string>, to: PromiseOrValue<string>, tokenId: PromiseOrValue<BigNumberish>, data: PromiseOrValue<BytesLike>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
"safeTransferFrom(address,address,uint256,bytes)"(from: string, to: string, tokenId: BigNumberish, data: BytesLike, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
setApprovalForAll(operator: PromiseOrValue<string>, approved: PromiseOrValue<boolean>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
setApprovalForAll(operator: string, approved: boolean, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
setBaseExtension(newBaseExtension: PromiseOrValue<string>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
setBaseExtension(newBaseExtension: string, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
setBaseURI(newBaseURI: PromiseOrValue<string>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
setBaseURI(newBaseURI: string, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
supportsInterface(interfaceId: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<[boolean]>;
supportsInterface(interfaceId: BytesLike, overrides?: CallOverrides): Promise<[boolean]>;
symbol(overrides?: CallOverrides): Promise<[string]>;
tokenURI(tokenId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[string]>;
tokensByOwner(owner: PromiseOrValue<string>, startIndex: PromiseOrValue<BigNumberish>, endIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[BigNumber[]]>;
transferFrom(from: PromiseOrValue<string>, to: PromiseOrValue<string>, tokenId: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
tokenURI(tokenId: BigNumberish, overrides?: CallOverrides): Promise<[string]>;
tokensByOwner(owner: string, startIndex: BigNumberish, endIndex: BigNumberish, overrides?: CallOverrides): Promise<[BigNumber[]]>;
transferFrom(from: string, to: string, tokenId: BigNumberish, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
useGlobalURI(newUseGlobalURI: PromiseOrValue<boolean>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
useGlobalURI(newUseGlobalURI: boolean, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;

@@ -373,73 +352,73 @@ version(overrides?: CallOverrides): Promise<[number]>;

admin(overrides?: Overrides & {
from?: PromiseOrValue<string>;
from?: string;
}): Promise<ContractTransaction>;
implementation(overrides?: Overrides & {
from?: PromiseOrValue<string>;
from?: string;
}): Promise<ContractTransaction>;
upgradeTo(newImplementation: PromiseOrValue<string>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
upgradeTo(newImplementation: string, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
upgradeToAndCall(newImplementation: PromiseOrValue<string>, data: PromiseOrValue<BytesLike>, overrides?: PayableOverrides & {
from?: PromiseOrValue<string>;
upgradeToAndCall(newImplementation: string, data: BytesLike, overrides?: PayableOverrides & {
from?: string;
}): Promise<ContractTransaction>;
DEFAULT_ADMIN_ROLE(overrides?: CallOverrides): Promise<string>;
approve(to: PromiseOrValue<string>, tokenId: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
approve(to: string, tokenId: BigNumberish, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
balanceOf(owner: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
burn(tokenId: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
balanceOf(owner: string, overrides?: CallOverrides): Promise<BigNumber>;
burn(tokenId: BigNumberish, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
getApproved(tokenId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<string>;
getRoleAdmin(role: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<string>;
getRoleMember(role: PromiseOrValue<BytesLike>, index: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<string>;
getRoleMemberCount(role: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<BigNumber>;
grantRole(role: PromiseOrValue<BytesLike>, account: PromiseOrValue<string>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
getApproved(tokenId: BigNumberish, overrides?: CallOverrides): Promise<string>;
getRoleAdmin(role: BytesLike, overrides?: CallOverrides): Promise<string>;
getRoleMember(role: BytesLike, index: BigNumberish, overrides?: CallOverrides): Promise<string>;
getRoleMemberCount(role: BytesLike, overrides?: CallOverrides): Promise<BigNumber>;
grantRole(role: BytesLike, account: string, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
hasRole(role: PromiseOrValue<BytesLike>, account: PromiseOrValue<string>, overrides?: CallOverrides): Promise<boolean>;
initialize(newUseGlobalURI: PromiseOrValue<boolean>, newBaseURI: PromiseOrValue<string>, newBaseExtension: PromiseOrValue<string>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
hasRole(role: BytesLike, account: string, overrides?: CallOverrides): Promise<boolean>;
initialize(newUseGlobalURI: boolean, newBaseURI: string, newBaseExtension: string, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
isApprovedForAll(owner: PromiseOrValue<string>, operator: PromiseOrValue<string>, overrides?: CallOverrides): Promise<boolean>;
mint(owner: PromiseOrValue<string>, tokenId: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
isApprovedForAll(owner: string, operator: string, overrides?: CallOverrides): Promise<boolean>;
mint(owner: string, tokenId: BigNumberish, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
name(overrides?: CallOverrides): Promise<string>;
ownerOf(tokenId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<string>;
postUpgrade(data: PromiseOrValue<BytesLike>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
ownerOf(tokenId: BigNumberish, overrides?: CallOverrides): Promise<string>;
postUpgrade(data: BytesLike, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
renounceRole(role: PromiseOrValue<BytesLike>, account: PromiseOrValue<string>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
renounceRole(role: BytesLike, account: string, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
revokeRole(role: PromiseOrValue<BytesLike>, account: PromiseOrValue<string>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
revokeRole(role: BytesLike, account: string, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
roleAdmin(overrides?: CallOverrides): Promise<string>;
roleMinter(overrides?: CallOverrides): Promise<string>;
"safeTransferFrom(address,address,uint256)"(from: PromiseOrValue<string>, to: PromiseOrValue<string>, tokenId: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
"safeTransferFrom(address,address,uint256)"(from: string, to: string, tokenId: BigNumberish, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
"safeTransferFrom(address,address,uint256,bytes)"(from: PromiseOrValue<string>, to: PromiseOrValue<string>, tokenId: PromiseOrValue<BigNumberish>, data: PromiseOrValue<BytesLike>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
"safeTransferFrom(address,address,uint256,bytes)"(from: string, to: string, tokenId: BigNumberish, data: BytesLike, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
setApprovalForAll(operator: PromiseOrValue<string>, approved: PromiseOrValue<boolean>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
setApprovalForAll(operator: string, approved: boolean, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
setBaseExtension(newBaseExtension: PromiseOrValue<string>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
setBaseExtension(newBaseExtension: string, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
setBaseURI(newBaseURI: PromiseOrValue<string>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
setBaseURI(newBaseURI: string, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
supportsInterface(interfaceId: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<boolean>;
supportsInterface(interfaceId: BytesLike, overrides?: CallOverrides): Promise<boolean>;
symbol(overrides?: CallOverrides): Promise<string>;
tokenURI(tokenId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<string>;
tokensByOwner(owner: PromiseOrValue<string>, startIndex: PromiseOrValue<BigNumberish>, endIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber[]>;
transferFrom(from: PromiseOrValue<string>, to: PromiseOrValue<string>, tokenId: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
tokenURI(tokenId: BigNumberish, overrides?: CallOverrides): Promise<string>;
tokensByOwner(owner: string, startIndex: BigNumberish, endIndex: BigNumberish, overrides?: CallOverrides): Promise<BigNumber[]>;
transferFrom(from: string, to: string, tokenId: BigNumberish, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
useGlobalURI(newUseGlobalURI: PromiseOrValue<boolean>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
useGlobalURI(newUseGlobalURI: boolean, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;

@@ -450,35 +429,35 @@ version(overrides?: CallOverrides): Promise<number>;

implementation(overrides?: CallOverrides): Promise<string>;
upgradeTo(newImplementation: PromiseOrValue<string>, overrides?: CallOverrides): Promise<void>;
upgradeToAndCall(newImplementation: PromiseOrValue<string>, data: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<void>;
upgradeTo(newImplementation: string, overrides?: CallOverrides): Promise<void>;
upgradeToAndCall(newImplementation: string, data: BytesLike, overrides?: CallOverrides): Promise<void>;
DEFAULT_ADMIN_ROLE(overrides?: CallOverrides): Promise<string>;
approve(to: PromiseOrValue<string>, tokenId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<void>;
balanceOf(owner: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
burn(tokenId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<void>;
getApproved(tokenId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<string>;
getRoleAdmin(role: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<string>;
getRoleMember(role: PromiseOrValue<BytesLike>, index: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<string>;
getRoleMemberCount(role: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<BigNumber>;
grantRole(role: PromiseOrValue<BytesLike>, account: PromiseOrValue<string>, overrides?: CallOverrides): Promise<void>;
hasRole(role: PromiseOrValue<BytesLike>, account: PromiseOrValue<string>, overrides?: CallOverrides): Promise<boolean>;
initialize(newUseGlobalURI: PromiseOrValue<boolean>, newBaseURI: PromiseOrValue<string>, newBaseExtension: PromiseOrValue<string>, overrides?: CallOverrides): Promise<void>;
isApprovedForAll(owner: PromiseOrValue<string>, operator: PromiseOrValue<string>, overrides?: CallOverrides): Promise<boolean>;
mint(owner: PromiseOrValue<string>, tokenId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<void>;
approve(to: string, tokenId: BigNumberish, overrides?: CallOverrides): Promise<void>;
balanceOf(owner: string, overrides?: CallOverrides): Promise<BigNumber>;
burn(tokenId: BigNumberish, overrides?: CallOverrides): Promise<void>;
getApproved(tokenId: BigNumberish, overrides?: CallOverrides): Promise<string>;
getRoleAdmin(role: BytesLike, overrides?: CallOverrides): Promise<string>;
getRoleMember(role: BytesLike, index: BigNumberish, overrides?: CallOverrides): Promise<string>;
getRoleMemberCount(role: BytesLike, overrides?: CallOverrides): Promise<BigNumber>;
grantRole(role: BytesLike, account: string, overrides?: CallOverrides): Promise<void>;
hasRole(role: BytesLike, account: string, overrides?: CallOverrides): Promise<boolean>;
initialize(newUseGlobalURI: boolean, newBaseURI: string, newBaseExtension: string, overrides?: CallOverrides): Promise<void>;
isApprovedForAll(owner: string, operator: string, overrides?: CallOverrides): Promise<boolean>;
mint(owner: string, tokenId: BigNumberish, overrides?: CallOverrides): Promise<void>;
name(overrides?: CallOverrides): Promise<string>;
ownerOf(tokenId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<string>;
postUpgrade(data: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<void>;
renounceRole(role: PromiseOrValue<BytesLike>, account: PromiseOrValue<string>, overrides?: CallOverrides): Promise<void>;
revokeRole(role: PromiseOrValue<BytesLike>, account: PromiseOrValue<string>, overrides?: CallOverrides): Promise<void>;
ownerOf(tokenId: BigNumberish, overrides?: CallOverrides): Promise<string>;
postUpgrade(data: BytesLike, overrides?: CallOverrides): Promise<void>;
renounceRole(role: BytesLike, account: string, overrides?: CallOverrides): Promise<void>;
revokeRole(role: BytesLike, account: string, overrides?: CallOverrides): Promise<void>;
roleAdmin(overrides?: CallOverrides): Promise<string>;
roleMinter(overrides?: CallOverrides): Promise<string>;
"safeTransferFrom(address,address,uint256)"(from: PromiseOrValue<string>, to: PromiseOrValue<string>, tokenId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<void>;
"safeTransferFrom(address,address,uint256,bytes)"(from: PromiseOrValue<string>, to: PromiseOrValue<string>, tokenId: PromiseOrValue<BigNumberish>, data: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<void>;
setApprovalForAll(operator: PromiseOrValue<string>, approved: PromiseOrValue<boolean>, overrides?: CallOverrides): Promise<void>;
setBaseExtension(newBaseExtension: PromiseOrValue<string>, overrides?: CallOverrides): Promise<void>;
setBaseURI(newBaseURI: PromiseOrValue<string>, overrides?: CallOverrides): Promise<void>;
supportsInterface(interfaceId: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<boolean>;
"safeTransferFrom(address,address,uint256)"(from: string, to: string, tokenId: BigNumberish, overrides?: CallOverrides): Promise<void>;
"safeTransferFrom(address,address,uint256,bytes)"(from: string, to: string, tokenId: BigNumberish, data: BytesLike, overrides?: CallOverrides): Promise<void>;
setApprovalForAll(operator: string, approved: boolean, overrides?: CallOverrides): Promise<void>;
setBaseExtension(newBaseExtension: string, overrides?: CallOverrides): Promise<void>;
setBaseURI(newBaseURI: string, overrides?: CallOverrides): Promise<void>;
supportsInterface(interfaceId: BytesLike, overrides?: CallOverrides): Promise<boolean>;
symbol(overrides?: CallOverrides): Promise<string>;
tokenURI(tokenId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<string>;
tokensByOwner(owner: PromiseOrValue<string>, startIndex: PromiseOrValue<BigNumberish>, endIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber[]>;
transferFrom(from: PromiseOrValue<string>, to: PromiseOrValue<string>, tokenId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<void>;
useGlobalURI(newUseGlobalURI: PromiseOrValue<boolean>, overrides?: CallOverrides): Promise<void>;
tokenURI(tokenId: BigNumberish, overrides?: CallOverrides): Promise<string>;
tokensByOwner(owner: string, startIndex: BigNumberish, endIndex: BigNumberish, overrides?: CallOverrides): Promise<BigNumber[]>;
transferFrom(from: string, to: string, tokenId: BigNumberish, overrides?: CallOverrides): Promise<void>;
useGlobalURI(newUseGlobalURI: boolean, overrides?: CallOverrides): Promise<void>;
version(overrides?: CallOverrides): Promise<number>;

@@ -489,10 +468,10 @@ };

AdminChanged(previousAdmin?: null, newAdmin?: null): AdminChangedEventFilter;
"BeaconUpgraded(address)"(beacon?: PromiseOrValue<string> | null): BeaconUpgradedEventFilter;
BeaconUpgraded(beacon?: PromiseOrValue<string> | null): BeaconUpgradedEventFilter;
"Upgraded(address)"(implementation?: PromiseOrValue<string> | null): UpgradedEventFilter;
Upgraded(implementation?: PromiseOrValue<string> | null): UpgradedEventFilter;
"Approval(address,address,uint256)"(owner?: PromiseOrValue<string> | null, approved?: PromiseOrValue<string> | null, tokenId?: PromiseOrValue<BigNumberish> | null): ApprovalEventFilter;
Approval(owner?: PromiseOrValue<string> | null, approved?: PromiseOrValue<string> | null, tokenId?: PromiseOrValue<BigNumberish> | null): ApprovalEventFilter;
"ApprovalForAll(address,address,bool)"(owner?: PromiseOrValue<string> | null, operator?: PromiseOrValue<string> | null, approved?: null): ApprovalForAllEventFilter;
ApprovalForAll(owner?: PromiseOrValue<string> | null, operator?: PromiseOrValue<string> | null, approved?: null): ApprovalForAllEventFilter;
"BeaconUpgraded(address)"(beacon?: string | null): BeaconUpgradedEventFilter;
BeaconUpgraded(beacon?: string | null): BeaconUpgradedEventFilter;
"Upgraded(address)"(implementation?: string | null): UpgradedEventFilter;
Upgraded(implementation?: string | null): UpgradedEventFilter;
"Approval(address,address,uint256)"(owner?: string | null, approved?: string | null, tokenId?: BigNumberish | null): ApprovalEventFilter;
Approval(owner?: string | null, approved?: string | null, tokenId?: BigNumberish | null): ApprovalEventFilter;
"ApprovalForAll(address,address,bool)"(owner?: string | null, operator?: string | null, approved?: null): ApprovalForAllEventFilter;
ApprovalForAll(owner?: string | null, operator?: string | null, approved?: null): ApprovalForAllEventFilter;
"BaseExtensionUpdated(string)"(newBaseExtension?: null): BaseExtensionUpdatedEventFilter;

@@ -504,10 +483,10 @@ BaseExtensionUpdated(newBaseExtension?: null): BaseExtensionUpdatedEventFilter;

Initialized(version?: null): InitializedEventFilter;
"RoleAdminChanged(bytes32,bytes32,bytes32)"(role?: PromiseOrValue<BytesLike> | null, previousAdminRole?: PromiseOrValue<BytesLike> | null, newAdminRole?: PromiseOrValue<BytesLike> | null): RoleAdminChangedEventFilter;
RoleAdminChanged(role?: PromiseOrValue<BytesLike> | null, previousAdminRole?: PromiseOrValue<BytesLike> | null, newAdminRole?: PromiseOrValue<BytesLike> | null): RoleAdminChangedEventFilter;
"RoleGranted(bytes32,address,address)"(role?: PromiseOrValue<BytesLike> | null, account?: PromiseOrValue<string> | null, sender?: PromiseOrValue<string> | null): RoleGrantedEventFilter;
RoleGranted(role?: PromiseOrValue<BytesLike> | null, account?: PromiseOrValue<string> | null, sender?: PromiseOrValue<string> | null): RoleGrantedEventFilter;
"RoleRevoked(bytes32,address,address)"(role?: PromiseOrValue<BytesLike> | null, account?: PromiseOrValue<string> | null, sender?: PromiseOrValue<string> | null): RoleRevokedEventFilter;
RoleRevoked(role?: PromiseOrValue<BytesLike> | null, account?: PromiseOrValue<string> | null, sender?: PromiseOrValue<string> | null): RoleRevokedEventFilter;
"Transfer(address,address,uint256)"(from?: PromiseOrValue<string> | null, to?: PromiseOrValue<string> | null, tokenId?: PromiseOrValue<BigNumberish> | null): TransferEventFilter;
Transfer(from?: PromiseOrValue<string> | null, to?: PromiseOrValue<string> | null, tokenId?: PromiseOrValue<BigNumberish> | null): TransferEventFilter;
"RoleAdminChanged(bytes32,bytes32,bytes32)"(role?: BytesLike | null, previousAdminRole?: BytesLike | null, newAdminRole?: BytesLike | null): RoleAdminChangedEventFilter;
RoleAdminChanged(role?: BytesLike | null, previousAdminRole?: BytesLike | null, newAdminRole?: BytesLike | null): RoleAdminChangedEventFilter;
"RoleGranted(bytes32,address,address)"(role?: BytesLike | null, account?: string | null, sender?: string | null): RoleGrantedEventFilter;
RoleGranted(role?: BytesLike | null, account?: string | null, sender?: string | null): RoleGrantedEventFilter;
"RoleRevoked(bytes32,address,address)"(role?: BytesLike | null, account?: string | null, sender?: string | null): RoleRevokedEventFilter;
RoleRevoked(role?: BytesLike | null, account?: string | null, sender?: string | null): RoleRevokedEventFilter;
"Transfer(address,address,uint256)"(from?: string | null, to?: string | null, tokenId?: BigNumberish | null): TransferEventFilter;
Transfer(from?: string | null, to?: string | null, tokenId?: BigNumberish | null): TransferEventFilter;
"UseGlobalURIUpdated(bool)"(newUseGlobalURI?: null): UseGlobalURIUpdatedEventFilter;

@@ -518,73 +497,73 @@ UseGlobalURIUpdated(newUseGlobalURI?: null): UseGlobalURIUpdatedEventFilter;

admin(overrides?: Overrides & {
from?: PromiseOrValue<string>;
from?: string;
}): Promise<BigNumber>;
implementation(overrides?: Overrides & {
from?: PromiseOrValue<string>;
from?: string;
}): Promise<BigNumber>;
upgradeTo(newImplementation: PromiseOrValue<string>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
upgradeTo(newImplementation: string, overrides?: Overrides & {
from?: string;
}): Promise<BigNumber>;
upgradeToAndCall(newImplementation: PromiseOrValue<string>, data: PromiseOrValue<BytesLike>, overrides?: PayableOverrides & {
from?: PromiseOrValue<string>;
upgradeToAndCall(newImplementation: string, data: BytesLike, overrides?: PayableOverrides & {
from?: string;
}): Promise<BigNumber>;
DEFAULT_ADMIN_ROLE(overrides?: CallOverrides): Promise<BigNumber>;
approve(to: PromiseOrValue<string>, tokenId: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
approve(to: string, tokenId: BigNumberish, overrides?: Overrides & {
from?: string;
}): Promise<BigNumber>;
balanceOf(owner: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
burn(tokenId: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
balanceOf(owner: string, overrides?: CallOverrides): Promise<BigNumber>;
burn(tokenId: BigNumberish, overrides?: Overrides & {
from?: string;
}): Promise<BigNumber>;
getApproved(tokenId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
getRoleAdmin(role: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<BigNumber>;
getRoleMember(role: PromiseOrValue<BytesLike>, index: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
getRoleMemberCount(role: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<BigNumber>;
grantRole(role: PromiseOrValue<BytesLike>, account: PromiseOrValue<string>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
getApproved(tokenId: BigNumberish, overrides?: CallOverrides): Promise<BigNumber>;
getRoleAdmin(role: BytesLike, overrides?: CallOverrides): Promise<BigNumber>;
getRoleMember(role: BytesLike, index: BigNumberish, overrides?: CallOverrides): Promise<BigNumber>;
getRoleMemberCount(role: BytesLike, overrides?: CallOverrides): Promise<BigNumber>;
grantRole(role: BytesLike, account: string, overrides?: Overrides & {
from?: string;
}): Promise<BigNumber>;
hasRole(role: PromiseOrValue<BytesLike>, account: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
initialize(newUseGlobalURI: PromiseOrValue<boolean>, newBaseURI: PromiseOrValue<string>, newBaseExtension: PromiseOrValue<string>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
hasRole(role: BytesLike, account: string, overrides?: CallOverrides): Promise<BigNumber>;
initialize(newUseGlobalURI: boolean, newBaseURI: string, newBaseExtension: string, overrides?: Overrides & {
from?: string;
}): Promise<BigNumber>;
isApprovedForAll(owner: PromiseOrValue<string>, operator: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
mint(owner: PromiseOrValue<string>, tokenId: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
isApprovedForAll(owner: string, operator: string, overrides?: CallOverrides): Promise<BigNumber>;
mint(owner: string, tokenId: BigNumberish, overrides?: Overrides & {
from?: string;
}): Promise<BigNumber>;
name(overrides?: CallOverrides): Promise<BigNumber>;
ownerOf(tokenId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
postUpgrade(data: PromiseOrValue<BytesLike>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
ownerOf(tokenId: BigNumberish, overrides?: CallOverrides): Promise<BigNumber>;
postUpgrade(data: BytesLike, overrides?: Overrides & {
from?: string;
}): Promise<BigNumber>;
renounceRole(role: PromiseOrValue<BytesLike>, account: PromiseOrValue<string>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
renounceRole(role: BytesLike, account: string, overrides?: Overrides & {
from?: string;
}): Promise<BigNumber>;
revokeRole(role: PromiseOrValue<BytesLike>, account: PromiseOrValue<string>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
revokeRole(role: BytesLike, account: string, overrides?: Overrides & {
from?: string;
}): Promise<BigNumber>;
roleAdmin(overrides?: CallOverrides): Promise<BigNumber>;
roleMinter(overrides?: CallOverrides): Promise<BigNumber>;
"safeTransferFrom(address,address,uint256)"(from: PromiseOrValue<string>, to: PromiseOrValue<string>, tokenId: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
"safeTransferFrom(address,address,uint256)"(from: string, to: string, tokenId: BigNumberish, overrides?: Overrides & {
from?: string;
}): Promise<BigNumber>;
"safeTransferFrom(address,address,uint256,bytes)"(from: PromiseOrValue<string>, to: PromiseOrValue<string>, tokenId: PromiseOrValue<BigNumberish>, data: PromiseOrValue<BytesLike>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
"safeTransferFrom(address,address,uint256,bytes)"(from: string, to: string, tokenId: BigNumberish, data: BytesLike, overrides?: Overrides & {
from?: string;
}): Promise<BigNumber>;
setApprovalForAll(operator: PromiseOrValue<string>, approved: PromiseOrValue<boolean>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
setApprovalForAll(operator: string, approved: boolean, overrides?: Overrides & {
from?: string;
}): Promise<BigNumber>;
setBaseExtension(newBaseExtension: PromiseOrValue<string>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
setBaseExtension(newBaseExtension: string, overrides?: Overrides & {
from?: string;
}): Promise<BigNumber>;
setBaseURI(newBaseURI: PromiseOrValue<string>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
setBaseURI(newBaseURI: string, overrides?: Overrides & {
from?: string;
}): Promise<BigNumber>;
supportsInterface(interfaceId: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<BigNumber>;
supportsInterface(interfaceId: BytesLike, overrides?: CallOverrides): Promise<BigNumber>;
symbol(overrides?: CallOverrides): Promise<BigNumber>;
tokenURI(tokenId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
tokensByOwner(owner: PromiseOrValue<string>, startIndex: PromiseOrValue<BigNumberish>, endIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
transferFrom(from: PromiseOrValue<string>, to: PromiseOrValue<string>, tokenId: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
tokenURI(tokenId: BigNumberish, overrides?: CallOverrides): Promise<BigNumber>;
tokensByOwner(owner: string, startIndex: BigNumberish, endIndex: BigNumberish, overrides?: CallOverrides): Promise<BigNumber>;
transferFrom(from: string, to: string, tokenId: BigNumberish, overrides?: Overrides & {
from?: string;
}): Promise<BigNumber>;
useGlobalURI(newUseGlobalURI: PromiseOrValue<boolean>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
useGlobalURI(newUseGlobalURI: boolean, overrides?: Overrides & {
from?: string;
}): Promise<BigNumber>;

@@ -595,73 +574,73 @@ version(overrides?: CallOverrides): Promise<BigNumber>;

admin(overrides?: Overrides & {
from?: PromiseOrValue<string>;
from?: string;
}): Promise<PopulatedTransaction>;
implementation(overrides?: Overrides & {
from?: PromiseOrValue<string>;
from?: string;
}): Promise<PopulatedTransaction>;
upgradeTo(newImplementation: PromiseOrValue<string>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
upgradeTo(newImplementation: string, overrides?: Overrides & {
from?: string;
}): Promise<PopulatedTransaction>;
upgradeToAndCall(newImplementation: PromiseOrValue<string>, data: PromiseOrValue<BytesLike>, overrides?: PayableOverrides & {
from?: PromiseOrValue<string>;
upgradeToAndCall(newImplementation: string, data: BytesLike, overrides?: PayableOverrides & {
from?: string;
}): Promise<PopulatedTransaction>;
DEFAULT_ADMIN_ROLE(overrides?: CallOverrides): Promise<PopulatedTransaction>;
approve(to: PromiseOrValue<string>, tokenId: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
approve(to: string, tokenId: BigNumberish, overrides?: Overrides & {
from?: string;
}): Promise<PopulatedTransaction>;
balanceOf(owner: PromiseOrValue<string>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
burn(tokenId: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
balanceOf(owner: string, overrides?: CallOverrides): Promise<PopulatedTransaction>;
burn(tokenId: BigNumberish, overrides?: Overrides & {
from?: string;
}): Promise<PopulatedTransaction>;
getApproved(tokenId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
getRoleAdmin(role: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
getRoleMember(role: PromiseOrValue<BytesLike>, index: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
getRoleMemberCount(role: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
grantRole(role: PromiseOrValue<BytesLike>, account: PromiseOrValue<string>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
getApproved(tokenId: BigNumberish, overrides?: CallOverrides): Promise<PopulatedTransaction>;
getRoleAdmin(role: BytesLike, overrides?: CallOverrides): Promise<PopulatedTransaction>;
getRoleMember(role: BytesLike, index: BigNumberish, overrides?: CallOverrides): Promise<PopulatedTransaction>;
getRoleMemberCount(role: BytesLike, overrides?: CallOverrides): Promise<PopulatedTransaction>;
grantRole(role: BytesLike, account: string, overrides?: Overrides & {
from?: string;
}): Promise<PopulatedTransaction>;
hasRole(role: PromiseOrValue<BytesLike>, account: PromiseOrValue<string>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
initialize(newUseGlobalURI: PromiseOrValue<boolean>, newBaseURI: PromiseOrValue<string>, newBaseExtension: PromiseOrValue<string>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
hasRole(role: BytesLike, account: string, overrides?: CallOverrides): Promise<PopulatedTransaction>;
initialize(newUseGlobalURI: boolean, newBaseURI: string, newBaseExtension: string, overrides?: Overrides & {
from?: string;
}): Promise<PopulatedTransaction>;
isApprovedForAll(owner: PromiseOrValue<string>, operator: PromiseOrValue<string>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
mint(owner: PromiseOrValue<string>, tokenId: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
isApprovedForAll(owner: string, operator: string, overrides?: CallOverrides): Promise<PopulatedTransaction>;
mint(owner: string, tokenId: BigNumberish, overrides?: Overrides & {
from?: string;
}): Promise<PopulatedTransaction>;
name(overrides?: CallOverrides): Promise<PopulatedTransaction>;
ownerOf(tokenId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
postUpgrade(data: PromiseOrValue<BytesLike>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
ownerOf(tokenId: BigNumberish, overrides?: CallOverrides): Promise<PopulatedTransaction>;
postUpgrade(data: BytesLike, overrides?: Overrides & {
from?: string;
}): Promise<PopulatedTransaction>;
renounceRole(role: PromiseOrValue<BytesLike>, account: PromiseOrValue<string>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
renounceRole(role: BytesLike, account: string, overrides?: Overrides & {
from?: string;
}): Promise<PopulatedTransaction>;
revokeRole(role: PromiseOrValue<BytesLike>, account: PromiseOrValue<string>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
revokeRole(role: BytesLike, account: string, overrides?: Overrides & {
from?: string;
}): Promise<PopulatedTransaction>;
roleAdmin(overrides?: CallOverrides): Promise<PopulatedTransaction>;
roleMinter(overrides?: CallOverrides): Promise<PopulatedTransaction>;
"safeTransferFrom(address,address,uint256)"(from: PromiseOrValue<string>, to: PromiseOrValue<string>, tokenId: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
"safeTransferFrom(address,address,uint256)"(from: string, to: string, tokenId: BigNumberish, overrides?: Overrides & {
from?: string;
}): Promise<PopulatedTransaction>;
"safeTransferFrom(address,address,uint256,bytes)"(from: PromiseOrValue<string>, to: PromiseOrValue<string>, tokenId: PromiseOrValue<BigNumberish>, data: PromiseOrValue<BytesLike>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
"safeTransferFrom(address,address,uint256,bytes)"(from: string, to: string, tokenId: BigNumberish, data: BytesLike, overrides?: Overrides & {
from?: string;
}): Promise<PopulatedTransaction>;
setApprovalForAll(operator: PromiseOrValue<string>, approved: PromiseOrValue<boolean>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
setApprovalForAll(operator: string, approved: boolean, overrides?: Overrides & {
from?: string;
}): Promise<PopulatedTransaction>;
setBaseExtension(newBaseExtension: PromiseOrValue<string>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
setBaseExtension(newBaseExtension: string, overrides?: Overrides & {
from?: string;
}): Promise<PopulatedTransaction>;
setBaseURI(newBaseURI: PromiseOrValue<string>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
setBaseURI(newBaseURI: string, overrides?: Overrides & {
from?: string;
}): Promise<PopulatedTransaction>;
supportsInterface(interfaceId: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
supportsInterface(interfaceId: BytesLike, overrides?: CallOverrides): Promise<PopulatedTransaction>;
symbol(overrides?: CallOverrides): Promise<PopulatedTransaction>;
tokenURI(tokenId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
tokensByOwner(owner: PromiseOrValue<string>, startIndex: PromiseOrValue<BigNumberish>, endIndex: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
transferFrom(from: PromiseOrValue<string>, to: PromiseOrValue<string>, tokenId: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
tokenURI(tokenId: BigNumberish, overrides?: CallOverrides): Promise<PopulatedTransaction>;
tokensByOwner(owner: string, startIndex: BigNumberish, endIndex: BigNumberish, overrides?: CallOverrides): Promise<PopulatedTransaction>;
transferFrom(from: string, to: string, tokenId: BigNumberish, overrides?: Overrides & {
from?: string;
}): Promise<PopulatedTransaction>;
useGlobalURI(newUseGlobalURI: PromiseOrValue<boolean>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
useGlobalURI(newUseGlobalURI: boolean, overrides?: Overrides & {
from?: string;
}): Promise<PopulatedTransaction>;

@@ -668,0 +647,0 @@ version(overrides?: CallOverrides): Promise<PopulatedTransaction>;

import { D as Decimals } from './decimals.js';
import { d as decodeFloat, a as decodeOrder, b as decodeRate, e as encodeFloat, c as encodeOrder, f as encodeRate } from './encoders.js';
import { e as encodedOrderBNToStr, a as encodedOrderStrToBN, b as encodedStrategyBNToStr, c as encodedStrategyStrToBN, m as matchActionBNToStr, o as ordersMapBNToStr, d as ordersMapStrToBN, r as replaceBigNumbersWithStrings, t as tradeActionStrToBN } from './serializers.js';
import { B as BigNumber, a as BigNumberMax, b as BigNumberMin, c as BnToDec, D as DecToBn, d as Decimal, O as ONE, T as TEN, f as formatUnits, m as mulDiv, p as parseUnits, t as tenPow } from './numerics.js';
import { B as BigNumber, a as BigNumberMax, b as BigNumberMin, c as BnToDec, D as DecToBn, d as Decimal, O as ONE, T as TEN, f as formatUnits, m as mulDiv, p as parseUnits, t as tenPow, e as trimDecimal } from './numerics.js';

@@ -35,5 +35,6 @@ var index = /*#__PURE__*/Object.freeze({

tenPow: tenPow,
tradeActionStrToBN: tradeActionStrToBN
tradeActionStrToBN: tradeActionStrToBN,
trimDecimal: trimDecimal
});
export { index as i };

@@ -1,2 +0,2 @@

import { d as Decimal, t as tenPow, f as formatUnits, p as parseUnits, B as BigNumber, m as mulDiv } from './numerics.js';
import { d as Decimal, t as tenPow, f as formatUnits, p as parseUnits, B as BigNumber, e as trimDecimal, m as mulDiv } from './numerics.js';
import { b as matchByTargetAmount, m as matchBySourceAmount, M as MatchType, g as getEncodedTradeSourceAmount } from './match.js';

@@ -146,5 +146,7 @@ import { D as Decimals } from './decimals.js';

function buildStrategyObject(baseToken, quoteToken, baseDecimals, quoteDecimals, buyPriceLow, // in quote tkn per 1 base tkn
buyPriceMarginal, // in quote tkn per 1 base tkn
buyPriceHigh, // in quote tkn per 1 base tkn
buyBudget, // in quote tkn
sellPriceLow, // in quote tkn per 1 base tkn
sellPriceMarginal, // in quote tkn per 1 base tkn
sellPriceHigh, // in quote tkn per 1 base tkn

@@ -155,10 +157,16 @@ sellBudget // in base tkn

if (new Decimal(buyPriceLow).isNegative() ||
new Decimal(buyPriceMarginal).isNegative() ||
new Decimal(buyPriceHigh).isNegative() ||
new Decimal(sellPriceLow).isNegative() ||
new Decimal(sellPriceMarginal).isNegative() ||
new Decimal(sellPriceHigh).isNegative()) {
throw new Error('prices cannot be negative');
}
if (new Decimal(buyPriceLow).gt(buyPriceHigh) ||
new Decimal(sellPriceLow).gt(sellPriceHigh)) {
throw new Error('low price must be lower than or equal to high price');
if (new Decimal(buyPriceLow).gt(buyPriceMarginal) ||
new Decimal(buyPriceLow).gt(buyPriceHigh) ||
new Decimal(buyPriceMarginal).gt(buyPriceHigh) ||
new Decimal(sellPriceLow).gt(sellPriceMarginal) ||
new Decimal(sellPriceLow).gt(sellPriceHigh) ||
new Decimal(sellPriceMarginal).gt(sellPriceHigh)) {
throw new Error('low/marginal price must be lower than or equal to marginal/high price');
}

@@ -169,3 +177,3 @@ if (new Decimal(buyBudget).isNegative() ||

}
const { order0, order1 } = createOrders(baseDecimals, quoteDecimals, buyPriceLow, buyPriceHigh, buyBudget, sellPriceLow, sellPriceHigh, sellBudget);
const { order0, order1 } = createOrders(baseDecimals, quoteDecimals, buyPriceLow, buyPriceMarginal, buyPriceHigh, buyBudget, sellPriceLow, sellPriceMarginal, sellPriceHigh, sellBudget);
logger$1.debug('buildStrategyObject info:', {

@@ -184,3 +192,3 @@ token0: baseToken,

}
function createOrders(baseTokenDecimals, quoteTokenDecimals, buyPriceLow, buyPriceHigh, buyBudget, sellPriceLow, sellPriceHigh, sellBudget) {
function createOrders(baseTokenDecimals, quoteTokenDecimals, buyPriceLow, buyPriceMarginal, buyPriceHigh, buyBudget, sellPriceLow, sellPriceMarginal, sellPriceHigh, sellBudget) {
logger$1.debug('createOrders called', arguments);

@@ -194,2 +202,3 @@ // order 0 is selling the base token

const lowestRate0 = normalizeInvertedRate(sellPriceHigh, quoteTokenDecimals, baseTokenDecimals);
const marginalRate0 = normalizeInvertedRate(sellPriceMarginal, quoteTokenDecimals, baseTokenDecimals);
const highestRate0 = normalizeInvertedRate(sellPriceLow, quoteTokenDecimals, baseTokenDecimals);

@@ -202,2 +211,3 @@ // order 1 is selling the quote token

const lowestRate1 = normalizeRate(buyPriceLow, quoteTokenDecimals, baseTokenDecimals);
const marginalRate1 = normalizeRate(buyPriceMarginal, quoteTokenDecimals, baseTokenDecimals);
const highestRate1 = normalizeRate(buyPriceHigh, quoteTokenDecimals, baseTokenDecimals);

@@ -208,3 +218,3 @@ const order0 = {

highestRate: highestRate0,
marginalRate: highestRate0,
marginalRate: marginalRate0,
};

@@ -215,3 +225,3 @@ const order1 = {

highestRate: highestRate1,
marginalRate: highestRate1,
marginalRate: marginalRate1,
};

@@ -234,2 +244,77 @@ logger$1.debug('createOrders info:', { order0, order1 });

}
function calculateOverlappingPriceRanges(buyPriceLow, // in quote tkn per 1 base tkn
sellPriceHigh, // in quote tkn per 1 base tkn
marketPrice, // in quote tkn per 1 base tkn
spreadPercentage // e.g. for 0.1% pass '0.1'
) {
const totalPriceRange = sellPriceHigh.minus(buyPriceLow);
const spread = totalPriceRange.mul(spreadPercentage).div(100);
const buyPriceHigh = sellPriceHigh.minus(spread);
const sellPriceLow = buyPriceLow.plus(spread);
// buy marginal price is the market price minus 0.5 spread. But it can never be lower than buyPriceLow
const buyPriceMarginal = Decimal.max(buyPriceLow, marketPrice.minus(spread.div(2)));
// sell marginal price is the market price plus 0.5 spread. But ir can never be higher than sellPriceHigh
const sellPriceMarginal = Decimal.min(sellPriceHigh, marketPrice.plus(spread.div(2)));
return {
buyPriceHigh,
buyPriceMarginal,
sellPriceLow,
sellPriceMarginal,
spread,
};
}
function calculateOverlappingSellBudget(buyPriceLow, // in quote tkn per 1 base tkn
sellPriceHigh, // in quote tkn per 1 base tkn
marketPrice, // in quote tkn per 1 base tkn
spreadPercentage, // e.g. for 0.1% pass '0.1'
buyBudget // in quote tkn
) {
// zero buy budget means zero sell budget
if (buyBudget.isZero())
return new Decimal(0);
const { buyPriceHigh, spread } = calculateOverlappingPriceRanges(buyPriceLow, sellPriceHigh, marketPrice, spreadPercentage);
// if buy range takes the entire range then there's zero sell budget
if (marketPrice.minus(spread.div(2)).gte(buyPriceHigh))
return new Decimal(0);
// if buy range is zero there's no point to this call
if (marketPrice.minus(spread.div(2)).lte(buyPriceLow)) {
throw new Error('calculateOverlappingSellBudget called with zero buy range and non zero buy budget');
}
const buyPriceRange = buyPriceHigh.minus(buyPriceLow);
const buyLowRange = marketPrice.minus(buyPriceLow).minus(spread.div(2));
const buyLowBudgetRatio = buyLowRange.div(buyPriceRange);
const buyOrderYint = new Decimal(buyBudget).div(buyLowBudgetRatio);
const geoMeanOfBuyRange = buyPriceLow.mul(buyPriceHigh).sqrt();
const sellOrderYint = buyOrderYint.div(geoMeanOfBuyRange);
const sellHighBudgetRatio = new Decimal(1).minus(buyLowBudgetRatio);
const sellBudget = sellOrderYint.mul(sellHighBudgetRatio);
return sellBudget;
}
function calculateOverlappingBuyBudget(buyPriceLow, // in quote tkn per 1 base tkn
sellPriceHigh, // in quote tkn per 1 base tkn
marketPrice, // in quote tkn per 1 base tkn
spreadPercentage, // e.g. for 0.1% pass '0.1'
sellBudget // in quote tkn
) {
// zero sell budget means zero buy budget
if (sellBudget.isZero())
return new Decimal(0);
const { sellPriceLow, spread } = calculateOverlappingPriceRanges(buyPriceLow, sellPriceHigh, marketPrice, spreadPercentage);
// if sell range takes the entire range then there's zero buy budget
if (marketPrice.plus(spread.div(2)).lte(sellPriceLow))
return new Decimal(0);
// if sell range is zero there's no point to this call
if (marketPrice.plus(spread.div(2)).gte(sellPriceHigh)) {
throw new Error('calculateOverlappingBuyBudget called with zero sell range and non zero sell budget');
}
const sellPriceRange = sellPriceHigh.minus(sellPriceLow);
const sellHighRange = sellPriceHigh.minus(marketPrice).minus(spread.div(2));
const sellHighBudgetRatio = sellHighRange.div(sellPriceRange);
const sellOrderYint = new Decimal(sellBudget).div(sellHighBudgetRatio);
const geoMeanOfSellRange = sellPriceHigh.mul(sellPriceLow).sqrt();
const buyOrderYint = sellOrderYint.mul(geoMeanOfSellRange);
const buyLowBudgetRatio = new Decimal(1).minus(sellHighBudgetRatio);
const buyBudget = buyOrderYint.mul(buyLowBudgetRatio);
return buyBudget;
}

@@ -680,3 +765,66 @@ const logger = new Logger('Toolkit.ts');

}
async calculateOverlappingStrategyPrices(quoteToken, buyPriceLow, sellPriceHigh, marketPrice, spreadPercentage) {
logger.debug('calculateOverlappingStrategyPrices called', arguments);
const decimals = this._decimals;
const quoteDecimals = await decimals.fetchDecimals(quoteToken);
const prices = calculateOverlappingPriceRanges(new Decimal(buyPriceLow), new Decimal(sellPriceHigh), new Decimal(marketPrice), new Decimal(spreadPercentage));
const result = {
buyPriceHigh: trimDecimal(prices.buyPriceHigh.toString(), quoteDecimals),
buyPriceMarginal: trimDecimal(prices.buyPriceMarginal.toString(), quoteDecimals),
sellPriceLow: trimDecimal(prices.sellPriceLow.toString(), quoteDecimals),
sellPriceMarginal: trimDecimal(prices.sellPriceMarginal.toString(), quoteDecimals),
};
logger.debug('calculateOverlappingStrategyPrices info:', {
quoteDecimals,
result,
});
return result;
}
/**
* Calculates the sell budget given a buy budget of an overlapping strategy.
*
* @param {string} baseToken - The address of the base token for the strategy.
* @param {string} buyPriceLow - The minimum buy price for the strategy, in in `quoteToken` per 1 `baseToken`, as a string.
* @param {string} sellPriceHigh - The maximum sell price for the strategy, in `quoteToken` per 1 `baseToken`, as a string.
* @param {string} marketPrice - The market price, in `quoteToken` per 1 `baseToken`, as a string.
* @param {string} spreadPercentage - The spread percentage, e.g. for 10%, enter `10`.
* @param {string} buyBudget - The budget for buying tokens in the strategy, in `quoteToken`, as a string.
* @return {Promise<string>} The result of the calculation - the sell budget in token res in base token.
*/
async calculateOverlappingStrategySellBudget(baseToken, buyPriceLow, sellPriceHigh, marketPrice, spreadPercentage, buyBudget) {
logger.debug('calculateOverlappingStrategySellBudget called', arguments);
const decimals = this._decimals;
const baseDecimals = await decimals.fetchDecimals(baseToken);
const budget = calculateOverlappingSellBudget(new Decimal(buyPriceLow), new Decimal(sellPriceHigh), new Decimal(marketPrice), new Decimal(spreadPercentage), new Decimal(buyBudget));
const result = trimDecimal(budget.toString(), baseDecimals);
logger.debug('calculateOverlappingStrategySellBudget info:', {
baseDecimals,
result,
});
return result;
}
/**
* Calculates the buy budget given a sell budget of an overlapping strategy.
*
* @param {string} quoteToken - The address of the base token for the strategy.
* @param {string} buyPriceLow - The minimum buy price for the strategy, in in `quoteToken` per 1 `baseToken`, as a string.
* @param {string} sellPriceHigh - The maximum sell price for the strategy, in `quoteToken` per 1 `baseToken`, as a string.
* @param {string} marketPrice - The market price, in `quoteToken` per 1 `baseToken`, as a string.
* @param {string} spreadPercentage - The spread percentage, e.g. for 10%, enter `10`.
* @param {string} sellBudget - The budget for selling tokens in the strategy, in `baseToken`, as a string.
* @return {Promise<string>} The result of the calculation - the buy budget in token res in quote token.
*/
async calculateOverlappingStrategyBuyBudget(quoteToken, buyPriceLow, sellPriceHigh, marketPrice, spreadPercentage, sellBudget) {
logger.debug('calculateOverlappingStrategyBuyBudget called', arguments);
const decimals = this._decimals;
const quoteDecimals = await decimals.fetchDecimals(quoteToken);
const budget = calculateOverlappingBuyBudget(new Decimal(buyPriceLow), new Decimal(sellPriceHigh), new Decimal(marketPrice), new Decimal(spreadPercentage), new Decimal(sellBudget));
const result = trimDecimal(budget.toString(), quoteDecimals);
logger.debug('calculateOverlappingStrategyBuyBudget info:', {
quoteDecimals,
result,
});
return result;
}
/**
* Creates an unsigned transaction to create a strategy for buying and selling tokens of `baseToken` for price in `quoteToken` per 1 `baseToken`.

@@ -726,3 +874,3 @@ *

*/
async createBuySellStrategy(baseToken, quoteToken, buyPriceLow, buyPriceHigh, buyBudget, sellPriceLow, sellPriceHigh, sellBudget, overrides) {
async createBuySellStrategy(baseToken, quoteToken, buyPriceLow, buyPriceMarginal, buyPriceHigh, buyBudget, sellPriceLow, sellPriceMarginal, sellPriceHigh, sellBudget, overrides) {
logger.debug('createBuySellStrategy called', arguments);

@@ -732,3 +880,3 @@ const decimals = this._decimals;

const quoteDecimals = await decimals.fetchDecimals(quoteToken);
const strategy = buildStrategyObject(baseToken, quoteToken, baseDecimals, quoteDecimals, buyPriceLow, buyPriceHigh, buyBudget, sellPriceLow, sellPriceHigh, sellBudget);
const strategy = buildStrategyObject(baseToken, quoteToken, baseDecimals, quoteDecimals, buyPriceLow, buyPriceMarginal, buyPriceHigh, buyBudget, sellPriceLow, sellPriceMarginal, sellPriceHigh, sellBudget);
const encStrategy = encodeStrategy(strategy);

@@ -749,3 +897,3 @@ logger.debug('createBuySellStrategy info:', { strategy, encStrategy });

*/
async updateStrategy(strategyId, encoded, { buyPriceLow, buyPriceHigh, buyBudget, sellPriceLow, sellPriceHigh, sellBudget, }, buyMarginalPrice, sellMarginalPrice, overrides) {
async updateStrategy(strategyId, encoded, { buyPriceLow, buyPriceHigh, buyBudget, sellPriceLow, sellPriceHigh, sellBudget, }, buyPriceMarginal, sellPriceMarginal, overrides) {
logger.debug('updateStrategy called', arguments);

@@ -759,3 +907,11 @@ // step 1: decode and parse the encoded strategy back to a Strategy object and use it to replace undefined values

// step 2: create an encoded strategy object using the method params and the values from the encoded strategy
const newStrategy = buildStrategyObject(originalStrategy.baseToken, originalStrategy.quoteToken, baseDecimals, quoteDecimals, buyPriceLow ?? originalStrategy.buyPriceLow, buyPriceHigh ?? originalStrategy.buyPriceHigh, buyBudget ?? originalStrategy.buyBudget, sellPriceLow ?? originalStrategy.sellPriceLow, sellPriceHigh ?? originalStrategy.sellPriceHigh, sellBudget ?? originalStrategy.sellBudget);
const newStrategy = buildStrategyObject(originalStrategy.baseToken, originalStrategy.quoteToken, baseDecimals, quoteDecimals, buyPriceLow ?? originalStrategy.buyPriceLow, buyPriceMarginal &&
buyPriceMarginal !== MarginalPriceOptions.reset &&
buyPriceMarginal !== MarginalPriceOptions.maintain
? buyPriceMarginal
: originalStrategy.buyPriceMarginal, buyPriceHigh ?? originalStrategy.buyPriceHigh, buyBudget ?? originalStrategy.buyBudget, sellPriceLow ?? originalStrategy.sellPriceLow, sellPriceMarginal &&
sellPriceMarginal !== MarginalPriceOptions.reset &&
sellPriceMarginal !== MarginalPriceOptions.maintain
? sellPriceMarginal
: originalStrategy.sellPriceMarginal, sellPriceHigh ?? originalStrategy.sellPriceHigh, sellBudget ?? originalStrategy.sellBudget);
const newEncodedStrategy = encodeStrategy(newStrategy);

@@ -784,8 +940,8 @@ // step 3: to avoid changes due to rounding errors, we will override the new encoded strategy with selected values from the old encoded strategy:

if (buyBudget !== undefined) {
if (buyMarginalPrice === undefined ||
buyMarginalPrice === MarginalPriceOptions.reset ||
if (buyPriceMarginal === undefined ||
buyPriceMarginal === MarginalPriceOptions.reset ||
encodedBN.order1.y.isZero()) {
newEncodedStrategy.order1.z = newEncodedStrategy.order1.y;
}
else if (buyMarginalPrice === MarginalPriceOptions.maintain) {
else if (buyPriceMarginal === MarginalPriceOptions.maintain) {
// maintain the current ratio of y/z

@@ -796,8 +952,8 @@ newEncodedStrategy.order1.z = mulDiv(encodedBN.order1.z, newEncodedStrategy.order1.y, encodedBN.order1.y);

if (sellBudget !== undefined) {
if (sellMarginalPrice === undefined ||
sellMarginalPrice === MarginalPriceOptions.reset ||
if (sellPriceMarginal === undefined ||
sellPriceMarginal === MarginalPriceOptions.reset ||
encodedBN.order0.y.isZero()) {
newEncodedStrategy.order0.z = newEncodedStrategy.order0.y;
}
else if (sellMarginalPrice === MarginalPriceOptions.maintain) {
else if (sellPriceMarginal === MarginalPriceOptions.maintain) {
// maintain the current ratio of y/z

@@ -813,14 +969,2 @@ newEncodedStrategy.order0.z = mulDiv(encodedBN.order0.z, newEncodedStrategy.order0.y, encodedBN.order0.y);

}
if (buyMarginalPrice !== undefined &&
buyMarginalPrice !== MarginalPriceOptions.reset &&
buyMarginalPrice !== MarginalPriceOptions.maintain) {
// TODO: set newEncodedStrategy.order1.z according to the given marginal price
throw new Error('Support for custom marginal price is not implemented yet');
}
if (sellMarginalPrice !== undefined &&
sellMarginalPrice !== MarginalPriceOptions.reset &&
sellMarginalPrice !== MarginalPriceOptions.maintain) {
// TODO: set newEncodedStrategy.order0.z according to the given marginal price
throw new Error('Support for custom marginal price is not implemented yet');
}
logger.debug('updateStrategy info:', {

@@ -914,2 +1058,5 @@ baseDecimals,

buildStrategyObject: buildStrategyObject,
calculateOverlappingBuyBudget: calculateOverlappingBuyBudget,
calculateOverlappingPriceRanges: calculateOverlappingPriceRanges,
calculateOverlappingSellBudget: calculateOverlappingSellBudget,
createOrders: createOrders,

@@ -924,2 +1071,2 @@ decodeStrategy: decodeStrategy,

export { MarginalPriceOptions as M, PPM_RESOLUTION as P, Toolkit as T, normalizeInvertedRate as a, buildStrategyObject as b, createOrders as c, decodeStrategy as d, encodeStrategy as e, addFee as f, index as i, normalizeRate as n, parseStrategy as p, subtractFee as s };
export { MarginalPriceOptions as M, PPM_RESOLUTION as P, Toolkit as T, normalizeInvertedRate as a, buildStrategyObject as b, createOrders as c, decodeStrategy as d, encodeStrategy as e, addFee as f, calculateOverlappingPriceRanges as g, calculateOverlappingSellBudget as h, index as i, calculateOverlappingBuyBudget as j, normalizeRate as n, parseStrategy as p, subtractFee as s };

@@ -1,2 +0,2 @@

export { M as MarginalPriceOptions, P as PPM_RESOLUTION, T as Toolkit, f as addFee, b as buildStrategyObject, c as createOrders, d as decodeStrategy, e as encodeStrategy, a as normalizeInvertedRate, n as normalizeRate, p as parseStrategy, s as subtractFee } from '../shared/index5.js';
export { M as MarginalPriceOptions, P as PPM_RESOLUTION, T as Toolkit, f as addFee, b as buildStrategyObject, j as calculateOverlappingBuyBudget, g as calculateOverlappingPriceRanges, h as calculateOverlappingSellBudget, c as createOrders, d as decodeStrategy, e as encodeStrategy, a as normalizeInvertedRate, n as normalizeRate, p as parseStrategy, s as subtractFee } from '../shared/index5.js';
import '../shared/numerics.js';

@@ -3,0 +3,0 @@ import '../shared/match.js';

@@ -241,3 +241,33 @@ import { PopulatedTransaction } from '@ethersproject/contracts';

composeTradeBySourceTransaction(sourceToken: string, targetToken: string, tradeActions: TradeActionBNStr[], deadline: string, minReturn: string, overrides?: PayableOverrides): Promise<PopulatedTransaction>;
calculateOverlappingStrategyPrices(quoteToken: string, buyPriceLow: string, sellPriceHigh: string, marketPrice: string, spreadPercentage: string): Promise<{
buyPriceHigh: string;
buyPriceMarginal: string;
sellPriceLow: string;
sellPriceMarginal: string;
}>;
/**
* Calculates the sell budget given a buy budget of an overlapping strategy.
*
* @param {string} baseToken - The address of the base token for the strategy.
* @param {string} buyPriceLow - The minimum buy price for the strategy, in in `quoteToken` per 1 `baseToken`, as a string.
* @param {string} sellPriceHigh - The maximum sell price for the strategy, in `quoteToken` per 1 `baseToken`, as a string.
* @param {string} marketPrice - The market price, in `quoteToken` per 1 `baseToken`, as a string.
* @param {string} spreadPercentage - The spread percentage, e.g. for 10%, enter `10`.
* @param {string} buyBudget - The budget for buying tokens in the strategy, in `quoteToken`, as a string.
* @return {Promise<string>} The result of the calculation - the sell budget in token res in base token.
*/
calculateOverlappingStrategySellBudget(baseToken: string, buyPriceLow: string, sellPriceHigh: string, marketPrice: string, spreadPercentage: string, buyBudget: string): Promise<string>;
/**
* Calculates the buy budget given a sell budget of an overlapping strategy.
*
* @param {string} quoteToken - The address of the base token for the strategy.
* @param {string} buyPriceLow - The minimum buy price for the strategy, in in `quoteToken` per 1 `baseToken`, as a string.
* @param {string} sellPriceHigh - The maximum sell price for the strategy, in `quoteToken` per 1 `baseToken`, as a string.
* @param {string} marketPrice - The market price, in `quoteToken` per 1 `baseToken`, as a string.
* @param {string} spreadPercentage - The spread percentage, e.g. for 10%, enter `10`.
* @param {string} sellBudget - The budget for selling tokens in the strategy, in `baseToken`, as a string.
* @return {Promise<string>} The result of the calculation - the buy budget in token res in quote token.
*/
calculateOverlappingStrategyBuyBudget(quoteToken: string, buyPriceLow: string, sellPriceHigh: string, marketPrice: string, spreadPercentage: string, sellBudget: string): Promise<string>;
/**
* Creates an unsigned transaction to create a strategy for buying and selling tokens of `baseToken` for price in `quoteToken` per 1 `baseToken`.

@@ -287,3 +317,3 @@ *

*/
createBuySellStrategy(baseToken: string, quoteToken: string, buyPriceLow: string, buyPriceHigh: string, buyBudget: string, sellPriceLow: string, sellPriceHigh: string, sellBudget: string, overrides?: PayableOverrides): Promise<PopulatedTransaction>;
createBuySellStrategy(baseToken: string, quoteToken: string, buyPriceLow: string, buyPriceMarginal: string, buyPriceHigh: string, buyBudget: string, sellPriceLow: string, sellPriceMarginal: string, sellPriceHigh: string, sellBudget: string, overrides?: PayableOverrides): Promise<PopulatedTransaction>;
/**

@@ -300,3 +330,3 @@ *

*/
updateStrategy(strategyId: string, encoded: EncodedStrategyBNStr, { buyPriceLow, buyPriceHigh, buyBudget, sellPriceLow, sellPriceHigh, sellBudget, }: StrategyUpdate, buyMarginalPrice?: MarginalPriceOptions | string, sellMarginalPrice?: MarginalPriceOptions | string, overrides?: PayableOverrides): Promise<PopulatedTransaction>;
updateStrategy(strategyId: string, encoded: EncodedStrategyBNStr, { buyPriceLow, buyPriceHigh, buyBudget, sellPriceLow, sellPriceHigh, sellBudget, }: StrategyUpdate, buyPriceMarginal?: MarginalPriceOptions | string, sellPriceMarginal?: MarginalPriceOptions | string, overrides?: PayableOverrides): Promise<PopulatedTransaction>;
deleteStrategy(strategyId: string): Promise<PopulatedTransaction>;

@@ -303,0 +333,0 @@ /**

@@ -23,8 +23,10 @@ import { BigNumber, BigNumberish, Decimal } from '../utils/numerics';

export declare function buildStrategyObject(baseToken: string, quoteToken: string, baseDecimals: number, quoteDecimals: number, buyPriceLow: string, // in quote tkn per 1 base tkn
buyPriceMarginal: string, // in quote tkn per 1 base tkn
buyPriceHigh: string, // in quote tkn per 1 base tkn
buyBudget: string, // in quote tkn
sellPriceLow: string, // in quote tkn per 1 base tkn
sellPriceMarginal: string, // in quote tkn per 1 base tkn
sellPriceHigh: string, // in quote tkn per 1 base tkn
sellBudget: string): DecodedStrategy;
export declare function createOrders(baseTokenDecimals: number, quoteTokenDecimals: number, buyPriceLow: string, buyPriceHigh: string, buyBudget: string, sellPriceLow: string, sellPriceHigh: string, sellBudget: string): {
export declare function createOrders(baseTokenDecimals: number, quoteTokenDecimals: number, buyPriceLow: string, buyPriceMarginal: string, buyPriceHigh: string, buyBudget: string, sellPriceLow: string, sellPriceMarginal: string, sellPriceHigh: string, sellBudget: string): {
order0: DecodedOrder;

@@ -36,2 +38,22 @@ order1: DecodedOrder;

export declare function subtractFee(amount: BigNumberish, tradingFeePPM: number): Decimal;
export declare function calculateOverlappingPriceRanges(buyPriceLow: Decimal, // in quote tkn per 1 base tkn
sellPriceHigh: Decimal, // in quote tkn per 1 base tkn
marketPrice: Decimal, // in quote tkn per 1 base tkn
spreadPercentage: Decimal): {
buyPriceHigh: Decimal;
buyPriceMarginal: Decimal;
sellPriceLow: Decimal;
sellPriceMarginal: Decimal;
spread: Decimal;
};
export declare function calculateOverlappingSellBudget(buyPriceLow: Decimal, // in quote tkn per 1 base tkn
sellPriceHigh: Decimal, // in quote tkn per 1 base tkn
marketPrice: Decimal, // in quote tkn per 1 base tkn
spreadPercentage: Decimal, // e.g. for 0.1% pass '0.1'
buyBudget: Decimal): Decimal;
export declare function calculateOverlappingBuyBudget(buyPriceLow: Decimal, // in quote tkn per 1 base tkn
sellPriceHigh: Decimal, // in quote tkn per 1 base tkn
marketPrice: Decimal, // in quote tkn per 1 base tkn
spreadPercentage: Decimal, // e.g. for 0.1% pass '0.1'
sellBudget: Decimal): Decimal;
//# sourceMappingURL=utils.d.ts.map
export { D as Decimals } from '../shared/decimals.js';
export { d as decodeFloat, a as decodeOrder, b as decodeRate, e as encodeFloat, c as encodeOrder, f as encodeRate } from '../shared/encoders.js';
export { e as encodedOrderBNToStr, a as encodedOrderStrToBN, b as encodedStrategyBNToStr, c as encodedStrategyStrToBN, m as matchActionBNToStr, o as ordersMapBNToStr, d as ordersMapStrToBN, r as replaceBigNumbersWithStrings, t as tradeActionStrToBN } from '../shared/serializers.js';
export { B as BigNumber, a as BigNumberMax, b as BigNumberMin, c as BnToDec, D as DecToBn, d as Decimal, O as ONE, T as TEN, f as formatUnits, m as mulDiv, p as parseUnits, t as tenPow } from '../shared/numerics.js';
export { B as BigNumber, a as BigNumberMax, b as BigNumberMin, c as BnToDec, D as DecToBn, d as Decimal, O as ONE, T as TEN, f as formatUnits, m as mulDiv, p as parseUnits, t as tenPow, e as trimDecimal } from '../shared/numerics.js';

@@ -12,4 +12,5 @@ import { BigNumber, BigNumberish } from '@ethersproject/bignumber';

export declare const mulDiv: (x: BigNumber, y: BigNumber, z: BigNumber) => BigNumber;
export declare function trimDecimal(input: string, precision: number): string;
export declare function parseUnits(amount: string, decimals: number): BigNumber;
export declare function formatUnits(amount: BigNumberish, decimals: number): string;
//# sourceMappingURL=numerics.d.ts.map

@@ -5,3 +5,3 @@ {

"source": "src/index.ts",
"version": "0.0.85-DEV",
"version": "0.0.86-DEV",
"description": "The SDK is a READ-ONLY tool, intended to facilitate working with Carbon contracts. It's a convenient wrapper around our matching algorithm, allowing programs and users get a ready to use transaction data that will allow them to manage strategies and fulfill trades",

@@ -74,15 +74,15 @@ "main": "dist/index.js",

"devDependencies": {
"@rollup/plugin-commonjs": "^25.0.3",
"@rollup/plugin-node-resolve": "^15.0.2",
"@typechain/ethers-v5": "^10.2.1",
"@types/chai": "^4.3.5",
"@rollup/plugin-commonjs": "^25.0.7",
"@rollup/plugin-node-resolve": "^15.2.3",
"@typechain/ethers-v5": "^11.1.1",
"@types/chai": "^4.3.10",
"@types/mocha": "^10.0.0",
"@types/node": "^18.16.3",
"@types/node": "^18.18.8",
"@types/sinon": "^10.0.15",
"@typescript-eslint/eslint-plugin": "^6.7.4",
"@typescript-eslint/parser": "^6.2.1",
"chai": "^4.3.7",
"@typescript-eslint/eslint-plugin": "^6.12.0",
"@typescript-eslint/parser": "^6.12.0",
"chai": "^4.3.10",
"eslint": "^8.46.0",
"mocha": "^10.1.0",
"rollup": "^3.29.4",
"rollup": "^4.5.0",
"rollup-plugin-typescript2": "^0.36.0",

@@ -92,3 +92,3 @@ "sinon": "^16.0.0",

"typechain": "^8.3.1",
"typescript": "^5.1.6"
"typescript": "^5.2.2"
},

@@ -95,0 +95,0 @@ "dependencies": {

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc