import { type Hex, type SendUserOperationResult, type SmartAccountSigner } from "@alchemy/aa-core"; import { ZeroDevProvider, type ZeroDevProviderConfig } from "../provider.js"; import type { KernelBaseValidator, KernelBaseValidatorParams } from "../validator/base.js"; import type { PaymasterConfig, PaymasterPolicy } from "../paymaster/types.js"; import { type KernelSmartAccountParams } from "../account.js"; import type { RequiredProps } from "../types.js"; export type ValidatorProviderParamsOpts

= { paymasterConfig?: PaymasterConfig; providerConfig?: Partial; accountConfig?: Omit>; validatorConfig?: Omit>; }; export interface ValidatorProviderParams

{ projectId: string; owner: SmartAccountSigner; opts?: ValidatorProviderParamsOpts

; } export type ExtendedValidatorProviderParams

= ValidatorProviderParams

& RequiredProps

; export declare abstract class ValidatorProvider

extends ZeroDevProvider { constructor(params: ExtendedValidatorProviderParams

, validator: KernelBaseValidator); getEncodedEnableData: (enableData: Hex) => Promise; getEncodedDisableData: (disableData: Hex) => Promise; sendEnableUserOperation: (enableData: Hex) => Promise; sendDisableUserOperation: (disableData: Hex) => Promise; }