/** * @fileoverview Minimal parser for the V2000 SDF connection table (atom + bond blocks). * PubChem emits V2000 for 3D conformer records; the format is fixed-column and has been * stable since 1991, so a focused slice-based parser is more robust than a dependency. * @module services/pubchem/sdf-parser */ import type { Sdf3DStructure } from './types.js'; /** * Parse the first molecule's atom and bond blocks from a V2000 SDF record. * * Layout: three header lines, then a counts line (atom count at columns 0–3, bond count at * columns 3–6), then one fixed-column line per atom (x/y/z as `F10.4` at columns 0–10/10–20/ * 20–30, element symbol at columns 31–34), then one line per bond (atom1/atom2/order as * three-column integers). The block is terminated by `M END`. * * Throws when the counts line is missing or unparseable — a malformed record is a hard * failure, not a silently-empty success. */ export declare function parseSdfV2000(sdf: string): Sdf3DStructure; //# sourceMappingURL=sdf-parser.d.ts.map