/** * Copyright (c) Facebook, Inc. and its affiliates. All Rights Reserved. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. */ import type {Config} from '@jest/types'; import type {Options} from 'yargs'; export declare const createDidYouMeanMessage: ( unrecognized: string, allowedOptions: Array, ) => string; declare type DeprecatedOptionFunc = (arg: Record) => string; export declare type DeprecatedOptions = Record; export declare const format: (value: unknown) => string; export declare const logValidationWarning: ( name: string, message: string, comment?: string | null, ) => void; export declare function multipleValidOptions>( ...args: T ): T[number]; declare type Title = { deprecation?: string; error?: string; warning?: string; }; export declare const validate: ( config: Record, options: ValidationOptions, ) => { hasDeprecationWarnings: boolean; isValid: boolean; }; export declare function validateCLIOptions( argv: Config.Argv, options?: Record & { deprecationEntries?: DeprecatedOptions; }, rawArgv?: Array, ): boolean; export declare class ValidationError extends Error { name: string; message: string; constructor(name: string, message: string, comment?: string | null); } declare type ValidationOptions = { comment?: string; condition?: (option: unknown, validOption: unknown) => boolean; deprecate?: ( config: Record, option: string, deprecatedOptions: DeprecatedOptions, options: ValidationOptions, ) => boolean; deprecatedConfig?: DeprecatedOptions; error?: ( option: string, received: unknown, defaultValue: unknown, options: ValidationOptions, path?: Array, ) => void; exampleConfig: Record; recursive?: boolean; recursiveDenylist?: Array; title?: Title; unknown?: ( config: Record, exampleConfig: Record, option: string, options: ValidationOptions, path?: Array, ) => void; }; export {};