import type { BaseContract, BigNumber, BytesLike, CallOverrides, ContractTransaction, Overrides, PopulatedTransaction, Signer, utils } from "ethers"; import type { FunctionFragment, Result, EventFragment } from "@ethersproject/abi"; import type { Listener, Provider } from "@ethersproject/providers"; import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent, PromiseOrValue } from "../../common"; export interface IGuardableInterface extends utils.Interface { functions: { "hasPrivileges(address)": FunctionFragment; "requiredPrivileges()": FunctionFragment; "updateRequiredPrivileges(bytes32)": FunctionFragment; }; getFunction(nameOrSignatureOrTopic: "hasPrivileges" | "requiredPrivileges" | "updateRequiredPrivileges"): FunctionFragment; encodeFunctionData(functionFragment: "hasPrivileges", values: [PromiseOrValue]): string; encodeFunctionData(functionFragment: "requiredPrivileges", values?: undefined): string; encodeFunctionData(functionFragment: "updateRequiredPrivileges", values: [PromiseOrValue]): string; decodeFunctionResult(functionFragment: "hasPrivileges", data: BytesLike): Result; decodeFunctionResult(functionFragment: "requiredPrivileges", data: BytesLike): Result; decodeFunctionResult(functionFragment: "updateRequiredPrivileges", data: BytesLike): Result; events: { "RequiredPrivilegesUpdated(bytes32,bytes32,address)": EventFragment; }; getEvent(nameOrSignatureOrTopic: "RequiredPrivilegesUpdated"): EventFragment; } export interface RequiredPrivilegesUpdatedEventObject { prevPrivileges: string; newPrivileges: string; sender: string; } export declare type RequiredPrivilegesUpdatedEvent = TypedEvent<[ string, string, string ], RequiredPrivilegesUpdatedEventObject>; export declare type RequiredPrivilegesUpdatedEventFilter = TypedEventFilter; export interface IGuardable extends BaseContract { connect(signerOrProvider: Signer | Provider | string): this; attach(addressOrName: string): this; deployed(): Promise; interface: IGuardableInterface; 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: { hasPrivileges(account: PromiseOrValue, overrides?: CallOverrides): Promise<[boolean]>; requiredPrivileges(overrides?: CallOverrides): Promise<[string]>; updateRequiredPrivileges(newRequiredPrivileges: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; }; hasPrivileges(account: PromiseOrValue, overrides?: CallOverrides): Promise; requiredPrivileges(overrides?: CallOverrides): Promise; updateRequiredPrivileges(newRequiredPrivileges: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; callStatic: { hasPrivileges(account: PromiseOrValue, overrides?: CallOverrides): Promise; requiredPrivileges(overrides?: CallOverrides): Promise; updateRequiredPrivileges(newRequiredPrivileges: PromiseOrValue, overrides?: CallOverrides): Promise; }; filters: { "RequiredPrivilegesUpdated(bytes32,bytes32,address)"(prevPrivileges?: null, newPrivileges?: null, sender?: PromiseOrValue | null): RequiredPrivilegesUpdatedEventFilter; RequiredPrivilegesUpdated(prevPrivileges?: null, newPrivileges?: null, sender?: PromiseOrValue | null): RequiredPrivilegesUpdatedEventFilter; }; estimateGas: { hasPrivileges(account: PromiseOrValue, overrides?: CallOverrides): Promise; requiredPrivileges(overrides?: CallOverrides): Promise; updateRequiredPrivileges(newRequiredPrivileges: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; }; populateTransaction: { hasPrivileges(account: PromiseOrValue, overrides?: CallOverrides): Promise; requiredPrivileges(overrides?: CallOverrides): Promise; updateRequiredPrivileges(newRequiredPrivileges: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; }; } //# sourceMappingURL=IGuardable.d.ts.map