@atomiqlabs/chain-evm
Version:
EVM specific base implementation
724 lines (673 loc) • 20.3 kB
text/typescript
/* Autogenerated file. Do not edit manually. */
/* tslint:disable */
/* eslint-disable */
import type {
BaseContract,
BigNumberish,
BytesLike,
FunctionFragment,
Result,
Interface,
EventFragment,
AddressLike,
ContractRunner,
ContractMethod,
Listener,
} from "ethers";
import type {
TypedContractEvent,
TypedDeferredTopicFilter,
TypedEventLog,
TypedLogDescription,
TypedListener,
TypedContractMethod,
} from "../typechain/common";
export type EscrowDataStruct = {
offerer: AddressLike;
claimer: AddressLike;
amount: BigNumberish;
token: AddressLike;
flags: BigNumberish;
claimHandler: AddressLike;
claimData: BytesLike;
refundHandler: AddressLike;
refundData: BytesLike;
securityDeposit: BigNumberish;
claimerBounty: BigNumberish;
depositToken: AddressLike;
successActionCommitment: BytesLike;
};
export type EscrowDataStructOutput = [
offerer: string,
claimer: string,
amount: bigint,
token: string,
flags: bigint,
claimHandler: string,
claimData: string,
refundHandler: string,
refundData: string,
securityDeposit: bigint,
claimerBounty: bigint,
depositToken: string,
successActionCommitment: string
] & {
offerer: string;
claimer: string;
amount: bigint;
token: string;
flags: bigint;
claimHandler: string;
claimData: string;
refundHandler: string;
refundData: string;
securityDeposit: bigint;
claimerBounty: bigint;
depositToken: string;
successActionCommitment: string;
};
export type ContractCallStruct = {
target: AddressLike;
value: BigNumberish;
data: BytesLike;
};
export type ContractCallStructOutput = [
target: string,
value: bigint,
data: string
] & { target: string; value: bigint; data: string };
export type ExecutionActionStruct = {
gasLimit: BigNumberish;
drainTokens: AddressLike[];
calls: ContractCallStruct[];
};
export type ExecutionActionStructOutput = [
gasLimit: bigint,
drainTokens: string[],
calls: ContractCallStructOutput[]
] & {
gasLimit: bigint;
drainTokens: string[];
calls: ContractCallStructOutput[];
};
export type LpVaultBalanceQueryStruct = {
owner: AddressLike;
token: AddressLike;
};
export type LpVaultBalanceQueryStructOutput = [owner: string, token: string] & {
owner: string;
token: string;
};
export type EscrowStateStruct = {
initBlockheight: BigNumberish;
finishBlockheight: BigNumberish;
state: BigNumberish;
};
export type EscrowStateStructOutput = [
initBlockheight: bigint,
finishBlockheight: bigint,
state: bigint
] & { initBlockheight: bigint; finishBlockheight: bigint; state: bigint };
export type ReputationQueryStruct = {
owner: AddressLike;
token: AddressLike;
claimHandler: AddressLike;
};
export type ReputationQueryStructOutput = [
owner: string,
token: string,
claimHandler: string
] & { owner: string; token: string; claimHandler: string };
export type ReputationStateStruct = {
amount: BigNumberish;
count: BigNumberish;
};
export type ReputationStateStructOutput = [amount: bigint, count: bigint] & {
amount: bigint;
count: bigint;
};
export interface EscrowManagerInterface extends Interface {
getFunction(
nameOrSignature:
| "claim"
| "claimWithSuccessAction"
| "cooperativeRefund"
| "deposit"
| "eip712Domain"
| "getBalance"
| "getHashState"
| "getHashStateMultiple"
| "getReputation"
| "getState"
| "initialize"
| "refund"
| "withdraw"
): FunctionFragment;
getEvent(
nameOrSignatureOrTopic:
| "Claim"
| "EIP712DomainChanged"
| "ExecutionError"
| "Initialize"
| "Refund"
): EventFragment;
encodeFunctionData(
functionFragment: "claim",
values: [EscrowDataStruct, BytesLike]
): string;
encodeFunctionData(
functionFragment: "claimWithSuccessAction",
values: [EscrowDataStruct, BytesLike, ExecutionActionStruct]
): string;
encodeFunctionData(
functionFragment: "cooperativeRefund",
values: [EscrowDataStruct, BytesLike, BigNumberish]
): string;
encodeFunctionData(
functionFragment: "deposit",
values: [AddressLike, BigNumberish]
): string;
encodeFunctionData(
functionFragment: "eip712Domain",
values?: undefined
): string;
encodeFunctionData(
functionFragment: "getBalance",
values: [LpVaultBalanceQueryStruct[]]
): string;
encodeFunctionData(
functionFragment: "getHashState",
values: [BytesLike]
): string;
encodeFunctionData(
functionFragment: "getHashStateMultiple",
values: [BytesLike[]]
): string;
encodeFunctionData(
functionFragment: "getReputation",
values: [ReputationQueryStruct[]]
): string;
encodeFunctionData(
functionFragment: "getState",
values: [EscrowDataStruct]
): string;
encodeFunctionData(
functionFragment: "initialize",
values: [EscrowDataStruct, BytesLike, BigNumberish, BytesLike]
): string;
encodeFunctionData(
functionFragment: "refund",
values: [EscrowDataStruct, BytesLike]
): string;
encodeFunctionData(
functionFragment: "withdraw",
values: [AddressLike, BigNumberish, AddressLike]
): string;
decodeFunctionResult(functionFragment: "claim", data: BytesLike): Result;
decodeFunctionResult(
functionFragment: "claimWithSuccessAction",
data: BytesLike
): Result;
decodeFunctionResult(
functionFragment: "cooperativeRefund",
data: BytesLike
): Result;
decodeFunctionResult(functionFragment: "deposit", data: BytesLike): Result;
decodeFunctionResult(
functionFragment: "eip712Domain",
data: BytesLike
): Result;
decodeFunctionResult(functionFragment: "getBalance", data: BytesLike): Result;
decodeFunctionResult(
functionFragment: "getHashState",
data: BytesLike
): Result;
decodeFunctionResult(
functionFragment: "getHashStateMultiple",
data: BytesLike
): Result;
decodeFunctionResult(
functionFragment: "getReputation",
data: BytesLike
): Result;
decodeFunctionResult(functionFragment: "getState", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "initialize", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "refund", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "withdraw", data: BytesLike): Result;
}
export namespace ClaimEvent {
export type InputTuple = [
offerer: AddressLike,
claimer: AddressLike,
escrowHash: BytesLike,
claimHandler: AddressLike,
witnessResult: BytesLike
];
export type OutputTuple = [
offerer: string,
claimer: string,
escrowHash: string,
claimHandler: string,
witnessResult: string
];
export interface OutputObject {
offerer: string;
claimer: string;
escrowHash: string;
claimHandler: string;
witnessResult: string;
}
export type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
export type Filter = TypedDeferredTopicFilter<Event>;
export type Log = TypedEventLog<Event>;
export type LogDescription = TypedLogDescription<Event>;
}
export namespace EIP712DomainChangedEvent {
export type InputTuple = [];
export type OutputTuple = [];
export interface OutputObject {}
export type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
export type Filter = TypedDeferredTopicFilter<Event>;
export type Log = TypedEventLog<Event>;
export type LogDescription = TypedLogDescription<Event>;
}
export namespace ExecutionErrorEvent {
export type InputTuple = [escrowHash: BytesLike, error: BytesLike];
export type OutputTuple = [escrowHash: string, error: string];
export interface OutputObject {
escrowHash: string;
error: string;
}
export type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
export type Filter = TypedDeferredTopicFilter<Event>;
export type Log = TypedEventLog<Event>;
export type LogDescription = TypedLogDescription<Event>;
}
export namespace InitializeEvent {
export type InputTuple = [
offerer: AddressLike,
claimer: AddressLike,
escrowHash: BytesLike,
claimHandler: AddressLike,
refundHandler: AddressLike
];
export type OutputTuple = [
offerer: string,
claimer: string,
escrowHash: string,
claimHandler: string,
refundHandler: string
];
export interface OutputObject {
offerer: string;
claimer: string;
escrowHash: string;
claimHandler: string;
refundHandler: string;
}
export type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
export type Filter = TypedDeferredTopicFilter<Event>;
export type Log = TypedEventLog<Event>;
export type LogDescription = TypedLogDescription<Event>;
}
export namespace RefundEvent {
export type InputTuple = [
offerer: AddressLike,
claimer: AddressLike,
escrowHash: BytesLike,
refundHandler: AddressLike,
witnessResult: BytesLike
];
export type OutputTuple = [
offerer: string,
claimer: string,
escrowHash: string,
refundHandler: string,
witnessResult: string
];
export interface OutputObject {
offerer: string;
claimer: string;
escrowHash: string;
refundHandler: string;
witnessResult: string;
}
export type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>;
export type Filter = TypedDeferredTopicFilter<Event>;
export type Log = TypedEventLog<Event>;
export type LogDescription = TypedLogDescription<Event>;
}
export interface EscrowManager extends BaseContract {
connect(runner?: ContractRunner | null): EscrowManager;
waitForDeployment(): Promise<this>;
interface: EscrowManagerInterface;
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>;
claim: TypedContractMethod<
[escrow: EscrowDataStruct, witness: BytesLike],
[void],
"nonpayable"
>;
claimWithSuccessAction: TypedContractMethod<
[
escrow: EscrowDataStruct,
witness: BytesLike,
successAction: ExecutionActionStruct
],
[void],
"nonpayable"
>;
cooperativeRefund: TypedContractMethod<
[escrow: EscrowDataStruct, signature: BytesLike, timeout: BigNumberish],
[void],
"nonpayable"
>;
deposit: TypedContractMethod<
[token: AddressLike, amount: BigNumberish],
[void],
"payable"
>;
eip712Domain: TypedContractMethod<
[],
[
[string, string, string, bigint, string, string, bigint[]] & {
fields: string;
name: string;
version: string;
chainId: bigint;
verifyingContract: string;
salt: string;
extensions: bigint[];
}
],
"view"
>;
getBalance: TypedContractMethod<
[data: LpVaultBalanceQueryStruct[]],
[bigint[]],
"view"
>;
getHashState: TypedContractMethod<
[escrowHash: BytesLike],
[EscrowStateStructOutput],
"view"
>;
getHashStateMultiple: TypedContractMethod<
[escrowHash: BytesLike[]],
[EscrowStateStructOutput[]],
"view"
>;
getReputation: TypedContractMethod<
[data: ReputationQueryStruct[]],
[
[
ReputationStateStructOutput,
ReputationStateStructOutput,
ReputationStateStructOutput
][]
],
"view"
>;
getState: TypedContractMethod<
[escrowData: EscrowDataStruct],
[EscrowStateStructOutput],
"view"
>;
initialize: TypedContractMethod<
[
escrow: EscrowDataStruct,
signature: BytesLike,
timeout: BigNumberish,
_extraData: BytesLike
],
[void],
"payable"
>;
refund: TypedContractMethod<
[escrow: EscrowDataStruct, witness: BytesLike],
[void],
"nonpayable"
>;
withdraw: TypedContractMethod<
[token: AddressLike, amount: BigNumberish, destination: AddressLike],
[void],
"nonpayable"
>;
getFunction<T extends ContractMethod = ContractMethod>(
key: string | FunctionFragment
): T;
getFunction(
nameOrSignature: "claim"
): TypedContractMethod<
[escrow: EscrowDataStruct, witness: BytesLike],
[void],
"nonpayable"
>;
getFunction(
nameOrSignature: "claimWithSuccessAction"
): TypedContractMethod<
[
escrow: EscrowDataStruct,
witness: BytesLike,
successAction: ExecutionActionStruct
],
[void],
"nonpayable"
>;
getFunction(
nameOrSignature: "cooperativeRefund"
): TypedContractMethod<
[escrow: EscrowDataStruct, signature: BytesLike, timeout: BigNumberish],
[void],
"nonpayable"
>;
getFunction(
nameOrSignature: "deposit"
): TypedContractMethod<
[token: AddressLike, amount: BigNumberish],
[void],
"payable"
>;
getFunction(
nameOrSignature: "eip712Domain"
): TypedContractMethod<
[],
[
[string, string, string, bigint, string, string, bigint[]] & {
fields: string;
name: string;
version: string;
chainId: bigint;
verifyingContract: string;
salt: string;
extensions: bigint[];
}
],
"view"
>;
getFunction(
nameOrSignature: "getBalance"
): TypedContractMethod<
[data: LpVaultBalanceQueryStruct[]],
[bigint[]],
"view"
>;
getFunction(
nameOrSignature: "getHashState"
): TypedContractMethod<
[escrowHash: BytesLike],
[EscrowStateStructOutput],
"view"
>;
getFunction(
nameOrSignature: "getHashStateMultiple"
): TypedContractMethod<
[escrowHash: BytesLike[]],
[EscrowStateStructOutput[]],
"view"
>;
getFunction(
nameOrSignature: "getReputation"
): TypedContractMethod<
[data: ReputationQueryStruct[]],
[
[
ReputationStateStructOutput,
ReputationStateStructOutput,
ReputationStateStructOutput
][]
],
"view"
>;
getFunction(
nameOrSignature: "getState"
): TypedContractMethod<
[escrowData: EscrowDataStruct],
[EscrowStateStructOutput],
"view"
>;
getFunction(
nameOrSignature: "initialize"
): TypedContractMethod<
[
escrow: EscrowDataStruct,
signature: BytesLike,
timeout: BigNumberish,
_extraData: BytesLike
],
[void],
"payable"
>;
getFunction(
nameOrSignature: "refund"
): TypedContractMethod<
[escrow: EscrowDataStruct, witness: BytesLike],
[void],
"nonpayable"
>;
getFunction(
nameOrSignature: "withdraw"
): TypedContractMethod<
[token: AddressLike, amount: BigNumberish, destination: AddressLike],
[void],
"nonpayable"
>;
getEvent(
key: "Claim"
): TypedContractEvent<
ClaimEvent.InputTuple,
ClaimEvent.OutputTuple,
ClaimEvent.OutputObject
>;
getEvent(
key: "EIP712DomainChanged"
): TypedContractEvent<
EIP712DomainChangedEvent.InputTuple,
EIP712DomainChangedEvent.OutputTuple,
EIP712DomainChangedEvent.OutputObject
>;
getEvent(
key: "ExecutionError"
): TypedContractEvent<
ExecutionErrorEvent.InputTuple,
ExecutionErrorEvent.OutputTuple,
ExecutionErrorEvent.OutputObject
>;
getEvent(
key: "Initialize"
): TypedContractEvent<
InitializeEvent.InputTuple,
InitializeEvent.OutputTuple,
InitializeEvent.OutputObject
>;
getEvent(
key: "Refund"
): TypedContractEvent<
RefundEvent.InputTuple,
RefundEvent.OutputTuple,
RefundEvent.OutputObject
>;
filters: {
"Claim(address,address,bytes32,address,bytes)": TypedContractEvent<
ClaimEvent.InputTuple,
ClaimEvent.OutputTuple,
ClaimEvent.OutputObject
>;
Claim: TypedContractEvent<
ClaimEvent.InputTuple,
ClaimEvent.OutputTuple,
ClaimEvent.OutputObject
>;
"EIP712DomainChanged()": TypedContractEvent<
EIP712DomainChangedEvent.InputTuple,
EIP712DomainChangedEvent.OutputTuple,
EIP712DomainChangedEvent.OutputObject
>;
EIP712DomainChanged: TypedContractEvent<
EIP712DomainChangedEvent.InputTuple,
EIP712DomainChangedEvent.OutputTuple,
EIP712DomainChangedEvent.OutputObject
>;
"ExecutionError(bytes32,bytes)": TypedContractEvent<
ExecutionErrorEvent.InputTuple,
ExecutionErrorEvent.OutputTuple,
ExecutionErrorEvent.OutputObject
>;
ExecutionError: TypedContractEvent<
ExecutionErrorEvent.InputTuple,
ExecutionErrorEvent.OutputTuple,
ExecutionErrorEvent.OutputObject
>;
"Initialize(address,address,bytes32,address,address)": TypedContractEvent<
InitializeEvent.InputTuple,
InitializeEvent.OutputTuple,
InitializeEvent.OutputObject
>;
Initialize: TypedContractEvent<
InitializeEvent.InputTuple,
InitializeEvent.OutputTuple,
InitializeEvent.OutputObject
>;
"Refund(address,address,bytes32,address,bytes)": TypedContractEvent<
RefundEvent.InputTuple,
RefundEvent.OutputTuple,
RefundEvent.OutputObject
>;
Refund: TypedContractEvent<
RefundEvent.InputTuple,
RefundEvent.OutputTuple,
RefundEvent.OutputObject
>;
};
}