import { ExtractDto } from "ts-extractor" ; import { SerializedApiItem , ReferenceRenderHandler } from "../contracts/serialized-api-item" ; export abstract class BaseApiItemClass < TKind > implements SerializedApiItem < TKind > { constructor ( private extractedData , private apiItem ) { } protected get ExtractedData ( ) : ExtractDto { return this . extractedData ; } public get ApiItem ( ) : TKind { return this . apiItem ; } protected DefaultReferenceRenderer : ReferenceRenderHandler = name => name ; public abstract ToText ( render ? ) ; public ToInlineText ( render = this . DefaultReferenceRenderer ) { return this . ToText ( render ) . map ( x => x . trim ( ) ) . join ( " " ) ; } }