@q-dev/gdk-sdk
Version:
Typescript Library to interact with GDK Contracts
749 lines (748 loc) • 44.3 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 declare namespace PriorityQueue {
type QueueStruct = {
_values: BytesLike[];
_priorities: BigNumberish[];
};
type QueueStructOutput = [string[], BigNumber[]] & {
_values: string[];
_priorities: BigNumber[];
};
}
export interface DAOVaultInterface extends utils.Interface {
functions: {
"CONNECTED_DAO_REGISTRY()": FunctionFragment;
"CONSTITUTION_SIGN_TYPEHASH()": FunctionFragment;
"MAX_LOCKED_TIME()": FunctionFragment;
"authorizeBySBT(address)": FunctionFragment;
"depositERC20(address,uint256)": FunctionFragment;
"depositNFT(address,uint256)": FunctionFragment;
"depositNative()": FunctionFragment;
"eip712Domain()": FunctionFragment;
"getConstitutionSignHash(address)": FunctionFragment;
"getInjector()": FunctionFragment;
"getTimeLockInfo(address,address)": FunctionFragment;
"getTokenSupply(address)": FunctionFragment;
"getUserConstitutionData(address)": FunctionFragment;
"getUserNFTs(address,address)": FunctionFragment;
"getUserTokens(address)": FunctionFragment;
"getUserVotingPower(address,address)": FunctionFragment;
"implementation()": FunctionFragment;
"isAuthorizedBySBT(address,address)": FunctionFragment;
"isSupportedNFT(address)": FunctionFragment;
"isSupportedSBT(address)": FunctionFragment;
"lock(address,address,uint256,uint256)": FunctionFragment;
"lockAndGetUserVotingPower(address,address,uint256)": FunctionFragment;
"lockedTokens(address,address)": FunctionFragment;
"permissionManager()": FunctionFragment;
"proxiableUUID()": FunctionFragment;
"revokeSBTAuthorization(address)": FunctionFragment;
"setDependencies(address,bytes)": FunctionFragment;
"setInjector(address)": FunctionFragment;
"signConstitution(address,bytes)": FunctionFragment;
"signEIP712Constitution(address,bytes)": FunctionFragment;
"tokenBalance(address)": FunctionFragment;
"upgradeTo(address)": FunctionFragment;
"upgradeToAndCall(address,bytes)": FunctionFragment;
"userTokenBalance(address,address)": FunctionFragment;
"withdrawERC20(address,uint256)": FunctionFragment;
"withdrawNFT(address,uint256)": FunctionFragment;
"withdrawNative(uint256)": FunctionFragment;
};
getFunction(nameOrSignatureOrTopic: "CONNECTED_DAO_REGISTRY" | "CONSTITUTION_SIGN_TYPEHASH" | "MAX_LOCKED_TIME" | "authorizeBySBT" | "depositERC20" | "depositNFT" | "depositNative" | "eip712Domain" | "getConstitutionSignHash" | "getInjector" | "getTimeLockInfo" | "getTokenSupply" | "getUserConstitutionData" | "getUserNFTs" | "getUserTokens" | "getUserVotingPower" | "implementation" | "isAuthorizedBySBT" | "isSupportedNFT" | "isSupportedSBT" | "lock" | "lockAndGetUserVotingPower" | "lockedTokens" | "permissionManager" | "proxiableUUID" | "revokeSBTAuthorization" | "setDependencies" | "setInjector" | "signConstitution" | "signEIP712Constitution" | "tokenBalance" | "upgradeTo" | "upgradeToAndCall" | "userTokenBalance" | "withdrawERC20" | "withdrawNFT" | "withdrawNative"): FunctionFragment;
encodeFunctionData(functionFragment: "CONNECTED_DAO_REGISTRY", values?: undefined): string;
encodeFunctionData(functionFragment: "CONSTITUTION_SIGN_TYPEHASH", values?: undefined): string;
encodeFunctionData(functionFragment: "MAX_LOCKED_TIME", values?: undefined): string;
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: "eip712Domain", values?: undefined): string;
encodeFunctionData(functionFragment: "getConstitutionSignHash", values: [string]): string;
encodeFunctionData(functionFragment: "getInjector", values?: undefined): 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: "implementation", values?: undefined): 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: "lockedTokens", values: [string, string]): string;
encodeFunctionData(functionFragment: "permissionManager", values?: undefined): string;
encodeFunctionData(functionFragment: "proxiableUUID", values?: undefined): string;
encodeFunctionData(functionFragment: "revokeSBTAuthorization", values: [string]): string;
encodeFunctionData(functionFragment: "setDependencies", values: [string, BytesLike]): string;
encodeFunctionData(functionFragment: "setInjector", values: [string]): string;
encodeFunctionData(functionFragment: "signConstitution", values: [string, BytesLike]): string;
encodeFunctionData(functionFragment: "signEIP712Constitution", values: [string, BytesLike]): string;
encodeFunctionData(functionFragment: "tokenBalance", values: [string]): string;
encodeFunctionData(functionFragment: "upgradeTo", values: [string]): string;
encodeFunctionData(functionFragment: "upgradeToAndCall", values: [string, BytesLike]): string;
encodeFunctionData(functionFragment: "userTokenBalance", values: [string, string]): string;
encodeFunctionData(functionFragment: "withdrawERC20", values: [string, BigNumberish]): string;
encodeFunctionData(functionFragment: "withdrawNFT", values: [string, BigNumberish]): string;
encodeFunctionData(functionFragment: "withdrawNative", values: [BigNumberish]): string;
decodeFunctionResult(functionFragment: "CONNECTED_DAO_REGISTRY", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "CONSTITUTION_SIGN_TYPEHASH", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "MAX_LOCKED_TIME", data: BytesLike): Result;
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: "eip712Domain", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "getConstitutionSignHash", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "getInjector", 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: "implementation", 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: "lockedTokens", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "permissionManager", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "proxiableUUID", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "revokeSBTAuthorization", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "setDependencies", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "setInjector", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "signConstitution", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "signEIP712Constitution", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "tokenBalance", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "upgradeTo", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "upgradeToAndCall", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "userTokenBalance", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "withdrawERC20", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "withdrawNFT", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "withdrawNative", data: BytesLike): Result;
events: {
"AdminChanged(address,address)": EventFragment;
"AuthenticatedBySBT(address,address)": EventFragment;
"AuthorizedBySBT(address,address)": EventFragment;
"BeaconUpgraded(address)": EventFragment;
"ConstitutionSigned(address)": EventFragment;
"EIP712DomainChanged()": EventFragment;
"Initialized(uint8)": 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;
"Upgraded(address)": EventFragment;
};
getEvent(nameOrSignatureOrTopic: "AdminChanged"): EventFragment;
getEvent(nameOrSignatureOrTopic: "AuthenticatedBySBT"): EventFragment;
getEvent(nameOrSignatureOrTopic: "AuthorizedBySBT"): EventFragment;
getEvent(nameOrSignatureOrTopic: "BeaconUpgraded"): EventFragment;
getEvent(nameOrSignatureOrTopic: "ConstitutionSigned"): EventFragment;
getEvent(nameOrSignatureOrTopic: "EIP712DomainChanged"): EventFragment;
getEvent(nameOrSignatureOrTopic: "Initialized"): 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;
getEvent(nameOrSignatureOrTopic: "Upgraded"): EventFragment;
}
export interface AdminChangedEventObject {
previousAdmin: string;
newAdmin: string;
}
export type AdminChangedEvent = TypedEvent<[
string,
string
], AdminChangedEventObject>;
export type AdminChangedEventFilter = TypedEventFilter<AdminChangedEvent>;
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 BeaconUpgradedEventObject {
beacon: string;
}
export type BeaconUpgradedEvent = TypedEvent<[
string
], BeaconUpgradedEventObject>;
export type BeaconUpgradedEventFilter = TypedEventFilter<BeaconUpgradedEvent>;
export interface ConstitutionSignedEventObject {
user: string;
}
export type ConstitutionSignedEvent = TypedEvent<[
string
], ConstitutionSignedEventObject>;
export type ConstitutionSignedEventFilter = TypedEventFilter<ConstitutionSignedEvent>;
export interface EIP712DomainChangedEventObject {
}
export type EIP712DomainChangedEvent = TypedEvent<[
], EIP712DomainChangedEventObject>;
export type EIP712DomainChangedEventFilter = TypedEventFilter<EIP712DomainChangedEvent>;
export interface InitializedEventObject {
version: number;
}
export type InitializedEvent = TypedEvent<[number], InitializedEventObject>;
export type InitializedEventFilter = TypedEventFilter<InitializedEvent>;
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 UpgradedEventObject {
implementation: string;
}
export type UpgradedEvent = TypedEvent<[string], UpgradedEventObject>;
export type UpgradedEventFilter = TypedEventFilter<UpgradedEvent>;
export interface DAOVault extends BaseContract {
contractName: "DAOVault";
connect(signerOrProvider: Signer | Provider | string): this;
attach(addressOrName: string): this;
deployed(): Promise<this>;
interface: DAOVaultInterface;
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: {
CONNECTED_DAO_REGISTRY(overrides?: CallOverrides): Promise<[string]>;
CONSTITUTION_SIGN_TYPEHASH(overrides?: CallOverrides): Promise<[string]>;
MAX_LOCKED_TIME(overrides?: CallOverrides): Promise<[BigNumber]>;
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>;
eip712Domain(overrides?: CallOverrides): Promise<[
string,
string,
string,
BigNumber,
string,
string,
BigNumber[]
] & {
fields: string;
name: string;
version: string;
chainId: BigNumber;
verifyingContract: string;
salt: string;
extensions: BigNumber[];
}>;
getConstitutionSignHash(signer_: string, overrides?: CallOverrides): Promise<[string]>;
getInjector(overrides?: CallOverrides): Promise<[string] & {
injector_: 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]>;
implementation(overrides?: CallOverrides): Promise<[string]>;
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>;
lockedTokens(user: string, token: string, overrides?: CallOverrides): Promise<[
PriorityQueue.QueueStructOutput
] & {
_queue: PriorityQueue.QueueStructOutput;
}>;
permissionManager(overrides?: CallOverrides): Promise<[string]>;
proxiableUUID(overrides?: CallOverrides): Promise<[string]>;
revokeSBTAuthorization(tokenAddress_: string, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
setDependencies(registryAddress_: string, arg1: BytesLike, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
setInjector(injector_: string, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
signConstitution(signer_: string, signature_: BytesLike, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
signEIP712Constitution(signer_: string, signature_: BytesLike, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
tokenBalance(token: string, overrides?: CallOverrides): Promise<[BigNumber] & {
amountInVault: BigNumber;
}>;
upgradeTo(newImplementation: string, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
upgradeToAndCall(newImplementation: string, data: BytesLike, overrides?: PayableOverrides & {
from?: string;
}): Promise<ContractTransaction>;
userTokenBalance(user: string, token: string, overrides?: CallOverrides): Promise<[BigNumber] & {
balance: BigNumber;
}>;
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>;
};
CONNECTED_DAO_REGISTRY(overrides?: CallOverrides): Promise<string>;
CONSTITUTION_SIGN_TYPEHASH(overrides?: CallOverrides): Promise<string>;
MAX_LOCKED_TIME(overrides?: CallOverrides): Promise<BigNumber>;
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>;
eip712Domain(overrides?: CallOverrides): Promise<[
string,
string,
string,
BigNumber,
string,
string,
BigNumber[]
] & {
fields: string;
name: string;
version: string;
chainId: BigNumber;
verifyingContract: string;
salt: string;
extensions: BigNumber[];
}>;
getConstitutionSignHash(signer_: string, overrides?: CallOverrides): Promise<string>;
getInjector(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>;
implementation(overrides?: CallOverrides): Promise<string>;
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>;
lockedTokens(user: string, token: string, overrides?: CallOverrides): Promise<PriorityQueue.QueueStructOutput>;
permissionManager(overrides?: CallOverrides): Promise<string>;
proxiableUUID(overrides?: CallOverrides): Promise<string>;
revokeSBTAuthorization(tokenAddress_: string, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
setDependencies(registryAddress_: string, arg1: BytesLike, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
setInjector(injector_: string, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
signConstitution(signer_: string, signature_: BytesLike, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
signEIP712Constitution(signer_: string, signature_: BytesLike, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
tokenBalance(token: string, overrides?: CallOverrides): Promise<BigNumber>;
upgradeTo(newImplementation: string, overrides?: Overrides & {
from?: string;
}): Promise<ContractTransaction>;
upgradeToAndCall(newImplementation: string, data: BytesLike, overrides?: PayableOverrides & {
from?: string;
}): Promise<ContractTransaction>;
userTokenBalance(user: string, token: string, overrides?: CallOverrides): Promise<BigNumber>;
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: {
CONNECTED_DAO_REGISTRY(overrides?: CallOverrides): Promise<string>;
CONSTITUTION_SIGN_TYPEHASH(overrides?: CallOverrides): Promise<string>;
MAX_LOCKED_TIME(overrides?: CallOverrides): Promise<BigNumber>;
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>;
eip712Domain(overrides?: CallOverrides): Promise<[
string,
string,
string,
BigNumber,
string,
string,
BigNumber[]
] & {
fields: string;
name: string;
version: string;
chainId: BigNumber;
verifyingContract: string;
salt: string;
extensions: BigNumber[];
}>;
getConstitutionSignHash(signer_: string, overrides?: CallOverrides): Promise<string>;
getInjector(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>;
implementation(overrides?: CallOverrides): Promise<string>;
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>;
lockedTokens(user: string, token: string, overrides?: CallOverrides): Promise<PriorityQueue.QueueStructOutput>;
permissionManager(overrides?: CallOverrides): Promise<string>;
proxiableUUID(overrides?: CallOverrides): Promise<string>;
revokeSBTAuthorization(tokenAddress_: string, overrides?: CallOverrides): Promise<void>;
setDependencies(registryAddress_: string, arg1: BytesLike, overrides?: CallOverrides): Promise<void>;
setInjector(injector_: string, overrides?: CallOverrides): Promise<void>;
signConstitution(signer_: string, signature_: BytesLike, overrides?: CallOverrides): Promise<void>;
signEIP712Constitution(signer_: string, signature_: BytesLike, overrides?: CallOverrides): Promise<void>;
tokenBalance(token: string, overrides?: CallOverrides): Promise<BigNumber>;
upgradeTo(newImplementation: string, overrides?: CallOverrides): Promise<void>;
upgradeToAndCall(newImplementation: string, data: BytesLike, overrides?: CallOverrides): Promise<void>;
userTokenBalance(user: string, token: string, overrides?: CallOverrides): Promise<BigNumber>;
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: {
"AdminChanged(address,address)"(previousAdmin?: null, newAdmin?: null): AdminChangedEventFilter;
AdminChanged(previousAdmin?: null, newAdmin?: null): AdminChangedEventFilter;
"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;
"BeaconUpgraded(address)"(beacon?: string | null): BeaconUpgradedEventFilter;
BeaconUpgraded(beacon?: string | null): BeaconUpgradedEventFilter;
"ConstitutionSigned(address)"(user?: string | null): ConstitutionSignedEventFilter;
ConstitutionSigned(user?: string | null): ConstitutionSignedEventFilter;
"EIP712DomainChanged()"(): EIP712DomainChangedEventFilter;
EIP712DomainChanged(): EIP712DomainChangedEventFilter;
"Initialized(uint8)"(version?: null): InitializedEventFilter;
Initialized(version?: null): InitializedEventFilter;
"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;
"Upgraded(address)"(implementation?: string | null): UpgradedEventFilter;
Upgraded(implementation?: string | null): UpgradedEventFilter;
};
estimateGas: {
CONNECTED_DAO_REGISTRY(overrides?: CallOverrides): Promise<BigNumber>;
CONSTITUTION_SIGN_TYPEHASH(overrides?: CallOverrides): Promise<BigNumber>;
MAX_LOCKED_TIME(overrides?: CallOverrides): Promise<BigNumber>;
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>;
eip712Domain(overrides?: CallOverrides): Promise<BigNumber>;
getConstitutionSignHash(signer_: string, overrides?: CallOverrides): Promise<BigNumber>;
getInjector(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>;
implementation(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>;
lockedTokens(user: string, token: string, overrides?: CallOverrides): Promise<BigNumber>;
permissionManager(overrides?: CallOverrides): Promise<BigNumber>;
proxiableUUID(overrides?: CallOverrides): Promise<BigNumber>;
revokeSBTAuthorization(tokenAddress_: string, overrides?: Overrides & {
from?: string;
}): Promise<BigNumber>;
setDependencies(registryAddress_: string, arg1: BytesLike, overrides?: Overrides & {
from?: string;
}): Promise<BigNumber>;
setInjector(injector_: string, overrides?: Overrides & {
from?: string;
}): Promise<BigNumber>;
signConstitution(signer_: string, signature_: BytesLike, overrides?: Overrides & {
from?: string;
}): Promise<BigNumber>;
signEIP712Constitution(signer_: string, signature_: BytesLike, overrides?: Overrides & {
from?: string;
}): Promise<BigNumber>;
tokenBalance(token: string, overrides?: CallOverrides): Promise<BigNumber>;
upgradeTo(newImplementation: string, overrides?: Overrides & {
from?: string;
}): Promise<BigNumber>;
upgradeToAndCall(newImplementation: string, data: BytesLike, overrides?: PayableOverrides & {
from?: string;
}): Promise<BigNumber>;
userTokenBalance(user: string, token: string, overrides?: CallOverrides): 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: {
CONNECTED_DAO_REGISTRY(overrides?: CallOverrides): Promise<PopulatedTransaction>;
CONSTITUTION_SIGN_TYPEHASH(overrides?: CallOverrides): Promise<PopulatedTransaction>;
MAX_LOCKED_TIME(overrides?: CallOverrides): Promise<PopulatedTransaction>;
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>;
eip712Domain(overrides?: CallOverrides): Promise<PopulatedTransaction>;
getConstitutionSignHash(signer_: string, overrides?: CallOverrides): Promise<PopulatedTransaction>;
getInjector(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>;
implementation(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>;
lockedTokens(user: string, token: string, overrides?: CallOverrides): Promise<PopulatedTransaction>;
permissionManager(overrides?: CallOverrides): Promise<PopulatedTransaction>;
proxiableUUID(overrides?: CallOverrides): Promise<PopulatedTransaction>;
revokeSBTAuthorization(tokenAddress_: string, overrides?: Overrides & {
from?: string;
}): Promise<PopulatedTransaction>;
setDependencies(registryAddress_: string, arg1: BytesLike, overrides?: Overrides & {
from?: string;
}): Promise<PopulatedTransaction>;
setInjector(injector_: string, overrides?: Overrides & {
from?: string;
}): Promise<PopulatedTransaction>;
signConstitution(signer_: string, signature_: BytesLike, overrides?: Overrides & {
from?: string;
}): Promise<PopulatedTransaction>;
signEIP712Constitution(signer_: string, signature_: BytesLike, overrides?: Overrides & {
from?: string;
}): Promise<PopulatedTransaction>;
tokenBalance(token: string, overrides?: CallOverrides): Promise<PopulatedTransaction>;
upgradeTo(newImplementation: string, overrides?: Overrides & {
from?: string;
}): Promise<PopulatedTransaction>;
upgradeToAndCall(newImplementation: string, data: BytesLike, overrides?: PayableOverrides & {
from?: string;
}): Promise<PopulatedTransaction>;
userTokenBalance(user: string, token: string, overrides?: CallOverrides): 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>;
};
}