import { defaultCoverageExclusions, defaultThresholds, mergeConfigs, mergeThresholds, } from "./base.js";
// Re-export base utilities for entry-point configs
export { defaultCoverageExclusions, defaultThresholds, mergeConfigs, mergeThresholds, };
/**
 * Creates a Jest configuration for AWS CDK projects.
 * @param options - Configuration options for threshold overrides
 * @param options.thresholds - Coverage thresholds (merged defaults + project overrides)
 * @returns Jest config object with ts-jest transform, node environment, and CDK-specific paths
 * @remarks CDK projects typically use CommonJS modules and keep tests in a
 * separate test/ directory. Coverage is collected only from lib/ and util/
 * directories since bin/ contains entry-point code with minimal logic.
 */
export const getCdkJestConfig = ({ thresholds = defaultThresholds, } = {}) => ({
    testEnvironment: "node",
    roots: ["<rootDir>/test"],
    testRegex: "(.*\\.(test|spec|integration-test|integration-spec)\\.ts)$",
    transform: {
        "^.+\\.ts$": "ts-jest",
    },
    moduleFileExtensions: ["js", "json", "ts"],
    collectCoverageFrom: [
        "lib/**/*.ts",
        "util/**/*.ts",
        ...defaultCoverageExclusions,
    ],
    ...(thresholds !== undefined ? { coverageThreshold: thresholds } : {}),
    testTimeout: 10000,
});
//# sourceMappingURL=cdk.js.map