UNPKG

dkershner6-projen-typescript

Version:

DKershner's preferred constructs for Projen TypeScript projects.

67 lines (66 loc) 3.17 kB
import { Component, ProjectOptions } from "projen"; import { TypeScriptCompilerOptions, NodeProjectOptions, JestOptions } from "projen/lib/javascript"; import { TypeScriptProjectOptions, TypeScriptProject } from "projen/lib/typescript"; export declare const PUBLISH_FILE_PATTERNS: string[]; export declare const TEST_FILE_SUFFIXES: string[]; export declare const TEST_FOLDERS: string[]; export declare const DEV_FILE_PATTERNS: string[]; export declare const PROJEN_COMPILER_OPTION_DEFAULTS: TypeScriptCompilerOptions; export declare const RECOMMENDED_TSCONFIG_COMPILER_OPTIONS: TypeScriptCompilerOptions; export declare const RECOMMENDED_TSCONFIG_NODE_20: Partial<TypeScriptProjectOptions>; export declare const PROJEN_VERSION = "0.88.0"; export declare const CONSTRUCTS_VERSION = "10.3.0"; export declare const RECOMMENDED_NODE_20: Partial<TypeScriptProjectOptions>; export declare const RECOMMENDED_PNPM_8: Partial<TypeScriptProjectOptions>; export declare const RECOMMENDED_ESLINT_CONFIG: Partial<TypeScriptProjectOptions>; export declare const RECOMMENDED_JEST_CONFIG: Partial<TypeScriptProjectOptions>; export declare const RECOMMENDED_PRETTIER_CONFIG: Partial<NodeProjectOptions>; export declare const RECOMMENDED_NODE_20_PROJECT_OPTIONS: Omit<ProjectOptions & NodeProjectOptions & TypeScriptProjectOptions, "defaultReleaseBranch" | "name">; export declare class DKBugFixes extends Component { constructor(project: TypeScriptProject); } export declare class DKEslintConfig extends Component { constructor(project: TypeScriptProject); } export declare enum DKTaskName { CLEAN_COMPILE = "clean-compile", CI = "ci", DOCGEN_REMOVE = "docgen:remove", I = "i", LINT = "lint", TEST_UNIT = "test-unit", TYPE_CHECK = "type-check", UPGRADE_PACKAGE = "upgrade:package" } export declare class DKTasks extends Component { static readonly IS_NOT_RELEASE_CONDITION = "if [ \"$RELEASE\" = \"true\" ] ; then exit 1 ; fi"; project: TypeScriptProject; constructor(project: TypeScriptProject); preSynthesize(): void; } export interface JestTransformerOptions { /** * Additional modules for jest to transform, typically ESM modules. * * @default - A list of known ESM modules commonly used in projects */ readonly modulesToTransform?: string[]; } export interface Node20TypeScriptProjectJestOptions extends JestOptions, JestTransformerOptions { } export declare class JestTransformer extends Component { static ESM_MODULES_TO_TRANSFORM: string[]; private readonly _modulesToTransform; constructor(project: TypeScriptProject, options?: Node20TypeScriptProjectJestOptions); get modulesToTransform(): Set<string>; addModulesToTransform(...modules: string[]): void; removeModulesToTransform(...modules: string[]): void; private buildTransformIgnorePatterns; } export interface Node20TypeScriptProjectOptions extends TypeScriptProjectOptions { jestOptions?: Node20TypeScriptProjectJestOptions; } export declare class Node20TypeScriptProject extends TypeScriptProject { readonly jestTransformer: JestTransformer; constructor(options: Node20TypeScriptProjectOptions); }