import { ValidationInfo, ValidationResult } from '../../types'; /** * Flat the `ValidationResult` object and return an array of `ValidationInfo` * @param validationResult * @returns {ValidationInfo[]} array of all `ValidationInfo` from `validatedItem` and `validatedProfile` objects */ export declare const flatValidationResults: (validationResult: ValidationResult) => ValidationInfo[]; /** * Returns the total score of the validation result. * * The total score is calculated by summing up the scores of all validation results * that are applicable to Living Atlas supported item types. * * @param validationResult - The validation result object containing all validation information * @param isLivingAtlasSupportedItemType - Boolean indicating if the item type is supported by Living Atlas * @returns The total score of the validation result */ export declare const getTotalScore: (validationResult: ValidationResult, isLivingAtlasSupportedItemType: boolean) => number; /** * Assigns final scores and statuses to each validation result within the given validation result object. * * This function processes each validation result to: * 1. Calculate total weight of all applicable validation rules * 2. Calculate score per weight unit * 3. Assign maximum possible score and actual score to each validation result * 4. Determine status based on applicability and score * * The status will be one of: * - 'not-applicable': When the rule doesn't apply to this item type * - 'error': When applicable but scored 0 * - 'warning': When applicable but scored less than maximum * - 'pass': When applicable and scored the maximum * * @param validationResult - The validation result object containing all validation information * @param isLivingAtlasSupportedItemType - Boolean indicating if the item type is supported by Living Atlas * @returns The updated validation result object with scores and statuses assigned */ export declare const assignFinalScoresAndStatus: (validationResult: ValidationResult, isLivingAtlasSupportedItemType: boolean) => ValidationResult; /** * Return `true` if the total score of the validation result meets the minimum threshold, which is 80. * * @param totalScore total score from the validation result * @returns true if it meets the minimum threshold */ export declare const meetMinimumTotalScore: (totalScore: number) => boolean; /** * Checks if an item can be nominated to Living Atlas based on a set of minimum requirements. * * An item can be nominated only if its total score meets the minimum required threshold of **80** and it also passes all of * the following checks: * * - It is shared with the public * - It is NOT marked as deprecated * - It has Delete Protection enabled * - Its thumbnail image meets the required dimension * - It has a snippet text * - It has a description text * - The item owner has a user profile description * * @param validationResult The validation result * @returns A boolean value that indicates whether all the scores meet the required thresholds. */ export declare const meetRequiredThresholds: (validationResult: ValidationResult, isLivingAtlasSupportedItemType: boolean) => boolean;