/**
 * Concatenate human-written descriptions from a component's source so the
 * dump-metadata consumer (model, doc tool, etc.) gets the same context a
 * human reader would see from the code.
 *
 * Sections are gathered in this order and joined with `\n\n`:
 *
 *   1. Leading comment on the `<Name>Data` / `I<Name>Data` / `<Name>Props`
 *      declaration — the props-contract description.
 *   2. Leading comment on the React component declaration
 *      (`function <Name>`, `const <Name>: React.FC<…>`, etc.).
 *   3. Leading comment on each member of the data type (per-prop docs).
 *   4. Leading comment on each event handler reachable from
 *      `<PieCard methods={…}>` — taken from the property in-place AND,
 *      for shorthand / identifier references, from the resolved function
 *      declaration.
 *
 * Comment delimiters (`/**`, `*​/`, leading `*`, `//`) are stripped.
 */
import type { SchemaContext } from './schemaContext';
/**
 * Concatenate the four description sections (data-type doc, component
 * doc, per-field docs, per-handler docs) into a single string. Empty
 * sections are skipped; the result is `""` if no comments exist.
 *
 * ASSUMES:
 *   - `dataDeclaration` is the AST node returned by
 *     `findComponentDataTypeForName` (its leading comment is the
 *     props-contract description).
 *   - `events` is the already-extracted event-name list (used to filter
 *     `methods={…}` properties to the ones that actually count).
 */
export declare const extractDescription: (ctx: SchemaContext, componentName: string, files: string[], dataDeclaration: any, events: string[]) => string;
//# sourceMappingURL=extractDescription.d.ts.map