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 } from './common'; export interface DebtTokenBaseInterface extends utils.Interface { functions: { 'DELEGATION_WITH_SIG_TYPEHASH()': FunctionFragment; 'DOMAIN_SEPARATOR()': FunctionFragment; 'EIP712_REVISION()': FunctionFragment; 'approveDelegation(address,uint256)': FunctionFragment; 'borrowAllowance(address,address)': FunctionFragment; 'delegationWithSig(address,address,uint256,uint256,uint8,bytes32,bytes32)': FunctionFragment; 'nonces(address)': FunctionFragment; }; getFunction(nameOrSignatureOrTopic: 'DELEGATION_WITH_SIG_TYPEHASH' | 'DOMAIN_SEPARATOR' | 'EIP712_REVISION' | 'approveDelegation' | 'borrowAllowance' | 'delegationWithSig' | 'nonces'): FunctionFragment; encodeFunctionData(functionFragment: 'DELEGATION_WITH_SIG_TYPEHASH', values?: undefined): string; encodeFunctionData(functionFragment: 'DOMAIN_SEPARATOR', values?: undefined): string; encodeFunctionData(functionFragment: 'EIP712_REVISION', values?: undefined): string; encodeFunctionData(functionFragment: 'approveDelegation', values: [string, BigNumberish]): string; encodeFunctionData(functionFragment: 'borrowAllowance', values: [string, string]): string; encodeFunctionData(functionFragment: 'delegationWithSig', values: [string, string, BigNumberish, BigNumberish, BigNumberish, BytesLike, BytesLike]): string; encodeFunctionData(functionFragment: 'nonces', values: [string]): string; decodeFunctionResult(functionFragment: 'DELEGATION_WITH_SIG_TYPEHASH', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'DOMAIN_SEPARATOR', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'EIP712_REVISION', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'approveDelegation', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'borrowAllowance', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'delegationWithSig', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'nonces', data: BytesLike): Result; events: { 'BorrowAllowanceDelegated(address,address,address,uint256)': EventFragment; }; getEvent(nameOrSignatureOrTopic: 'BorrowAllowanceDelegated'): EventFragment; } export interface BorrowAllowanceDelegatedEventObject { fromUser: string; toUser: string; asset: string; amount: BigNumber; } export type BorrowAllowanceDelegatedEvent = TypedEvent<[ string, string, string, BigNumber ], BorrowAllowanceDelegatedEventObject>; export type BorrowAllowanceDelegatedEventFilter = TypedEventFilter; export interface DebtTokenBase extends BaseContract { connect(signerOrProvider: Signer | Provider | string): this; attach(addressOrName: string): this; deployed(): Promise; interface: DebtTokenBaseInterface; 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: { DELEGATION_WITH_SIG_TYPEHASH(overrides?: CallOverrides): Promise<[string]>; DOMAIN_SEPARATOR(overrides?: CallOverrides): Promise<[string]>; EIP712_REVISION(overrides?: CallOverrides): Promise<[string]>; approveDelegation(delegatee: string, amount: BigNumberish, overrides?: Overrides & { from?: string; }): Promise; borrowAllowance(fromUser: string, toUser: string, overrides?: CallOverrides): Promise<[BigNumber]>; delegationWithSig(delegator: string, delegatee: string, value: BigNumberish, deadline: BigNumberish, v: BigNumberish, r: BytesLike, s: BytesLike, overrides?: Overrides & { from?: string; }): Promise; nonces(owner: string, overrides?: CallOverrides): Promise<[BigNumber]>; }; DELEGATION_WITH_SIG_TYPEHASH(overrides?: CallOverrides): Promise; DOMAIN_SEPARATOR(overrides?: CallOverrides): Promise; EIP712_REVISION(overrides?: CallOverrides): Promise; approveDelegation(delegatee: string, amount: BigNumberish, overrides?: Overrides & { from?: string; }): Promise; borrowAllowance(fromUser: string, toUser: string, overrides?: CallOverrides): Promise; delegationWithSig(delegator: string, delegatee: string, value: BigNumberish, deadline: BigNumberish, v: BigNumberish, r: BytesLike, s: BytesLike, overrides?: Overrides & { from?: string; }): Promise; nonces(owner: string, overrides?: CallOverrides): Promise; callStatic: { DELEGATION_WITH_SIG_TYPEHASH(overrides?: CallOverrides): Promise; DOMAIN_SEPARATOR(overrides?: CallOverrides): Promise; EIP712_REVISION(overrides?: CallOverrides): Promise; approveDelegation(delegatee: string, amount: BigNumberish, overrides?: CallOverrides): Promise; borrowAllowance(fromUser: string, toUser: string, overrides?: CallOverrides): Promise; delegationWithSig(delegator: string, delegatee: string, value: BigNumberish, deadline: BigNumberish, v: BigNumberish, r: BytesLike, s: BytesLike, overrides?: CallOverrides): Promise; nonces(owner: string, overrides?: CallOverrides): Promise; }; filters: { 'BorrowAllowanceDelegated(address,address,address,uint256)'(fromUser?: string | null, toUser?: string | null, asset?: string | null, amount?: null): BorrowAllowanceDelegatedEventFilter; BorrowAllowanceDelegated(fromUser?: string | null, toUser?: string | null, asset?: string | null, amount?: null): BorrowAllowanceDelegatedEventFilter; }; estimateGas: { DELEGATION_WITH_SIG_TYPEHASH(overrides?: CallOverrides): Promise; DOMAIN_SEPARATOR(overrides?: CallOverrides): Promise; EIP712_REVISION(overrides?: CallOverrides): Promise; approveDelegation(delegatee: string, amount: BigNumberish, overrides?: Overrides & { from?: string; }): Promise; borrowAllowance(fromUser: string, toUser: string, overrides?: CallOverrides): Promise; delegationWithSig(delegator: string, delegatee: string, value: BigNumberish, deadline: BigNumberish, v: BigNumberish, r: BytesLike, s: BytesLike, overrides?: Overrides & { from?: string; }): Promise; nonces(owner: string, overrides?: CallOverrides): Promise; }; populateTransaction: { DELEGATION_WITH_SIG_TYPEHASH(overrides?: CallOverrides): Promise; DOMAIN_SEPARATOR(overrides?: CallOverrides): Promise; EIP712_REVISION(overrides?: CallOverrides): Promise; approveDelegation(delegatee: string, amount: BigNumberish, overrides?: Overrides & { from?: string; }): Promise; borrowAllowance(fromUser: string, toUser: string, overrides?: CallOverrides): Promise; delegationWithSig(delegator: string, delegatee: string, value: BigNumberish, deadline: BigNumberish, v: BigNumberish, r: BytesLike, s: BytesLike, overrides?: Overrides & { from?: string; }): Promise; nonces(owner: string, overrides?: CallOverrides): Promise; }; }