import { type GetAccountParameter, type GetEntryPointFromAccount, type IsUndefined, type SendUserOperationParameters, type SmartContractAccount } from "@alchemy/aa-core"; import { type Address, type Chain, type Client, type Transport } from "viem"; import type { GetPluginAddressParameter } from "../types.js"; import { type MultisigPluginActions as MultisigPluginActions_ } from "./plugin.js"; import { type MultisigUserOperationContext, type ProposeUserOperationResult, type SignMultisigUserOperationParams, type SignMultisigUserOperationResult } from "./types.js"; export type MultisigPluginActions = MultisigPluginActions_ & { readOwners: (params: GetPluginAddressParameter & GetAccountParameter) => Promise>; isOwnerOf: (params: { address: Address; } & GetPluginAddressParameter & GetAccountParameter) => Promise; getThreshold: (params: GetPluginAddressParameter & GetAccountParameter) => Promise; proposeUserOperation: (params: SendUserOperationParameters) => Promise>>; signMultisigUserOperation: (params: SignMultisigUserOperationParams) => Promise; } & (IsUndefined extends false ? { readOwners: (params?: GetPluginAddressParameter & GetAccountParameter) => Promise>; } : {}); export declare const multisigPluginActions: (client: Client) => MultisigPluginActions;