import { Chain, Transport } from "viem";
import { ContractToMapping, KernelConfig } from "../types/dimo.js";
import { KernelAccountClient, KernelSmartAccount } from "@zerodev/sdk";
import { EntryPoint } from "permissionless/types";
import { SetPermissionsSACD, SetVehiclePermissions, SetVehiclePermissionsBulk } from "../types/args.js";
import { GetUserOperationReceiptReturnType } from "permissionless";
export declare function setVehiclePermissions(args: SetVehiclePermissions, client: KernelAccountClient<EntryPoint, Transport, Chain, KernelSmartAccount<EntryPoint, Transport, Chain>>, environment?: string): Promise<`0x${string}`>;
export declare function setVehiclePermissionsBulk(arg: SetVehiclePermissionsBulk, client: KernelAccountClient<EntryPoint, Transport, Chain, KernelSmartAccount<EntryPoint, Transport, Chain>>, environment?: string): Promise<`0x${string}`>;
export declare function setVehiclePermissionsBatch(args: SetVehiclePermissions[], client: KernelAccountClient<EntryPoint, Transport, Chain, KernelSmartAccount<EntryPoint, Transport, Chain>>, environment?: string): Promise<`0x${string}`>;
export declare function setPermissionsSACD(args: SetPermissionsSACD, client: KernelAccountClient<EntryPoint, Transport, Chain, KernelSmartAccount<EntryPoint, Transport, Chain>>, contracts: ContractToMapping): Promise<`0x${string}`>;
export declare function sacdCallData(args: SetPermissionsSACD, environment?: string): `0x${string}`;
export declare const setVehiclePermissionsTransaction: (args: SetVehiclePermissions, subOrganizationId: string, walletAddress: string, passkeyStamper: any, config: KernelConfig) => Promise<GetUserOperationReceiptReturnType>;
