export type StudySpec = { candidate: string; path: string; }; export type StudyRenderCheck = { candidate: string; path: string; width: number; screenshot: string; screenshotHash: string; failures: string[]; }; /** Unique screenshot stem from a confined study HTML path (onboarding/studies/…). */ export declare function studyScreenshotId(path: string): string; /** Readable stems; colliding sanitized names get a short hash of the exact normalized relative path. */ export declare function studyScreenshotIds(paths: string[]): Map; export declare function renderStudySources(opts: { root: string; outputRoot?: string; studies: StudySpec[]; copyPaths?: string[]; screenshotDir?: string; reportPath?: string; subjectHash: string; }): Promise<{ checks: StudyRenderCheck[]; }>;