import type { BaseContract, BigNumber, BigNumberish, BytesLike, CallOverrides, ContractTransaction, Overrides, PopulatedTransaction, Signer, utils } from "ethers"; import type { FunctionFragment, Result, EventFragment } from "@ethersproject/abi"; import type { Listener, Provider } from "@ethersproject/providers"; import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from "./common"; export interface PoolPermissionManagerAbiInterface extends utils.Interface { functions: { "admin()": FunctionFragment; "configurePool(address,uint256,bytes32[],uint256[])": FunctionFragment; "globals()": FunctionFragment; "hasPermission(address,address[],bytes32)": FunctionFragment; "hasPermission(address,address,bytes32)": FunctionFragment; "implementation()": FunctionFragment; "lenderAllowlist(address,address)": FunctionFragment; "lenderBitmaps(address)": FunctionFragment; "permissionAdmins(address)": FunctionFragment; "permissionLevels(address)": FunctionFragment; "poolBitmaps(address,bytes32)": FunctionFragment; "setLenderAllowlist(address,address[],bool[])": FunctionFragment; "setLenderBitmaps(address[],uint256[])": FunctionFragment; "setPermissionAdmin(address,bool)": FunctionFragment; "setPoolBitmaps(address,bytes32[],uint256[])": FunctionFragment; "setPoolPermissionLevel(address,uint256)": FunctionFragment; }; getFunction(nameOrSignatureOrTopic: "admin" | "configurePool" | "globals" | "hasPermission(address,address[],bytes32)" | "hasPermission(address,address,bytes32)" | "implementation" | "lenderAllowlist" | "lenderBitmaps" | "permissionAdmins" | "permissionLevels" | "poolBitmaps" | "setLenderAllowlist" | "setLenderBitmaps" | "setPermissionAdmin" | "setPoolBitmaps" | "setPoolPermissionLevel"): FunctionFragment; encodeFunctionData(functionFragment: "admin", values?: undefined): string; encodeFunctionData(functionFragment: "configurePool", values: [string, BigNumberish, BytesLike[], BigNumberish[]]): string; encodeFunctionData(functionFragment: "globals", values?: undefined): string; encodeFunctionData(functionFragment: "hasPermission(address,address[],bytes32)", values: [string, string[], BytesLike]): string; encodeFunctionData(functionFragment: "hasPermission(address,address,bytes32)", values: [string, string, BytesLike]): string; encodeFunctionData(functionFragment: "implementation", values?: undefined): string; encodeFunctionData(functionFragment: "lenderAllowlist", values: [string, string]): string; encodeFunctionData(functionFragment: "lenderBitmaps", values: [string]): string; encodeFunctionData(functionFragment: "permissionAdmins", values: [string]): string; encodeFunctionData(functionFragment: "permissionLevels", values: [string]): string; encodeFunctionData(functionFragment: "poolBitmaps", values: [string, BytesLike]): string; encodeFunctionData(functionFragment: "setLenderAllowlist", values: [string, string[], boolean[]]): string; encodeFunctionData(functionFragment: "setLenderBitmaps", values: [string[], BigNumberish[]]): string; encodeFunctionData(functionFragment: "setPermissionAdmin", values: [string, boolean]): string; encodeFunctionData(functionFragment: "setPoolBitmaps", values: [string, BytesLike[], BigNumberish[]]): string; encodeFunctionData(functionFragment: "setPoolPermissionLevel", values: [string, BigNumberish]): string; decodeFunctionResult(functionFragment: "admin", data: BytesLike): Result; decodeFunctionResult(functionFragment: "configurePool", data: BytesLike): Result; decodeFunctionResult(functionFragment: "globals", data: BytesLike): Result; decodeFunctionResult(functionFragment: "hasPermission(address,address[],bytes32)", data: BytesLike): Result; decodeFunctionResult(functionFragment: "hasPermission(address,address,bytes32)", data: BytesLike): Result; decodeFunctionResult(functionFragment: "implementation", data: BytesLike): Result; decodeFunctionResult(functionFragment: "lenderAllowlist", data: BytesLike): Result; decodeFunctionResult(functionFragment: "lenderBitmaps", data: BytesLike): Result; decodeFunctionResult(functionFragment: "permissionAdmins", data: BytesLike): Result; decodeFunctionResult(functionFragment: "permissionLevels", data: BytesLike): Result; decodeFunctionResult(functionFragment: "poolBitmaps", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setLenderAllowlist", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setLenderBitmaps", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setPermissionAdmin", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setPoolBitmaps", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setPoolPermissionLevel", data: BytesLike): Result; events: { "Initialized(address,address)": EventFragment; "ImplementationSet(address)": EventFragment; "LenderAllowlistSet(address,address[],bool[])": EventFragment; "LenderBitmapsSet(address[],uint256[])": EventFragment; "PermissionAdminSet(address,bool)": EventFragment; "PoolBitmapsSet(address,bytes32[],uint256[])": EventFragment; "PoolPermissionLevelSet(address,uint256)": EventFragment; }; getEvent(nameOrSignatureOrTopic: "Initialized"): EventFragment; getEvent(nameOrSignatureOrTopic: "ImplementationSet"): EventFragment; getEvent(nameOrSignatureOrTopic: "LenderAllowlistSet"): EventFragment; getEvent(nameOrSignatureOrTopic: "LenderBitmapsSet"): EventFragment; getEvent(nameOrSignatureOrTopic: "PermissionAdminSet"): EventFragment; getEvent(nameOrSignatureOrTopic: "PoolBitmapsSet"): EventFragment; getEvent(nameOrSignatureOrTopic: "PoolPermissionLevelSet"): EventFragment; } export interface InitializedEventObject { implementation: string; globals: string; } export type InitializedEvent = TypedEvent<[ string, string ], InitializedEventObject>; export type InitializedEventFilter = TypedEventFilter; export interface ImplementationSetEventObject { implementation: string; } export type ImplementationSetEvent = TypedEvent<[ string ], ImplementationSetEventObject>; export type ImplementationSetEventFilter = TypedEventFilter; export interface LenderAllowlistSetEventObject { poolManager: string; lenders: string[]; booleans: boolean[]; } export type LenderAllowlistSetEvent = TypedEvent<[ string, string[], boolean[] ], LenderAllowlistSetEventObject>; export type LenderAllowlistSetEventFilter = TypedEventFilter; export interface LenderBitmapsSetEventObject { lenders: string[]; bitmaps: BigNumber[]; } export type LenderBitmapsSetEvent = TypedEvent<[ string[], BigNumber[] ], LenderBitmapsSetEventObject>; export type LenderBitmapsSetEventFilter = TypedEventFilter; export interface PermissionAdminSetEventObject { account: string; isAdmin: boolean; } export type PermissionAdminSetEvent = TypedEvent<[ string, boolean ], PermissionAdminSetEventObject>; export type PermissionAdminSetEventFilter = TypedEventFilter; export interface PoolBitmapsSetEventObject { poolManager: string; functionIds: string[]; bitmaps: BigNumber[]; } export type PoolBitmapsSetEvent = TypedEvent<[ string, string[], BigNumber[] ], PoolBitmapsSetEventObject>; export type PoolBitmapsSetEventFilter = TypedEventFilter; export interface PoolPermissionLevelSetEventObject { poolManager: string; permissionLevel: BigNumber; } export type PoolPermissionLevelSetEvent = TypedEvent<[ string, BigNumber ], PoolPermissionLevelSetEventObject>; export type PoolPermissionLevelSetEventFilter = TypedEventFilter; export interface PoolPermissionManagerAbi extends BaseContract { connect(signerOrProvider: Signer | Provider | string): this; attach(addressOrName: string): this; deployed(): Promise; interface: PoolPermissionManagerAbiInterface; 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: { admin(overrides?: CallOverrides): Promise<[string] & { admin_: string; }>; configurePool(poolManager_: string, permissionLevel_: BigNumberish, functionIds_: BytesLike[], poolBitmaps_: BigNumberish[], overrides?: Overrides & { from?: string; }): Promise; globals(overrides?: CallOverrides): Promise<[string]>; "hasPermission(address,address[],bytes32)"(poolManager_: string, lenders_: string[], functionId_: BytesLike, overrides?: CallOverrides): Promise<[boolean] & { hasPermission_: boolean; }>; "hasPermission(address,address,bytes32)"(poolManager_: string, lender_: string, functionId_: BytesLike, overrides?: CallOverrides): Promise<[boolean] & { hasPermission_: boolean; }>; implementation(overrides?: CallOverrides): Promise<[string] & { implementation_: string; }>; lenderAllowlist(arg0: string, arg1: string, overrides?: CallOverrides): Promise<[boolean]>; lenderBitmaps(arg0: string, overrides?: CallOverrides): Promise<[BigNumber]>; permissionAdmins(arg0: string, overrides?: CallOverrides): Promise<[boolean]>; permissionLevels(arg0: string, overrides?: CallOverrides): Promise<[BigNumber]>; poolBitmaps(arg0: string, arg1: BytesLike, overrides?: CallOverrides): Promise<[BigNumber]>; setLenderAllowlist(poolManager_: string, lenders_: string[], booleans_: boolean[], overrides?: Overrides & { from?: string; }): Promise; setLenderBitmaps(lenders_: string[], bitmaps_: BigNumberish[], overrides?: Overrides & { from?: string; }): Promise; setPermissionAdmin(permissionAdmin_: string, isPermissionAdmin_: boolean, overrides?: Overrides & { from?: string; }): Promise; setPoolBitmaps(poolManager_: string, functionIds_: BytesLike[], bitmaps_: BigNumberish[], overrides?: Overrides & { from?: string; }): Promise; setPoolPermissionLevel(poolManager_: string, permissionLevel_: BigNumberish, overrides?: Overrides & { from?: string; }): Promise; }; admin(overrides?: CallOverrides): Promise; configurePool(poolManager_: string, permissionLevel_: BigNumberish, functionIds_: BytesLike[], poolBitmaps_: BigNumberish[], overrides?: Overrides & { from?: string; }): Promise; globals(overrides?: CallOverrides): Promise; "hasPermission(address,address[],bytes32)"(poolManager_: string, lenders_: string[], functionId_: BytesLike, overrides?: CallOverrides): Promise; "hasPermission(address,address,bytes32)"(poolManager_: string, lender_: string, functionId_: BytesLike, overrides?: CallOverrides): Promise; implementation(overrides?: CallOverrides): Promise; lenderAllowlist(arg0: string, arg1: string, overrides?: CallOverrides): Promise; lenderBitmaps(arg0: string, overrides?: CallOverrides): Promise; permissionAdmins(arg0: string, overrides?: CallOverrides): Promise; permissionLevels(arg0: string, overrides?: CallOverrides): Promise; poolBitmaps(arg0: string, arg1: BytesLike, overrides?: CallOverrides): Promise; setLenderAllowlist(poolManager_: string, lenders_: string[], booleans_: boolean[], overrides?: Overrides & { from?: string; }): Promise; setLenderBitmaps(lenders_: string[], bitmaps_: BigNumberish[], overrides?: Overrides & { from?: string; }): Promise; setPermissionAdmin(permissionAdmin_: string, isPermissionAdmin_: boolean, overrides?: Overrides & { from?: string; }): Promise; setPoolBitmaps(poolManager_: string, functionIds_: BytesLike[], bitmaps_: BigNumberish[], overrides?: Overrides & { from?: string; }): Promise; setPoolPermissionLevel(poolManager_: string, permissionLevel_: BigNumberish, overrides?: Overrides & { from?: string; }): Promise; callStatic: { admin(overrides?: CallOverrides): Promise; configurePool(poolManager_: string, permissionLevel_: BigNumberish, functionIds_: BytesLike[], poolBitmaps_: BigNumberish[], overrides?: CallOverrides): Promise; globals(overrides?: CallOverrides): Promise; "hasPermission(address,address[],bytes32)"(poolManager_: string, lenders_: string[], functionId_: BytesLike, overrides?: CallOverrides): Promise; "hasPermission(address,address,bytes32)"(poolManager_: string, lender_: string, functionId_: BytesLike, overrides?: CallOverrides): Promise; implementation(overrides?: CallOverrides): Promise; lenderAllowlist(arg0: string, arg1: string, overrides?: CallOverrides): Promise; lenderBitmaps(arg0: string, overrides?: CallOverrides): Promise; permissionAdmins(arg0: string, overrides?: CallOverrides): Promise; permissionLevels(arg0: string, overrides?: CallOverrides): Promise; poolBitmaps(arg0: string, arg1: BytesLike, overrides?: CallOverrides): Promise; setLenderAllowlist(poolManager_: string, lenders_: string[], booleans_: boolean[], overrides?: CallOverrides): Promise; setLenderBitmaps(lenders_: string[], bitmaps_: BigNumberish[], overrides?: CallOverrides): Promise; setPermissionAdmin(permissionAdmin_: string, isPermissionAdmin_: boolean, overrides?: CallOverrides): Promise; setPoolBitmaps(poolManager_: string, functionIds_: BytesLike[], bitmaps_: BigNumberish[], overrides?: CallOverrides): Promise; setPoolPermissionLevel(poolManager_: string, permissionLevel_: BigNumberish, overrides?: CallOverrides): Promise; }; filters: { "Initialized(address,address)"(implementation?: null, globals?: null): InitializedEventFilter; Initialized(implementation?: null, globals?: null): InitializedEventFilter; "ImplementationSet(address)"(implementation?: string | null): ImplementationSetEventFilter; ImplementationSet(implementation?: string | null): ImplementationSetEventFilter; "LenderAllowlistSet(address,address[],bool[])"(poolManager?: string | null, lenders?: null, booleans?: null): LenderAllowlistSetEventFilter; LenderAllowlistSet(poolManager?: string | null, lenders?: null, booleans?: null): LenderAllowlistSetEventFilter; "LenderBitmapsSet(address[],uint256[])"(lenders?: null, bitmaps?: null): LenderBitmapsSetEventFilter; LenderBitmapsSet(lenders?: null, bitmaps?: null): LenderBitmapsSetEventFilter; "PermissionAdminSet(address,bool)"(account?: string | null, isAdmin?: null): PermissionAdminSetEventFilter; PermissionAdminSet(account?: string | null, isAdmin?: null): PermissionAdminSetEventFilter; "PoolBitmapsSet(address,bytes32[],uint256[])"(poolManager?: string | null, functionIds?: null, bitmaps?: null): PoolBitmapsSetEventFilter; PoolBitmapsSet(poolManager?: string | null, functionIds?: null, bitmaps?: null): PoolBitmapsSetEventFilter; "PoolPermissionLevelSet(address,uint256)"(poolManager?: string | null, permissionLevel?: null): PoolPermissionLevelSetEventFilter; PoolPermissionLevelSet(poolManager?: string | null, permissionLevel?: null): PoolPermissionLevelSetEventFilter; }; estimateGas: { admin(overrides?: CallOverrides): Promise; configurePool(poolManager_: string, permissionLevel_: BigNumberish, functionIds_: BytesLike[], poolBitmaps_: BigNumberish[], overrides?: Overrides & { from?: string; }): Promise; globals(overrides?: CallOverrides): Promise; "hasPermission(address,address[],bytes32)"(poolManager_: string, lenders_: string[], functionId_: BytesLike, overrides?: CallOverrides): Promise; "hasPermission(address,address,bytes32)"(poolManager_: string, lender_: string, functionId_: BytesLike, overrides?: CallOverrides): Promise; implementation(overrides?: CallOverrides): Promise; lenderAllowlist(arg0: string, arg1: string, overrides?: CallOverrides): Promise; lenderBitmaps(arg0: string, overrides?: CallOverrides): Promise; permissionAdmins(arg0: string, overrides?: CallOverrides): Promise; permissionLevels(arg0: string, overrides?: CallOverrides): Promise; poolBitmaps(arg0: string, arg1: BytesLike, overrides?: CallOverrides): Promise; setLenderAllowlist(poolManager_: string, lenders_: string[], booleans_: boolean[], overrides?: Overrides & { from?: string; }): Promise; setLenderBitmaps(lenders_: string[], bitmaps_: BigNumberish[], overrides?: Overrides & { from?: string; }): Promise; setPermissionAdmin(permissionAdmin_: string, isPermissionAdmin_: boolean, overrides?: Overrides & { from?: string; }): Promise; setPoolBitmaps(poolManager_: string, functionIds_: BytesLike[], bitmaps_: BigNumberish[], overrides?: Overrides & { from?: string; }): Promise; setPoolPermissionLevel(poolManager_: string, permissionLevel_: BigNumberish, overrides?: Overrides & { from?: string; }): Promise; }; populateTransaction: { admin(overrides?: CallOverrides): Promise; configurePool(poolManager_: string, permissionLevel_: BigNumberish, functionIds_: BytesLike[], poolBitmaps_: BigNumberish[], overrides?: Overrides & { from?: string; }): Promise; globals(overrides?: CallOverrides): Promise; "hasPermission(address,address[],bytes32)"(poolManager_: string, lenders_: string[], functionId_: BytesLike, overrides?: CallOverrides): Promise; "hasPermission(address,address,bytes32)"(poolManager_: string, lender_: string, functionId_: BytesLike, overrides?: CallOverrides): Promise; implementation(overrides?: CallOverrides): Promise; lenderAllowlist(arg0: string, arg1: string, overrides?: CallOverrides): Promise; lenderBitmaps(arg0: string, overrides?: CallOverrides): Promise; permissionAdmins(arg0: string, overrides?: CallOverrides): Promise; permissionLevels(arg0: string, overrides?: CallOverrides): Promise; poolBitmaps(arg0: string, arg1: BytesLike, overrides?: CallOverrides): Promise; setLenderAllowlist(poolManager_: string, lenders_: string[], booleans_: boolean[], overrides?: Overrides & { from?: string; }): Promise; setLenderBitmaps(lenders_: string[], bitmaps_: BigNumberish[], overrides?: Overrides & { from?: string; }): Promise; setPermissionAdmin(permissionAdmin_: string, isPermissionAdmin_: boolean, overrides?: Overrides & { from?: string; }): Promise; setPoolBitmaps(poolManager_: string, functionIds_: BytesLike[], bitmaps_: BigNumberish[], overrides?: Overrides & { from?: string; }): Promise; setPoolPermissionLevel(poolManager_: string, permissionLevel_: BigNumberish, overrides?: Overrides & { from?: string; }): Promise; }; }