import type { EntryPointType, GetKernelVersion, KernelValidator } from "@zerodev/sdk/types"; import type { WebAuthnKey } from "@zerodev/webauthn-key"; import { type Address, type Client, type Hex, type LocalAccount } from "viem"; import { type EntryPointVersion } from "viem/account-abstraction"; import { SIGNER_TYPE } from "./index.js"; export type WeightedSigner = { account: LocalAccount; getDummySignature: () => Hex; getPublicKey: () => Hex; type: SIGNER_TYPE; }; export declare enum WeightedValidatorContractVersion { V0_0_1_UNPATCHED = "0.0.1", V0_0_2_PATCHED = "0.0.2" } export declare const getValidatorAddress: (entryPointVersion: EntryPointVersion, validatorVersion: WeightedValidatorContractVersion, validatorAddress?: Address) => Address; export interface WeightedValidatorConfig { threshold: number; signers: Array<{ publicKey: WebAuthnKey | Address; weight: number; }>; delay?: number; } export declare function createWeightedValidator(client: Client, { config, entryPoint, kernelVersion, validatorContractVersion, signer, validatorAddress: validatorAddress_ }: { config?: WeightedValidatorConfig; signer: WeightedSigner; entryPoint: EntryPointType; kernelVersion: GetKernelVersion; validatorContractVersion: WeightedValidatorContractVersion; validatorAddress?: Address; }): Promise>; //# sourceMappingURL=toWeightedValidatorPlugin.d.ts.map