import { Request, KafkaConnect as AWSKafkaConnect } from 'aws-sdk';
declare type ReturnTypeFrom<K extends keyof AWSKafkaConnect> = AWSKafkaConnect[K] extends (...args: any) => Request<infer R, any> ? R : never;
declare type ParamsFrom<K extends keyof AWSKafkaConnect, Extras> = AWSKafkaConnect[K] extends {
    (param: infer P, callback: (...args: any) => void): Request<infer R, any>;
    (callback: (...args: any) => void): any;
} ? P & Extras : never;
export declare class KafkaConnect {
    private readonly client;
    private constructor();
    readonly signingRegion: undefined;
    readonly service: "kafkaconnect";
    readonly global: false;
    readonly category: "Other";
    readonly topLevelCalls: readonly ["listConnectors", "listCustomPlugins", "listWorkerConfigurations"];
    createConnector: (params: ParamsFrom<'createConnector', Record<string, never>>) => Promise<ReturnTypeFrom<'createConnector'>>;
    createCustomPlugin: (params: ParamsFrom<'createCustomPlugin', Record<string, never>>) => Promise<ReturnTypeFrom<'createCustomPlugin'>>;
    createWorkerConfiguration: (params: ParamsFrom<'createWorkerConfiguration', Record<string, never>>) => Promise<ReturnTypeFrom<'createWorkerConfiguration'>>;
    deleteConnector: (params: ParamsFrom<'deleteConnector', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteConnector'>>;
    deleteCustomPlugin: (params: ParamsFrom<'deleteCustomPlugin', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteCustomPlugin'>>;
    describeConnector: (params: ParamsFrom<'describeConnector', Record<string, never>>) => Promise<ReturnTypeFrom<'describeConnector'>>;
    describeCustomPlugin: (params: ParamsFrom<'describeCustomPlugin', Record<string, never>>) => Promise<ReturnTypeFrom<'describeCustomPlugin'>>;
    describeWorkerConfiguration: (params: ParamsFrom<'describeWorkerConfiguration', Record<string, never>>) => Promise<ReturnTypeFrom<'describeWorkerConfiguration'>>;
    listConnectors(params: {
        [K in keyof ParamsFrom<'listConnectors', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'listConnectors', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'listConnectors'>]-?: ReturnTypeFrom<'listConnectors'>[K];
        }['connectors'];
    }>;
    listCustomPlugins(params: {
        [K in keyof ParamsFrom<'listCustomPlugins', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'listCustomPlugins', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'listCustomPlugins'>]-?: ReturnTypeFrom<'listCustomPlugins'>[K];
        }['customPlugins'];
    }>;
    listWorkerConfigurations(params: {
        [K in keyof ParamsFrom<'listWorkerConfigurations', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'listWorkerConfigurations', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'listWorkerConfigurations'>]-?: ReturnTypeFrom<'listWorkerConfigurations'>[K];
        }['workerConfigurations'];
    }>;
    updateConnector: (params: ParamsFrom<'updateConnector', Record<string, never>>) => Promise<ReturnTypeFrom<'updateConnector'>>;
    static fromClient(client: AWSKafkaConnect): KafkaConnect;
    static client(options?: AWSKafkaConnect.Types.ClientConfiguration): KafkaConnect;
}
export {};
