import { BaseContract, BigNumber, BigNumberish, BytesLike, CallOverrides, ContractTransaction, Overrides, PopulatedTransaction, Signer, utils } from "ethers"; import { FunctionFragment, Result, EventFragment } from "@ethersproject/abi"; import { Listener, Provider } from "@ethersproject/providers"; import { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from "./common"; export declare type TeleportGUIDStruct = { sourceDomain: BytesLike; targetDomain: BytesLike; receiver: BytesLike; operator: BytesLike; amount: BigNumberish; nonce: BigNumberish; timestamp: BigNumberish; }; export declare type TeleportGUIDStructOutput = [ string, string, string, string, BigNumber, BigNumber, number ] & { sourceDomain: string; targetDomain: string; receiver: string; operator: string; amount: BigNumber; nonce: BigNumber; timestamp: number; }; export interface TrustedRelayInterface extends utils.Interface { contractName: "TrustedRelay"; functions: { "WAD_BPS()": FunctionFragment; "addSigners(address[])": FunctionFragment; "buds(address)": FunctionFragment; "dai()": FunctionFragment; "daiJoin()": FunctionFragment; "deny(address)": FunctionFragment; "diss(address)": FunctionFragment; "ethPriceOracle()": FunctionFragment; "file(bytes32,uint256)": FunctionFragment; "gasMargin()": FunctionFragment; "kiss(address)": FunctionFragment; "oracleAuth()": FunctionFragment; "relay((bytes32,bytes32,bytes32,bytes32,uint128,uint80,uint48),bytes,uint256,uint256,uint256,uint8,bytes32,bytes32,address,bytes)": FunctionFragment; "rely(address)": FunctionFragment; "removeSigners(address[])": FunctionFragment; "signers(address)": FunctionFragment; "teleportJoin()": FunctionFragment; "wards(address)": FunctionFragment; }; encodeFunctionData(functionFragment: "WAD_BPS", values?: undefined): string; encodeFunctionData(functionFragment: "addSigners", values: [string[]]): string; encodeFunctionData(functionFragment: "buds", values: [string]): string; encodeFunctionData(functionFragment: "dai", values?: undefined): string; encodeFunctionData(functionFragment: "daiJoin", values?: undefined): string; encodeFunctionData(functionFragment: "deny", values: [string]): string; encodeFunctionData(functionFragment: "diss", values: [string]): string; encodeFunctionData(functionFragment: "ethPriceOracle", values?: undefined): string; encodeFunctionData(functionFragment: "file", values: [BytesLike, BigNumberish]): string; encodeFunctionData(functionFragment: "gasMargin", values?: undefined): string; encodeFunctionData(functionFragment: "kiss", values: [string]): string; encodeFunctionData(functionFragment: "oracleAuth", values?: undefined): string; encodeFunctionData(functionFragment: "relay", values: [ TeleportGUIDStruct, BytesLike, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BytesLike, BytesLike, string, BytesLike ]): string; encodeFunctionData(functionFragment: "rely", values: [string]): string; encodeFunctionData(functionFragment: "removeSigners", values: [string[]]): string; encodeFunctionData(functionFragment: "signers", values: [string]): string; encodeFunctionData(functionFragment: "teleportJoin", values?: undefined): string; encodeFunctionData(functionFragment: "wards", values: [string]): string; decodeFunctionResult(functionFragment: "WAD_BPS", data: BytesLike): Result; decodeFunctionResult(functionFragment: "addSigners", data: BytesLike): Result; decodeFunctionResult(functionFragment: "buds", data: BytesLike): Result; decodeFunctionResult(functionFragment: "dai", data: BytesLike): Result; decodeFunctionResult(functionFragment: "daiJoin", data: BytesLike): Result; decodeFunctionResult(functionFragment: "deny", data: BytesLike): Result; decodeFunctionResult(functionFragment: "diss", data: BytesLike): Result; decodeFunctionResult(functionFragment: "ethPriceOracle", data: BytesLike): Result; decodeFunctionResult(functionFragment: "file", data: BytesLike): Result; decodeFunctionResult(functionFragment: "gasMargin", data: BytesLike): Result; decodeFunctionResult(functionFragment: "kiss", data: BytesLike): Result; decodeFunctionResult(functionFragment: "oracleAuth", data: BytesLike): Result; decodeFunctionResult(functionFragment: "relay", data: BytesLike): Result; decodeFunctionResult(functionFragment: "rely", data: BytesLike): Result; decodeFunctionResult(functionFragment: "removeSigners", data: BytesLike): Result; decodeFunctionResult(functionFragment: "signers", data: BytesLike): Result; decodeFunctionResult(functionFragment: "teleportJoin", data: BytesLike): Result; decodeFunctionResult(functionFragment: "wards", data: BytesLike): Result; events: { "Deny(address)": EventFragment; "Dissed(address)": EventFragment; "File(bytes32,uint256)": EventFragment; "Kissed(address)": EventFragment; "Rely(address)": EventFragment; "SignersAdded(address[])": EventFragment; "SignersRemoved(address[])": EventFragment; }; getEvent(nameOrSignatureOrTopic: "Deny"): EventFragment; getEvent(nameOrSignatureOrTopic: "Dissed"): EventFragment; getEvent(nameOrSignatureOrTopic: "File"): EventFragment; getEvent(nameOrSignatureOrTopic: "Kissed"): EventFragment; getEvent(nameOrSignatureOrTopic: "Rely"): EventFragment; getEvent(nameOrSignatureOrTopic: "SignersAdded"): EventFragment; getEvent(nameOrSignatureOrTopic: "SignersRemoved"): EventFragment; } export declare type DenyEvent = TypedEvent<[string], { usr: string; }>; export declare type DenyEventFilter = TypedEventFilter; export declare type DissedEvent = TypedEvent<[string], { usr: string; }>; export declare type DissedEventFilter = TypedEventFilter; export declare type FileEvent = TypedEvent<[ string, BigNumber ], { what: string; data: BigNumber; }>; export declare type FileEventFilter = TypedEventFilter; export declare type KissedEvent = TypedEvent<[string], { usr: string; }>; export declare type KissedEventFilter = TypedEventFilter; export declare type RelyEvent = TypedEvent<[string], { usr: string; }>; export declare type RelyEventFilter = TypedEventFilter; export declare type SignersAddedEvent = TypedEvent<[string[]], { signers: string[]; }>; export declare type SignersAddedEventFilter = TypedEventFilter; export declare type SignersRemovedEvent = TypedEvent<[string[]], { signers: string[]; }>; export declare type SignersRemovedEventFilter = TypedEventFilter; export interface TrustedRelay extends BaseContract { contractName: "TrustedRelay"; connect(signerOrProvider: Signer | Provider | string): this; attach(addressOrName: string): this; deployed(): Promise; interface: TrustedRelayInterface; queryFilter(event: TypedEventFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>; listeners(eventFilter?: TypedEventFilter): Array>; listeners(eventName?: string): Array; removeAllListeners(eventFilter: TypedEventFilter): this; removeAllListeners(eventName?: string): this; off: OnEvent; on: OnEvent; once: OnEvent; removeListener: OnEvent; functions: { WAD_BPS(overrides?: CallOverrides): Promise<[BigNumber]>; addSigners(signers_: string[], overrides?: Overrides & { from?: string | Promise; }): Promise; buds(arg0: string, overrides?: CallOverrides): Promise<[BigNumber]>; dai(overrides?: CallOverrides): Promise<[string]>; daiJoin(overrides?: CallOverrides): Promise<[string]>; deny(usr: string, overrides?: Overrides & { from?: string | Promise; }): Promise; diss(usr: string, overrides?: Overrides & { from?: string | Promise; }): Promise; ethPriceOracle(overrides?: CallOverrides): Promise<[string]>; file(what: BytesLike, data: BigNumberish, overrides?: Overrides & { from?: string | Promise; }): Promise; gasMargin(overrides?: CallOverrides): Promise<[BigNumber]>; kiss(usr: string, overrides?: Overrides & { from?: string | Promise; }): Promise; oracleAuth(overrides?: CallOverrides): Promise<[string]>; relay(teleportGUID: TeleportGUIDStruct, signatures: BytesLike, maxFeePercentage: BigNumberish, gasFee: BigNumberish, expiry: BigNumberish, v: BigNumberish, r: BytesLike, s: BytesLike, to: string, data: BytesLike, overrides?: Overrides & { from?: string | Promise; }): Promise; rely(usr: string, overrides?: Overrides & { from?: string | Promise; }): Promise; removeSigners(signers_: string[], overrides?: Overrides & { from?: string | Promise; }): Promise; signers(arg0: string, overrides?: CallOverrides): Promise<[BigNumber]>; teleportJoin(overrides?: CallOverrides): Promise<[string]>; wards(arg0: string, overrides?: CallOverrides): Promise<[BigNumber]>; }; WAD_BPS(overrides?: CallOverrides): Promise; addSigners(signers_: string[], overrides?: Overrides & { from?: string | Promise; }): Promise; buds(arg0: string, overrides?: CallOverrides): Promise; dai(overrides?: CallOverrides): Promise; daiJoin(overrides?: CallOverrides): Promise; deny(usr: string, overrides?: Overrides & { from?: string | Promise; }): Promise; diss(usr: string, overrides?: Overrides & { from?: string | Promise; }): Promise; ethPriceOracle(overrides?: CallOverrides): Promise; file(what: BytesLike, data: BigNumberish, overrides?: Overrides & { from?: string | Promise; }): Promise; gasMargin(overrides?: CallOverrides): Promise; kiss(usr: string, overrides?: Overrides & { from?: string | Promise; }): Promise; oracleAuth(overrides?: CallOverrides): Promise; relay(teleportGUID: TeleportGUIDStruct, signatures: BytesLike, maxFeePercentage: BigNumberish, gasFee: BigNumberish, expiry: BigNumberish, v: BigNumberish, r: BytesLike, s: BytesLike, to: string, data: BytesLike, overrides?: Overrides & { from?: string | Promise; }): Promise; rely(usr: string, overrides?: Overrides & { from?: string | Promise; }): Promise; removeSigners(signers_: string[], overrides?: Overrides & { from?: string | Promise; }): Promise; signers(arg0: string, overrides?: CallOverrides): Promise; teleportJoin(overrides?: CallOverrides): Promise; wards(arg0: string, overrides?: CallOverrides): Promise; callStatic: { WAD_BPS(overrides?: CallOverrides): Promise; addSigners(signers_: string[], overrides?: CallOverrides): Promise; buds(arg0: string, overrides?: CallOverrides): Promise; dai(overrides?: CallOverrides): Promise; daiJoin(overrides?: CallOverrides): Promise; deny(usr: string, overrides?: CallOverrides): Promise; diss(usr: string, overrides?: CallOverrides): Promise; ethPriceOracle(overrides?: CallOverrides): Promise; file(what: BytesLike, data: BigNumberish, overrides?: CallOverrides): Promise; gasMargin(overrides?: CallOverrides): Promise; kiss(usr: string, overrides?: CallOverrides): Promise; oracleAuth(overrides?: CallOverrides): Promise; relay(teleportGUID: TeleportGUIDStruct, signatures: BytesLike, maxFeePercentage: BigNumberish, gasFee: BigNumberish, expiry: BigNumberish, v: BigNumberish, r: BytesLike, s: BytesLike, to: string, data: BytesLike, overrides?: CallOverrides): Promise; rely(usr: string, overrides?: CallOverrides): Promise; removeSigners(signers_: string[], overrides?: CallOverrides): Promise; signers(arg0: string, overrides?: CallOverrides): Promise; teleportJoin(overrides?: CallOverrides): Promise; wards(arg0: string, overrides?: CallOverrides): Promise; }; filters: { "Deny(address)"(usr?: string | null): DenyEventFilter; Deny(usr?: string | null): DenyEventFilter; "Dissed(address)"(usr?: string | null): DissedEventFilter; Dissed(usr?: string | null): DissedEventFilter; "File(bytes32,uint256)"(what?: BytesLike | null, data?: null): FileEventFilter; File(what?: BytesLike | null, data?: null): FileEventFilter; "Kissed(address)"(usr?: string | null): KissedEventFilter; Kissed(usr?: string | null): KissedEventFilter; "Rely(address)"(usr?: string | null): RelyEventFilter; Rely(usr?: string | null): RelyEventFilter; "SignersAdded(address[])"(signers?: null): SignersAddedEventFilter; SignersAdded(signers?: null): SignersAddedEventFilter; "SignersRemoved(address[])"(signers?: null): SignersRemovedEventFilter; SignersRemoved(signers?: null): SignersRemovedEventFilter; }; estimateGas: { WAD_BPS(overrides?: CallOverrides): Promise; addSigners(signers_: string[], overrides?: Overrides & { from?: string | Promise; }): Promise; buds(arg0: string, overrides?: CallOverrides): Promise; dai(overrides?: CallOverrides): Promise; daiJoin(overrides?: CallOverrides): Promise; deny(usr: string, overrides?: Overrides & { from?: string | Promise; }): Promise; diss(usr: string, overrides?: Overrides & { from?: string | Promise; }): Promise; ethPriceOracle(overrides?: CallOverrides): Promise; file(what: BytesLike, data: BigNumberish, overrides?: Overrides & { from?: string | Promise; }): Promise; gasMargin(overrides?: CallOverrides): Promise; kiss(usr: string, overrides?: Overrides & { from?: string | Promise; }): Promise; oracleAuth(overrides?: CallOverrides): Promise; relay(teleportGUID: TeleportGUIDStruct, signatures: BytesLike, maxFeePercentage: BigNumberish, gasFee: BigNumberish, expiry: BigNumberish, v: BigNumberish, r: BytesLike, s: BytesLike, to: string, data: BytesLike, overrides?: Overrides & { from?: string | Promise; }): Promise; rely(usr: string, overrides?: Overrides & { from?: string | Promise; }): Promise; removeSigners(signers_: string[], overrides?: Overrides & { from?: string | Promise; }): Promise; signers(arg0: string, overrides?: CallOverrides): Promise; teleportJoin(overrides?: CallOverrides): Promise; wards(arg0: string, overrides?: CallOverrides): Promise; }; populateTransaction: { WAD_BPS(overrides?: CallOverrides): Promise; addSigners(signers_: string[], overrides?: Overrides & { from?: string | Promise; }): Promise; buds(arg0: string, overrides?: CallOverrides): Promise; dai(overrides?: CallOverrides): Promise; daiJoin(overrides?: CallOverrides): Promise; deny(usr: string, overrides?: Overrides & { from?: string | Promise; }): Promise; diss(usr: string, overrides?: Overrides & { from?: string | Promise; }): Promise; ethPriceOracle(overrides?: CallOverrides): Promise; file(what: BytesLike, data: BigNumberish, overrides?: Overrides & { from?: string | Promise; }): Promise; gasMargin(overrides?: CallOverrides): Promise; kiss(usr: string, overrides?: Overrides & { from?: string | Promise; }): Promise; oracleAuth(overrides?: CallOverrides): Promise; relay(teleportGUID: TeleportGUIDStruct, signatures: BytesLike, maxFeePercentage: BigNumberish, gasFee: BigNumberish, expiry: BigNumberish, v: BigNumberish, r: BytesLike, s: BytesLike, to: string, data: BytesLike, overrides?: Overrides & { from?: string | Promise; }): Promise; rely(usr: string, overrides?: Overrides & { from?: string | Promise; }): Promise; removeSigners(signers_: string[], overrides?: Overrides & { from?: string | Promise; }): Promise; signers(arg0: string, overrides?: CallOverrides): Promise; teleportJoin(overrides?: CallOverrides): Promise; wards(arg0: string, overrides?: CallOverrides): Promise; }; }