deepsource-mcp-server
Version:
Model Context Protocol server for DeepSource
43 lines (42 loc) • 1.46 kB
TypeScript
/**
* @fileoverview Project mapper
*
* Maps between DeepSource API models and domain Project aggregates.
*/
import { Project } from '../../domain/aggregates/project/project.aggregate.js';
import { DeepSourceProject } from '../../models/projects.js';
import { ProjectRepository, ProjectStatus, ProjectConfiguration } from '../../domain/aggregates/project/project.types.js';
/**
* Maps a DeepSource API project to a domain Project aggregate
*
* @param apiProject - The API project model
* @returns The domain Project aggregate
*/
export declare function mapProjectToDomain(apiProject: DeepSourceProject): Project;
/**
* Maps a domain Project aggregate to persistence format
*
* @param project - The domain Project aggregate
* @returns The persistence model
*/
export declare function mapProjectToPersistence(project: Project): {
key: string;
name: string;
repository: ProjectRepository;
configuration: ProjectConfiguration;
status: ProjectStatus;
createdAt: Date;
updatedAt: Date;
};
/**
* Maps multiple API projects to domain aggregates
*
* @param apiProjects - Array of API project models
* @returns Array of domain Project aggregates
*/
export declare function mapProjectsToDomainList(apiProjects: DeepSourceProject[]): Project[];
export declare const ProjectMapper: {
toDomain: typeof mapProjectToDomain;
toPersistence: typeof mapProjectToPersistence;
toDomainList: typeof mapProjectsToDomainList;
};