import type { SyntaxNode } from '../types.js'; /** * Extract function/method signature */ export declare function extractSignature(node: SyntaxNode, content: string): string; /** * Truncate an over-long signature to keep stored chunks compact. */ export declare function clampSignatureLength(signature: string): string; /** * Collapse a node's raw text to a single line for signature-building, * mirroring `extractSignature`'s `.replace(/\s+/g, ' ').trim()` convention. * A grammar node's text can itself span multiple physical lines even when * it's a small, single "clause" — e.g. a C# `base_list` wrapping a * conditionally-compiled member in a preprocessor block (`: ILogger\n#if * X\n, IAsyncDisposable\n#endif`), found via dogfooding a real class * (Serilog's `Logger`) rather than a hypothetical case. Returns `''` for * `undefined`/absent nodes so callers can compose pieces without a null * check at every call site. */ export declare function collapseWhitespace(text: string | undefined): string; /** * Extract parameter list from function node * * Note: The `_content` parameter is unused in this function, but is kept for API consistency * with other extract functions (e.g., extractSignature). */ export declare function extractParameters(node: SyntaxNode, _content: string): string[]; /** * Extract return type from function node (TypeScript) * * Note: The `_content` parameter is unused in this function, but is kept for API consistency * with other extract functions (e.g., extractSignature). */ export declare function extractReturnType(node: SyntaxNode, _content: string): string | undefined; //# sourceMappingURL=symbol-helpers.d.ts.map