/** * RDI API v2 client implementation. * * @packageDocumentation */ import type { RdiSDK } from '@rdi-ui/sdk'; import type { DlqRecordsResponse, DlqTableInfo, FlushResponse, PipelineSecretResponse, PipelineSourceSchemaResponse, SchemaResponse } from '@rdi-ui/sdk/models'; import type { GetSchemasRequest, GetSourceSchemasRequest, UpdateSecretRequest } from '@rdi-ui/sdk/models/operations'; import type { RdiClientConfig } from '../config/types'; import type { MonitoringStatistics } from '../metrics/types'; import type { CreatePipelineRequest, PatchRequest, PipelineOperationResponse, PipelineResponse, SourceDbConnectionTest, SourceTestResponse, StatusResponse, UpdatePipelineRequest } from '../pipeline/types'; import { BaseRdiClient, type RdiClientAuthState } from './BaseRdiClient'; import type { GetDlqRecordsRequest } from './RdiClient'; interface RdiClientV2Options { authState?: RdiClientAuthState; } export declare class RdiClientV2 extends BaseRdiClient { constructor(config: RdiClientConfig, sdk: RdiSDK, options?: RdiClientV2Options); getSchemas(request: GetSchemasRequest): Promise; getSourceSchemas(request: GetSourceSchemasRequest, pipelineName: string): Promise; getPipeline(pipelineName?: string): Promise; /** * Status plus a v1-compatible run state, derived from the collector metric * collections — one per source. The rolled-up `state` is the least-advanced * collector; `collectorStates` keeps the per-source breakdown. Metrics are * best-effort: a metrics outage degrades to `not-running` rather than failing * the status query. */ getPipelineStatus(pipelineName: string): Promise; private getRawPipelineStatus; /** * Reads the pre-multi-source `collector-source_metrics` collection by name. * Best-effort: an unavailable collection means "no collector reported". */ private getLegacyCollectorStates; /** @inheritDoc */ getProcessorMetrics(pipelineName: string): Promise; startPipeline(pipelineName: string, source?: string): Promise; stopPipeline(pipelineName: string, source?: string): Promise; resetPipeline(pipelineName: string, source?: string): Promise; flushTarget(pipelineName: string, targetName: string): Promise; updateSecret(request: UpdateSecretRequest): Promise; createPipeline(request: CreatePipelineRequest, dryRun?: boolean): Promise; updatePipeline(pipelineName: string, request: UpdatePipelineRequest, options?: { dryRun?: boolean; validateCdc?: boolean; }): Promise; patchPipeline(pipelineName: string, request: PatchRequest, options?: { dryRun?: boolean; validateCdc?: boolean; }): Promise; deletePipeline(pipelineName: string): Promise; getDlqStreams(pipelineName: string): Promise>; getDlqStream(pipelineName: string, fullTableName: string): Promise>; getDlqRecords({ pipelineName, fullTableName, limit, offset, sortOrder, fields }: GetDlqRecordsRequest): Promise; testSource(pipelineName: string, request: SourceDbConnectionTest): Promise; } export {};