import type { IsoDuration } from 'iso-time'; import type { ProcedureInput } from 'procedure-fns'; import { type Serializable } from 'serde-fns'; import { createCache } from 'simple-on-disk-cache'; /** * .what = a utility to make it easier to use on-disk cache * .why = * - embeds best practices of how to serialize and deserialize */ export declare const withSimpleCacheOnDisk: >(logic: (input: TInput, context: TContext) => TResult, options: { procedure: { name: string; version: string | null; }; expiration?: IsoDuration | null; directory: ProcedureInput['directory']; }) => (input: TInput, context: TContext) => TResult;