import { Color } from './Color.js';
import { ColorThemes } from '../enums/ColorThemes.js';
import { ValidationObject } from './ValidationObject.js';
export declare class Validator {
    #private;
    /**
     * Validates an argument of type number with a max and min value.
     *
     * @param values - A ValidationObject containing the values to validate.
     * @throws Error if a property is missing on the argument.
     * @throws Error if the argument does not pass the validation.
     */
    validateNumberArgumentWithMaxAndMin(values: ValidationObject): void;
    /**
     * Validates an argument of type number.
     *
     * @param recieved - The argument to validate.
     * @throws Error if the arguments does not pass the validation.
     */
    validateNumberArgument(recieved: number): void;
    /**
     * Validates an argument of type Color.
     *
     * @param recieved - The argument to validate.
     * @throws Error if the arguments does not pass the validation.
     */
    validateColorArgument(recieved: Color): void;
    /**
     * Validates an argument of type HTMLElement.
     *
     * @param recieved - The argument to validate.
     * @throws Error if the arguments does not pass the validation.
     */
    validateHTMLElementArgument(recieved: HTMLElement): void;
    /**
     * Validates an argument of type ColorThemes.
     *
     * @param recieved - The argument to validate.
     * @throws Error if the arguments does not pass the validation.
     */
    validateColorThemesArgument(recieved: ColorThemes): void;
    /**
     * Validates an argument of type Color[].
     *
     * @param recieved - The argument to validate.
     * @throws Error if the arguments does not pass the validation.
     */
    validateColorArrayArgument(recieved: Color[]): void;
}
