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; export interface AuthenticatedBySBTEventObject { tokenAddress: string; sender: string; } export type AuthenticatedBySBTEvent = TypedEvent<[ string, string ], AuthenticatedBySBTEventObject>; export type AuthenticatedBySBTEventFilter = TypedEventFilter; export interface AuthorizedBySBTEventObject { tokenAddress: string; sender: string; } export type AuthorizedBySBTEvent = TypedEvent<[ string, string ], AuthorizedBySBTEventObject>; export type AuthorizedBySBTEventFilter = TypedEventFilter; export interface BeaconUpgradedEventObject { beacon: string; } export type BeaconUpgradedEvent = TypedEvent<[ string ], BeaconUpgradedEventObject>; export type BeaconUpgradedEventFilter = TypedEventFilter; export interface ConstitutionSignedEventObject { user: string; } export type ConstitutionSignedEvent = TypedEvent<[ string ], ConstitutionSignedEventObject>; export type ConstitutionSignedEventFilter = TypedEventFilter; export interface EIP712DomainChangedEventObject { } export type EIP712DomainChangedEvent = TypedEvent<[ ], EIP712DomainChangedEventObject>; export type EIP712DomainChangedEventFilter = TypedEventFilter; export interface InitializedEventObject { version: number; } export type InitializedEvent = TypedEvent<[number], InitializedEventObject>; export type InitializedEventFilter = TypedEventFilter; export interface NFTDepositedEventObject { tokenAddress: string; sender: string; tokenId: BigNumber; } export type NFTDepositedEvent = TypedEvent<[ string, string, BigNumber ], NFTDepositedEventObject>; export type NFTDepositedEventFilter = TypedEventFilter; export interface NFTLockedEventObject { tokenAddress: string; sender: string; tokenId: BigNumber; unlockTime: BigNumber; } export type NFTLockedEvent = TypedEvent<[ string, string, BigNumber, BigNumber ], NFTLockedEventObject>; export type NFTLockedEventFilter = TypedEventFilter; export interface NFTWithdrewEventObject { tokenAddress: string; sender: string; tokenId: BigNumber; } export type NFTWithdrewEvent = TypedEvent<[ string, string, BigNumber ], NFTWithdrewEventObject>; export type NFTWithdrewEventFilter = TypedEventFilter; export interface SBTAuthorizationRevokedEventObject { tokenAddress: string; sender: string; } export type SBTAuthorizationRevokedEvent = TypedEvent<[ string, string ], SBTAuthorizationRevokedEventObject>; export type SBTAuthorizationRevokedEventFilter = TypedEventFilter; export interface TokensDepositedEventObject { tokenAddress: string; sender: string; amount: BigNumber; } export type TokensDepositedEvent = TypedEvent<[ string, string, BigNumber ], TokensDepositedEventObject>; export type TokensDepositedEventFilter = TypedEventFilter; export interface TokensLockedEventObject { tokenAddress: string; sender: string; amount: BigNumber; unlockTime: BigNumber; } export type TokensLockedEvent = TypedEvent<[ string, string, BigNumber, BigNumber ], TokensLockedEventObject>; export type TokensLockedEventFilter = TypedEventFilter; export interface TokensWithdrewEventObject { tokenAddress: string; sender: string; amount: BigNumber; } export type TokensWithdrewEvent = TypedEvent<[ string, string, BigNumber ], TokensWithdrewEventObject>; export type TokensWithdrewEventFilter = TypedEventFilter; export interface UpgradedEventObject { implementation: string; } export type UpgradedEvent = TypedEvent<[string], UpgradedEventObject>; export type UpgradedEventFilter = TypedEventFilter; export interface DAOVault extends BaseContract { contractName: "DAOVault"; connect(signerOrProvider: Signer | Provider | string): this; attach(addressOrName: string): this; deployed(): Promise; interface: DAOVaultInterface; 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: { 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; depositERC20(tokenAddress_: string, amount_: BigNumberish, overrides?: Overrides & { from?: string; }): Promise; depositNFT(tokenAddress_: string, tokenId_: BigNumberish, overrides?: Overrides & { from?: string; }): Promise; depositNative(overrides?: PayableOverrides & { from?: string; }): Promise; 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; lockAndGetUserVotingPower(userAddress_: string, tokenAddress_: string, timeToLock_: BigNumberish, overrides?: Overrides & { from?: string; }): Promise; 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; setDependencies(registryAddress_: string, arg1: BytesLike, overrides?: Overrides & { from?: string; }): Promise; setInjector(injector_: string, overrides?: Overrides & { from?: string; }): Promise; signConstitution(signer_: string, signature_: BytesLike, overrides?: Overrides & { from?: string; }): Promise; signEIP712Constitution(signer_: string, signature_: BytesLike, overrides?: Overrides & { from?: string; }): Promise; tokenBalance(token: string, overrides?: CallOverrides): Promise<[BigNumber] & { amountInVault: BigNumber; }>; upgradeTo(newImplementation: string, overrides?: Overrides & { from?: string; }): Promise; upgradeToAndCall(newImplementation: string, data: BytesLike, overrides?: PayableOverrides & { from?: string; }): Promise; userTokenBalance(user: string, token: string, overrides?: CallOverrides): Promise<[BigNumber] & { balance: BigNumber; }>; withdrawERC20(tokenAddress_: string, amount_: BigNumberish, overrides?: Overrides & { from?: string; }): Promise; withdrawNFT(tokenAddress_: string, tokenId_: BigNumberish, overrides?: Overrides & { from?: string; }): Promise; withdrawNative(amount_: BigNumberish, overrides?: Overrides & { from?: string; }): Promise; }; CONNECTED_DAO_REGISTRY(overrides?: CallOverrides): Promise; CONSTITUTION_SIGN_TYPEHASH(overrides?: CallOverrides): Promise; MAX_LOCKED_TIME(overrides?: CallOverrides): Promise; authorizeBySBT(tokenAddress_: string, overrides?: Overrides & { from?: string; }): Promise; depositERC20(tokenAddress_: string, amount_: BigNumberish, overrides?: Overrides & { from?: string; }): Promise; depositNFT(tokenAddress_: string, tokenId_: BigNumberish, overrides?: Overrides & { from?: string; }): Promise; depositNative(overrides?: PayableOverrides & { from?: string; }): Promise; 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; getInjector(overrides?: CallOverrides): Promise; getTimeLockInfo(userAddress_: string, tokenAddress_: string, overrides?: CallOverrides): Promise; getTokenSupply(tokenAddress_: string, overrides?: CallOverrides): Promise; getUserConstitutionData(userAddress_: string, overrides?: CallOverrides): Promise; getUserNFTs(userAddress_: string, tokenAddress_: string, overrides?: CallOverrides): Promise; getUserTokens(userAddress_: string, overrides?: CallOverrides): Promise; getUserVotingPower(userAddress_: string, tokenAddress_: string, overrides?: CallOverrides): Promise; implementation(overrides?: CallOverrides): Promise; isAuthorizedBySBT(sender_: string, tokenAddress_: string, overrides?: CallOverrides): Promise; isSupportedNFT(tokenAddress_: string, overrides?: CallOverrides): Promise; isSupportedSBT(tokenAddress_: string, overrides?: CallOverrides): Promise; lock(sender_: string, tokenAddress_: string, amount_: BigNumberish, timeToLock_: BigNumberish, overrides?: Overrides & { from?: string; }): Promise; lockAndGetUserVotingPower(userAddress_: string, tokenAddress_: string, timeToLock_: BigNumberish, overrides?: Overrides & { from?: string; }): Promise; lockedTokens(user: string, token: string, overrides?: CallOverrides): Promise; permissionManager(overrides?: CallOverrides): Promise; proxiableUUID(overrides?: CallOverrides): Promise; revokeSBTAuthorization(tokenAddress_: string, overrides?: Overrides & { from?: string; }): Promise; setDependencies(registryAddress_: string, arg1: BytesLike, overrides?: Overrides & { from?: string; }): Promise; setInjector(injector_: string, overrides?: Overrides & { from?: string; }): Promise; signConstitution(signer_: string, signature_: BytesLike, overrides?: Overrides & { from?: string; }): Promise; signEIP712Constitution(signer_: string, signature_: BytesLike, overrides?: Overrides & { from?: string; }): Promise; tokenBalance(token: string, overrides?: CallOverrides): Promise; upgradeTo(newImplementation: string, overrides?: Overrides & { from?: string; }): Promise; upgradeToAndCall(newImplementation: string, data: BytesLike, overrides?: PayableOverrides & { from?: string; }): Promise; userTokenBalance(user: string, token: string, overrides?: CallOverrides): Promise; withdrawERC20(tokenAddress_: string, amount_: BigNumberish, overrides?: Overrides & { from?: string; }): Promise; withdrawNFT(tokenAddress_: string, tokenId_: BigNumberish, overrides?: Overrides & { from?: string; }): Promise; withdrawNative(amount_: BigNumberish, overrides?: Overrides & { from?: string; }): Promise; callStatic: { CONNECTED_DAO_REGISTRY(overrides?: CallOverrides): Promise; CONSTITUTION_SIGN_TYPEHASH(overrides?: CallOverrides): Promise; MAX_LOCKED_TIME(overrides?: CallOverrides): Promise; authorizeBySBT(tokenAddress_: string, overrides?: CallOverrides): Promise; depositERC20(tokenAddress_: string, amount_: BigNumberish, overrides?: CallOverrides): Promise; depositNFT(tokenAddress_: string, tokenId_: BigNumberish, overrides?: CallOverrides): Promise; depositNative(overrides?: CallOverrides): Promise; 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; getInjector(overrides?: CallOverrides): Promise; getTimeLockInfo(userAddress_: string, tokenAddress_: string, overrides?: CallOverrides): Promise; getTokenSupply(tokenAddress_: string, overrides?: CallOverrides): Promise; getUserConstitutionData(userAddress_: string, overrides?: CallOverrides): Promise; getUserNFTs(userAddress_: string, tokenAddress_: string, overrides?: CallOverrides): Promise; getUserTokens(userAddress_: string, overrides?: CallOverrides): Promise; getUserVotingPower(userAddress_: string, tokenAddress_: string, overrides?: CallOverrides): Promise; implementation(overrides?: CallOverrides): Promise; isAuthorizedBySBT(sender_: string, tokenAddress_: string, overrides?: CallOverrides): Promise; isSupportedNFT(tokenAddress_: string, overrides?: CallOverrides): Promise; isSupportedSBT(tokenAddress_: string, overrides?: CallOverrides): Promise; lock(sender_: string, tokenAddress_: string, amount_: BigNumberish, timeToLock_: BigNumberish, overrides?: CallOverrides): Promise; lockAndGetUserVotingPower(userAddress_: string, tokenAddress_: string, timeToLock_: BigNumberish, overrides?: CallOverrides): Promise; lockedTokens(user: string, token: string, overrides?: CallOverrides): Promise; permissionManager(overrides?: CallOverrides): Promise; proxiableUUID(overrides?: CallOverrides): Promise; revokeSBTAuthorization(tokenAddress_: string, overrides?: CallOverrides): Promise; setDependencies(registryAddress_: string, arg1: BytesLike, overrides?: CallOverrides): Promise; setInjector(injector_: string, overrides?: CallOverrides): Promise; signConstitution(signer_: string, signature_: BytesLike, overrides?: CallOverrides): Promise; signEIP712Constitution(signer_: string, signature_: BytesLike, overrides?: CallOverrides): Promise; tokenBalance(token: string, overrides?: CallOverrides): Promise; upgradeTo(newImplementation: string, overrides?: CallOverrides): Promise; upgradeToAndCall(newImplementation: string, data: BytesLike, overrides?: CallOverrides): Promise; userTokenBalance(user: string, token: string, overrides?: CallOverrides): Promise; withdrawERC20(tokenAddress_: string, amount_: BigNumberish, overrides?: CallOverrides): Promise; withdrawNFT(tokenAddress_: string, tokenId_: BigNumberish, overrides?: CallOverrides): Promise; withdrawNative(amount_: BigNumberish, overrides?: CallOverrides): Promise; }; 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; CONSTITUTION_SIGN_TYPEHASH(overrides?: CallOverrides): Promise; MAX_LOCKED_TIME(overrides?: CallOverrides): Promise; authorizeBySBT(tokenAddress_: string, overrides?: Overrides & { from?: string; }): Promise; depositERC20(tokenAddress_: string, amount_: BigNumberish, overrides?: Overrides & { from?: string; }): Promise; depositNFT(tokenAddress_: string, tokenId_: BigNumberish, overrides?: Overrides & { from?: string; }): Promise; depositNative(overrides?: PayableOverrides & { from?: string; }): Promise; eip712Domain(overrides?: CallOverrides): Promise; getConstitutionSignHash(signer_: string, overrides?: CallOverrides): Promise; getInjector(overrides?: CallOverrides): Promise; getTimeLockInfo(userAddress_: string, tokenAddress_: string, overrides?: CallOverrides): Promise; getTokenSupply(tokenAddress_: string, overrides?: CallOverrides): Promise; getUserConstitutionData(userAddress_: string, overrides?: CallOverrides): Promise; getUserNFTs(userAddress_: string, tokenAddress_: string, overrides?: CallOverrides): Promise; getUserTokens(userAddress_: string, overrides?: CallOverrides): Promise; getUserVotingPower(userAddress_: string, tokenAddress_: string, overrides?: CallOverrides): Promise; implementation(overrides?: CallOverrides): Promise; isAuthorizedBySBT(sender_: string, tokenAddress_: string, overrides?: CallOverrides): Promise; isSupportedNFT(tokenAddress_: string, overrides?: CallOverrides): Promise; isSupportedSBT(tokenAddress_: string, overrides?: CallOverrides): Promise; lock(sender_: string, tokenAddress_: string, amount_: BigNumberish, timeToLock_: BigNumberish, overrides?: Overrides & { from?: string; }): Promise; lockAndGetUserVotingPower(userAddress_: string, tokenAddress_: string, timeToLock_: BigNumberish, overrides?: Overrides & { from?: string; }): Promise; lockedTokens(user: string, token: string, overrides?: CallOverrides): Promise; permissionManager(overrides?: CallOverrides): Promise; proxiableUUID(overrides?: CallOverrides): Promise; revokeSBTAuthorization(tokenAddress_: string, overrides?: Overrides & { from?: string; }): Promise; setDependencies(registryAddress_: string, arg1: BytesLike, overrides?: Overrides & { from?: string; }): Promise; setInjector(injector_: string, overrides?: Overrides & { from?: string; }): Promise; signConstitution(signer_: string, signature_: BytesLike, overrides?: Overrides & { from?: string; }): Promise; signEIP712Constitution(signer_: string, signature_: BytesLike, overrides?: Overrides & { from?: string; }): Promise; tokenBalance(token: string, overrides?: CallOverrides): Promise; upgradeTo(newImplementation: string, overrides?: Overrides & { from?: string; }): Promise; upgradeToAndCall(newImplementation: string, data: BytesLike, overrides?: PayableOverrides & { from?: string; }): Promise; userTokenBalance(user: string, token: string, overrides?: CallOverrides): Promise; withdrawERC20(tokenAddress_: string, amount_: BigNumberish, overrides?: Overrides & { from?: string; }): Promise; withdrawNFT(tokenAddress_: string, tokenId_: BigNumberish, overrides?: Overrides & { from?: string; }): Promise; withdrawNative(amount_: BigNumberish, overrides?: Overrides & { from?: string; }): Promise; }; populateTransaction: { CONNECTED_DAO_REGISTRY(overrides?: CallOverrides): Promise; CONSTITUTION_SIGN_TYPEHASH(overrides?: CallOverrides): Promise; MAX_LOCKED_TIME(overrides?: CallOverrides): Promise; authorizeBySBT(tokenAddress_: string, overrides?: Overrides & { from?: string; }): Promise; depositERC20(tokenAddress_: string, amount_: BigNumberish, overrides?: Overrides & { from?: string; }): Promise; depositNFT(tokenAddress_: string, tokenId_: BigNumberish, overrides?: Overrides & { from?: string; }): Promise; depositNative(overrides?: PayableOverrides & { from?: string; }): Promise; eip712Domain(overrides?: CallOverrides): Promise; getConstitutionSignHash(signer_: string, overrides?: CallOverrides): Promise; getInjector(overrides?: CallOverrides): Promise; getTimeLockInfo(userAddress_: string, tokenAddress_: string, overrides?: CallOverrides): Promise; getTokenSupply(tokenAddress_: string, overrides?: CallOverrides): Promise; getUserConstitutionData(userAddress_: string, overrides?: CallOverrides): Promise; getUserNFTs(userAddress_: string, tokenAddress_: string, overrides?: CallOverrides): Promise; getUserTokens(userAddress_: string, overrides?: CallOverrides): Promise; getUserVotingPower(userAddress_: string, tokenAddress_: string, overrides?: CallOverrides): Promise; implementation(overrides?: CallOverrides): Promise; isAuthorizedBySBT(sender_: string, tokenAddress_: string, overrides?: CallOverrides): Promise; isSupportedNFT(tokenAddress_: string, overrides?: CallOverrides): Promise; isSupportedSBT(tokenAddress_: string, overrides?: CallOverrides): Promise; lock(sender_: string, tokenAddress_: string, amount_: BigNumberish, timeToLock_: BigNumberish, overrides?: Overrides & { from?: string; }): Promise; lockAndGetUserVotingPower(userAddress_: string, tokenAddress_: string, timeToLock_: BigNumberish, overrides?: Overrides & { from?: string; }): Promise; lockedTokens(user: string, token: string, overrides?: CallOverrides): Promise; permissionManager(overrides?: CallOverrides): Promise; proxiableUUID(overrides?: CallOverrides): Promise; revokeSBTAuthorization(tokenAddress_: string, overrides?: Overrides & { from?: string; }): Promise; setDependencies(registryAddress_: string, arg1: BytesLike, overrides?: Overrides & { from?: string; }): Promise; setInjector(injector_: string, overrides?: Overrides & { from?: string; }): Promise; signConstitution(signer_: string, signature_: BytesLike, overrides?: Overrides & { from?: string; }): Promise; signEIP712Constitution(signer_: string, signature_: BytesLike, overrides?: Overrides & { from?: string; }): Promise; tokenBalance(token: string, overrides?: CallOverrides): Promise; upgradeTo(newImplementation: string, overrides?: Overrides & { from?: string; }): Promise; upgradeToAndCall(newImplementation: string, data: BytesLike, overrides?: PayableOverrides & { from?: string; }): Promise; userTokenBalance(user: string, token: string, overrides?: CallOverrides): Promise; withdrawERC20(tokenAddress_: string, amount_: BigNumberish, overrides?: Overrides & { from?: string; }): Promise; withdrawNFT(tokenAddress_: string, tokenId_: BigNumberish, overrides?: Overrides & { from?: string; }): Promise; withdrawNative(amount_: BigNumberish, overrides?: Overrides & { from?: string; }): Promise; }; }