export interface HarLog { version: string; creator: HarCreator; entries: HarEntry[]; } export interface HarCreator { name: string; version: string; } export interface HarEntry { startedDateTime: string; time: number; request: HarRequest; response: HarResponse; cache: Record; timings: HarTimings; } export interface HarRequest { method: string; url: string; httpVersion: string; headers: HarHeader[]; queryString: HarQueryString[]; cookies: HarCookie[]; headersSize: number; bodySize: number; postData?: HarPostData; } export interface HarResponse { status: number; statusText: string; httpVersion: string; headers: HarHeader[]; cookies: HarCookie[]; content: HarContent; redirectURL: string; headersSize: number; bodySize: number; } export interface HarHeader { name: string; value: string; } export interface HarQueryString { name: string; value: string; } export interface HarCookie { name: string; value: string; path?: string; domain?: string; expires?: string; httpOnly?: boolean; secure?: boolean; } export interface HarPostData { mimeType: string; text?: string; params?: HarParam[]; } export interface HarParam { name: string; value?: string; fileName?: string; contentType?: string; } export interface HarContent { size: number; mimeType: string; text?: string; encoding?: string; } export interface HarTimings { blocked: number; dns: number; connect: number; send: number; wait: number; receive: number; ssl: number; } export interface HarFile { log: HarLog; }