UNPKG

@sailboat-computer/validation

Version:

Validation framework for sailboat computer v3

37 lines 1.53 kB
/** * Extended base validation rule implementation * * This file extends the base validation rule to work with extended sensor data types. */ import { BaseValidationRule } from './base-rule'; import { ValidationResult, ValidationContext } from '../types'; import { ExtendedRawSensorData, SignalKSource } from '../types-extension'; /** * Extended validation rule interface for extended sensor data */ export interface ExtendedValidationRule { validate(data: ExtendedRawSensorData, context: ValidationContext): ValidationResult; isApplicable(data: ExtendedRawSensorData): boolean; } /** * Abstract base class for extended validation rules */ export declare abstract class ExtendedBaseValidationRule extends BaseValidationRule implements ExtendedValidationRule { /** * Abstract validation method to be implemented by subclasses */ abstract validate(data: ExtendedRawSensorData, context: ValidationContext): ValidationResult; /** * Abstract applicability check to be implemented by subclasses */ abstract isApplicable(data: ExtendedRawSensorData): boolean; /** * Helper method to get previous sensor data from context */ protected getPreviousData(data: ExtendedRawSensorData, context: ValidationContext, maxAgeSeconds?: number): ExtendedRawSensorData | undefined; /** * Helper method to get source details */ protected getSourceDetails(data: ExtendedRawSensorData): SignalKSource | undefined; } //# sourceMappingURL=extended-base-rule.d.ts.map