@orionprotocol/contracts
Version:
Orion Protocol contracts typings
270 lines (269 loc) • 12.4 kB
TypeScript
import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers";
import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "./common.js";
export declare namespace LibValidator {
type OrderStruct = {
senderAddress: AddressLike;
matcherAddress: AddressLike;
baseAsset: AddressLike;
quoteAsset: AddressLike;
matcherFeeAsset: AddressLike;
amount: BigNumberish;
price: BigNumberish;
matcherFee: BigNumberish;
nonce: BigNumberish;
expiration: BigNumberish;
buySide: BigNumberish;
signature: BytesLike;
};
type OrderStructOutput = [
senderAddress: string,
matcherAddress: string,
baseAsset: string,
quoteAsset: string,
matcherFeeAsset: string,
amount: bigint,
price: bigint,
matcherFee: bigint,
nonce: bigint,
expiration: bigint,
buySide: bigint,
signature: string
] & {
senderAddress: string;
matcherAddress: string;
baseAsset: string;
quoteAsset: string;
matcherFeeAsset: string;
amount: bigint;
price: bigint;
matcherFee: bigint;
nonce: bigint;
expiration: bigint;
buySide: bigint;
signature: string;
};
type CrossChainOrderStruct = {
limitOrder: LibValidator.OrderStruct;
targetChainId: BigNumberish;
secretHash: BytesLike;
lockOrderExpiration: BigNumberish;
};
type CrossChainOrderStructOutput = [
limitOrder: LibValidator.OrderStructOutput,
targetChainId: bigint,
secretHash: string,
lockOrderExpiration: bigint
] & {
limitOrder: LibValidator.OrderStructOutput;
targetChainId: bigint;
secretHash: string;
lockOrderExpiration: bigint;
};
type LockOrderStruct = {
sender: AddressLike;
expiration: BigNumberish;
asset: AddressLike;
amount: BigNumberish;
targetChainId: BigNumberish;
secretHash: BytesLike;
signature: BytesLike;
};
type LockOrderStructOutput = [
sender: string,
expiration: bigint,
asset: string,
amount: bigint,
targetChainId: bigint,
secretHash: string,
signature: string
] & {
sender: string;
expiration: bigint;
asset: string;
amount: bigint;
targetChainId: bigint;
secretHash: string;
signature: string;
};
}
export interface LibValidatorInterface extends Interface {
getFunction(nameOrSignature: "CHAIN_ID" | "CROSS_CHAIN_ORDER_TYPEHASH" | "DOMAIN_NAME" | "DOMAIN_SALT" | "DOMAIN_SEPARATOR" | "DOMAIN_VERSION" | "EIP712_DOMAIN_TYPEHASH" | "LOCK_ORDER_TYPEHASH" | "ORDER_TYPEHASH" | "checkCrossChainOrdersInfo" | "checkOrdersInfo" | "getEthSignedOrderHash" | "validateCrossChainOrder" | "validateLockOrder" | "validateV3"): FunctionFragment;
encodeFunctionData(functionFragment: "CHAIN_ID", values?: undefined): string;
encodeFunctionData(functionFragment: "CROSS_CHAIN_ORDER_TYPEHASH", values?: undefined): string;
encodeFunctionData(functionFragment: "DOMAIN_NAME", values?: undefined): string;
encodeFunctionData(functionFragment: "DOMAIN_SALT", values?: undefined): string;
encodeFunctionData(functionFragment: "DOMAIN_SEPARATOR", values?: undefined): string;
encodeFunctionData(functionFragment: "DOMAIN_VERSION", values?: undefined): string;
encodeFunctionData(functionFragment: "EIP712_DOMAIN_TYPEHASH", values?: undefined): string;
encodeFunctionData(functionFragment: "LOCK_ORDER_TYPEHASH", values?: undefined): string;
encodeFunctionData(functionFragment: "ORDER_TYPEHASH", values?: undefined): string;
encodeFunctionData(functionFragment: "checkCrossChainOrdersInfo", values: [
LibValidator.CrossChainOrderStruct,
LibValidator.OrderStruct,
AddressLike,
BigNumberish,
BigNumberish,
BigNumberish,
AddressLike
]): string;
encodeFunctionData(functionFragment: "checkOrdersInfo", values: [
LibValidator.OrderStruct,
LibValidator.OrderStruct,
AddressLike,
BigNumberish,
BigNumberish,
BigNumberish,
AddressLike
]): string;
encodeFunctionData(functionFragment: "getEthSignedOrderHash", values: [LibValidator.OrderStruct]): string;
encodeFunctionData(functionFragment: "validateCrossChainOrder", values: [LibValidator.CrossChainOrderStruct]): string;
encodeFunctionData(functionFragment: "validateLockOrder", values: [LibValidator.LockOrderStruct]): string;
encodeFunctionData(functionFragment: "validateV3", values: [LibValidator.OrderStruct]): string;
decodeFunctionResult(functionFragment: "CHAIN_ID", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "CROSS_CHAIN_ORDER_TYPEHASH", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "DOMAIN_NAME", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "DOMAIN_SALT", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "DOMAIN_SEPARATOR", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "DOMAIN_VERSION", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "EIP712_DOMAIN_TYPEHASH", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "LOCK_ORDER_TYPEHASH", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "ORDER_TYPEHASH", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "checkCrossChainOrdersInfo", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "checkOrdersInfo", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "getEthSignedOrderHash", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "validateCrossChainOrder", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "validateLockOrder", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "validateV3", data: BytesLike): Result;
}
export interface LibValidator extends BaseContract {
connect(runner?: ContractRunner | null): LibValidator;
waitForDeployment(): Promise<this>;
interface: LibValidatorInterface;
queryFilter<TCEvent extends TypedContractEvent>(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise<Array<TypedEventLog<TCEvent>>>;
queryFilter<TCEvent extends TypedContractEvent>(filter: TypedDeferredTopicFilter<TCEvent>, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise<Array<TypedEventLog<TCEvent>>>;
on<TCEvent extends TypedContractEvent>(event: TCEvent, listener: TypedListener<TCEvent>): Promise<this>;
on<TCEvent extends TypedContractEvent>(filter: TypedDeferredTopicFilter<TCEvent>, listener: TypedListener<TCEvent>): Promise<this>;
once<TCEvent extends TypedContractEvent>(event: TCEvent, listener: TypedListener<TCEvent>): Promise<this>;
once<TCEvent extends TypedContractEvent>(filter: TypedDeferredTopicFilter<TCEvent>, listener: TypedListener<TCEvent>): Promise<this>;
listeners<TCEvent extends TypedContractEvent>(event: TCEvent): Promise<Array<TypedListener<TCEvent>>>;
listeners(eventName?: string): Promise<Array<Listener>>;
removeAllListeners<TCEvent extends TypedContractEvent>(event?: TCEvent): Promise<this>;
CHAIN_ID: TypedContractMethod<[], [bigint], "view">;
CROSS_CHAIN_ORDER_TYPEHASH: TypedContractMethod<[], [string], "view">;
DOMAIN_NAME: TypedContractMethod<[], [string], "view">;
DOMAIN_SALT: TypedContractMethod<[], [string], "view">;
DOMAIN_SEPARATOR: TypedContractMethod<[], [string], "view">;
DOMAIN_VERSION: TypedContractMethod<[], [string], "view">;
EIP712_DOMAIN_TYPEHASH: TypedContractMethod<[], [string], "view">;
LOCK_ORDER_TYPEHASH: TypedContractMethod<[], [string], "view">;
ORDER_TYPEHASH: TypedContractMethod<[], [string], "view">;
checkCrossChainOrdersInfo: TypedContractMethod<[
crossChainOrder: LibValidator.CrossChainOrderStruct,
brokerOrder: LibValidator.OrderStruct,
sender: AddressLike,
filledAmount: BigNumberish,
filledPrice: BigNumberish,
currentTime: BigNumberish,
allowedMatcher: AddressLike
], [
[
string,
string
] & {
crossChainOrderHash: string;
brokerOrderHash: string;
}
], "view">;
checkOrdersInfo: TypedContractMethod<[
buyOrder: LibValidator.OrderStruct,
sellOrder: LibValidator.OrderStruct,
sender: AddressLike,
filledAmount: BigNumberish,
filledPrice: BigNumberish,
currentTime: BigNumberish,
allowedMatcher: AddressLike
], [
[string, string] & {
buyOrderHash: string;
sellOrderHash: string;
}
], "view">;
getEthSignedOrderHash: TypedContractMethod<[
_order: LibValidator.OrderStruct
], [
string
], "view">;
validateCrossChainOrder: TypedContractMethod<[
crossChainOrder: LibValidator.CrossChainOrderStruct
], [
[boolean, string]
], "view">;
validateLockOrder: TypedContractMethod<[
lockOrder: LibValidator.LockOrderStruct
], [
boolean
], "view">;
validateV3: TypedContractMethod<[
order: LibValidator.OrderStruct
], [
[boolean, string]
], "view">;
getFunction<T extends ContractMethod = ContractMethod>(key: string | FunctionFragment): T;
getFunction(nameOrSignature: "CHAIN_ID"): TypedContractMethod<[], [bigint], "view">;
getFunction(nameOrSignature: "CROSS_CHAIN_ORDER_TYPEHASH"): TypedContractMethod<[], [string], "view">;
getFunction(nameOrSignature: "DOMAIN_NAME"): TypedContractMethod<[], [string], "view">;
getFunction(nameOrSignature: "DOMAIN_SALT"): TypedContractMethod<[], [string], "view">;
getFunction(nameOrSignature: "DOMAIN_SEPARATOR"): TypedContractMethod<[], [string], "view">;
getFunction(nameOrSignature: "DOMAIN_VERSION"): TypedContractMethod<[], [string], "view">;
getFunction(nameOrSignature: "EIP712_DOMAIN_TYPEHASH"): TypedContractMethod<[], [string], "view">;
getFunction(nameOrSignature: "LOCK_ORDER_TYPEHASH"): TypedContractMethod<[], [string], "view">;
getFunction(nameOrSignature: "ORDER_TYPEHASH"): TypedContractMethod<[], [string], "view">;
getFunction(nameOrSignature: "checkCrossChainOrdersInfo"): TypedContractMethod<[
crossChainOrder: LibValidator.CrossChainOrderStruct,
brokerOrder: LibValidator.OrderStruct,
sender: AddressLike,
filledAmount: BigNumberish,
filledPrice: BigNumberish,
currentTime: BigNumberish,
allowedMatcher: AddressLike
], [
[
string,
string
] & {
crossChainOrderHash: string;
brokerOrderHash: string;
}
], "view">;
getFunction(nameOrSignature: "checkOrdersInfo"): TypedContractMethod<[
buyOrder: LibValidator.OrderStruct,
sellOrder: LibValidator.OrderStruct,
sender: AddressLike,
filledAmount: BigNumberish,
filledPrice: BigNumberish,
currentTime: BigNumberish,
allowedMatcher: AddressLike
], [
[string, string] & {
buyOrderHash: string;
sellOrderHash: string;
}
], "view">;
getFunction(nameOrSignature: "getEthSignedOrderHash"): TypedContractMethod<[_order: LibValidator.OrderStruct], [string], "view">;
getFunction(nameOrSignature: "validateCrossChainOrder"): TypedContractMethod<[
crossChainOrder: LibValidator.CrossChainOrderStruct
], [
[boolean, string]
], "view">;
getFunction(nameOrSignature: "validateLockOrder"): TypedContractMethod<[
lockOrder: LibValidator.LockOrderStruct
], [
boolean
], "view">;
getFunction(nameOrSignature: "validateV3"): TypedContractMethod<[
order: LibValidator.OrderStruct
], [
[boolean, string]
], "view">;
filters: {};
}