import type { IStageOrTriggerValidator, IValidatorConfig } from './PipelineConfigValidator'; import type { IPipeline, IStage, IStageOrTriggerTypeConfig, ITrigger } from '../../../domain'; export interface IRequiredField { fieldName: string; fieldLabel?: string; } export interface IBaseRequiredFieldValidationConfig extends IValidatorConfig { message?: string; } export declare abstract class BaseRequiredFieldValidator implements IStageOrTriggerValidator { validate(pipeline: IPipeline, stage: IStage | ITrigger, validationConfig: IBaseRequiredFieldValidationConfig, config: IStageOrTriggerTypeConfig): string; protected abstract passesValidation(pipeline: IPipeline, stage: IStage | ITrigger, validationConfig: IBaseRequiredFieldValidationConfig): boolean; protected abstract validationMessage(validationConfig: IBaseRequiredFieldValidationConfig, config: IStageOrTriggerTypeConfig): string; protected printableFieldLabel(field: IRequiredField): string; protected fieldIsValid(pipeline: IPipeline, stage: IStage | ITrigger, fieldName: string): boolean; }