/** * Pipeline Response Transformer * * Transforms pipeline operation responses from the Speakeasy SDK types * to the unified SDK types used by the UI. * * @packageDocumentation */ import type { PipelineResponse as SdkPipelineResponse, PipelineStatusResponse as SdkPipelineStatusResponse, PipelineComponentResponse as SdkPipelineComponentResponse, ActionIdResponse as SdkActionIdResponse, PipelineMetricCollectionResponse as SdkMetricCollectionResponse } from '@rdi-ui/sdk/models'; import type { PipelineResponse, PipelineStatus, PipelineStateValueV1, PipelineComponentStatus, PipelineConfig, PipelineOperationResponse, StatusResponse } from './types'; export type { SdkPipelineResponse, SdkPipelineStatusResponse, SdkPipelineComponentResponse, SdkActionIdResponse, SdkMetricCollectionResponse }; /** * Transforms Speakeasy PipelineResponse to SDK type. * Speakeasy SDK already returns camelCase properties. */ export declare function transformPipelineResponse(raw: SdkPipelineResponse): PipelineResponse; /** * Transforms the v1 single-pipeline config response into the unified PipelineResponse shape. */ export declare function transformV1PipelineConfigToPipelineResponse(raw: PipelineConfig, pipelineName: string): PipelineResponse; /** * Transforms Speakeasy PipelineStatusResponse to SDK type. */ export declare function transformPipelineStatusResponse(raw: SdkPipelineStatusResponse): PipelineStatus; /** * Transforms Speakeasy PipelineResponse to PipelineOperationResponse. */ export declare function transformToPipelineOperationResponse(raw: SdkPipelineResponse, pipelineName?: string): PipelineOperationResponse; /** * @deprecated Use `transformToPipelineOperationResponse` instead. */ export declare const transformToUnifiedPipelineResponse: typeof transformToPipelineOperationResponse; /** * Transforms Speakeasy ActionIdResponse to PipelineOperationResponse. */ export declare function transformActionIdToUnified(raw: SdkActionIdResponse, pipelineName?: string): PipelineOperationResponse; /** * Transforms v1 StatusResponse to PipelineStatus. * v1 /status endpoint returns component/pipeline structure. * * Passes through v1 status values as-is without transformation. */ export declare function transformV1StatusResponse(raw: Record, pipelineName: string): PipelineStatus; /** * Transforms v1 StatusResponse to StatusResponse. * Passes through v1 status and state values as-is without transformation. * Includes full v1-specific fields (state, tasks, rawV1Response). */ export declare function transformV1StatusToUnified(raw: Record, pipelineName: string): StatusResponse; /** * Transforms v2 PipelineStatusResponse to StatusResponse. */ export declare function transformV2StatusToUnified(raw: SdkPipelineStatusResponse, pipelineName: string, options?: { state?: PipelineStateValueV1; collectorStates?: Record; }): StatusResponse; /** * Derives a v1-compatible runtime state from a single collector metric collection. * * This mirrors the backend compatibility logic used for v2 status responses. */ export declare function deriveV2StateFromMetricCollection(raw: SdkMetricCollectionResponse): PipelineStateValueV1; /** * Derives the run state of every collector in a pipeline's metric-collection * list, keyed by source name. Collections of other components (the processor) * or without a matching status component are ignored. */ export declare function deriveV2CollectorStates(collections: SdkMetricCollectionResponse[] | null | undefined, components: PipelineComponentStatus[] | undefined): Record; /** * Rolls per-collector states up to a single pipeline state: the least-advanced * one wins, so the pipeline only reads `cdc` once every source streams. Falls * back to `not-running` when no collector reported. */ export declare function rollUpCollectorStates(states: Record): PipelineStateValueV1; /** * Alias for transformToPipelineOperationResponse (used by RdiClient). */ export declare function transformPipelineResponseToUnified(raw: SdkPipelineResponse): PipelineOperationResponse;