/** * Function Parser - 함수 시그니처 파싱 * * 함수의 toString() 결과를 분석하여 파라미터 메타데이터를 추출합니다. * 구조 분해 할당, 별칭, Rest Parameter 등을 지원합니다. */ /** * 파라미터 정보 */ export interface ParameterInfo { /** 파라미터 인덱스 (0부터 시작) */ index: number; /** 파라미터 이름 (구조 분해인 경우 빈 문자열 또는 생성된 이름) */ name: string; /** 구조 분해 할당 여부 */ isDestructured: boolean; /** Rest Parameter 여부 */ isRest: boolean; /** 구조 분해된 키 목록 (isDestructured가 true인 경우) */ destructuredKeys?: string[]; } /** * 함수 메타데이터 */ export interface FunctionMetadata { /** 파라미터 목록 */ parameters: ParameterInfo[]; /** 네이티브 함수 여부 */ isNative: boolean; /** 원본 함수 문자열 */ source: string; } /** * 함수를 파싱하여 메타데이터를 추출합니다. */ export declare function parseFunction(fn: Function): FunctionMetadata; /** * 캐시를 사용하여 함수를 파싱합니다. */ export declare function parseFunctionCached(fn: Function): FunctionMetadata;