import type { UnpluginInstance } from "unplugin"; import type { TtscUnpluginOptions } from "./options"; import { resolveOptions } from "./options"; import { beginTtscTransformBuild, captureWatchInputBaseline, captureWatchInputFileBaseline, collectExternalInputHashes, collectProjectInputHashSnapshot, collectProjectInputHashes, createTtscTransformCache, isProjectWalkPath, isWatchInputKeyBaseline, resetTtscTransformCache, transformTtsc, watchInputEvidenceMatchesBaseline } from "./transform"; /** * Matches the exact TypeScript source extensions the ttsc transform handles: * `.ts`, `.tsx`, `.mts`, and `.cts`. JavaScript and invented extension forms * such as `.mtsx` are deliberately excluded. * * Shared with the Bun adapter (`bun.ts`) and the standalone Turbopack loader * (`turbopack.ts`) through {@link isTransformTarget}, so the filter is defined * once and every adapter answers the same way. */ export declare const sourceFilePattern: RegExp; declare const unplugin: UnpluginInstance; export type { TtscUnpluginCompilerOptionsJson, TtscUnpluginOptions, } from "./options"; export type { TtscProjectDiscoveryFilesystem, TtscProjectTreeDiscoveryFilesystem, TtscProjectTsconfigCandidate, TtscProjectTsconfigDiscovery, } from "./projectDiscovery"; export type { TtscProjectInputHashSnapshot, TtscTransformFilesystemOperations, TtscTransformHooks, TtscWatchInput, TtscWatchInputBaseline, TtscWatchInputEvidence, TtscWatchInputFileBaseline, TtscWatchInputKeyBaseline, TtscWatchInputState, } from "./transform"; export type { ITsconfigSourceSnapshotEntry, ITtscProjectMembershipPolicy, } from "./tsconfigPaths"; export { mergeMembershipPolicyOverlay, readProjectMembershipPolicy, readTsconfigSourceSnapshot, } from "./tsconfigPaths"; export { beginTtscTransformBuild, captureWatchInputBaseline, captureWatchInputFileBaseline, collectExternalInputHashes, collectProjectInputHashSnapshot, collectProjectInputHashes, createTtscTransformCache, isProjectWalkPath, isWatchInputKeyBaseline, resetTtscTransformCache, resolveOptions, transformTtsc, unplugin, watchInputEvidenceMatchesBaseline, }; export { discoverNearestProjectTsconfig, findNearestProjectTsconfig, findProjectTsconfigs, } from "./projectDiscovery"; export default unplugin; /** * Returns `true` when the module id refers to a real TypeScript source file * that should be processed by the ttsc transform. * * TypeScript only. {@link sourceFilePattern} deliberately excludes JavaScript, * so a `.js` module reaches no adapter's transform, and this docstring used to * say otherwise while the pattern it is built from said the truth * (samchon/ttsc#1309). * * Also excluded: virtual modules (NUL prefix), `.d.ts` declaration files, and * anything inside `node_modules`. */ export declare function isTransformTarget(id: string): boolean;