export interface ValidationResult {
    valid: boolean;
    error?: string;
}
export declare function validateTargetArray(targets: unknown[], commandName?: string): ValidationResult;
export declare function isValidTargetArray(targets: unknown[]): targets is HTMLElement[];
export declare function validateStringArray(arr: unknown[], fieldName?: string, minLength?: number): ValidationResult;
export declare function isValidStringArray(arr: unknown[], minLength?: number): arr is string[];
export declare function validateTypeDiscriminator<T extends string>(type: unknown, allowed: readonly T[], commandName?: string): ValidationResult;
export declare function isValidType<T extends string>(type: unknown, allowed: readonly T[]): type is T;
export declare function validateDefined(value: unknown, fieldName: string): ValidationResult;
export declare function isDefined<T>(value: T | null | undefined): value is T;
export declare function validateNonEmptyString(value: unknown, fieldName: string): ValidationResult;
export declare function isNonEmptyString(value: unknown): value is string;
export declare function combineValidations(...results: ValidationResult[]): ValidationResult;
export declare function createValidator(commandName: string): {
    targets: (targets: unknown[]) => ValidationResult;
    strings: (arr: unknown[], fieldName: string, minLength?: number) => ValidationResult;
    type: <T extends string>(type: unknown, allowed: readonly T[]) => ValidationResult;
    defined: (value: unknown, fieldName: string) => ValidationResult;
    nonEmptyString: (value: unknown, fieldName: string) => ValidationResult;
};
//# sourceMappingURL=input-validator.d.ts.map