@jykang/kafka-connect-client
Version:
51 lines (50 loc) • 1.59 kB
TypeScript
import { AxiosRequestConfig } from 'axios';
export interface ConnectorConfig {
name: string;
config: {
"connector.class": string;
[key: string]: any;
};
}
export interface ConnectorInfo {
name: string;
config: Record<string, any>;
tasks: Task[];
type: string;
}
export interface Task {
connector: string;
task: number;
}
export interface ConnectorStatus {
name: string;
connector: {
state: string;
worker_id: string;
};
tasks: TaskStatus[];
}
export interface TaskStatus {
id: number;
state: string;
worker_id: string;
trace?: string;
}
export declare class KafkaConnectClient {
private client;
constructor(baseURL: string, config?: AxiosRequestConfig);
listConnectors(): Promise<string[]>;
getConnectorInfo(name: string): Promise<ConnectorInfo>;
getConnectorConfig(name: string): Promise<Record<string, any>>;
getConnectorStatus(name: string): Promise<ConnectorStatus>;
createConnector(config: ConnectorConfig): Promise<ConnectorInfo>;
updateConnectorConfig(name: string, config: Record<string, any>): Promise<ConnectorInfo>;
deleteConnector(name: string): Promise<void>;
pauseConnector(name: string): Promise<void>;
resumeConnector(name: string): Promise<void>;
restartConnector(name: string): Promise<void>;
restartTask(connectorName: string, taskId: number): Promise<void>;
listConnectorPlugins(): Promise<any[]>;
validateConnectorConfig(plugin: string, config: Record<string, any>): Promise<any>;
private handleError;
}