import { type Abi, type Address, type Chain, type Hex, type PublicClient } from 'viem'; import { type SmartAccount, type SmartAccountImplementation } from 'viem/account-abstraction'; import { type Module } from '../modules/common'; import type { OwnerSet, RhinestoneAccountConfig } from '../types'; import { type ValidatorConfig } from './utils'; declare function getDeployArgs(config: RhinestoneAccountConfig): { factory: `0x${string}`; factoryData: `0x${string}`; implementation: `0x${string}`; initializationCallData: `0x${string}`; salt: `0x${string}`; } | null; declare function getAddress(config: RhinestoneAccountConfig): `0x${string}`; declare function getEip712Domain(config: RhinestoneAccountConfig, chain: Chain): { name: string; version: string; chainId: number; verifyingContract: `0x${string}`; salt: "0x0000000000000000000000000000000000000000000000000000000000000000"; }; declare function getInstallData(module: Module): Hex[]; declare function packSignature(signature: Hex, validator: ValidatorConfig, transformSignature?: (signature: Hex) => Hex): Promise<`0x${string}`>; declare function wrapMessageHash(messageHash: Hex, accountAddress: Hex): Hex; declare function getSmartAccount(client: PublicClient, address: Address, owners: OwnerSet, validatorAddress: Address, sign: (hash: Hex) => Promise): Promise>>; declare function getGuardianSmartAccount(client: PublicClient, address: Address, guardians: OwnerSet, validatorAddress: Address, sign: (hash: Hex) => Promise): Promise>>; export { getEip712Domain, getInstallData, getAddress, getDeployArgs, getSmartAccount, getGuardianSmartAccount, packSignature, wrapMessageHash, }; //# sourceMappingURL=kernel.d.ts.map