@thirdweb-dev/contracts-js
Version:
398 lines • 23 kB
TypeScript
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 type UserOperationStruct = {
sender: string;
nonce: BigNumberish;
initCode: BytesLike;
callData: BytesLike;
callGasLimit: BigNumberish;
verificationGasLimit: BigNumberish;
preVerificationGas: BigNumberish;
maxFeePerGas: BigNumberish;
maxPriorityFeePerGas: BigNumberish;
paymasterAndData: BytesLike;
signature: BytesLike;
};
export type UserOperationStructOutput = [
string,
BigNumber,
string,
string,
BigNumber,
BigNumber,
BigNumber,
BigNumber,
BigNumber,
string,
string
] & {
sender: string;
nonce: BigNumber;
initCode: string;
callData: string;
callGasLimit: BigNumber;
verificationGasLimit: BigNumber;
preVerificationGas: BigNumber;
maxFeePerGas: BigNumber;
maxPriorityFeePerGas: BigNumber;
paymasterAndData: string;
signature: string;
};
export declare namespace IAccountPermissions {
type SignerPermissionsStruct = {
signer: string;
approvedTargets: string[];
nativeTokenLimitPerTransaction: BigNumberish;
startTimestamp: BigNumberish;
endTimestamp: BigNumberish;
};
type SignerPermissionsStructOutput = [
string,
string[],
BigNumber,
BigNumber,
BigNumber
] & {
signer: string;
approvedTargets: string[];
nativeTokenLimitPerTransaction: BigNumber;
startTimestamp: BigNumber;
endTimestamp: BigNumber;
};
type SignerPermissionRequestStruct = {
signer: string;
isAdmin: BigNumberish;
approvedTargets: string[];
nativeTokenLimitPerTransaction: BigNumberish;
permissionStartTimestamp: BigNumberish;
permissionEndTimestamp: BigNumberish;
reqValidityStartTimestamp: BigNumberish;
reqValidityEndTimestamp: BigNumberish;
uid: BytesLike;
};
type SignerPermissionRequestStructOutput = [
string,
number,
string[],
BigNumber,
BigNumber,
BigNumber,
BigNumber,
BigNumber,
string
] & {
signer: string;
isAdmin: number;
approvedTargets: string[];
nativeTokenLimitPerTransaction: BigNumber;
permissionStartTimestamp: BigNumber;
permissionEndTimestamp: BigNumber;
reqValidityStartTimestamp: BigNumber;
reqValidityEndTimestamp: BigNumber;
uid: string;
};
}
export declare namespace IExtension {
type ExtensionMetadataStruct = {
name: string;
metadataURI: string;
implementation: string;
};
type ExtensionMetadataStructOutput = [string, string, string] & {
name: string;
metadataURI: string;
implementation: string;
};
type ExtensionFunctionStruct = {
functionSelector: BytesLike;
functionSignature: string;
};
type ExtensionFunctionStructOutput = [string, string] & {
functionSelector: string;
functionSignature: string;
};
type ExtensionStruct = {
metadata: IExtension.ExtensionMetadataStruct;
functions: IExtension.ExtensionFunctionStruct[];
};
type ExtensionStructOutput = [
IExtension.ExtensionMetadataStructOutput,
IExtension.ExtensionFunctionStructOutput[]
] & {
metadata: IExtension.ExtensionMetadataStructOutput;
functions: IExtension.ExtensionFunctionStructOutput[];
};
}
export interface ManagedAccountInterface extends utils.Interface {
functions: {
"entryPoint()": FunctionFragment;
"factory()": FunctionFragment;
"getAllActiveSigners()": FunctionFragment;
"getAllAdmins()": FunctionFragment;
"getAllExtensions()": FunctionFragment;
"getAllSigners()": FunctionFragment;
"getImplementationForFunction(bytes4)": FunctionFragment;
"getNonce()": FunctionFragment;
"getPermissionsForSigner(address)": FunctionFragment;
"initialize(address,bytes)": FunctionFragment;
"isActiveSigner(address)": FunctionFragment;
"isAdmin(address)": FunctionFragment;
"isValidSigner(address,(address,uint256,bytes,bytes,uint256,uint256,uint256,uint256,uint256,bytes,bytes))": FunctionFragment;
"multicall(bytes[])": FunctionFragment;
"setEntrypointOverride(address)": FunctionFragment;
"setPermissionsForSigner((address,uint8,address[],uint256,uint128,uint128,uint128,uint128,bytes32),bytes)": FunctionFragment;
"validateUserOp((address,uint256,bytes,bytes,uint256,uint256,uint256,uint256,uint256,bytes,bytes),bytes32,uint256)": FunctionFragment;
"verifySignerPermissionRequest((address,uint8,address[],uint256,uint128,uint128,uint128,uint128,bytes32),bytes)": FunctionFragment;
};
getFunction(nameOrSignatureOrTopic: "entryPoint" | "factory" | "getAllActiveSigners" | "getAllAdmins" | "getAllExtensions" | "getAllSigners" | "getImplementationForFunction" | "getNonce" | "getPermissionsForSigner" | "initialize" | "isActiveSigner" | "isAdmin" | "isValidSigner" | "multicall" | "setEntrypointOverride" | "setPermissionsForSigner" | "validateUserOp" | "verifySignerPermissionRequest"): FunctionFragment;
encodeFunctionData(functionFragment: "entryPoint", values?: undefined): string;
encodeFunctionData(functionFragment: "factory", values?: undefined): string;
encodeFunctionData(functionFragment: "getAllActiveSigners", values?: undefined): string;
encodeFunctionData(functionFragment: "getAllAdmins", values?: undefined): string;
encodeFunctionData(functionFragment: "getAllExtensions", values?: undefined): string;
encodeFunctionData(functionFragment: "getAllSigners", values?: undefined): string;
encodeFunctionData(functionFragment: "getImplementationForFunction", values: [BytesLike]): string;
encodeFunctionData(functionFragment: "getNonce", values?: undefined): string;
encodeFunctionData(functionFragment: "getPermissionsForSigner", values: [string]): string;
encodeFunctionData(functionFragment: "initialize", values: [string, BytesLike]): string;
encodeFunctionData(functionFragment: "isActiveSigner", values: [string]): string;
encodeFunctionData(functionFragment: "isAdmin", values: [string]): string;
encodeFunctionData(functionFragment: "isValidSigner", values: [string, UserOperationStruct]): string;
encodeFunctionData(functionFragment: "multicall", values: [BytesLike[]]): string;
encodeFunctionData(functionFragment: "setEntrypointOverride", values: [string]): string;
encodeFunctionData(functionFragment: "setPermissionsForSigner", values: [IAccountPermissions.SignerPermissionRequestStruct, BytesLike]): string;
encodeFunctionData(functionFragment: "validateUserOp", values: [UserOperationStruct, BytesLike, BigNumberish]): string;
encodeFunctionData(functionFragment: "verifySignerPermissionRequest", values: [IAccountPermissions.SignerPermissionRequestStruct, BytesLike]): string;
decodeFunctionResult(functionFragment: "entryPoint", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "factory", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "getAllActiveSigners", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "getAllAdmins", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "getAllExtensions", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "getAllSigners", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "getImplementationForFunction", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "getNonce", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "getPermissionsForSigner", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "initialize", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "isActiveSigner", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "isAdmin", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "isValidSigner", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "multicall", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "setEntrypointOverride", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "setPermissionsForSigner", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "validateUserOp", data: BytesLike): Result;
decodeFunctionResult(functionFragment: "verifySignerPermissionRequest", data: BytesLike): Result;
events: {
"AdminUpdated(address,bool)": EventFragment;
"Initialized(uint8)": EventFragment;
"SignerPermissionsUpdated(address,address,tuple)": EventFragment;
};
getEvent(nameOrSignatureOrTopic: "AdminUpdated"): EventFragment;
getEvent(nameOrSignatureOrTopic: "Initialized"): EventFragment;
getEvent(nameOrSignatureOrTopic: "SignerPermissionsUpdated"): EventFragment;
}
export interface AdminUpdatedEventObject {
signer: string;
isAdmin: boolean;
}
export type AdminUpdatedEvent = TypedEvent<[
string,
boolean
], AdminUpdatedEventObject>;
export type AdminUpdatedEventFilter = TypedEventFilter<AdminUpdatedEvent>;
export interface InitializedEventObject {
version: number;
}
export type InitializedEvent = TypedEvent<[number], InitializedEventObject>;
export type InitializedEventFilter = TypedEventFilter<InitializedEvent>;
export interface SignerPermissionsUpdatedEventObject {
authorizingSigner: string;
targetSigner: string;
permissions: IAccountPermissions.SignerPermissionRequestStructOutput;
}
export type SignerPermissionsUpdatedEvent = TypedEvent<[
string,
string,
IAccountPermissions.SignerPermissionRequestStructOutput
], SignerPermissionsUpdatedEventObject>;
export type SignerPermissionsUpdatedEventFilter = TypedEventFilter<SignerPermissionsUpdatedEvent>;
export interface ManagedAccount extends BaseContract {
connect(signerOrProvider: Signer | Provider | string): this;
attach(addressOrName: string): this;
deployed(): Promise<this>;
interface: ManagedAccountInterface;
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: {
entryPoint(overrides?: CallOverrides): Promise<[string]>;
factory(overrides?: CallOverrides): Promise<[string]>;
getAllActiveSigners(overrides?: CallOverrides): Promise<[
IAccountPermissions.SignerPermissionsStructOutput[]
] & {
signers: IAccountPermissions.SignerPermissionsStructOutput[];
}>;
getAllAdmins(overrides?: CallOverrides): Promise<[string[]]>;
getAllExtensions(overrides?: CallOverrides): Promise<[IExtension.ExtensionStructOutput[]]>;
getAllSigners(overrides?: CallOverrides): Promise<[
IAccountPermissions.SignerPermissionsStructOutput[]
] & {
signers: IAccountPermissions.SignerPermissionsStructOutput[];
}>;
getImplementationForFunction(_functionSelector: BytesLike, overrides?: CallOverrides): Promise<[string]>;
getNonce(overrides?: CallOverrides): Promise<[BigNumber]>;
getPermissionsForSigner(signer: string, overrides?: CallOverrides): Promise<[IAccountPermissions.SignerPermissionsStructOutput]>;
initialize(_defaultAdmin: string, _data: BytesLike, overrides?: Overrides & {
from?: string | Promise<string>;
}): Promise<ContractTransaction>;
isActiveSigner(signer: string, overrides?: CallOverrides): Promise<[boolean]>;
isAdmin(_account: string, overrides?: CallOverrides): Promise<[boolean]>;
isValidSigner(_signer: string, _userOp: UserOperationStruct, overrides?: CallOverrides): Promise<[boolean]>;
multicall(data: BytesLike[], overrides?: Overrides & {
from?: string | Promise<string>;
}): Promise<ContractTransaction>;
setEntrypointOverride(_entrypointOverride: string, overrides?: Overrides & {
from?: string | Promise<string>;
}): Promise<ContractTransaction>;
setPermissionsForSigner(_req: IAccountPermissions.SignerPermissionRequestStruct, _signature: BytesLike, overrides?: Overrides & {
from?: string | Promise<string>;
}): Promise<ContractTransaction>;
validateUserOp(userOp: UserOperationStruct, userOpHash: BytesLike, missingAccountFunds: BigNumberish, overrides?: Overrides & {
from?: string | Promise<string>;
}): Promise<ContractTransaction>;
verifySignerPermissionRequest(req: IAccountPermissions.SignerPermissionRequestStruct, signature: BytesLike, overrides?: CallOverrides): Promise<[boolean, string] & {
success: boolean;
signer: string;
}>;
};
entryPoint(overrides?: CallOverrides): Promise<string>;
factory(overrides?: CallOverrides): Promise<string>;
getAllActiveSigners(overrides?: CallOverrides): Promise<IAccountPermissions.SignerPermissionsStructOutput[]>;
getAllAdmins(overrides?: CallOverrides): Promise<string[]>;
getAllExtensions(overrides?: CallOverrides): Promise<IExtension.ExtensionStructOutput[]>;
getAllSigners(overrides?: CallOverrides): Promise<IAccountPermissions.SignerPermissionsStructOutput[]>;
getImplementationForFunction(_functionSelector: BytesLike, overrides?: CallOverrides): Promise<string>;
getNonce(overrides?: CallOverrides): Promise<BigNumber>;
getPermissionsForSigner(signer: string, overrides?: CallOverrides): Promise<IAccountPermissions.SignerPermissionsStructOutput>;
initialize(_defaultAdmin: string, _data: BytesLike, overrides?: Overrides & {
from?: string | Promise<string>;
}): Promise<ContractTransaction>;
isActiveSigner(signer: string, overrides?: CallOverrides): Promise<boolean>;
isAdmin(_account: string, overrides?: CallOverrides): Promise<boolean>;
isValidSigner(_signer: string, _userOp: UserOperationStruct, overrides?: CallOverrides): Promise<boolean>;
multicall(data: BytesLike[], overrides?: Overrides & {
from?: string | Promise<string>;
}): Promise<ContractTransaction>;
setEntrypointOverride(_entrypointOverride: string, overrides?: Overrides & {
from?: string | Promise<string>;
}): Promise<ContractTransaction>;
setPermissionsForSigner(_req: IAccountPermissions.SignerPermissionRequestStruct, _signature: BytesLike, overrides?: Overrides & {
from?: string | Promise<string>;
}): Promise<ContractTransaction>;
validateUserOp(userOp: UserOperationStruct, userOpHash: BytesLike, missingAccountFunds: BigNumberish, overrides?: Overrides & {
from?: string | Promise<string>;
}): Promise<ContractTransaction>;
verifySignerPermissionRequest(req: IAccountPermissions.SignerPermissionRequestStruct, signature: BytesLike, overrides?: CallOverrides): Promise<[boolean, string] & {
success: boolean;
signer: string;
}>;
callStatic: {
entryPoint(overrides?: CallOverrides): Promise<string>;
factory(overrides?: CallOverrides): Promise<string>;
getAllActiveSigners(overrides?: CallOverrides): Promise<IAccountPermissions.SignerPermissionsStructOutput[]>;
getAllAdmins(overrides?: CallOverrides): Promise<string[]>;
getAllExtensions(overrides?: CallOverrides): Promise<IExtension.ExtensionStructOutput[]>;
getAllSigners(overrides?: CallOverrides): Promise<IAccountPermissions.SignerPermissionsStructOutput[]>;
getImplementationForFunction(_functionSelector: BytesLike, overrides?: CallOverrides): Promise<string>;
getNonce(overrides?: CallOverrides): Promise<BigNumber>;
getPermissionsForSigner(signer: string, overrides?: CallOverrides): Promise<IAccountPermissions.SignerPermissionsStructOutput>;
initialize(_defaultAdmin: string, _data: BytesLike, overrides?: CallOverrides): Promise<void>;
isActiveSigner(signer: string, overrides?: CallOverrides): Promise<boolean>;
isAdmin(_account: string, overrides?: CallOverrides): Promise<boolean>;
isValidSigner(_signer: string, _userOp: UserOperationStruct, overrides?: CallOverrides): Promise<boolean>;
multicall(data: BytesLike[], overrides?: CallOverrides): Promise<string[]>;
setEntrypointOverride(_entrypointOverride: string, overrides?: CallOverrides): Promise<void>;
setPermissionsForSigner(_req: IAccountPermissions.SignerPermissionRequestStruct, _signature: BytesLike, overrides?: CallOverrides): Promise<void>;
validateUserOp(userOp: UserOperationStruct, userOpHash: BytesLike, missingAccountFunds: BigNumberish, overrides?: CallOverrides): Promise<BigNumber>;
verifySignerPermissionRequest(req: IAccountPermissions.SignerPermissionRequestStruct, signature: BytesLike, overrides?: CallOverrides): Promise<[boolean, string] & {
success: boolean;
signer: string;
}>;
};
filters: {
"AdminUpdated(address,bool)"(signer?: string | null, isAdmin?: null): AdminUpdatedEventFilter;
AdminUpdated(signer?: string | null, isAdmin?: null): AdminUpdatedEventFilter;
"Initialized(uint8)"(version?: null): InitializedEventFilter;
Initialized(version?: null): InitializedEventFilter;
"SignerPermissionsUpdated(address,address,tuple)"(authorizingSigner?: string | null, targetSigner?: string | null, permissions?: null): SignerPermissionsUpdatedEventFilter;
SignerPermissionsUpdated(authorizingSigner?: string | null, targetSigner?: string | null, permissions?: null): SignerPermissionsUpdatedEventFilter;
};
estimateGas: {
entryPoint(overrides?: CallOverrides): Promise<BigNumber>;
factory(overrides?: CallOverrides): Promise<BigNumber>;
getAllActiveSigners(overrides?: CallOverrides): Promise<BigNumber>;
getAllAdmins(overrides?: CallOverrides): Promise<BigNumber>;
getAllExtensions(overrides?: CallOverrides): Promise<BigNumber>;
getAllSigners(overrides?: CallOverrides): Promise<BigNumber>;
getImplementationForFunction(_functionSelector: BytesLike, overrides?: CallOverrides): Promise<BigNumber>;
getNonce(overrides?: CallOverrides): Promise<BigNumber>;
getPermissionsForSigner(signer: string, overrides?: CallOverrides): Promise<BigNumber>;
initialize(_defaultAdmin: string, _data: BytesLike, overrides?: Overrides & {
from?: string | Promise<string>;
}): Promise<BigNumber>;
isActiveSigner(signer: string, overrides?: CallOverrides): Promise<BigNumber>;
isAdmin(_account: string, overrides?: CallOverrides): Promise<BigNumber>;
isValidSigner(_signer: string, _userOp: UserOperationStruct, overrides?: CallOverrides): Promise<BigNumber>;
multicall(data: BytesLike[], overrides?: Overrides & {
from?: string | Promise<string>;
}): Promise<BigNumber>;
setEntrypointOverride(_entrypointOverride: string, overrides?: Overrides & {
from?: string | Promise<string>;
}): Promise<BigNumber>;
setPermissionsForSigner(_req: IAccountPermissions.SignerPermissionRequestStruct, _signature: BytesLike, overrides?: Overrides & {
from?: string | Promise<string>;
}): Promise<BigNumber>;
validateUserOp(userOp: UserOperationStruct, userOpHash: BytesLike, missingAccountFunds: BigNumberish, overrides?: Overrides & {
from?: string | Promise<string>;
}): Promise<BigNumber>;
verifySignerPermissionRequest(req: IAccountPermissions.SignerPermissionRequestStruct, signature: BytesLike, overrides?: CallOverrides): Promise<BigNumber>;
};
populateTransaction: {
entryPoint(overrides?: CallOverrides): Promise<PopulatedTransaction>;
factory(overrides?: CallOverrides): Promise<PopulatedTransaction>;
getAllActiveSigners(overrides?: CallOverrides): Promise<PopulatedTransaction>;
getAllAdmins(overrides?: CallOverrides): Promise<PopulatedTransaction>;
getAllExtensions(overrides?: CallOverrides): Promise<PopulatedTransaction>;
getAllSigners(overrides?: CallOverrides): Promise<PopulatedTransaction>;
getImplementationForFunction(_functionSelector: BytesLike, overrides?: CallOverrides): Promise<PopulatedTransaction>;
getNonce(overrides?: CallOverrides): Promise<PopulatedTransaction>;
getPermissionsForSigner(signer: string, overrides?: CallOverrides): Promise<PopulatedTransaction>;
initialize(_defaultAdmin: string, _data: BytesLike, overrides?: Overrides & {
from?: string | Promise<string>;
}): Promise<PopulatedTransaction>;
isActiveSigner(signer: string, overrides?: CallOverrides): Promise<PopulatedTransaction>;
isAdmin(_account: string, overrides?: CallOverrides): Promise<PopulatedTransaction>;
isValidSigner(_signer: string, _userOp: UserOperationStruct, overrides?: CallOverrides): Promise<PopulatedTransaction>;
multicall(data: BytesLike[], overrides?: Overrides & {
from?: string | Promise<string>;
}): Promise<PopulatedTransaction>;
setEntrypointOverride(_entrypointOverride: string, overrides?: Overrides & {
from?: string | Promise<string>;
}): Promise<PopulatedTransaction>;
setPermissionsForSigner(_req: IAccountPermissions.SignerPermissionRequestStruct, _signature: BytesLike, overrides?: Overrides & {
from?: string | Promise<string>;
}): Promise<PopulatedTransaction>;
validateUserOp(userOp: UserOperationStruct, userOpHash: BytesLike, missingAccountFunds: BigNumberish, overrides?: Overrides & {
from?: string | Promise<string>;
}): Promise<PopulatedTransaction>;
verifySignerPermissionRequest(req: IAccountPermissions.SignerPermissionRequestStruct, signature: BytesLike, overrides?: CallOverrides): Promise<PopulatedTransaction>;
};
}
//# sourceMappingURL=ManagedAccount.d.ts.map