You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
44 lines
1.7 KiB
44 lines
1.7 KiB
|
3 years ago
|
/**
|
||
|
|
* 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 { RawSourceMap } from 'source-map';
|
||
|
|
import type { Config, TransformTypes } from '@jest/types';
|
||
|
|
export declare type ShouldInstrumentOptions = Pick<Config.GlobalConfig, 'collectCoverage' | 'collectCoverageFrom' | 'collectCoverageOnlyFrom' | 'coverageProvider'> & {
|
||
|
|
changedFiles?: Set<Config.Path>;
|
||
|
|
sourcesRelatedToTestsInChangedFiles?: Set<Config.Path>;
|
||
|
|
};
|
||
|
|
export declare type Options = ShouldInstrumentOptions & Partial<{
|
||
|
|
isCoreModule: boolean;
|
||
|
|
isInternalModule: boolean;
|
||
|
|
supportsDynamicImport: boolean;
|
||
|
|
supportsStaticESM: boolean;
|
||
|
|
}>;
|
||
|
|
declare type SourceMapWithVersion = Omit<RawSourceMap, 'version'>;
|
||
|
|
interface FixedRawSourceMap extends SourceMapWithVersion {
|
||
|
|
version: number;
|
||
|
|
}
|
||
|
|
export declare type TransformedSource = {
|
||
|
|
code: string;
|
||
|
|
map?: FixedRawSourceMap | string | null;
|
||
|
|
} | string;
|
||
|
|
export declare type TransformResult = TransformTypes.TransformResult;
|
||
|
|
export interface TransformOptions {
|
||
|
|
instrument: boolean;
|
||
|
|
supportsDynamicImport?: boolean;
|
||
|
|
supportsStaticESM?: boolean;
|
||
|
|
}
|
||
|
|
export interface CacheKeyOptions extends TransformOptions {
|
||
|
|
config: Config.ProjectConfig;
|
||
|
|
rootDir: string;
|
||
|
|
}
|
||
|
|
export interface Transformer {
|
||
|
|
canInstrument?: boolean;
|
||
|
|
createTransformer?: (options?: any) => Transformer;
|
||
|
|
getCacheKey?: (fileData: string, filePath: Config.Path, configStr: string, options: CacheKeyOptions) => string;
|
||
|
|
process: (sourceText: string, sourcePath: Config.Path, config: Config.ProjectConfig, options?: TransformOptions) => TransformedSource;
|
||
|
|
}
|
||
|
|
export {};
|