UNPKG

status-checker

Version:

A lean, dependency-free URL status checker library

81 lines (80 loc) 2.28 kB
import { Check, IndividualCheckResult } from './types'; /** * Response data from an HTTP request */ interface ResponseData { statusCode: number; headers: Record<string, string>; body: string; responseTime: number; } /** * Check evaluator for evaluating different types of checks */ export declare class CheckEvaluator { /** * Evaluate all checks against a response * @param checks Array of checks to evaluate * @param response Response data * @returns Array of check results */ evaluateChecks(checks: Check[], response: ResponseData): IndividualCheckResult[]; /** * Evaluate a single check against a response * @param check Check to evaluate * @param response Response data * @returns Check result */ evaluateCheck(check: Check, response: ResponseData): IndividualCheckResult; /** * Evaluate a status code check * @param check Status code check * @param response Response data * @returns Check result */ private evaluateStatusCodeCheck; /** * Evaluate a header check * @param check Header check * @param response Response data * @returns Check result */ private evaluateHeaderCheck; /** * Evaluate a body check * @param check Body check * @param response Response data * @returns Check result */ private evaluateBodyCheck; /** * Evaluate a JSON path check * @param check JSON path check * @param response Response data * @returns Check result */ private evaluateJsonPathCheck; /** * Evaluate a response time check * @param check Response time check * @param response Response data * @returns Check result */ private evaluateResponseTimeCheck; /** * Extract a value from a JSON object using a JSON path expression * @param json JSON object * @param path JSON path expression * @returns Extracted value */ private extractJsonPath; /** * Compare values using the specified operator * @param actual Actual value * @param operator Comparison operator * @param expected Expected value * @returns Whether the comparison passed */ private compareValues; } export {};