49 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
		
		
			
		
	
	
			49 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
|  | /** | ||
|  |  * 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 { Config } from '@jest/types'; | ||
|  | import { DuplicatesSet, HTypeValue, RawModuleMap, ModuleMapData, MockData } from './types'; | ||
|  | declare type ValueType<T> = T extends Map<string, infer V> ? V : never; | ||
|  | export declare type SerializableModuleMap = { | ||
|  |     duplicates: ReadonlyArray<[string, [string, [string, [string, number]]]]>; | ||
|  |     map: ReadonlyArray<[string, ValueType<ModuleMapData>]>; | ||
|  |     mocks: ReadonlyArray<[string, ValueType<MockData>]>; | ||
|  |     rootDir: Config.Path; | ||
|  | }; | ||
|  | export default class ModuleMap { | ||
|  |     static DuplicateHasteCandidatesError: typeof DuplicateHasteCandidatesError; | ||
|  |     private readonly _raw; | ||
|  |     private json; | ||
|  |     private static mapToArrayRecursive; | ||
|  |     private static mapFromArrayRecursive; | ||
|  |     constructor(raw: RawModuleMap); | ||
|  |     getModule(name: string, platform?: string | null, supportsNativePlatform?: boolean | null, type?: HTypeValue | null): Config.Path | null; | ||
|  |     getPackage(name: string, platform: string | null | undefined, _supportsNativePlatform: boolean | null): Config.Path | null; | ||
|  |     getMockModule(name: string): Config.Path | undefined; | ||
|  |     getRawModuleMap(): RawModuleMap; | ||
|  |     toJSON(): SerializableModuleMap; | ||
|  |     static fromJSON(serializableModuleMap: SerializableModuleMap): ModuleMap; | ||
|  |     /** | ||
|  |      * When looking up a module's data, we walk through each eligible platform for | ||
|  |      * the query. For each platform, we want to check if there are known | ||
|  |      * duplicates for that name+platform pair. The duplication logic normally | ||
|  |      * removes elements from the `map` object, but we want to check upfront to be | ||
|  |      * extra sure. If metadata exists both in the `duplicates` object and the | ||
|  |      * `map`, this would be a bug. | ||
|  |      */ | ||
|  |     private _getModuleMetadata; | ||
|  |     private _assertNoDuplicates; | ||
|  |     static create(rootDir: Config.Path): ModuleMap; | ||
|  | } | ||
|  | declare class DuplicateHasteCandidatesError extends Error { | ||
|  |     hasteName: string; | ||
|  |     platform: string | null; | ||
|  |     supportsNativePlatform: boolean; | ||
|  |     duplicatesSet: DuplicatesSet; | ||
|  |     constructor(name: string, platform: string, supportsNativePlatform: boolean, duplicatesSet: DuplicatesSet); | ||
|  | } | ||
|  | export {}; | ||
|  | //# sourceMappingURL=ModuleMap.d.ts.map
 |