@q-dev/q-js-sdk
Version:
Typescript Library to interact with Q System Contracts
189 lines (188 loc) • 11 kB
TypeScript
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";
export declare namespace Saving {
type BalanceDetailsStruct = {
currentBalance: PromiseOrValue<BigNumberish>;
normalizedBalance: PromiseOrValue<BigNumberish>;
compoundRate: PromiseOrValue<BigNumberish>;
lastUpdateOfCompoundRate: PromiseOrValue<BigNumberish>;
interestRate: PromiseOrValue<BigNumberish>;
};
type BalanceDetailsStructOutput = [
BigNumber,
BigNumber,
BigNumber,
BigNumber,
BigNumber
] & {
currentBalance: BigNumber;
normalizedBalance: BigNumber;
compoundRate: BigNumber;
lastUpdateOfCompoundRate: BigNumber;
interestRate: BigNumber;
};
}
export interface SavingInterface extends utils.Interface {
functions: {
"aggregatedNormalizedCapital()": FunctionFragment;
"compoundRateKeeper()": FunctionFragment;
"normalizedCapitals(address)": FunctionFragment;
"initialize(address,string)": FunctionFragment;
"deposit(uint256)": FunctionFragment;
"withdraw(uint256)": FunctionFragment;
"updateCompoundRate()": FunctionFragment;
"getBalanceDetails()": FunctionFragment;
"getBalance()": FunctionFragment;
};
getFunction(nameOrSignatureOrTopic: "aggregatedNormalizedCapital" | "compoundRateKeeper" | "normalizedCapitals" | "initialize" | "deposit" | "withdraw" | "updateCompoundRate" | "getBalanceDetails" | "getBalance"): FunctionFragment;
encodeFunctionData(functionFragment: "aggregatedNormalizedCapital", values?: undefined): string;
encodeFunctionData(functionFragment: "compoundRateKeeper", values?: undefined): string;
encodeFunctionData(functionFragment: "normalizedCapitals", values: [PromiseOrValue<string>]): string;
encodeFunctionData(functionFragment: "initialize", values: [PromiseOrValue<string>, PromiseOrValue<string>]): string;
encodeFunctionData(functionFragment: "deposit", values: [PromiseOrValue<BigNumberish>]): string;
encodeFunctionData(functionFragment: "withdraw", values: [PromiseOrValue<BigNumberish>]): string;
encodeFunctionData(functionFragment: "updateCompoundRate", values?: undefined): string;
encodeFunctionData(functionFragment: "getBalanceDetails", values?: undefined): string;
encodeFunctionData(functionFragment: "getBalance", values?: undefined): string;
decodeFunctionResult(functionFragment: "aggregatedNormalizedCapital", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "compoundRateKeeper", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "normalizedCapitals", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "initialize", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "deposit", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "withdraw", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "updateCompoundRate", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "getBalanceDetails", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "getBalance", data: BytesLike): Result;
events: {
"UserDeposited(address,uint256)": EventFragment;
"UserWithdrawn(address,uint256)": EventFragment;
};
getEvent(nameOrSignatureOrTopic: "UserDeposited"): EventFragment;
getEvent(nameOrSignatureOrTopic: "UserWithdrawn"): EventFragment;
}
export interface UserDepositedEventObject {
_user: string;
_depositAmount: BigNumber;
}
export declare type UserDepositedEvent = TypedEvent<[
string,
BigNumber
], UserDepositedEventObject>;
export declare type UserDepositedEventFilter = TypedEventFilter<UserDepositedEvent>;
export interface UserWithdrawnEventObject {
_user: string;
_withdrawAmount: BigNumber;
}
export declare type UserWithdrawnEvent = TypedEvent<[
string,
BigNumber
], UserWithdrawnEventObject>;
export declare type UserWithdrawnEventFilter = TypedEventFilter<UserWithdrawnEvent>;
export interface Saving extends BaseContract {
connect(signerOrProvider: Signer | Provider | string): this;
attach(addressOrName: string): this;
deployed(): Promise<this>;
interface: SavingInterface;
queryFilter<TEvent extends TypedEvent>(event: TypedEventFilter<TEvent>, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise<Array<TEvent>>;
listeners<TEvent extends TypedEvent>(eventFilter?: TypedEventFilter<TEvent>): Array<TypedListener<TEvent>>;
listeners(eventName?: string): Array<Listener>;
removeAllListeners<TEvent extends TypedEvent>(eventFilter: TypedEventFilter<TEvent>): this;
removeAllListeners(eventName?: string): this;
off: OnEvent<this>;
on: OnEvent<this>;
once: OnEvent<this>;
removeListener: OnEvent<this>;
functions: {
aggregatedNormalizedCapital(overrides?: CallOverrides): Promise<[BigNumber]>;
compoundRateKeeper(overrides?: CallOverrides): Promise<[string]>;
normalizedCapitals(arg0: PromiseOrValue<string>, overrides?: CallOverrides): Promise<[BigNumber]>;
initialize(_registry: PromiseOrValue<string>, _stc: PromiseOrValue<string>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
}): Promise<ContractTransaction>;
deposit(_amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
}): Promise<ContractTransaction>;
withdraw(_amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
}): Promise<ContractTransaction>;
updateCompoundRate(overrides?: Overrides & {
from?: PromiseOrValue<string>;
}): Promise<ContractTransaction>;
getBalanceDetails(overrides?: CallOverrides): Promise<[Saving.BalanceDetailsStructOutput]>;
getBalance(overrides?: CallOverrides): Promise<[BigNumber]>;
};
aggregatedNormalizedCapital(overrides?: CallOverrides): Promise<BigNumber>;
compoundRateKeeper(overrides?: CallOverrides): Promise<string>;
normalizedCapitals(arg0: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
initialize(_registry: PromiseOrValue<string>, _stc: PromiseOrValue<string>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
}): Promise<ContractTransaction>;
deposit(_amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
}): Promise<ContractTransaction>;
withdraw(_amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
}): Promise<ContractTransaction>;
updateCompoundRate(overrides?: Overrides & {
from?: PromiseOrValue<string>;
}): Promise<ContractTransaction>;
getBalanceDetails(overrides?: CallOverrides): Promise<Saving.BalanceDetailsStructOutput>;
getBalance(overrides?: CallOverrides): Promise<BigNumber>;
callStatic: {
aggregatedNormalizedCapital(overrides?: CallOverrides): Promise<BigNumber>;
compoundRateKeeper(overrides?: CallOverrides): Promise<string>;
normalizedCapitals(arg0: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
initialize(_registry: PromiseOrValue<string>, _stc: PromiseOrValue<string>, overrides?: CallOverrides): Promise<void>;
deposit(_amount: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<boolean>;
withdraw(_amount: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<boolean>;
updateCompoundRate(overrides?: CallOverrides): Promise<BigNumber>;
getBalanceDetails(overrides?: CallOverrides): Promise<Saving.BalanceDetailsStructOutput>;
getBalance(overrides?: CallOverrides): Promise<BigNumber>;
};
filters: {
"UserDeposited(address,uint256)"(_user?: PromiseOrValue<string> | null, _depositAmount?: null): UserDepositedEventFilter;
UserDeposited(_user?: PromiseOrValue<string> | null, _depositAmount?: null): UserDepositedEventFilter;
"UserWithdrawn(address,uint256)"(_user?: PromiseOrValue<string> | null, _withdrawAmount?: null): UserWithdrawnEventFilter;
UserWithdrawn(_user?: PromiseOrValue<string> | null, _withdrawAmount?: null): UserWithdrawnEventFilter;
};
estimateGas: {
aggregatedNormalizedCapital(overrides?: CallOverrides): Promise<BigNumber>;
compoundRateKeeper(overrides?: CallOverrides): Promise<BigNumber>;
normalizedCapitals(arg0: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
initialize(_registry: PromiseOrValue<string>, _stc: PromiseOrValue<string>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
}): Promise<BigNumber>;
deposit(_amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
}): Promise<BigNumber>;
withdraw(_amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
}): Promise<BigNumber>;
updateCompoundRate(overrides?: Overrides & {
from?: PromiseOrValue<string>;
}): Promise<BigNumber>;
getBalanceDetails(overrides?: CallOverrides): Promise<BigNumber>;
getBalance(overrides?: CallOverrides): Promise<BigNumber>;
};
populateTransaction: {
aggregatedNormalizedCapital(overrides?: CallOverrides): Promise<PopulatedTransaction>;
compoundRateKeeper(overrides?: CallOverrides): Promise<PopulatedTransaction>;
normalizedCapitals(arg0: PromiseOrValue<string>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
initialize(_registry: PromiseOrValue<string>, _stc: PromiseOrValue<string>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
}): Promise<PopulatedTransaction>;
deposit(_amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
}): Promise<PopulatedTransaction>;
withdraw(_amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
from?: PromiseOrValue<string>;
}): Promise<PopulatedTransaction>;
updateCompoundRate(overrides?: Overrides & {
from?: PromiseOrValue<string>;
}): Promise<PopulatedTransaction>;
getBalanceDetails(overrides?: CallOverrides): Promise<PopulatedTransaction>;
getBalance(overrides?: CallOverrides): Promise<PopulatedTransaction>;
};
}