import { type Node, type StructureKind, type WriterFunction } from 'ts-morph'; export type StructureType = T extends Node & { set(structure: Record): unknown; getStructure(): infer S; } ? S & { name?: string; kind?: StructureKind; leadingTrivia?: Array | WriterFunction | string; trailingTrivia?: Array | WriterFunction | string; } : never;