import type { SenderManager } from "../../executor/index.js"; import type { ChainType, InterfaceValidator, UserOperationV06, UserOperationV07, ValidationResult, ValidationResultV06, ValidationResultV07, ValidationResultWithAggregationV06, ValidationResultWithAggregationV07 } from "../../types/index.js"; import { type Address, type ReferencedCodeHashes, type StorageMap, type UserOperation, type ValidationResultWithAggregation } from "../../types/index.js"; import type { GasPriceManager, Logger, Metrics } from "../../utils/index.js"; import { type Chain, type PublicClient, type Transport } from "viem"; import { type BundlerTracerResult } from "./BundlerCollectorTracerV06.js"; import { UnsafeValidator } from "./UnsafeValidator.js"; export declare class SafeValidator extends UnsafeValidator implements InterfaceValidator { private senderManager; constructor(publicClient: PublicClient, senderManager: SenderManager, logger: Logger, metrics: Metrics, gasPriceManager: GasPriceManager, chainType: ChainType, entryPointSimulationsAddress?: Address, usingTenderly?: boolean, balanceOverrideEnabled?: boolean); validateUserOperation(shouldCheckPrefund: boolean, userOperation: UserOperation, queuedUserOperations: UserOperation[], entryPoint: Address, referencedContracts?: ReferencedCodeHashes): Promise<(ValidationResult | ValidationResultWithAggregation) & { storageMap: StorageMap; referencedContracts?: ReferencedCodeHashes; }>; getCodeHashes(addresses: string[]): Promise; getValidationResultV07(userOperation: UserOperationV07, queuedUserOperations: UserOperationV07[], entryPoint: Address, preCodeHashes?: ReferencedCodeHashes): Promise<(ValidationResultV07 | ValidationResultWithAggregationV07) & { storageMap: StorageMap; referencedContracts?: ReferencedCodeHashes; }>; getValidationResultV06(userOperation: UserOperationV06, entryPoint: Address, preCodeHashes?: ReferencedCodeHashes): Promise<(ValidationResultV06 | ValidationResultWithAggregationV06) & { referencedContracts?: ReferencedCodeHashes; storageMap: StorageMap; }>; getValidationResultWithTracerV06(userOperation: UserOperationV06, entryPoint: Address): Promise<[ValidationResultV06, BundlerTracerResult]>; parseErrorResultV06(userOperation: UserOperationV06, errorResult: { errorName: string; errorArgs: any; }): ValidationResult | ValidationResultWithAggregation; getValidationResultWithTracerV07(userOperation: UserOperationV07, entryPoint: Address): Promise<[ValidationResultV07, BundlerTracerResult]>; parseErrorResultV07(userOperation: UserOperationV07, errorResult: { errorName: string; errorArgs: any; }): ValidationResult | ValidationResultWithAggregation; } //# sourceMappingURL=SafeValidator.d.ts.map