import { type SourcePosition } from "@ark/fs"; import type ts from "typescript"; export type SnapshotArgs = { position: SourcePosition; serializedValue: unknown; snapFunctionName?: string; baselinePath?: string[]; }; export declare const resolveSnapshotPath: (testFile: string, customPath: string | undefined) => string; export declare const getSnapshotByName: (file: string, name: string, customPath: string | undefined) => object; /** * Writes the update and position to cacheDir, which will eventually be read and copied to the source * file by a cleanup process after all tests have completed. */ export declare const queueSnapshotUpdate: (args: SnapshotArgs) => void; export type QueuedUpdate = { position: SourcePosition; snapCall: ts.CallExpression; snapFunctionName: string; newArgText: string; baselinePath: string[] | undefined; }; export type ExternalSnapshotArgs = SnapshotArgs & { name: string; customPath: string | undefined; }; export declare const updateExternalSnapshot: ({ serializedValue: value, position, name, customPath }: ExternalSnapshotArgs) => void; export declare const writeSnapshotUpdatesOnExit: () => void; export declare const writeUpdates: (queuedUpdates: QueuedUpdate[]) => void;