Abstract Class: ConverterBase<TSource, TTarget>
Defined in: packages/core/src/converters/ConverterBase.ts:36
ConverterBase — Generic Base for Bidirectional Converters
Provides batch conversion with null filtering in both directions. Domain-specific converters extend this class and only implement the single-item abstract methods: convertFrom and convertTo.
Example
import { ToolConverterBase, Tool } from '@vinkius-core/mcp-fusion';
interface ToolDto { id: string; label: string }
class MyToolConverter extends ToolConverterBase<ToolDto> {
convertFrom(tool: Tool): ToolDto {
return { id: tool.name, label: tool.title ?? tool.name };
}
convertTo(dto: ToolDto): Tool {
const tool = new Tool(dto.id);
tool.title = dto.label;
return tool;
}
}
const converter = new MyToolConverter();
const dtos = converter.convertFromBatch(tools); // Tool[] → ToolDto[]
const tools = converter.convertToBatch(dtos); // ToolDto[] → Tool[]See
- ToolConverterBase for tool-specific converters
- GroupConverterBase for group-specific converters
Extended by
GroupConverterBaseToolConverterBasePromptConverterBaseResourceConverterBaseToolAnnotationsConverterBase
Type Parameters
| Type Parameter | Description |
|---|---|
TSource | The domain model type (e.g. Group, Tool) |
TTarget | The external/DTO type |
Constructors
Constructor
new ConverterBase<TSource, TTarget>(): ConverterBase<TSource, TTarget>;Returns
ConverterBase<TSource, TTarget>
Methods
convertFrom()
abstract convertFrom(source): TTarget;Defined in: packages/core/src/converters/ConverterBase.ts:56
Convert a single source item to a target item.
Parameters
| Parameter | Type | Description |
|---|---|---|
source | TSource | Domain model instance |
Returns
TTarget
The converted DTO
convertFromBatch()
convertFromBatch(sources): TTarget[];Defined in: packages/core/src/converters/ConverterBase.ts:44
Convert a batch of source items to target items. Null/undefined results from single-item conversion are filtered out.
Parameters
| Parameter | Type | Description |
|---|---|---|
sources | TSource[] | Array of domain model instances |
Returns
TTarget[]
Array of converted DTOs (nulls removed)
convertTo()
abstract convertTo(target): TSource;Defined in: packages/core/src/converters/ConverterBase.ts:77
Convert a single target item back to a source item.
Parameters
| Parameter | Type | Description |
|---|---|---|
target | TTarget | DTO instance |
Returns
TSource
The domain model instance
convertToBatch()
convertToBatch(targets): TSource[];Defined in: packages/core/src/converters/ConverterBase.ts:65
Convert a batch of target items back to source items. Null/undefined results from single-item conversion are filtered out.
Parameters
| Parameter | Type | Description |
|---|---|---|
targets | TTarget[] | Array of DTOs |
Returns
TSource[]
Array of domain model instances (nulls removed)