import { Request, CodePipeline as AWSCodePipeline } from 'aws-sdk';
declare type ReturnTypeFrom<K extends keyof AWSCodePipeline> = AWSCodePipeline[K] extends (...args: any) => Request<infer R, any> ? R : never;
declare type ParamsFrom<K extends keyof AWSCodePipeline, Extras> = AWSCodePipeline[K] extends {
    (param: infer P, callback: (...args: any) => void): Request<infer R, any>;
    (callback: (...args: any) => void): any;
} ? P & Extras : never;
export declare class CodePipeline {
    private readonly client;
    private constructor();
    readonly signingRegion: undefined;
    readonly service: "codepipeline";
    readonly global: false;
    readonly category: "Developer Tools";
    readonly topLevelCalls: readonly ["listActionTypes", "listPipelines", "listWebhooks"];
    acknowledgeJob: (params: ParamsFrom<'acknowledgeJob', Record<string, never>>) => Promise<ReturnTypeFrom<'acknowledgeJob'>>;
    acknowledgeThirdPartyJob: (params: ParamsFrom<'acknowledgeThirdPartyJob', Record<string, never>>) => Promise<ReturnTypeFrom<'acknowledgeThirdPartyJob'>>;
    createCustomActionType: (params: ParamsFrom<'createCustomActionType', Record<string, never>>) => Promise<ReturnTypeFrom<'createCustomActionType'>>;
    createPipeline: (params: ParamsFrom<'createPipeline', Record<string, never>>) => Promise<ReturnTypeFrom<'createPipeline'>>;
    deleteCustomActionType: (params: ParamsFrom<'deleteCustomActionType', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteCustomActionType'>>;
    deletePipeline: (params: ParamsFrom<'deletePipeline', Record<string, never>>) => Promise<ReturnTypeFrom<'deletePipeline'>>;
    deleteWebhook: (params: ParamsFrom<'deleteWebhook', Record<string, never>>) => Promise<ReturnTypeFrom<'deleteWebhook'>>;
    deregisterWebhookWithThirdParty: (params: ParamsFrom<'deregisterWebhookWithThirdParty', Record<string, never>>) => Promise<ReturnTypeFrom<'deregisterWebhookWithThirdParty'>>;
    disableStageTransition: (params: ParamsFrom<'disableStageTransition', Record<string, never>>) => Promise<ReturnTypeFrom<'disableStageTransition'>>;
    enableStageTransition: (params: ParamsFrom<'enableStageTransition', Record<string, never>>) => Promise<ReturnTypeFrom<'enableStageTransition'>>;
    getActionType: (params: ParamsFrom<'getActionType', Record<string, never>>) => Promise<ReturnTypeFrom<'getActionType'>>;
    getJobDetails: (params: ParamsFrom<'getJobDetails', Record<string, never>>) => Promise<ReturnTypeFrom<'getJobDetails'>>;
    getPipeline: (params: ParamsFrom<'getPipeline', Record<string, never>>) => Promise<ReturnTypeFrom<'getPipeline'>>;
    getPipelineExecution: (params: ParamsFrom<'getPipelineExecution', Record<string, never>>) => Promise<ReturnTypeFrom<'getPipelineExecution'>>;
    getPipelineState: (params: ParamsFrom<'getPipelineState', Record<string, never>>) => Promise<ReturnTypeFrom<'getPipelineState'>>;
    getThirdPartyJobDetails: (params: ParamsFrom<'getThirdPartyJobDetails', Record<string, never>>) => Promise<ReturnTypeFrom<'getThirdPartyJobDetails'>>;
    listActionExecutions(params: {
        [K in keyof ParamsFrom<'listActionExecutions', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'listActionExecutions', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'listActionExecutions'>]-?: ReturnTypeFrom<'listActionExecutions'>[K];
        }['actionExecutionDetails'];
    }>;
    listActionTypes(params: {
        [K in keyof ParamsFrom<'listActionTypes', {
            next?: string;
        }>]: ParamsFrom<'listActionTypes', {
            next?: string;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'listActionTypes'>]-?: ReturnTypeFrom<'listActionTypes'>[K];
        }['actionTypes'];
    }>;
    listPipelineExecutions(params: {
        [K in keyof ParamsFrom<'listPipelineExecutions', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'listPipelineExecutions', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'listPipelineExecutions'>]-?: ReturnTypeFrom<'listPipelineExecutions'>[K];
        }['pipelineExecutionSummaries'];
    }>;
    listPipelines(params: {
        [K in keyof ParamsFrom<'listPipelines', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'listPipelines', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'listPipelines'>]-?: ReturnTypeFrom<'listPipelines'>[K];
        }['pipelines'];
    }>;
    listTagsForResource(params: {
        [K in keyof ParamsFrom<'listTagsForResource', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'listTagsForResource', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'listTagsForResource'>]-?: ReturnTypeFrom<'listTagsForResource'>[K];
        }['tags'];
    }>;
    listWebhooks(params: {
        [K in keyof ParamsFrom<'listWebhooks', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'listWebhooks', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'listWebhooks'>]-?: ReturnTypeFrom<'listWebhooks'>[K];
        }['webhooks'];
    }>;
    pollForJobs: (params: ParamsFrom<'pollForJobs', Record<string, never>>) => Promise<ReturnTypeFrom<'pollForJobs'>>;
    pollForThirdPartyJobs: (params: ParamsFrom<'pollForThirdPartyJobs', Record<string, never>>) => Promise<ReturnTypeFrom<'pollForThirdPartyJobs'>>;
    putActionRevision: (params: ParamsFrom<'putActionRevision', Record<string, never>>) => Promise<ReturnTypeFrom<'putActionRevision'>>;
    putApprovalResult: (params: ParamsFrom<'putApprovalResult', Record<string, never>>) => Promise<ReturnTypeFrom<'putApprovalResult'>>;
    putJobFailureResult: (params: ParamsFrom<'putJobFailureResult', Record<string, never>>) => Promise<ReturnTypeFrom<'putJobFailureResult'>>;
    putJobSuccessResult: (params: ParamsFrom<'putJobSuccessResult', Record<string, never>>) => Promise<ReturnTypeFrom<'putJobSuccessResult'>>;
    putThirdPartyJobFailureResult: (params: ParamsFrom<'putThirdPartyJobFailureResult', Record<string, never>>) => Promise<ReturnTypeFrom<'putThirdPartyJobFailureResult'>>;
    putThirdPartyJobSuccessResult: (params: ParamsFrom<'putThirdPartyJobSuccessResult', Record<string, never>>) => Promise<ReturnTypeFrom<'putThirdPartyJobSuccessResult'>>;
    putWebhook: (params: ParamsFrom<'putWebhook', Record<string, never>>) => Promise<ReturnTypeFrom<'putWebhook'>>;
    registerWebhookWithThirdParty: (params: ParamsFrom<'registerWebhookWithThirdParty', Record<string, never>>) => Promise<ReturnTypeFrom<'registerWebhookWithThirdParty'>>;
    retryStageExecution: (params: ParamsFrom<'retryStageExecution', Record<string, never>>) => Promise<ReturnTypeFrom<'retryStageExecution'>>;
    startPipelineExecution: (params: ParamsFrom<'startPipelineExecution', Record<string, never>>) => Promise<ReturnTypeFrom<'startPipelineExecution'>>;
    stopPipelineExecution: (params: ParamsFrom<'stopPipelineExecution', Record<string, never>>) => Promise<ReturnTypeFrom<'stopPipelineExecution'>>;
    tagResource: (params: ParamsFrom<'tagResource', Record<string, never>>) => Promise<ReturnTypeFrom<'tagResource'>>;
    untagResource: (params: ParamsFrom<'untagResource', Record<string, never>>) => Promise<ReturnTypeFrom<'untagResource'>>;
    updateActionType: (params: ParamsFrom<'updateActionType', Record<string, never>>) => Promise<ReturnTypeFrom<'updateActionType'>>;
    updatePipeline: (params: ParamsFrom<'updatePipeline', Record<string, never>>) => Promise<ReturnTypeFrom<'updatePipeline'>>;
    static fromClient(client: AWSCodePipeline): CodePipeline;
    static client(options?: AWSCodePipeline.Types.ClientConfiguration): CodePipeline;
}
export {};
