aa-schnorr-multisig-sdk
Version:
Account Abstraction Schnorr Multi-Signatures SDK
20 lines (19 loc) • 1.31 kB
TypeScript
import type { Address } from "abitype";
import type { BatchUserOperationCallData, SmartAccountSigner } from "@alchemy/aa-core";
import { BaseSmartContractAccount } from "@alchemy/aa-core";
import type { BytesLike } from "ethers";
import type { FallbackTransport, Hex, Transport } from "viem";
import type { MultiSigAccountAbstractionParams } from "./schema";
export declare class MultiSigAccountAbstraction<TTransport extends Transport | FallbackTransport = Transport> extends BaseSmartContractAccount<TTransport, SmartAccountSigner> {
protected owner: SmartAccountSigner;
protected combinedAddress: Address[];
protected factoryAddress: Address;
protected salt: BytesLike;
constructor(params: MultiSigAccountAbstractionParams<TTransport>);
getDummySignature(): `0x${string}`;
encodeExecute(target: Hex, value: bigint, data: Hex): Promise<`0x${string}`>;
encodeBatchExecute(_txs: BatchUserOperationCallData): Promise<`0x${string}`>;
signMessage(msg: Uint8Array | string): Promise<`0x${string}`>;
protected getAccountInitCode(): Promise<`0x${string}`>;
}
export declare function createMultiSigAccountAbstraction(params: Pick<MultiSigAccountAbstractionParams<Transport>, "chain" | "accountAddress" | "rpcClient" | "combinedAddress" | "salt">): MultiSigAccountAbstraction;