@q-dev/gdk-sdk
Version:
Typescript Library to interact with GDK Contracts
462 lines (461 loc) • 28.2 kB
TypeScript
import type { BaseContract, BigNumber, BigNumberish, BytesLike, CallOverrides, ContractTransaction, Overrides, PayableOverrides, 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 declare namespace IDAOVault {
type TomeLockInfoStruct = {
withdrawalAmount: BigNumberish;
lockedAmount: BigNumberish;
unlockTime: BigNumberish;
};
type TomeLockInfoStructOutput = [BigNumber, BigNumber, BigNumber] & {
withdrawalAmount: BigNumber;
lockedAmount: BigNumber;
unlockTime: BigNumber;
};
type ConstitutionDataInfoStruct = {
isSigned: boolean;
signedAt: BigNumberish;
};
type ConstitutionDataInfoStructOutput = [boolean, BigNumber] & {
isSigned: boolean;
signedAt: BigNumber;
};
}
export interface IDAOVaultInterface extends utils.Interface {
functions: {
"authorizeBySBT(address)": FunctionFragment;
"depositERC20(address,uint256)": FunctionFragment;
"depositNFT(address,uint256)": FunctionFragment;
"depositNative()": FunctionFragment;
"getConstitutionSignHash(address)": FunctionFragment;
"getTimeLockInfo(address,address)": FunctionFragment;
"getTokenSupply(address)": FunctionFragment;
"getUserConstitutionData(address)": FunctionFragment;
"getUserNFTs(address,address)": FunctionFragment;
"getUserTokens(address)": FunctionFragment;
"getUserVotingPower(address,address)": FunctionFragment;
"isAuthorizedBySBT(address,address)": FunctionFragment;
"isSupportedNFT(address)": FunctionFragment;
"isSupportedSBT(address)": FunctionFragment;
"lock(address,address,uint256,uint256)": FunctionFragment;
"lockAndGetUserVotingPower(address,address,uint256)": FunctionFragment;
"revokeSBTAuthorization(address)": FunctionFragment;
"signConstitution(address,bytes)": FunctionFragment;
"withdrawERC20(address,uint256)": FunctionFragment;
"withdrawNFT(address,uint256)": FunctionFragment;
"withdrawNative(uint256)": FunctionFragment;
};
getFunction(nameOrSignatureOrTopic: "authorizeBySBT" | "depositERC20" | "depositNFT" | "depositNative" | "getConstitutionSignHash" | "getTimeLockInfo" | "getTokenSupply" | "getUserConstitutionData" | "getUserNFTs" | "getUserTokens" | "getUserVotingPower" | "isAuthorizedBySBT" | "isSupportedNFT" | "isSupportedSBT" | "lock" | "lockAndGetUserVotingPower" | "revokeSBTAuthorization" | "signConstitution" | "withdrawERC20" | "withdrawNFT" | "withdrawNative"): FunctionFragment;
encodeFunctionData(functionFragment: "authorizeBySBT", values: [string]): string;
encodeFunctionData(functionFragment: "depositERC20", values: [string, BigNumberish]): string;
encodeFunctionData(functionFragment: "depositNFT", values: [string, BigNumberish]): string;
encodeFunctionData(functionFragment: "depositNative", values?: undefined): string;
encodeFunctionData(functionFragment: "getConstitutionSignHash", values: [string]): string;
encodeFunctionData(functionFragment: "getTimeLockInfo", values: [string, string]): string;
encodeFunctionData(functionFragment: "getTokenSupply", values: [string]): string;
encodeFunctionData(functionFragment: "getUserConstitutionData", values: [string]): string;
encodeFunctionData(functionFragment: "getUserNFTs", values: [string, string]): string;
encodeFunctionData(functionFragment: "getUserTokens", values: [string]): string;
encodeFunctionData(functionFragment: "getUserVotingPower", values: [string, string]): string;
encodeFunctionData(functionFragment: "isAuthorizedBySBT", values: [string, string]): string;
encodeFunctionData(functionFragment: "isSupportedNFT", values: [string]): string;
encodeFunctionData(functionFragment: "isSupportedSBT", values: [string]): string;
encodeFunctionData(functionFragment: "lock", values: [string, string, BigNumberish, BigNumberish]): string;
encodeFunctionData(functionFragment: "lockAndGetUserVotingPower", values: [string, string, BigNumberish]): string;
encodeFunctionData(functionFragment: "revokeSBTAuthorization", values: [string]): string;
encodeFunctionData(functionFragment: "signConstitution", values: [string, BytesLike]): string;
encodeFunctionData(functionFragment: "withdrawERC20", values: [string, BigNumberish]): string;
encodeFunctionData(functionFragment: "withdrawNFT", values: [string, BigNumberish]): string;
encodeFunctionData(functionFragment: "withdrawNative", values: [BigNumberish]): string;
decodeFunctionResult(functionFragment: "authorizeBySBT", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "depositERC20", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "depositNFT", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "depositNative", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "getConstitutionSignHash", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "getTimeLockInfo", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "getTokenSupply", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "getUserConstitutionData", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "getUserNFTs", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "getUserTokens", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "getUserVotingPower", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "isAuthorizedBySBT", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "isSupportedNFT", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "isSupportedSBT", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "lock", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "lockAndGetUserVotingPower", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "revokeSBTAuthorization", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "signConstitution", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "withdrawERC20", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "withdrawNFT", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "withdrawNative", data: BytesLike): Result;
events: {
"AuthenticatedBySBT(address,address)": EventFragment;
"AuthorizedBySBT(address,address)": EventFragment;
"ConstitutionSigned(address)": EventFragment;
"NFTDeposited(address,address,uint256)": EventFragment;
"NFTLocked(address,address,uint256,uint256)": EventFragment;
"NFTWithdrew(address,address,uint256)": EventFragment;
"SBTAuthorizationRevoked(address,address)": EventFragment;
"TokensDeposited(address,address,uint256)": EventFragment;
"TokensLocked(address,address,uint256,uint256)": EventFragment;
"TokensWithdrew(address,address,uint256)": EventFragment;
};
getEvent(nameOrSignatureOrTopic: "AuthenticatedBySBT"): EventFragment;
getEvent(nameOrSignatureOrTopic: "AuthorizedBySBT"): EventFragment;
getEvent(nameOrSignatureOrTopic: "ConstitutionSigned"): EventFragment;
getEvent(nameOrSignatureOrTopic: "NFTDeposited"): EventFragment;
getEvent(nameOrSignatureOrTopic: "NFTLocked"): EventFragment;
getEvent(nameOrSignatureOrTopic: "NFTWithdrew"): EventFragment;
getEvent(nameOrSignatureOrTopic: "SBTAuthorizationRevoked"): EventFragment;
getEvent(nameOrSignatureOrTopic: "TokensDeposited"): EventFragment;
getEvent(nameOrSignatureOrTopic: "TokensLocked"): EventFragment;
getEvent(nameOrSignatureOrTopic: "TokensWithdrew"): EventFragment;
}
export interface AuthenticatedBySBTEventObject {
tokenAddress: string;
sender: string;
}
export type AuthenticatedBySBTEvent = TypedEvent<[
string,
string
], AuthenticatedBySBTEventObject>;
export type AuthenticatedBySBTEventFilter = TypedEventFilter<AuthenticatedBySBTEvent>;
export interface AuthorizedBySBTEventObject {
tokenAddress: string;
sender: string;
}
export type AuthorizedBySBTEvent = TypedEvent<[
string,
string
], AuthorizedBySBTEventObject>;
export type AuthorizedBySBTEventFilter = TypedEventFilter<AuthorizedBySBTEvent>;
export interface ConstitutionSignedEventObject {
user: string;
}
export type ConstitutionSignedEvent = TypedEvent<[
string
], ConstitutionSignedEventObject>;
export type ConstitutionSignedEventFilter = TypedEventFilter<ConstitutionSignedEvent>;
export interface NFTDepositedEventObject {
tokenAddress: string;
sender: string;
tokenId: BigNumber;
}
export type NFTDepositedEvent = TypedEvent<[
string,
string,
BigNumber
], NFTDepositedEventObject>;
export type NFTDepositedEventFilter = TypedEventFilter<NFTDepositedEvent>;
export interface NFTLockedEventObject {
tokenAddress: string;
sender: string;
tokenId: BigNumber;
unlockTime: BigNumber;
}
export type NFTLockedEvent = TypedEvent<[
string,
string,
BigNumber,
BigNumber
], NFTLockedEventObject>;
export type NFTLockedEventFilter = TypedEventFilter<NFTLockedEvent>;
export interface NFTWithdrewEventObject {
tokenAddress: string;
sender: string;
tokenId: BigNumber;
}
export type NFTWithdrewEvent = TypedEvent<[
string,
string,
BigNumber
], NFTWithdrewEventObject>;
export type NFTWithdrewEventFilter = TypedEventFilter<NFTWithdrewEvent>;
export interface SBTAuthorizationRevokedEventObject {
tokenAddress: string;
sender: string;
}
export type SBTAuthorizationRevokedEvent = TypedEvent<[
string,
string
], SBTAuthorizationRevokedEventObject>;
export type SBTAuthorizationRevokedEventFilter = TypedEventFilter<SBTAuthorizationRevokedEvent>;
export interface TokensDepositedEventObject {
tokenAddress: string;
sender: string;
amount: BigNumber;
}
export type TokensDepositedEvent = TypedEvent<[
string,
string,
BigNumber
], TokensDepositedEventObject>;
export type TokensDepositedEventFilter = TypedEventFilter<TokensDepositedEvent>;
export interface TokensLockedEventObject {
tokenAddress: string;
sender: string;
amount: BigNumber;
unlockTime: BigNumber;
}
export type TokensLockedEvent = TypedEvent<[
string,
string,
BigNumber,
BigNumber
], TokensLockedEventObject>;
export type TokensLockedEventFilter = TypedEventFilter<TokensLockedEvent>;
export interface TokensWithdrewEventObject {
tokenAddress: string;
sender: string;
amount: BigNumber;
}
export type TokensWithdrewEvent = TypedEvent<[
string,
string,
BigNumber
], TokensWithdrewEventObject>;
export type TokensWithdrewEventFilter = TypedEventFilter<TokensWithdrewEvent>;
export interface IDAOVault extends BaseContract {
contractName: "IDAOVault";
connect(signerOrProvider: Signer | Provider | string): this;
attach(addressOrName: string): this;
deployed(): Promise<this>;
interface: IDAOVaultInterface;
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: {
authorizeBySBT(tokenAddress_: string, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
depositERC20(tokenAddress_: string, amount_: BigNumberish, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
depositNFT(tokenAddress_: string, tokenId_: BigNumberish, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
depositNative(overrides?: PayableOverrides & {
from?: string;
}): Promise<ContractTransaction>;
getConstitutionSignHash(signer_: string, overrides?: CallOverrides): Promise<[string]>;
getTimeLockInfo(userAddress_: string, tokenAddress_: string, overrides?: CallOverrides): Promise<[
IDAOVault.TomeLockInfoStructOutput
] & {
info_: IDAOVault.TomeLockInfoStructOutput;
}>;
getTokenSupply(tokenAddress_: string, overrides?: CallOverrides): Promise<[BigNumber]>;
getUserConstitutionData(userAddress_: string, overrides?: CallOverrides): Promise<[IDAOVault.ConstitutionDataInfoStructOutput]>;
getUserNFTs(userAddress_: string, tokenAddress_: string, overrides?: CallOverrides): Promise<[BigNumber[]]>;
getUserTokens(userAddress_: string, overrides?: CallOverrides): Promise<[string[]]>;
getUserVotingPower(userAddress_: string, tokenAddress_: string, overrides?: CallOverrides): Promise<[BigNumber]>;
isAuthorizedBySBT(sender_: string, tokenAddress_: string, overrides?: CallOverrides): Promise<[boolean]>;
isSupportedNFT(tokenAddress_: string, overrides?: CallOverrides): Promise<[boolean]>;
isSupportedSBT(tokenAddress_: string, overrides?: CallOverrides): Promise<[boolean]>;
lock(sender_: string, tokenAddress_: string, amount_: BigNumberish, timeToLock_: BigNumberish, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
lockAndGetUserVotingPower(userAddress_: string, tokenAddress_: string, timeToLock_: BigNumberish, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
revokeSBTAuthorization(tokenAddress_: string, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
signConstitution(signer_: string, signature_: BytesLike, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
withdrawERC20(tokenAddress_: string, amount_: BigNumberish, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
withdrawNFT(tokenAddress_: string, tokenId_: BigNumberish, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
withdrawNative(amount_: BigNumberish, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
};
authorizeBySBT(tokenAddress_: string, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
depositERC20(tokenAddress_: string, amount_: BigNumberish, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
depositNFT(tokenAddress_: string, tokenId_: BigNumberish, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
depositNative(overrides?: PayableOverrides & {
from?: string;
}): Promise<ContractTransaction>;
getConstitutionSignHash(signer_: string, overrides?: CallOverrides): Promise<string>;
getTimeLockInfo(userAddress_: string, tokenAddress_: string, overrides?: CallOverrides): Promise<IDAOVault.TomeLockInfoStructOutput>;
getTokenSupply(tokenAddress_: string, overrides?: CallOverrides): Promise<BigNumber>;
getUserConstitutionData(userAddress_: string, overrides?: CallOverrides): Promise<IDAOVault.ConstitutionDataInfoStructOutput>;
getUserNFTs(userAddress_: string, tokenAddress_: string, overrides?: CallOverrides): Promise<BigNumber[]>;
getUserTokens(userAddress_: string, overrides?: CallOverrides): Promise<string[]>;
getUserVotingPower(userAddress_: string, tokenAddress_: string, overrides?: CallOverrides): Promise<BigNumber>;
isAuthorizedBySBT(sender_: string, tokenAddress_: string, overrides?: CallOverrides): Promise<boolean>;
isSupportedNFT(tokenAddress_: string, overrides?: CallOverrides): Promise<boolean>;
isSupportedSBT(tokenAddress_: string, overrides?: CallOverrides): Promise<boolean>;
lock(sender_: string, tokenAddress_: string, amount_: BigNumberish, timeToLock_: BigNumberish, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
lockAndGetUserVotingPower(userAddress_: string, tokenAddress_: string, timeToLock_: BigNumberish, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
revokeSBTAuthorization(tokenAddress_: string, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
signConstitution(signer_: string, signature_: BytesLike, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
withdrawERC20(tokenAddress_: string, amount_: BigNumberish, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
withdrawNFT(tokenAddress_: string, tokenId_: BigNumberish, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
withdrawNative(amount_: BigNumberish, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
callStatic: {
authorizeBySBT(tokenAddress_: string, overrides?: CallOverrides): Promise<void>;
depositERC20(tokenAddress_: string, amount_: BigNumberish, overrides?: CallOverrides): Promise<void>;
depositNFT(tokenAddress_: string, tokenId_: BigNumberish, overrides?: CallOverrides): Promise<void>;
depositNative(overrides?: CallOverrides): Promise<void>;
getConstitutionSignHash(signer_: string, overrides?: CallOverrides): Promise<string>;
getTimeLockInfo(userAddress_: string, tokenAddress_: string, overrides?: CallOverrides): Promise<IDAOVault.TomeLockInfoStructOutput>;
getTokenSupply(tokenAddress_: string, overrides?: CallOverrides): Promise<BigNumber>;
getUserConstitutionData(userAddress_: string, overrides?: CallOverrides): Promise<IDAOVault.ConstitutionDataInfoStructOutput>;
getUserNFTs(userAddress_: string, tokenAddress_: string, overrides?: CallOverrides): Promise<BigNumber[]>;
getUserTokens(userAddress_: string, overrides?: CallOverrides): Promise<string[]>;
getUserVotingPower(userAddress_: string, tokenAddress_: string, overrides?: CallOverrides): Promise<BigNumber>;
isAuthorizedBySBT(sender_: string, tokenAddress_: string, overrides?: CallOverrides): Promise<boolean>;
isSupportedNFT(tokenAddress_: string, overrides?: CallOverrides): Promise<boolean>;
isSupportedSBT(tokenAddress_: string, overrides?: CallOverrides): Promise<boolean>;
lock(sender_: string, tokenAddress_: string, amount_: BigNumberish, timeToLock_: BigNumberish, overrides?: CallOverrides): Promise<void>;
lockAndGetUserVotingPower(userAddress_: string, tokenAddress_: string, timeToLock_: BigNumberish, overrides?: CallOverrides): Promise<BigNumber>;
revokeSBTAuthorization(tokenAddress_: string, overrides?: CallOverrides): Promise<void>;
signConstitution(signer_: string, signature_: BytesLike, overrides?: CallOverrides): Promise<void>;
withdrawERC20(tokenAddress_: string, amount_: BigNumberish, overrides?: CallOverrides): Promise<void>;
withdrawNFT(tokenAddress_: string, tokenId_: BigNumberish, overrides?: CallOverrides): Promise<void>;
withdrawNative(amount_: BigNumberish, overrides?: CallOverrides): Promise<void>;
};
filters: {
"AuthenticatedBySBT(address,address)"(tokenAddress?: string | null, sender?: string | null): AuthenticatedBySBTEventFilter;
AuthenticatedBySBT(tokenAddress?: string | null, sender?: string | null): AuthenticatedBySBTEventFilter;
"AuthorizedBySBT(address,address)"(tokenAddress?: string | null, sender?: string | null): AuthorizedBySBTEventFilter;
AuthorizedBySBT(tokenAddress?: string | null, sender?: string | null): AuthorizedBySBTEventFilter;
"ConstitutionSigned(address)"(user?: string | null): ConstitutionSignedEventFilter;
ConstitutionSigned(user?: string | null): ConstitutionSignedEventFilter;
"NFTDeposited(address,address,uint256)"(tokenAddress?: string | null, sender?: string | null, tokenId?: null): NFTDepositedEventFilter;
NFTDeposited(tokenAddress?: string | null, sender?: string | null, tokenId?: null): NFTDepositedEventFilter;
"NFTLocked(address,address,uint256,uint256)"(tokenAddress?: string | null, sender?: string | null, tokenId?: null, unlockTime?: null): NFTLockedEventFilter;
NFTLocked(tokenAddress?: string | null, sender?: string | null, tokenId?: null, unlockTime?: null): NFTLockedEventFilter;
"NFTWithdrew(address,address,uint256)"(tokenAddress?: string | null, sender?: string | null, tokenId?: null): NFTWithdrewEventFilter;
NFTWithdrew(tokenAddress?: string | null, sender?: string | null, tokenId?: null): NFTWithdrewEventFilter;
"SBTAuthorizationRevoked(address,address)"(tokenAddress?: string | null, sender?: string | null): SBTAuthorizationRevokedEventFilter;
SBTAuthorizationRevoked(tokenAddress?: string | null, sender?: string | null): SBTAuthorizationRevokedEventFilter;
"TokensDeposited(address,address,uint256)"(tokenAddress?: string | null, sender?: string | null, amount?: null): TokensDepositedEventFilter;
TokensDeposited(tokenAddress?: string | null, sender?: string | null, amount?: null): TokensDepositedEventFilter;
"TokensLocked(address,address,uint256,uint256)"(tokenAddress?: string | null, sender?: string | null, amount?: null, unlockTime?: null): TokensLockedEventFilter;
TokensLocked(tokenAddress?: string | null, sender?: string | null, amount?: null, unlockTime?: null): TokensLockedEventFilter;
"TokensWithdrew(address,address,uint256)"(tokenAddress?: string | null, sender?: string | null, amount?: null): TokensWithdrewEventFilter;
TokensWithdrew(tokenAddress?: string | null, sender?: string | null, amount?: null): TokensWithdrewEventFilter;
};
estimateGas: {
authorizeBySBT(tokenAddress_: string, overrides?: Overrides & {
from?: string;
}): Promise<BigNumber>;
depositERC20(tokenAddress_: string, amount_: BigNumberish, overrides?: Overrides & {
from?: string;
}): Promise<BigNumber>;
depositNFT(tokenAddress_: string, tokenId_: BigNumberish, overrides?: Overrides & {
from?: string;
}): Promise<BigNumber>;
depositNative(overrides?: PayableOverrides & {
from?: string;
}): Promise<BigNumber>;
getConstitutionSignHash(signer_: string, overrides?: CallOverrides): Promise<BigNumber>;
getTimeLockInfo(userAddress_: string, tokenAddress_: string, overrides?: CallOverrides): Promise<BigNumber>;
getTokenSupply(tokenAddress_: string, overrides?: CallOverrides): Promise<BigNumber>;
getUserConstitutionData(userAddress_: string, overrides?: CallOverrides): Promise<BigNumber>;
getUserNFTs(userAddress_: string, tokenAddress_: string, overrides?: CallOverrides): Promise<BigNumber>;
getUserTokens(userAddress_: string, overrides?: CallOverrides): Promise<BigNumber>;
getUserVotingPower(userAddress_: string, tokenAddress_: string, overrides?: CallOverrides): Promise<BigNumber>;
isAuthorizedBySBT(sender_: string, tokenAddress_: string, overrides?: CallOverrides): Promise<BigNumber>;
isSupportedNFT(tokenAddress_: string, overrides?: CallOverrides): Promise<BigNumber>;
isSupportedSBT(tokenAddress_: string, overrides?: CallOverrides): Promise<BigNumber>;
lock(sender_: string, tokenAddress_: string, amount_: BigNumberish, timeToLock_: BigNumberish, overrides?: Overrides & {
from?: string;
}): Promise<BigNumber>;
lockAndGetUserVotingPower(userAddress_: string, tokenAddress_: string, timeToLock_: BigNumberish, overrides?: Overrides & {
from?: string;
}): Promise<BigNumber>;
revokeSBTAuthorization(tokenAddress_: string, overrides?: Overrides & {
from?: string;
}): Promise<BigNumber>;
signConstitution(signer_: string, signature_: BytesLike, overrides?: Overrides & {
from?: string;
}): Promise<BigNumber>;
withdrawERC20(tokenAddress_: string, amount_: BigNumberish, overrides?: Overrides & {
from?: string;
}): Promise<BigNumber>;
withdrawNFT(tokenAddress_: string, tokenId_: BigNumberish, overrides?: Overrides & {
from?: string;
}): Promise<BigNumber>;
withdrawNative(amount_: BigNumberish, overrides?: Overrides & {
from?: string;
}): Promise<BigNumber>;
};
populateTransaction: {
authorizeBySBT(tokenAddress_: string, overrides?: Overrides & {
from?: string;
}): Promise<PopulatedTransaction>;
depositERC20(tokenAddress_: string, amount_: BigNumberish, overrides?: Overrides & {
from?: string;
}): Promise<PopulatedTransaction>;
depositNFT(tokenAddress_: string, tokenId_: BigNumberish, overrides?: Overrides & {
from?: string;
}): Promise<PopulatedTransaction>;
depositNative(overrides?: PayableOverrides & {
from?: string;
}): Promise<PopulatedTransaction>;
getConstitutionSignHash(signer_: string, overrides?: CallOverrides): Promise<PopulatedTransaction>;
getTimeLockInfo(userAddress_: string, tokenAddress_: string, overrides?: CallOverrides): Promise<PopulatedTransaction>;
getTokenSupply(tokenAddress_: string, overrides?: CallOverrides): Promise<PopulatedTransaction>;
getUserConstitutionData(userAddress_: string, overrides?: CallOverrides): Promise<PopulatedTransaction>;
getUserNFTs(userAddress_: string, tokenAddress_: string, overrides?: CallOverrides): Promise<PopulatedTransaction>;
getUserTokens(userAddress_: string, overrides?: CallOverrides): Promise<PopulatedTransaction>;
getUserVotingPower(userAddress_: string, tokenAddress_: string, overrides?: CallOverrides): Promise<PopulatedTransaction>;
isAuthorizedBySBT(sender_: string, tokenAddress_: string, overrides?: CallOverrides): Promise<PopulatedTransaction>;
isSupportedNFT(tokenAddress_: string, overrides?: CallOverrides): Promise<PopulatedTransaction>;
isSupportedSBT(tokenAddress_: string, overrides?: CallOverrides): Promise<PopulatedTransaction>;
lock(sender_: string, tokenAddress_: string, amount_: BigNumberish, timeToLock_: BigNumberish, overrides?: Overrides & {
from?: string;
}): Promise<PopulatedTransaction>;
lockAndGetUserVotingPower(userAddress_: string, tokenAddress_: string, timeToLock_: BigNumberish, overrides?: Overrides & {
from?: string;
}): Promise<PopulatedTransaction>;
revokeSBTAuthorization(tokenAddress_: string, overrides?: Overrides & {
from?: string;
}): Promise<PopulatedTransaction>;
signConstitution(signer_: string, signature_: BytesLike, overrides?: Overrides & {
from?: string;
}): Promise<PopulatedTransaction>;
withdrawERC20(tokenAddress_: string, amount_: BigNumberish, overrides?: Overrides & {
from?: string;
}): Promise<PopulatedTransaction>;
withdrawNFT(tokenAddress_: string, tokenId_: BigNumberish, overrides?: Overrides & {
from?: string;
}): Promise<PopulatedTransaction>;
withdrawNative(amount_: BigNumberish, overrides?: Overrides & {
from?: string;
}): Promise<PopulatedTransaction>;
};
}