UNPKG

@simonecoelhosfo/optimizely-mcp-server

Version:

Optimizely MCP Server for AI assistants with integrated CLI tools

88 lines 2.5 kB
/** * Reference Transformer * @description Transforms entity payloads by updating references to use destination IDs/keys * with deep understanding of Optimizely entity structures */ import { MappingResolver } from './MappingResolver.js'; import { EntityType } from './types.js'; export interface TransformationOptions { removeSourceFields?: boolean; preserveTimestamps?: boolean; validateReferences?: boolean; transformCustomFields?: boolean; } export declare class ReferenceTransformer { private logger; private mappingResolver; private options; constructor(mappingResolver: MappingResolver, options?: TransformationOptions); /** * Transform entity payload for destination */ transform(entity: any, entityType: EntityType, sourceProjectId: string, destProjectId: string): Promise<any>; /** * Transform standard reference fields */ private transformStandardReferences; /** * Transform entity-specific fields based on entity type */ private transformEntitySpecificFields; /** * Transform flag-specific fields */ private transformFlagSpecificFields; /** * Transform experiment-specific fields */ private transformExperimentSpecificFields; /** * Transform campaign-specific fields */ private transformCampaignSpecificFields; /** * Transform audience conditions */ private transformAudienceConditions; /** * Transform condition tree recursively */ private transformConditionTree; /** * Transform webhook fields */ private transformWebhookFields; /** * Transform extension references */ private transformExtensionReferences; /** * Transform custom fields that might contain references */ private transformCustomFields; /** * Transform object references recursively */ private transformObjectReferences; /** * Remove source-specific fields */ private removeSourceFields; /** * Get target entity type from field name */ private getTargetTypeFromField; /** * Guess entity type from field name patterns */ private guessEntityTypeFromField; /** * Check if a value looks like an entity reference */ private looksLikeEntityReference; /** * Get entity type from webhook configuration */ private getEntityTypeFromWebhook; } //# sourceMappingURL=ReferenceTransformer.d.ts.map