import { DateOrTime } from "./DateTime"; import { ExifTool } from "./ExifTool"; import { Maybe } from "./Maybe"; import { Tags } from "./Tags"; export declare function mkdirp(dir: string): Promise; export { expect } from "chai"; export declare const testDir: string; export declare function end(et: ExifTool): Promise; export declare function randomChar(): string; export declare function randomChars(chars?: number): string; export declare const tmpdir: import("./Lazy").Lazy; export declare function tmpname(prefix?: string): string; export declare function renderTagsWithISO(t: Tags): Record; export declare function renderTagsWithRawValues(t: Tags): Record; /** * Copy a test image to a tmp directory and return the path */ export declare function testImg({ srcBasename, parentDir, destBasename, }?: { srcBasename?: Maybe; parentDir?: string; destBasename?: string; }): Promise; export declare const IPTC_JPG = "iptc.jpg"; export declare function testFile(name: string): Promise; export declare function sha1(path: string): Promise; export declare function sha1buffer(input: string | Buffer): string; export declare function assertEqlDateish(a: Maybe, b: Maybe): Chai.Assertion; export declare const NonAlphaStrings: { str: string; desc: string; }[]; export declare const UnicodeTestMessage = "Double quotes(\"\u201C\u201D\u00AB\u00BB) and single quotes('\u2018\u2019\u2039\u203A) and backquotes(`), oh my \uD83D\uDC4D\uD83C\uDF39\uD83D\uDC31\u200D\uD83D\uDC53\uD83D\uDEB5\u200D\u2640\uFE0F. \u0A38\u0A41\u0A06\u0A17\u0A24 \u0A39\u0A48 \u0E22\u0E34\u0E19\u0E14\u0E35\u0E15\u0E49\u0E2D\u0E19\u0E23\u0E31\u0E1A \uD658\uC601\uD558\uB2E4 \u3088\u3046\u3053\u305D \u6B61\u8FCE \u6B22\u8FCE \u05D1\u05E8\u05D5\u05DA \u05D4\u05D1\u05D0 \u062E\u0648\u0634 \u0622\u0645\u062F\u06CC\u062F"; /** * Measure how long it takes to spawn ExifTool and get a response. This provides * a baseline for setting realistic timeout values in tests. CI environments * (especially Windows) can be 10-100x slower than local dev. * * Results are cached after first measurement to avoid overhead. * * CAUTION: You probably want to schedule this in a before() block so it doesn't * impact test timeouts! */ export declare function measureSpawnTime(): Promise;