@squidcloud/client
    Preparing search index...

    Interface SpreadsheetSheetInfo

    Structural information about one sheet of a spreadsheet file.

    interface SpreadsheetSheetInfo {
        columnCount: number;
        disconnected?: boolean;
        formulaCellCount?: number;
        formulaSample?: string[];
        hidden?: boolean;
        inboundRefCount?: number;
        mergedRangeCount?: number;
        name: string;
        outboundRefCount?: number;
        refErrorCount?: number;
        rowCount: number;
    }
    Index
    columnCount: number

    Number of columns in the sheet.

    disconnected?: boolean

    Present and true when the sheet is hidden AND takes no part in the workbook's live dependency graph: nothing the live model reads leads to it, and it reads no visible sheet itself.

    Reachability, not adjacency: a hidden sheet read by another hidden sheet that a visible sheet reads is live, and the walk crosses as many hidden hops as the workbook has. It follows the READ direction only. A hidden staging or print sheet that merely reads the live model — downstream of it, not orphaned from it — is spared by that second clause, but sparing it does not spare what feeds IT: were liveness to flow backwards, one legacy tab still pointing at the current dashboard would carry its whole cluster of stale detail sheets back into the live set.

    Deliberately conservative on two further counts. It is never asserted for visible sheets, which are orphaned by design far more often than not (cover pages, chart tabs, mapping tables). And it remains a heuristic for "legacy", not a proof: INDIRECT(), defined-name and VBA/Power Query references are all invisible to a formula scan, so a hidden sheet reached only that way is a false positive. Consumers should present it as the evidence it is, never as a verdict.

    It is also under-reported in the legacy .xls container, where a parsed external reference keeps only the other workbook's sheet NAME: a link to the model this file was copied from can be credited to that file's own leftover copy of the sheet and spare it the flag. Missing orphans that way, never inventing them, is the direction this signal can afford to be wrong in.

    formulaCellCount?: number

    Cells whose value is computed by a formula. Omitted when zero, keeping the stored JSON compact.

    formulaSample?: string[]

    Up to a few representative formulas ("C5=SUM(B2:B4)") for the summary preview. NOT persisted in the bounded inventory JSON — preview-time only.

    hidden?: boolean

    Present and true when the sheet is hidden (or very-hidden) in the workbook. Hidden sheets are extracted like visible ones; the flag lets downstream surfaces say so. Omitted for visible sheets to keep the stored inventory JSON compact.

    inboundRefCount?: number

    Sheet-qualified references to this sheet from formulas on OTHER VISIBLE sheets. Omitted when zero. Raw evidence of "a live sheet reads this one", which is why references from hidden sheets are excluded — those are reported through disconnected, which walks them transitively.

    mergedRangeCount?: number

    Merged ranges declared on the sheet. Omitted when zero.

    name: string

    The sheet name.

    outboundRefCount?: number

    Sheet-qualified references from this sheet's formulas to other sheets OF THIS WORKBOOK. Omitted when zero. External references ([Book.xlsx]Sheet1!A1) are not counted — except in a legacy .xls, whose formula text does not mark them (see disconnected), so a reference into another workbook's same-named sheet counts here.

    refErrorCount?: number

    Formulas on the sheet containing a #REF! error, the signature of deleted precedents. Omitted when zero.

    rowCount: number

    Number of data rows in the sheet (excluding the header row).