mirror of
https://github.com/agentclientprotocol/claude-agent-acp.git
synced 2026-11-09 02:42:27 +00:00
## Summary - Enable TypeScript declaration file generation (`.d.ts` and `.d.ts.map`) - Add `types` field and proper `exports` configuration to package.json - Add comprehensive integration test that verifies the full packaging flow ## Changes ### Build Configuration - **tsconfig.json**: Added `declaration: true` and `declarationMap: true` - **package.json**: Added `types` field and `exports` field with: - Main entry point with proper `types` and `import` conditions - Wildcard `"./*": "./*"` to preserve backwards compatibility for deep imports ### Integration Test The new test at `src/tests/typescript-declarations.test.ts` validates: - **Full packaging flow**: build → npm pack → install tarball → type-check - **Main exports**: All primary exports type-check correctly - **Deep imports**: Backwards compatibility for `dist/*.js` imports - **Type shapes**: Classes, interfaces, and function signatures match expected types - **Generic types**: Pushable<T> works correctly with type parameters - **Invalid types**: TypeScript correctly rejects incorrect usage The test creates temporary TypeScript projects, installs the actual `.tgz` package, and runs `tsc --noEmit` to verify type-checking passes. ## Test plan - [x] `npm run build` generates `.d.ts` and `.d.ts.map` files in `dist/` - [x] All 8 integration tests pass: `npm run test:integration -- typescript-declarations` - [x] Main exports type-check correctly - [x] Deep imports continue to work (no breaking change) 🤖 Generated with [Claude Code](https://claude.com/claude-code) --------- Co-authored-by: Claude <noreply@anthropic.com>
19 lines
426 B
JSON
19 lines
426 B
JSON
{
|
|
"compilerOptions": {
|
|
"target": "ES2020",
|
|
"module": "NodeNext",
|
|
"moduleResolution": "NodeNext",
|
|
"lib": ["ES2020"],
|
|
"strict": true,
|
|
"esModuleInterop": true,
|
|
"forceConsistentCasingInFileNames": true,
|
|
"skipLibCheck": true,
|
|
"outDir": "dist",
|
|
"rootDir": "src",
|
|
"declaration": true,
|
|
"declarationMap": true
|
|
},
|
|
"include": ["src/**/*.ts"],
|
|
"exclude": ["node_modules", "dist"]
|
|
}
|