UNPKG

apisurf

Version:

Analyze API surface changes between npm package versions to catch breaking changes

26 lines (25 loc) 923 B
/** * Represents a TypeScript type definition extracted from source code. */ export interface TypeDefinition { /** The name of the type definition */ name: string; /** The kind of TypeScript construct this represents */ kind: 'interface' | 'type' | 'class' | 'function' | 'variable' | 'enum'; /** For interfaces and classes, maps property names to their type signatures */ properties?: Map<string, string>; /** For enums, list of member names */ members?: string[]; /** For functions, array of parameter signatures */ parameters?: string[]; /** For functions, the return type signature */ returnType?: string; /** The complete type signature as a string */ signature?: string; /** Extended property information with required/optional metadata */ extendedProperties?: Array<{ name: string; required: boolean; type?: string; }>; }