import { Request, SWF as AWSSWF } from 'aws-sdk';
declare type ReturnTypeFrom<K extends keyof AWSSWF> = AWSSWF[K] extends (...args: any) => Request<infer R, any> ? R : never;
declare type ParamsFrom<K extends keyof AWSSWF, Extras> = AWSSWF[K] extends {
    (param: infer P, callback: (...args: any) => void): Request<infer R, any>;
    (callback: (...args: any) => void): any;
} ? P & Extras : never;
export declare class SWF {
    private readonly client;
    private constructor();
    readonly signingRegion: undefined;
    readonly service: "swf";
    readonly global: false;
    readonly category: "Application Integration";
    readonly topLevelCalls: readonly [];
    countClosedWorkflowExecutions: (params: ParamsFrom<'countClosedWorkflowExecutions', Record<string, never>>) => Promise<ReturnTypeFrom<'countClosedWorkflowExecutions'>>;
    countOpenWorkflowExecutions: (params: ParamsFrom<'countOpenWorkflowExecutions', Record<string, never>>) => Promise<ReturnTypeFrom<'countOpenWorkflowExecutions'>>;
    countPendingActivityTasks: (params: ParamsFrom<'countPendingActivityTasks', Record<string, never>>) => Promise<ReturnTypeFrom<'countPendingActivityTasks'>>;
    countPendingDecisionTasks: (params: ParamsFrom<'countPendingDecisionTasks', Record<string, never>>) => Promise<ReturnTypeFrom<'countPendingDecisionTasks'>>;
    deprecateActivityType: (params: ParamsFrom<'deprecateActivityType', Record<string, never>>) => Promise<ReturnTypeFrom<'deprecateActivityType'>>;
    deprecateDomain: (params: ParamsFrom<'deprecateDomain', Record<string, never>>) => Promise<ReturnTypeFrom<'deprecateDomain'>>;
    deprecateWorkflowType: (params: ParamsFrom<'deprecateWorkflowType', Record<string, never>>) => Promise<ReturnTypeFrom<'deprecateWorkflowType'>>;
    describeActivityType: (params: ParamsFrom<'describeActivityType', Record<string, never>>) => Promise<ReturnTypeFrom<'describeActivityType'>>;
    describeDomain: (params: ParamsFrom<'describeDomain', Record<string, never>>) => Promise<ReturnTypeFrom<'describeDomain'>>;
    describeWorkflowExecution: (params: ParamsFrom<'describeWorkflowExecution', Record<string, never>>) => Promise<ReturnTypeFrom<'describeWorkflowExecution'>>;
    describeWorkflowType: (params: ParamsFrom<'describeWorkflowType', Record<string, never>>) => Promise<ReturnTypeFrom<'describeWorkflowType'>>;
    getWorkflowExecutionHistory(params: {
        [K in keyof ParamsFrom<'getWorkflowExecutionHistory', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'getWorkflowExecutionHistory', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'getWorkflowExecutionHistory'>]-?: ReturnTypeFrom<'getWorkflowExecutionHistory'>[K];
        }['events'];
    }>;
    listActivityTypes(params: {
        [K in keyof ParamsFrom<'listActivityTypes', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'listActivityTypes', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'listActivityTypes'>]-?: ReturnTypeFrom<'listActivityTypes'>[K];
        }['typeInfos'];
    }>;
    listClosedWorkflowExecutions(params: {
        [K in keyof ParamsFrom<'listClosedWorkflowExecutions', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'listClosedWorkflowExecutions', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'listClosedWorkflowExecutions'>]-?: ReturnTypeFrom<'listClosedWorkflowExecutions'>[K];
        }['executionInfos'];
    }>;
    listDomains(params: {
        [K in keyof ParamsFrom<'listDomains', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'listDomains', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'listDomains'>]-?: ReturnTypeFrom<'listDomains'>[K];
        }['domainInfos'];
    }>;
    listOpenWorkflowExecutions(params: {
        [K in keyof ParamsFrom<'listOpenWorkflowExecutions', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'listOpenWorkflowExecutions', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'listOpenWorkflowExecutions'>]-?: ReturnTypeFrom<'listOpenWorkflowExecutions'>[K];
        }['executionInfos'];
    }>;
    listTagsForResource: (params: ParamsFrom<'listTagsForResource', Record<string, never>>) => Promise<ReturnTypeFrom<'listTagsForResource'>>;
    listWorkflowTypes(params: {
        [K in keyof ParamsFrom<'listWorkflowTypes', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'listWorkflowTypes', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'listWorkflowTypes'>]-?: ReturnTypeFrom<'listWorkflowTypes'>[K];
        }['typeInfos'];
    }>;
    pollForActivityTask: (params: ParamsFrom<'pollForActivityTask', Record<string, never>>) => Promise<ReturnTypeFrom<'pollForActivityTask'>>;
    pollForDecisionTask(params: {
        [K in keyof ParamsFrom<'pollForDecisionTask', {
            next?: string;
            limit?: number;
        }>]: ParamsFrom<'pollForDecisionTask', {
            next?: string;
            limit?: number;
        }>[K];
    }): Promise<{
        next?: string | number;
        totalItems: number;
        member: {
            [K in keyof ReturnTypeFrom<'pollForDecisionTask'>]-?: ReturnTypeFrom<'pollForDecisionTask'>[K];
        }['events'];
    }>;
    recordActivityTaskHeartbeat: (params: ParamsFrom<'recordActivityTaskHeartbeat', Record<string, never>>) => Promise<ReturnTypeFrom<'recordActivityTaskHeartbeat'>>;
    registerActivityType: (params: ParamsFrom<'registerActivityType', Record<string, never>>) => Promise<ReturnTypeFrom<'registerActivityType'>>;
    registerDomain: (params: ParamsFrom<'registerDomain', Record<string, never>>) => Promise<ReturnTypeFrom<'registerDomain'>>;
    registerWorkflowType: (params: ParamsFrom<'registerWorkflowType', Record<string, never>>) => Promise<ReturnTypeFrom<'registerWorkflowType'>>;
    requestCancelWorkflowExecution: (params: ParamsFrom<'requestCancelWorkflowExecution', Record<string, never>>) => Promise<ReturnTypeFrom<'requestCancelWorkflowExecution'>>;
    respondActivityTaskCanceled: (params: ParamsFrom<'respondActivityTaskCanceled', Record<string, never>>) => Promise<ReturnTypeFrom<'respondActivityTaskCanceled'>>;
    respondActivityTaskCompleted: (params: ParamsFrom<'respondActivityTaskCompleted', Record<string, never>>) => Promise<ReturnTypeFrom<'respondActivityTaskCompleted'>>;
    respondActivityTaskFailed: (params: ParamsFrom<'respondActivityTaskFailed', Record<string, never>>) => Promise<ReturnTypeFrom<'respondActivityTaskFailed'>>;
    respondDecisionTaskCompleted: (params: ParamsFrom<'respondDecisionTaskCompleted', Record<string, never>>) => Promise<ReturnTypeFrom<'respondDecisionTaskCompleted'>>;
    signalWorkflowExecution: (params: ParamsFrom<'signalWorkflowExecution', Record<string, never>>) => Promise<ReturnTypeFrom<'signalWorkflowExecution'>>;
    startWorkflowExecution: (params: ParamsFrom<'startWorkflowExecution', Record<string, never>>) => Promise<ReturnTypeFrom<'startWorkflowExecution'>>;
    tagResource: (params: ParamsFrom<'tagResource', Record<string, never>>) => Promise<ReturnTypeFrom<'tagResource'>>;
    terminateWorkflowExecution: (params: ParamsFrom<'terminateWorkflowExecution', Record<string, never>>) => Promise<ReturnTypeFrom<'terminateWorkflowExecution'>>;
    undeprecateActivityType: (params: ParamsFrom<'undeprecateActivityType', Record<string, never>>) => Promise<ReturnTypeFrom<'undeprecateActivityType'>>;
    undeprecateDomain: (params: ParamsFrom<'undeprecateDomain', Record<string, never>>) => Promise<ReturnTypeFrom<'undeprecateDomain'>>;
    undeprecateWorkflowType: (params: ParamsFrom<'undeprecateWorkflowType', Record<string, never>>) => Promise<ReturnTypeFrom<'undeprecateWorkflowType'>>;
    untagResource: (params: ParamsFrom<'untagResource', Record<string, never>>) => Promise<ReturnTypeFrom<'untagResource'>>;
    static fromClient(client: AWSSWF): SWF;
    static client(options?: AWSSWF.Types.ClientConfiguration): SWF;
}
export {};
