mirror of
https://github.com/claude-code-best/claude-code.git
synced 2026-06-18 22:35:51 +00:00
feat: 全面清理类型错误 — tsc 零错误,any 标注全部消除
- 修复所有 33 个原始 tsc 编译错误(ink JSX 声明、类型不匹配、null check 等) - 清理 176 处 `: any` 类型标注,全部替换为具体推断类型 - 修复清理过程中引入的 41 个回归错误 - 最终结果:0 tsc 错误,0 个非注释 any 标注 - Build 验证通过(25.75MB bundle) Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
44
src/types/ink-elements.d.ts
vendored
44
src/types/ink-elements.d.ts
vendored
@@ -1,11 +1,47 @@
|
||||
// Type declarations for custom Ink JSX elements
|
||||
// Note: The detailed prop types are defined in ink-jsx.d.ts via React module augmentation.
|
||||
// This file provides the global JSX namespace fallback declarations.
|
||||
import type { ReactNode, Ref } from 'react';
|
||||
import type { ClickEvent } from '../ink/events/click-event.js';
|
||||
import type { FocusEvent } from '../ink/events/focus-event.js';
|
||||
import type { KeyboardEvent } from '../ink/events/keyboard-event.js';
|
||||
import type { Styles, TextStyles } from '../ink/styles.js';
|
||||
import type { DOMElement } from '../ink/dom.js';
|
||||
|
||||
declare global {
|
||||
namespace JSX {
|
||||
interface IntrinsicElements {
|
||||
'ink-box': any;
|
||||
'ink-text': any;
|
||||
'ink-link': any;
|
||||
'ink-raw-ansi': any;
|
||||
'ink-box': {
|
||||
ref?: Ref<DOMElement>;
|
||||
tabIndex?: number;
|
||||
autoFocus?: boolean;
|
||||
onClick?: (event: ClickEvent) => void;
|
||||
onFocus?: (event: FocusEvent) => void;
|
||||
onFocusCapture?: (event: FocusEvent) => void;
|
||||
onBlur?: (event: FocusEvent) => void;
|
||||
onBlurCapture?: (event: FocusEvent) => void;
|
||||
onMouseEnter?: () => void;
|
||||
onMouseLeave?: () => void;
|
||||
onKeyDown?: (event: KeyboardEvent) => void;
|
||||
onKeyDownCapture?: (event: KeyboardEvent) => void;
|
||||
style?: Styles;
|
||||
stickyScroll?: boolean;
|
||||
children?: ReactNode;
|
||||
};
|
||||
'ink-text': {
|
||||
style?: Styles;
|
||||
textStyles?: TextStyles;
|
||||
children?: ReactNode;
|
||||
};
|
||||
'ink-link': {
|
||||
href?: string;
|
||||
children?: ReactNode;
|
||||
};
|
||||
'ink-raw-ansi': {
|
||||
rawText?: string;
|
||||
rawWidth?: number;
|
||||
rawHeight?: number;
|
||||
};
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user